diff --git a/examples/recording/README b/examples/recording/README new file mode 100644 index 0000000000000000000000000000000000000000..9407801c2e0372b0b94bf476f3e1c1c791318a2f --- /dev/null +++ b/examples/recording/README @@ -0,0 +1,16 @@ +1. Description + + This example demonstrates how to launch an experiment and record it + + +2. Running This Example in a Jupyter Notebook + + 2.1 Start your local NRP installation: + + refer to latest NRP documentation + + 2.2 Launch the Jupter Notebook in the VirtualCoach environment: + + cle-virtual-coach jupyter notebook + + 2.3 Load the supplied notebook $HBP/VirtualCoach/examples/recording/recording.ipynb diff --git a/examples/recording/recording.html b/examples/recording/recording.html new file mode 100644 index 0000000000000000000000000000000000000000..acbbfe43094bc23cd1a5b4e08870355dabbf3b88 --- /dev/null +++ b/examples/recording/recording.html @@ -0,0 +1,16197 @@ +<!DOCTYPE html> +<html> +<head><meta charset="utf-8" /> +<title>tf_parameter_search</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script> +<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> + +<style type="text/css"> + /*! +* +* Twitter Bootstrap +* +*/ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -ms-text-size-adjust: 100%; + -webkit-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: bold; +} +dfn { + font-style: italic; +} +h1 { + font-size: 2em; + margin: 0.67em 0; +} +mark { + background: #ff0; + color: #000; +} +small { + font-size: 80%; +} +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + box-sizing: content-box; + height: 0; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; +} +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 { + border: 0; + padding: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + 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-appearance: textfield; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} +legend { + border: 0; + padding: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + background: transparent !important; + color: #000 !important; + box-shadow: none !important; + text-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .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 th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +@font-face { + font-family: 'Glyphicons Halflings'; + src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot'); + src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../components/bootstrap/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: normal; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\002a"; +} +.glyphicon-plus:before { + content: "\002b"; +} +.glyphicon-euro:before, +.glyphicon-eur: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-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub: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; +} +*:before, +*:after { + -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: 13px; + line-height: 1.42857143; + color: #000; + background-color: #fff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #337ab7; + text-decoration: none; +} +a:hover, +a:focus { + color: #23527c; + text-decoration: underline; +} +a:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 3px; +} +.img-thumbnail { + padding: 4px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 2px; + -webkit-transition: all 0.2s ease-in-out; + -o-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; + display: inline-block; + max-width: 100%; + height: auto; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 18px; + margin-bottom: 18px; + border: 0; + border-top: 1px solid #eeeeee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + 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; +} +[role="button"] { + cursor: pointer; +} +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, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 18px; + margin-bottom: 9px; +} +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, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 9px; + margin-bottom: 9px; +} +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: 33px; +} +h2, +.h2 { + font-size: 27px; +} +h3, +.h3 { + font-size: 23px; +} +h4, +.h4 { + font-size: 17px; +} +h5, +.h5 { + font-size: 13px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 9px; +} +.lead { + margin-bottom: 18px; + font-size: 14px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 19.5px; + } +} +small, +.small { + font-size: 92%; +} +mark, +.mark { + background-color: #fcf8e3; + padding: .2em; +} +.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: #777777; +} +.text-primary { + color: #337ab7; +} +a.text-primary:hover, +a.text-primary:focus { + color: #286090; +} +.text-success { + color: #3c763d; +} +a.text-success:hover, +a.text-success:focus { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover, +a.text-info:focus { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover, +a.text-warning:focus { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover, +a.text-danger:focus { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #337ab7; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #286090; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover, +a.bg-success:focus { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover, +a.bg-info:focus { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover, +a.bg-warning:focus { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover, +a.bg-danger:focus { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 8px; + margin: 36px 0 18px; + border-bottom: 1px solid #eeeeee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 9px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + list-style: none; + margin-left: -5px; +} +.list-inline > li { + display: inline-block; + padding-left: 5px; + padding-right: 5px; +} +dl { + margin-top: 0; + margin-bottom: 18px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 541px) { + .dl-horizontal dt { + float: left; + width: 160px; + clear: left; + text-align: right; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 9px 18px; + margin: 0 0 18px; + font-size: inherit; + border-left: 5px solid #eeeeee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #eeeeee; + border-left: 0; + text-align: right; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 18px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 2px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #888; + background-color: transparent; + border-radius: 1px; + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + box-shadow: none; +} +pre { + display: block; + padding: 8.5px; + margin: 0 0 9px; + font-size: 12px; + line-height: 1.42857143; + word-break: break-all; + word-wrap: break-word; + color: #333333; + background-color: #f5f5f5; + border: 1px solid #ccc; + border-radius: 2px; +} +pre code { + 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 { + margin-right: auto; + margin-left: auto; + padding-left: 0px; + padding-right: 0px; +} +@media (min-width: 768px) { + .container { + width: 768px; + } +} +@media (min-width: 992px) { + .container { + width: 940px; + } +} +@media (min-width: 1200px) { + .container { + width: 1140px; + } +} +.container-fluid { + margin-right: auto; + margin-left: auto; + padding-left: 0px; + padding-right: 0px; +} +.row { + margin-left: 0px; + margin-right: 0px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-left: 0px; + padding-right: 0px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + 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-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + 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-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + 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-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + 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: #777777; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 18px; +} +.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; +} +.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 + tbody { + border-top: 2px solid #ddd; +} +.table .table { + background-color: #fff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + 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; + float: none; + display: table-column; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + float: none; + display: table-cell; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #e8e8e8; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + overflow-x: auto; + min-height: 0.01%; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 13.5px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #ddd; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + padding: 0; + margin: 0; + border: 0; + min-width: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 18px; + font-size: 19.5px; + line-height: inherit; + color: #333333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + 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="radio"]:focus, +input[type="checkbox"]:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 13px; + line-height: 1.42857143; + color: #555555; +} +.form-control { + display: block; + width: 100%; + height: 32px; + padding: 6px 12px; + font-size: 13px; + line-height: 1.42857143; + color: #555555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 2px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); +} +.form-control::-moz-placeholder { + color: #999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999; +} +.form-control::-webkit-input-placeholder { + color: #999; +} +.form-control::-ms-expand { + border: 0; + background-color: transparent; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eeeeee; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 32px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .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"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .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"] { + line-height: 45px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 18px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-left: -20px; + margin-top: 4px \9; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + vertical-align: middle; + font-weight: normal; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; + min-height: 31px; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-left: 0; + padding-right: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 1px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 1px; +} +.form-group-sm select.form-control { + height: 30px; + line-height: 30px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 30px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 45px; + padding: 10px 16px; + font-size: 17px; + line-height: 1.3333333; + border-radius: 3px; +} +select.input-lg { + height: 45px; + line-height: 45px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 45px; + padding: 10px 16px; + font-size: 17px; + line-height: 1.3333333; + border-radius: 3px; +} +.form-group-lg select.form-control { + height: 45px; + line-height: 45px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 45px; + min-height: 35px; + padding: 11px 16px; + font-size: 17px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 40px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 32px; + height: 32px; + line-height: 32px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 45px; + height: 45px; + line-height: 45px; +} +.input-sm + .form-control-feedback, +.input-group-sm + .form-control-feedback, +.form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #3c763d; +} +.has-success .form-control { + border-color: #3c763d; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + border-color: #3c763d; + background-color: #dff0d8; +} +.has-success .form-control-feedback { + color: #3c763d; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #8a6d3b; +} +.has-warning .form-control { + border-color: #8a6d3b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + border-color: #8a6d3b; + background-color: #fcf8e3; +} +.has-warning .form-control-feedback { + color: #8a6d3b; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #a94442; +} +.has-error .form-control { + border-color: #a94442; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + border-color: #a94442; + background-color: #f2dede; +} +.has-error .form-control-feedback { + color: #a94442; +} +.has-feedback label ~ .form-control-feedback { + top: 23px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #404040; +} +@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 .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + margin-top: 0; + margin-bottom: 0; + padding-top: 7px; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 25px; +} +.form-horizontal .form-group { + margin-left: 0px; + margin-right: 0px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + text-align: right; + margin-bottom: 0; + padding-top: 7px; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 0px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 11px; + font-size: 17px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px; + } +} +.btn { + display: inline-block; + margin-bottom: 0; + font-weight: normal; + text-align: center; + vertical-align: middle; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 6px 12px; + font-size: 13px; + line-height: 1.42857143; + border-radius: 2px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #333; + text-decoration: none; +} +.btn:active, +.btn.active { + outline: 0; + background-image: none; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; +} +a.btn.disabled, +fieldset[disabled] a.btn { + pointer-events: none; +} +.btn-default { + color: #333; + background-color: #fff; + border-color: #ccc; +} +.btn-default:focus, +.btn-default.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.btn-default:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active:hover, +.btn-default.active:hover, +.open > .dropdown-toggle.btn-default:hover, +.btn-default:active:focus, +.btn-default.active:focus, +.open > .dropdown-toggle.btn-default:focus, +.btn-default:active.focus, +.btn-default.active.focus, +.open > .dropdown-toggle.btn-default.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus { + 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:focus, +.btn-primary.focus { + color: #fff; + background-color: #286090; + border-color: #122b40; +} +.btn-primary:hover { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active:hover, +.btn-primary.active:hover, +.open > .dropdown-toggle.btn-primary:hover, +.btn-primary:active:focus, +.btn-primary.active:focus, +.open > .dropdown-toggle.btn-primary:focus, +.btn-primary:active.focus, +.btn-primary.active.focus, +.open > .dropdown-toggle.btn-primary.focus { + color: #fff; + background-color: #204d74; + border-color: #122b40; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus { + 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:focus, +.btn-success.focus { + color: #fff; + background-color: #449d44; + border-color: #255625; +} +.btn-success:hover { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active:hover, +.btn-success.active:hover, +.open > .dropdown-toggle.btn-success:hover, +.btn-success:active:focus, +.btn-success.active:focus, +.open > .dropdown-toggle.btn-success:focus, +.btn-success:active.focus, +.btn-success.active.focus, +.open > .dropdown-toggle.btn-success.focus { + color: #fff; + background-color: #398439; + border-color: #255625; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus { + 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:focus, +.btn-info.focus { + color: #fff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.btn-info:hover { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active:hover, +.btn-info.active:hover, +.open > .dropdown-toggle.btn-info:hover, +.btn-info:active:focus, +.btn-info.active:focus, +.open > .dropdown-toggle.btn-info:focus, +.btn-info:active.focus, +.btn-info.active.focus, +.open > .dropdown-toggle.btn-info.focus { + color: #fff; + background-color: #269abc; + border-color: #1b6d85; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus { + 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:focus, +.btn-warning.focus { + color: #fff; + background-color: #ec971f; + border-color: #985f0d; +} +.btn-warning:hover { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active:hover, +.btn-warning.active:hover, +.open > .dropdown-toggle.btn-warning:hover, +.btn-warning:active:focus, +.btn-warning.active:focus, +.open > .dropdown-toggle.btn-warning:focus, +.btn-warning:active.focus, +.btn-warning.active.focus, +.open > .dropdown-toggle.btn-warning.focus { + color: #fff; + background-color: #d58512; + border-color: #985f0d; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus { + 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:focus, +.btn-danger.focus { + color: #fff; + background-color: #c9302c; + border-color: #761c19; +} +.btn-danger:hover { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active:hover, +.btn-danger.active:hover, +.open > .dropdown-toggle.btn-danger:hover, +.btn-danger:active:focus, +.btn-danger.active:focus, +.open > .dropdown-toggle.btn-danger:focus, +.btn-danger:active.focus, +.btn-danger.active.focus, +.open > .dropdown-toggle.btn-danger.focus { + color: #fff; + background-color: #ac2925; + border-color: #761c19; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus { + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger .badge { + color: #d9534f; + background-color: #fff; +} +.btn-link { + color: #337ab7; + font-weight: normal; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #23527c; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777777; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 17px; + line-height: 1.3333333; + border-radius: 3px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 1px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 1px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity 0.15s linear; + -o-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-property: height, visibility; + transition-property: height, visibility; + -webkit-transition-duration: 0.35s; + transition-duration: 0.35s; + -webkit-transition-timing-function: ease; + transition-timing-function: ease; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + 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; + list-style: none; + font-size: 13px; + text-align: left; + background-color: #fff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 2px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + background-clip: padding-box; +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 8px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #333333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + text-decoration: none; + color: #262626; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + outline: 0; + background-color: #337ab7; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + cursor: not-allowed; +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + left: auto; + right: 0; +} +.dropdown-menu-left { + left: 0; + right: auto; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #777777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + left: 0; + right: 0; + bottom: 0; + top: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; + content: ""; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 541px) { + .navbar-right .dropdown-menu { + left: auto; + right: 0; + } + .navbar-right .dropdown-menu-left { + left: 0; + right: auto; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + 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, +.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-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-bottom-left-radius: 0; + border-top-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-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-left: 8px; + padding-right: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-left: 12px; + padding-right: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.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: 2px; + border-top-left-radius: 2px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-right-radius: 0; + border-top-left-radius: 0; + border-bottom-right-radius: 2px; + border-bottom-left-radius: 2px; +} +.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-right-radius: 0; + border-top-left-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + float: none; + display: table-cell; + 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="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-left: 0; + padding-right: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group .form-control:focus { + z-index: 3; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 45px; + padding: 10px 16px; + font-size: 17px; + line-height: 1.3333333; + border-radius: 3px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 45px; + line-height: 45px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].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: 1px; +} +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; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control: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: 13px; + font-weight: normal; + line-height: 1; + color: #555555; + text-align: center; + background-color: #eeeeee; + border: 1px solid #ccc; + border-radius: 2px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 1px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 17px; + border-radius: 3px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + 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:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-top-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:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-bottom-left-radius: 0; + border-top-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:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + 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 { + z-index: 2; + margin-left: -1px; +} +.nav { + margin-bottom: 0; + padding-left: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eeeeee; +} +.nav > li.disabled > a { + color: #777777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777777; + text-decoration: none; + background-color: transparent; + cursor: not-allowed; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eeeeee; + border-color: #337ab7; +} +.nav .nav-divider { + height: 1px; + margin: 8px 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: 2px 2px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eeeeee #eeeeee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555555; + background-color: #fff; + border: 1px solid #ddd; + border-bottom-color: transparent; + cursor: default; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + text-align: center; + margin-bottom: 5px; +} +.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: 2px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 2px 2px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 2px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + 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 { + text-align: center; + margin-bottom: 5px; +} +.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: 2px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 2px 2px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.navbar { + position: relative; + min-height: 30px; + margin-bottom: 18px; + border: 1px solid transparent; +} +@media (min-width: 541px) { + .navbar { + border-radius: 2px; + } +} +@media (min-width: 541px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + overflow-x: visible; + padding-right: 0px; + padding-left: 0px; + border-top: 1px solid transparent; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + -webkit-overflow-scrolling: touch; +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 541px) { + .navbar-collapse { + width: auto; + border-top: 0; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-left: 0; + padding-right: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 540px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: 0px; + margin-left: 0px; +} +@media (min-width: 541px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 541px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 541px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + 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; + padding: 6px 0px; + font-size: 17px; + line-height: 18px; + height: 30px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 541px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: 0px; + } +} +.navbar-toggle { + position: relative; + float: right; + margin-right: 0px; + padding: 9px 10px; + margin-top: -2px; + margin-bottom: -2px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 2px; +} +.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: 541px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 3px 0px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 18px; +} +@media (max-width: 540px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 18px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 541px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 6px; + padding-bottom: 6px; + } +} +.navbar-form { + margin-left: 0px; + margin-right: 0px; + padding: 10px 0px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + margin-top: -1px; + margin-bottom: -1px; +} +@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 .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 540px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 541px) { + .navbar-form { + width: auto; + border: 0; + margin-left: 0; + margin-right: 0; + padding-top: 0; + padding-bottom: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-right-radius: 2px; + border-top-left-radius: 2px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: -1px; + margin-bottom: -1px; +} +.navbar-btn.btn-sm { + margin-top: 0px; + margin-bottom: 0px; +} +.navbar-btn.btn-xs { + margin-top: 4px; + margin-bottom: 4px; +} +.navbar-text { + margin-top: 6px; + margin-bottom: 6px; +} +@media (min-width: 541px) { + .navbar-text { + float: left; + margin-left: 0px; + margin-right: 0px; + } +} +@media (min-width: 541px) { + .navbar-left { + float: left !important; + float: left; + } + .navbar-right { + float: right !important; + float: right; + margin-right: 0px; + } + .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:hover, +.navbar-default .navbar-brand:focus { + 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:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555; + background-color: #e7e7e7; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #ccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #ddd; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + 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:hover, +.navbar-default .navbar-nav > .open > a:focus { + background-color: #e7e7e7; + color: #555; +} +@media (max-width: 540px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + 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:hover, +.navbar-default .btn-link:focus { + color: #333; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #ccc; +} +.navbar-inverse { + background-color: #222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #9d9d9d; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + 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:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #fff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + 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:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + background-color: #080808; + color: #fff; +} +@media (max-width: 540px) { + .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:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #fff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + 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:hover, +.navbar-inverse .btn-link:focus { + color: #fff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 18px; + list-style: none; + background-color: #f5f5f5; + border-radius: 2px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + content: "/\00a0"; + padding: 0 5px; + color: #5e5e5e; +} +.breadcrumb > .active { + color: #777777; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 18px 0; + border-radius: 2px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + line-height: 1.42857143; + text-decoration: none; + color: #337ab7; + background-color: #fff; + border: 1px solid #ddd; + margin-left: -1px; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-bottom-left-radius: 2px; + border-top-left-radius: 2px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-bottom-right-radius: 2px; + border-top-right-radius: 2px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 2; + color: #23527c; + background-color: #eeeeee; + border-color: #ddd; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 3; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; + cursor: default; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777777; + background-color: #fff; + border-color: #ddd; + cursor: not-allowed; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 17px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-bottom-left-radius: 1px; + border-top-left-radius: 1px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-bottom-right-radius: 1px; + border-top-right-radius: 1px; +} +.pager { + padding-left: 0; + margin: 18px 0; + list-style: none; + text-align: center; +} +.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:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eeeeee; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777777; + background-color: #fff; + cursor: not-allowed; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #777777; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #5e5e5e; +} +.label-primary { + background-color: #337ab7; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #286090; +} +.label-success { + background-color: #5cb85c; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} +.label-info { + background-color: #5bc0de; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} +.label-warning { + background-color: #f0ad4e; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + color: #fff; + line-height: 1; + vertical-align: middle; + white-space: nowrap; + text-align: center; + background-color: #777777; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + 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-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #eeeeee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 20px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d5d5d5; +} +.container .jumbotron, +.container-fluid .jumbotron { + border-radius: 3px; + padding-left: 0px; + padding-right: 0px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-left: 60px; + padding-right: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 59px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 18px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 2px; + -webkit-transition: border 0.2s ease-in-out; + -o-transition: border 0.2s ease-in-out; + transition: border 0.2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-left: auto; + margin-right: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #000; +} +.alert { + padding: 15px; + margin-bottom: 18px; + border: 1px solid transparent; + border-radius: 2px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.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 { + background-color: #dff0d8; + border-color: #d6e9c6; + color: #3c763d; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + background-color: #d9edf7; + border-color: #bce8f1; + color: #31708f; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + background-color: #fcf8e3; + border-color: #faebcc; + color: #8a6d3b; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + background-color: #f2dede; + border-color: #ebccd1; + color: #a94442; +} +.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; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + overflow: hidden; + height: 18px; + margin-bottom: 18px; + background-color: #f5f5f5; + border-radius: 2px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); +} +.progress-bar { + float: left; + width: 0%; + height: 100%; + font-size: 12px; + line-height: 18px; + color: #fff; + text-align: center; + background-color: #337ab7; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-transition: width 0.6s ease; + -o-transition: width 0.6s ease; + transition: width 0.6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -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, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.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, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.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, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.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, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + zoom: 1; + overflow: hidden; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-object.img-thumbnail { + max-width: none; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + 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 { + margin-bottom: 20px; + padding-left: 0; +} +.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-right-radius: 2px; + border-top-left-radius: 2px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 2px; + border-bottom-left-radius: 2px; +} +a.list-group-item, +button.list-group-item { + color: #555; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: #333; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + text-decoration: none; + color: #555; + background-color: #f5f5f5; +} +button.list-group-item { + width: 100%; + text-align: left; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + background-color: #eeeeee; + color: #777777; + cursor: not-allowed; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #777777; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #c7ddef; +} +.list-group-item-success { + color: #3c763d; + background-color: #dff0d8; +} +a.list-group-item-success, +button.list-group-item-success { + color: #3c763d; +} +a.list-group-item-success .list-group-item-heading, +button.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +button.list-group-item-success:hover, +a.list-group-item-success:focus, +button.list-group-item-success:focus { + color: #3c763d; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +button.list-group-item-success.active, +a.list-group-item-success.active:hover, +button.list-group-item-success.active:hover, +a.list-group-item-success.active:focus, +button.list-group-item-success.active:focus { + color: #fff; + background-color: #3c763d; + border-color: #3c763d; +} +.list-group-item-info { + color: #31708f; + background-color: #d9edf7; +} +a.list-group-item-info, +button.list-group-item-info { + color: #31708f; +} +a.list-group-item-info .list-group-item-heading, +button.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +button.list-group-item-info:hover, +a.list-group-item-info:focus, +button.list-group-item-info:focus { + color: #31708f; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +button.list-group-item-info.active, +a.list-group-item-info.active:hover, +button.list-group-item-info.active:hover, +a.list-group-item-info.active:focus, +button.list-group-item-info.active:focus { + color: #fff; + background-color: #31708f; + border-color: #31708f; +} +.list-group-item-warning { + color: #8a6d3b; + background-color: #fcf8e3; +} +a.list-group-item-warning, +button.list-group-item-warning { + color: #8a6d3b; +} +a.list-group-item-warning .list-group-item-heading, +button.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +button.list-group-item-warning:hover, +a.list-group-item-warning:focus, +button.list-group-item-warning:focus { + color: #8a6d3b; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +button.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +button.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus, +button.list-group-item-warning.active:focus { + color: #fff; + background-color: #8a6d3b; + border-color: #8a6d3b; +} +.list-group-item-danger { + color: #a94442; + background-color: #f2dede; +} +a.list-group-item-danger, +button.list-group-item-danger { + color: #a94442; +} +a.list-group-item-danger .list-group-item-heading, +button.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +button.list-group-item-danger:hover, +a.list-group-item-danger:focus, +button.list-group-item-danger:focus { + color: #a94442; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +button.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +button.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus, +button.list-group-item-danger.active:focus { + 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: 18px; + background-color: #fff; + border: 1px solid transparent; + border-radius: 2px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-right-radius: 1px; + border-top-left-radius: 1px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 15px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + border-bottom-right-radius: 1px; + border-bottom-left-radius: 1px; +} +.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-right-radius: 1px; + border-top-left-radius: 1px; +} +.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: 1px; + border-bottom-left-radius: 1px; +} +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-left: 15px; + padding-right: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-right-radius: 1px; + border-top-left-radius: 1px; +} +.panel > .table:first-child > thead: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-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 1px; + border-top-right-radius: 1px; +} +.panel > .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 td:first-child, +.panel > .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 td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th: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 th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 1px; +} +.panel > .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 td:last-child, +.panel > .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 td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th: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 th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 1px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 1px; + border-bottom-left-radius: 1px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-left-radius: 1px; + border-bottom-right-radius: 1px; +} +.panel > .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 td:first-child, +.panel > .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 td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 1px; +} +.panel > .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 td:last-child, +.panel > .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 td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 1px; +} +.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 th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + border: 0; + margin-bottom: 0; +} +.panel-group { + margin-bottom: 18px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 2px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + 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: #333333; + 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: #333333; +} +.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 iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + left: 0; + bottom: 0; + height: 100%; + width: 100%; + border: 0; +} +.embed-responsive-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 2px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} +.well-lg { + padding: 24px; + border-radius: 3px; +} +.well-sm { + padding: 9px; + border-radius: 1px; +} +.close { + float: right; + font-size: 19.5px; + font-weight: bold; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + opacity: 0.2; + filter: alpha(opacity=20); +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + opacity: 0.5; + filter: alpha(opacity=50); +} +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} +.modal-open { + overflow: hidden; +} +.modal { + display: none; + overflow: hidden; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); + -webkit-transition: -webkit-transform 0.3s ease-out; + -moz-transition: -moz-transform 0.3s ease-out; + -o-transition: -o-transform 0.3s ease-out; + transition: transform 0.3s ease-out; +} +.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; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 3px; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + background-clip: padding-box; + outline: 0; +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + opacity: 0; + filter: alpha(opacity=0); +} +.modal-backdrop.in { + opacity: 0.5; + filter: alpha(opacity=50); +} +.modal-header { + 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-left: 5px; + margin-bottom: 0; +} +.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 { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + } + .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-style: normal; + font-weight: normal; + letter-spacing: normal; + line-break: auto; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + white-space: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + font-size: 12px; + opacity: 0; + filter: alpha(opacity=0); +} +.tooltip.in { + opacity: 0.9; + filter: alpha(opacity=90); +} +.tooltip.top { + margin-top: -3px; + padding: 5px 0; +} +.tooltip.right { + margin-left: 3px; + padding: 0 5px; +} +.tooltip.bottom { + margin-top: 3px; + padding: 5px 0; +} +.tooltip.left { + margin-left: -3px; + padding: 0 5px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 2px; +} +.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 { + bottom: 0; + right: 5px; + 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-style: normal; + font-weight: normal; + letter-spacing: normal; + line-break: auto; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + white-space: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + font-size: 13px; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 3px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + margin: 0; + padding: 8px 14px; + font-size: 13px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 2px 2px 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 { + border-width: 10px; + content: ""; +} +.popover.top > .arrow { + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #999999; + border-top-color: rgba(0, 0, 0, 0.25); + bottom: -11px; +} +.popover.top > .arrow:after { + content: " "; + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #fff; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-left-width: 0; + border-right-color: #999999; + border-right-color: rgba(0, 0, 0, 0.25); +} +.popover.right > .arrow:after { + content: " "; + left: 1px; + bottom: -10px; + border-left-width: 0; + border-right-color: #fff; +} +.popover.bottom > .arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999999; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px; +} +.popover.bottom > .arrow:after { + content: " "; + top: 1px; + margin-left: -10px; + 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: #999999; + border-left-color: rgba(0, 0, 0, 0.25); +} +.popover.left > .arrow:after { + content: " "; + right: 1px; + border-right-width: 0; + border-left-color: #fff; + bottom: -10px; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + overflow: hidden; + width: 100%; +} +.carousel-inner > .item { + display: none; + position: relative; + -webkit-transition: 0.6s ease-in-out left; + -o-transition: 0.6s ease-in-out left; + transition: 0.6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform 0.6s ease-in-out; + -moz-transition: -moz-transform 0.6s ease-in-out; + -o-transition: -o-transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out; + -webkit-backface-visibility: hidden; + -moz-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + -moz-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + left: 0; + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + left: 0; + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + left: 0; + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 15%; + opacity: 0.5; + filter: alpha(opacity=50); + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); + background-color: rgba(0, 0, 0, 0); +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); +} +.carousel-control.right { + left: auto; + right: 0; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); +} +.carousel-control:hover, +.carousel-control:focus { + outline: 0; + color: #fff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90); +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + margin-top: -10px; + z-index: 5; + display: inline-block; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + line-height: 1; + font-family: serif; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + margin-left: -30%; + padding-left: 0; + list-style: none; + text-align: center; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + border: 1px solid #fff; + border-radius: 10px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); +} +.carousel-indicators .active { + margin: 0; + width: 12px; + height: 12px; + background-color: #fff; +} +.carousel-caption { + position: absolute; + left: 15%; + right: 15%; + bottom: 20px; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -10px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -10px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -10px; + } + .carousel-caption { + left: 20%; + right: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-header:before, +.modal-header:after, +.modal-footer:before, +.modal-footer:after, +.item_buttons:before, +.item_buttons:after { + content: " "; + display: table; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-header:after, +.modal-footer:after, +.item_buttons:after { + clear: both; +} +.center-block { + display: block; + margin-left: auto; + margin-right: 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; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.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 !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.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 !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.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 !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.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 !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.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; + } +} +/*! +* +* Font Awesome +* +*/ +/*! + * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */ +/* FONT PATH + * -------------------------- */ +@font-face { + font-family: 'FontAwesome'; + src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?v=4.2.0'); + src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.2.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; +} +/* makes the font 33% larger relative to the icon container */ +.fa-lg { + font-size: 1.33333333em; + line-height: 0.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: 0.14285714em; + text-align: center; +} +.fa-li.fa-lg { + left: -1.85714286em; +} +.fa-border { + padding: .2em .25em .15em; + border: solid 0.08em #eee; + border-radius: .1em; +} +.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; +} +@-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 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); + -webkit-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} +.fa-rotate-180 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2); + -webkit-transform: rotate(180deg); + -ms-transform: rotate(180deg); + transform: rotate(180deg); +} +.fa-rotate-270 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); + -webkit-transform: rotate(270deg); + -ms-transform: rotate(270deg); + transform: rotate(270deg); +} +.fa-flip-horizontal { + 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 { + 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; +} +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen + readers do not read off random characters that represent icons */ +.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:before { + content: "\f09a"; +} +.fa-github:before { + content: "\f09b"; +} +.fa-unlock:before { + content: "\f09c"; +} +.fa-credit-card:before { + content: "\f09d"; +} +.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 { + 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: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-rebel:before { + content: "\f1d0"; +} +.fa-ge:before, +.fa-empire:before { + content: "\f1d1"; +} +.fa-git-square:before { + content: "\f1d2"; +} +.fa-git:before { + content: "\f1d3"; +} +.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"; +} +/*! +* +* IPython base +* +*/ +.modal.fade .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +code { + color: #000; +} +pre { + font-size: inherit; + line-height: inherit; +} +label { + font-weight: normal; +} +/* Make the page background atleast 100% the height of the view port */ +/* Make the page itself atleast 70% the height of the view port */ +.border-box-sizing { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.corner-all { + border-radius: 2px; +} +.no-padding { + padding: 0px; +} +/* Flexible box model classes */ +/* Taken from Alex Russell http://infrequently.org/2009/08/css-3-progress/ */ +/* This file is a compatability layer. It allows the usage of flexible box +model layouts accross multiple browsers, including older browsers. The newest, +universal implementation of the flexible box model is used when available (see +`Modern browsers` comments below). Browsers that are known to implement this +new spec completely include: + + Firefox 28.0+ + Chrome 29.0+ + Internet Explorer 11+ + Opera 17.0+ + +Browsers not listed, including Safari, are supported via the styling under the +`Old browsers` comments below. +*/ +.hbox { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: horizontal; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: horizontal; + -moz-box-align: stretch; + display: box; + box-orient: horizontal; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: row; + align-items: stretch; +} +.hbox > * { + /* Old browsers */ + -webkit-box-flex: 0; + -moz-box-flex: 0; + box-flex: 0; + /* Modern browsers */ + flex: none; +} +.vbox { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; +} +.vbox > * { + /* Old browsers */ + -webkit-box-flex: 0; + -moz-box-flex: 0; + box-flex: 0; + /* Modern browsers */ + flex: none; +} +.hbox.reverse, +.vbox.reverse, +.reverse { + /* Old browsers */ + -webkit-box-direction: reverse; + -moz-box-direction: reverse; + box-direction: reverse; + /* Modern browsers */ + flex-direction: row-reverse; +} +.hbox.box-flex0, +.vbox.box-flex0, +.box-flex0 { + /* Old browsers */ + -webkit-box-flex: 0; + -moz-box-flex: 0; + box-flex: 0; + /* Modern browsers */ + flex: none; + width: auto; +} +.hbox.box-flex1, +.vbox.box-flex1, +.box-flex1 { + /* Old browsers */ + -webkit-box-flex: 1; + -moz-box-flex: 1; + box-flex: 1; + /* Modern browsers */ + flex: 1; +} +.hbox.box-flex, +.vbox.box-flex, +.box-flex { + /* Old browsers */ + /* Old browsers */ + -webkit-box-flex: 1; + -moz-box-flex: 1; + box-flex: 1; + /* Modern browsers */ + flex: 1; +} +.hbox.box-flex2, +.vbox.box-flex2, +.box-flex2 { + /* Old browsers */ + -webkit-box-flex: 2; + -moz-box-flex: 2; + box-flex: 2; + /* Modern browsers */ + flex: 2; +} +.box-group1 { + /* Deprecated */ + -webkit-box-flex-group: 1; + -moz-box-flex-group: 1; + box-flex-group: 1; +} +.box-group2 { + /* Deprecated */ + -webkit-box-flex-group: 2; + -moz-box-flex-group: 2; + box-flex-group: 2; +} +.hbox.start, +.vbox.start, +.start { + /* Old browsers */ + -webkit-box-pack: start; + -moz-box-pack: start; + box-pack: start; + /* Modern browsers */ + justify-content: flex-start; +} +.hbox.end, +.vbox.end, +.end { + /* Old browsers */ + -webkit-box-pack: end; + -moz-box-pack: end; + box-pack: end; + /* Modern browsers */ + justify-content: flex-end; +} +.hbox.center, +.vbox.center, +.center { + /* Old browsers */ + -webkit-box-pack: center; + -moz-box-pack: center; + box-pack: center; + /* Modern browsers */ + justify-content: center; +} +.hbox.baseline, +.vbox.baseline, +.baseline { + /* Old browsers */ + -webkit-box-pack: baseline; + -moz-box-pack: baseline; + box-pack: baseline; + /* Modern browsers */ + justify-content: baseline; +} +.hbox.stretch, +.vbox.stretch, +.stretch { + /* Old browsers */ + -webkit-box-pack: stretch; + -moz-box-pack: stretch; + box-pack: stretch; + /* Modern browsers */ + justify-content: stretch; +} +.hbox.align-start, +.vbox.align-start, +.align-start { + /* Old browsers */ + -webkit-box-align: start; + -moz-box-align: start; + box-align: start; + /* Modern browsers */ + align-items: flex-start; +} +.hbox.align-end, +.vbox.align-end, +.align-end { + /* Old browsers */ + -webkit-box-align: end; + -moz-box-align: end; + box-align: end; + /* Modern browsers */ + align-items: flex-end; +} +.hbox.align-center, +.vbox.align-center, +.align-center { + /* Old browsers */ + -webkit-box-align: center; + -moz-box-align: center; + box-align: center; + /* Modern browsers */ + align-items: center; +} +.hbox.align-baseline, +.vbox.align-baseline, +.align-baseline { + /* Old browsers */ + -webkit-box-align: baseline; + -moz-box-align: baseline; + box-align: baseline; + /* Modern browsers */ + align-items: baseline; +} +.hbox.align-stretch, +.vbox.align-stretch, +.align-stretch { + /* Old browsers */ + -webkit-box-align: stretch; + -moz-box-align: stretch; + box-align: stretch; + /* Modern browsers */ + align-items: stretch; +} +div.error { + margin: 2em; + text-align: center; +} +div.error > h1 { + font-size: 500%; + line-height: normal; +} +div.error > p { + font-size: 200%; + line-height: normal; +} +div.traceback-wrapper { + text-align: left; + max-width: 800px; + margin: auto; +} +/** + * Primary styles + * + * Author: Jupyter Development Team + */ +body { + background-color: #fff; + /* This makes sure that the body covers the entire window and needs to + be in a different element than the display: box in wrapper below */ + position: absolute; + left: 0px; + right: 0px; + top: 0px; + bottom: 0px; + overflow: visible; +} +body > #header { + /* Initially hidden to prevent FLOUC */ + display: none; + background-color: #fff; + /* Display over codemirror */ + position: relative; + z-index: 100; +} +body > #header #header-container { + padding-bottom: 5px; + padding-top: 5px; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +body > #header .header-bar { + width: 100%; + height: 1px; + background: #e7e7e7; + margin-bottom: -1px; +} +@media print { + body > #header { + display: none !important; + } +} +#header-spacer { + width: 100%; + visibility: hidden; +} +@media print { + #header-spacer { + display: none; + } +} +#ipython_notebook { + padding-left: 0px; + padding-top: 1px; + padding-bottom: 1px; +} +@media (max-width: 991px) { + #ipython_notebook { + margin-left: 10px; + } +} +[dir="rtl"] #ipython_notebook { + float: right !important; +} +#noscript { + width: auto; + padding-top: 16px; + padding-bottom: 16px; + text-align: center; + font-size: 22px; + color: red; + font-weight: bold; +} +#ipython_notebook img { + height: 28px; +} +#site { + width: 100%; + display: none; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + overflow: auto; +} +@media print { + #site { + height: auto !important; + } +} +/* Smaller buttons */ +.ui-button .ui-button-text { + padding: 0.2em 0.8em; + font-size: 77%; +} +input.ui-button { + padding: 0.3em 0.9em; +} +span#login_widget { + float: right; +} +span#login_widget > .button, +#logout { + color: #333; + background-color: #fff; + border-color: #ccc; +} +span#login_widget > .button:focus, +#logout:focus, +span#login_widget > .button.focus, +#logout.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +span#login_widget > .button:hover, +#logout:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +span#login_widget > .button:active, +#logout:active, +span#login_widget > .button.active, +#logout.active, +.open > .dropdown-togglespan#login_widget > .button, +.open > .dropdown-toggle#logout { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +span#login_widget > .button:active:hover, +#logout:active:hover, +span#login_widget > .button.active:hover, +#logout.active:hover, +.open > .dropdown-togglespan#login_widget > .button:hover, +.open > .dropdown-toggle#logout:hover, +span#login_widget > .button:active:focus, +#logout:active:focus, +span#login_widget > .button.active:focus, +#logout.active:focus, +.open > .dropdown-togglespan#login_widget > .button:focus, +.open > .dropdown-toggle#logout:focus, +span#login_widget > .button:active.focus, +#logout:active.focus, +span#login_widget > .button.active.focus, +#logout.active.focus, +.open > .dropdown-togglespan#login_widget > .button.focus, +.open > .dropdown-toggle#logout.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +span#login_widget > .button:active, +#logout:active, +span#login_widget > .button.active, +#logout.active, +.open > .dropdown-togglespan#login_widget > .button, +.open > .dropdown-toggle#logout { + background-image: none; +} +span#login_widget > .button.disabled:hover, +#logout.disabled:hover, +span#login_widget > .button[disabled]:hover, +#logout[disabled]:hover, +fieldset[disabled] span#login_widget > .button:hover, +fieldset[disabled] #logout:hover, +span#login_widget > .button.disabled:focus, +#logout.disabled:focus, +span#login_widget > .button[disabled]:focus, +#logout[disabled]:focus, +fieldset[disabled] span#login_widget > .button:focus, +fieldset[disabled] #logout:focus, +span#login_widget > .button.disabled.focus, +#logout.disabled.focus, +span#login_widget > .button[disabled].focus, +#logout[disabled].focus, +fieldset[disabled] span#login_widget > .button.focus, +fieldset[disabled] #logout.focus { + background-color: #fff; + border-color: #ccc; +} +span#login_widget > .button .badge, +#logout .badge { + color: #fff; + background-color: #333; +} +.nav-header { + text-transform: none; +} +#header > span { + margin-top: 10px; +} +.modal_stretch .modal-dialog { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; + min-height: 80vh; +} +.modal_stretch .modal-dialog .modal-body { + max-height: calc(100vh - 200px); + overflow: auto; + flex: 1; +} +@media (min-width: 768px) { + .modal .modal-dialog { + width: 700px; + } +} +@media (min-width: 768px) { + select.form-control { + margin-left: 12px; + margin-right: 12px; + } +} +/*! +* +* IPython auth +* +*/ +.center-nav { + display: inline-block; + margin-bottom: -4px; +} +/*! +* +* IPython tree view +* +*/ +/* We need an invisible input field on top of the sentense*/ +/* "Drag file onto the list ..." */ +.alternate_upload { + background-color: none; + display: inline; +} +.alternate_upload.form { + padding: 0; + margin: 0; +} +.alternate_upload input.fileinput { + text-align: center; + vertical-align: middle; + display: inline; + opacity: 0; + z-index: 2; + width: 12ex; + margin-right: -12ex; +} +.alternate_upload .btn-upload { + height: 22px; +} +/** + * Primary styles + * + * Author: Jupyter Development Team + */ +[dir="rtl"] #tabs li { + float: right; +} +ul#tabs { + margin-bottom: 4px; +} +[dir="rtl"] ul#tabs { + margin-right: 0px; +} +ul#tabs a { + padding-top: 6px; + padding-bottom: 4px; +} +ul.breadcrumb a:focus, +ul.breadcrumb a:hover { + text-decoration: none; +} +ul.breadcrumb i.icon-home { + font-size: 16px; + margin-right: 4px; +} +ul.breadcrumb span { + color: #5e5e5e; +} +.list_toolbar { + padding: 4px 0 4px 0; + vertical-align: middle; +} +.list_toolbar .tree-buttons { + padding-top: 1px; +} +[dir="rtl"] .list_toolbar .tree-buttons { + float: left !important; +} +[dir="rtl"] .list_toolbar .pull-right { + padding-top: 1px; + float: left !important; +} +[dir="rtl"] .list_toolbar .pull-left { + float: right !important; +} +.dynamic-buttons { + padding-top: 3px; + display: inline-block; +} +.list_toolbar [class*="span"] { + min-height: 24px; +} +.list_header { + font-weight: bold; + background-color: #EEE; +} +.list_placeholder { + font-weight: bold; + padding-top: 4px; + padding-bottom: 4px; + padding-left: 7px; + padding-right: 7px; +} +.list_container { + margin-top: 4px; + margin-bottom: 20px; + border: 1px solid #ddd; + border-radius: 2px; +} +.list_container > div { + border-bottom: 1px solid #ddd; +} +.list_container > div:hover .list-item { + background-color: red; +} +.list_container > div:last-child { + border: none; +} +.list_item:hover .list_item { + background-color: #ddd; +} +.list_item a { + text-decoration: none; +} +.list_item:hover { + background-color: #fafafa; +} +.list_header > div, +.list_item > div { + padding-top: 4px; + padding-bottom: 4px; + padding-left: 7px; + padding-right: 7px; + line-height: 22px; +} +.list_header > div input, +.list_item > div input { + margin-right: 7px; + margin-left: 14px; + vertical-align: baseline; + line-height: 22px; + position: relative; + top: -1px; +} +.list_header > div .item_link, +.list_item > div .item_link { + margin-left: -1px; + vertical-align: baseline; + line-height: 22px; +} +.new-file input[type=checkbox] { + visibility: hidden; +} +.item_name { + line-height: 22px; + height: 24px; +} +.item_icon { + font-size: 14px; + color: #5e5e5e; + margin-right: 7px; + margin-left: 7px; + line-height: 22px; + vertical-align: baseline; +} +.item_buttons { + line-height: 1em; + margin-left: -5px; +} +.item_buttons .btn, +.item_buttons .btn-group, +.item_buttons .input-group { + float: left; +} +.item_buttons > .btn, +.item_buttons > .btn-group, +.item_buttons > .input-group { + margin-left: 5px; +} +.item_buttons .btn { + min-width: 13ex; +} +.item_buttons .running-indicator { + padding-top: 4px; + color: #5cb85c; +} +.item_buttons .kernel-name { + padding-top: 4px; + color: #5bc0de; + margin-right: 7px; + float: left; +} +.toolbar_info { + height: 24px; + line-height: 24px; +} +.list_item input:not([type=checkbox]) { + padding-top: 3px; + padding-bottom: 3px; + height: 22px; + line-height: 14px; + margin: 0px; +} +.highlight_text { + color: blue; +} +#project_name { + display: inline-block; + padding-left: 7px; + margin-left: -2px; +} +#project_name > .breadcrumb { + padding: 0px; + margin-bottom: 0px; + background-color: transparent; + font-weight: bold; +} +#tree-selector { + padding-right: 0px; +} +[dir="rtl"] #tree-selector a { + float: right; +} +#button-select-all { + min-width: 50px; +} +#select-all { + margin-left: 7px; + margin-right: 2px; +} +.menu_icon { + margin-right: 2px; +} +.tab-content .row { + margin-left: 0px; + margin-right: 0px; +} +.folder_icon:before { + 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; + content: "\f114"; +} +.folder_icon:before.pull-left { + margin-right: .3em; +} +.folder_icon:before.pull-right { + margin-left: .3em; +} +.notebook_icon:before { + 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; + content: "\f02d"; + position: relative; + top: -1px; +} +.notebook_icon:before.pull-left { + margin-right: .3em; +} +.notebook_icon:before.pull-right { + margin-left: .3em; +} +.running_notebook_icon:before { + 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; + content: "\f02d"; + position: relative; + top: -1px; + color: #5cb85c; +} +.running_notebook_icon:before.pull-left { + margin-right: .3em; +} +.running_notebook_icon:before.pull-right { + margin-left: .3em; +} +.file_icon:before { + 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; + content: "\f016"; + position: relative; + top: -2px; +} +.file_icon:before.pull-left { + margin-right: .3em; +} +.file_icon:before.pull-right { + margin-left: .3em; +} +#notebook_toolbar .pull-right { + padding-top: 0px; + margin-right: -1px; +} +ul#new-menu { + left: auto; + right: 0; +} +[dir="rtl"] #new-menu { + text-align: right; +} +.kernel-menu-icon { + padding-right: 12px; + width: 24px; + content: "\f096"; +} +.kernel-menu-icon:before { + content: "\f096"; +} +.kernel-menu-icon-current:before { + content: "\f00c"; +} +#tab_content { + padding-top: 20px; +} +#running .panel-group .panel { + margin-top: 3px; + margin-bottom: 1em; +} +#running .panel-group .panel .panel-heading { + background-color: #EEE; + padding-top: 4px; + padding-bottom: 4px; + padding-left: 7px; + padding-right: 7px; + line-height: 22px; +} +#running .panel-group .panel .panel-heading a:focus, +#running .panel-group .panel .panel-heading a:hover { + text-decoration: none; +} +#running .panel-group .panel .panel-body { + padding: 0px; +} +#running .panel-group .panel .panel-body .list_container { + margin-top: 0px; + margin-bottom: 0px; + border: 0px; + border-radius: 0px; +} +#running .panel-group .panel .panel-body .list_container .list_item { + border-bottom: 1px solid #ddd; +} +#running .panel-group .panel .panel-body .list_container .list_item:last-child { + border-bottom: 0px; +} +[dir="rtl"] #running .col-sm-8 { + float: right !important; +} +.delete-button { + display: none; +} +.duplicate-button { + display: none; +} +.rename-button { + display: none; +} +.shutdown-button { + display: none; +} +.dynamic-instructions { + display: inline-block; + padding-top: 4px; +} +/*! +* +* IPython text editor webapp +* +*/ +.selected-keymap i.fa { + padding: 0px 5px; +} +.selected-keymap i.fa:before { + content: "\f00c"; +} +#mode-menu { + overflow: auto; + max-height: 20em; +} +.edit_app #header { + -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); +} +.edit_app #menubar .navbar { + /* Use a negative 1 bottom margin, so the border overlaps the border of the + header */ + margin-bottom: -1px; +} +.dirty-indicator { + 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; + width: 20px; +} +.dirty-indicator.pull-left { + margin-right: .3em; +} +.dirty-indicator.pull-right { + margin-left: .3em; +} +.dirty-indicator-dirty { + 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; + width: 20px; +} +.dirty-indicator-dirty.pull-left { + margin-right: .3em; +} +.dirty-indicator-dirty.pull-right { + margin-left: .3em; +} +.dirty-indicator-clean { + 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; + width: 20px; +} +.dirty-indicator-clean.pull-left { + margin-right: .3em; +} +.dirty-indicator-clean.pull-right { + margin-left: .3em; +} +.dirty-indicator-clean:before { + 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; + content: "\f00c"; +} +.dirty-indicator-clean:before.pull-left { + margin-right: .3em; +} +.dirty-indicator-clean:before.pull-right { + margin-left: .3em; +} +#filename { + font-size: 16pt; + display: table; + padding: 0px 5px; +} +#current-mode { + padding-left: 5px; + padding-right: 5px; +} +#texteditor-backdrop { + padding-top: 20px; + padding-bottom: 20px; +} +@media not print { + #texteditor-backdrop { + background-color: #EEE; + } +} +@media print { + #texteditor-backdrop #texteditor-container .CodeMirror-gutter, + #texteditor-backdrop #texteditor-container .CodeMirror-gutters { + background-color: #fff; + } +} +@media not print { + #texteditor-backdrop #texteditor-container .CodeMirror-gutter, + #texteditor-backdrop #texteditor-container .CodeMirror-gutters { + background-color: #fff; + } +} +@media not print { + #texteditor-backdrop #texteditor-container { + padding: 0px; + background-color: #fff; + -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + } +} +/*! +* +* IPython notebook +* +*/ +/* CSS font colors for translated ANSI colors. */ +.ansibold { + font-weight: bold; +} +/* use dark versions for foreground, to improve visibility */ +.ansiblack { + color: black; +} +.ansired { + color: darkred; +} +.ansigreen { + color: darkgreen; +} +.ansiyellow { + color: #c4a000; +} +.ansiblue { + color: darkblue; +} +.ansipurple { + color: darkviolet; +} +.ansicyan { + color: steelblue; +} +.ansigray { + color: gray; +} +/* and light for background, for the same reason */ +.ansibgblack { + background-color: black; +} +.ansibgred { + background-color: red; +} +.ansibggreen { + background-color: green; +} +.ansibgyellow { + background-color: yellow; +} +.ansibgblue { + background-color: blue; +} +.ansibgpurple { + background-color: magenta; +} +.ansibgcyan { + background-color: cyan; +} +.ansibggray { + background-color: gray; +} +div.cell { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; + border-radius: 2px; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: transparent; + width: 100%; + padding: 5px; + /* This acts as a spacer between cells, that is outside the border */ + margin: 0px; + outline: none; + border-left-width: 1px; + padding-left: 5px; + background: linear-gradient(to right, transparent -40px, transparent 1px, transparent 1px, transparent 100%); +} +div.cell.jupyter-soft-selected { + border-left-color: #90CAF9; + border-left-color: #E3F2FD; + border-left-width: 1px; + padding-left: 5px; + border-right-color: #E3F2FD; + border-right-width: 1px; + background: #E3F2FD; +} +@media print { + div.cell.jupyter-soft-selected { + border-color: transparent; + } +} +div.cell.selected { + border-color: #ababab; + border-left-width: 0px; + padding-left: 6px; + background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 5px, transparent 5px, transparent 100%); +} +@media print { + div.cell.selected { + border-color: transparent; + } +} +div.cell.selected.jupyter-soft-selected { + border-left-width: 0; + padding-left: 6px; + background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 7px, #E3F2FD 7px, #E3F2FD 100%); +} +.edit_mode div.cell.selected { + border-color: #66BB6A; + border-left-width: 0px; + padding-left: 6px; + background: linear-gradient(to right, #66BB6A -40px, #66BB6A 5px, transparent 5px, transparent 100%); +} +@media print { + .edit_mode div.cell.selected { + border-color: transparent; + } +} +.prompt { + /* This needs to be wide enough for 3 digit prompt numbers: In[100]: */ + min-width: 14ex; + /* This padding is tuned to match the padding on the CodeMirror editor. */ + padding: 0.4em; + margin: 0px; + font-family: monospace; + text-align: right; + /* This has to match that of the the CodeMirror class line-height below */ + line-height: 1.21429em; + /* Don't highlight prompt number selection */ + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + /* Use default cursor */ + cursor: default; +} +@media (max-width: 540px) { + .prompt { + text-align: left; + } +} +div.inner_cell { + min-width: 0; + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; + /* Old browsers */ + -webkit-box-flex: 1; + -moz-box-flex: 1; + box-flex: 1; + /* Modern browsers */ + flex: 1; +} +/* input_area and input_prompt must match in top border and margin for alignment */ +div.input_area { + border: 1px solid #cfcfcf; + border-radius: 2px; + background: #f7f7f7; + line-height: 1.21429em; +} +/* This is needed so that empty prompt areas can collapse to zero height when there + is no content in the output_subarea and the prompt. The main purpose of this is + to make sure that empty JavaScript output_subareas have no height. */ +div.prompt:empty { + padding-top: 0; + padding-bottom: 0; +} +div.unrecognized_cell { + padding: 5px 5px 5px 0px; + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: horizontal; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: horizontal; + -moz-box-align: stretch; + display: box; + box-orient: horizontal; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: row; + align-items: stretch; +} +div.unrecognized_cell .inner_cell { + border-radius: 2px; + padding: 5px; + font-weight: bold; + color: red; + border: 1px solid #cfcfcf; + background: #eaeaea; +} +div.unrecognized_cell .inner_cell a { + color: inherit; + text-decoration: none; +} +div.unrecognized_cell .inner_cell a:hover { + color: inherit; + text-decoration: none; +} +@media (max-width: 540px) { + div.unrecognized_cell > div.prompt { + display: none; + } +} +div.code_cell { + /* avoid page breaking on code cells when printing */ +} +@media print { + div.code_cell { + page-break-inside: avoid; + } +} +/* any special styling for code cells that are currently running goes here */ +div.input { + page-break-inside: avoid; + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: horizontal; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: horizontal; + -moz-box-align: stretch; + display: box; + box-orient: horizontal; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: row; + align-items: stretch; +} +@media (max-width: 540px) { + div.input { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; + } +} +/* input_area and input_prompt must match in top border and margin for alignment */ +div.input_prompt { + color: #303F9F; + border-top: 1px solid transparent; +} +div.input_area > div.highlight { + margin: 0.4em; + border: none; + padding: 0px; + background-color: transparent; +} +div.input_area > div.highlight > pre { + margin: 0px; + border: none; + padding: 0px; + background-color: transparent; +} +/* The following gets added to the <head> if it is detected that the user has a + * monospace font with inconsistent normal/bold/italic height. See + * notebookmain.js. Such fonts will have keywords vertically offset with + * respect to the rest of the text. The user should select a better font. + * See: https://github.com/ipython/ipython/issues/1503 + * + * .CodeMirror span { + * vertical-align: bottom; + * } + */ +.CodeMirror { + line-height: 1.21429em; + /* Changed from 1em to our global default */ + font-size: 14px; + height: auto; + /* Changed to auto to autogrow */ + background: none; + /* Changed from white to allow our bg to show through */ +} +.CodeMirror-scroll { + /* The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/ + /* We have found that if it is visible, vertical scrollbars appear with font size changes.*/ + overflow-y: hidden; + overflow-x: auto; +} +.CodeMirror-lines { + /* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */ + /* we have set a different line-height and want this to scale with that. */ + padding: 0.4em; +} +.CodeMirror-linenumber { + padding: 0 8px 0 4px; +} +.CodeMirror-gutters { + border-bottom-left-radius: 2px; + border-top-left-radius: 2px; +} +.CodeMirror pre { + /* In CM3 this went to 4px from 0 in CM2. We need the 0 value because of how we size */ + /* .CodeMirror-lines */ + padding: 0; + border: 0; + border-radius: 0; +} +/* + +Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org> +Adapted from GitHub theme + +*/ +.highlight-base { + color: #000; +} +.highlight-variable { + color: #000; +} +.highlight-variable-2 { + color: #1a1a1a; +} +.highlight-variable-3 { + color: #333333; +} +.highlight-string { + color: #BA2121; +} +.highlight-comment { + color: #408080; + font-style: italic; +} +.highlight-number { + color: #080; +} +.highlight-atom { + color: #88F; +} +.highlight-keyword { + color: #008000; + font-weight: bold; +} +.highlight-builtin { + color: #008000; +} +.highlight-error { + color: #f00; +} +.highlight-operator { + color: #AA22FF; + font-weight: bold; +} +.highlight-meta { + color: #AA22FF; +} +/* previously not defined, copying from default codemirror */ +.highlight-def { + color: #00f; +} +.highlight-string-2 { + color: #f50; +} +.highlight-qualifier { + color: #555; +} +.highlight-bracket { + color: #997; +} +.highlight-tag { + color: #170; +} +.highlight-attribute { + color: #00c; +} +.highlight-header { + color: blue; +} +.highlight-quote { + color: #090; +} +.highlight-link { + color: #00c; +} +/* apply the same style to codemirror */ +.cm-s-ipython span.cm-keyword { + color: #008000; + font-weight: bold; +} +.cm-s-ipython span.cm-atom { + color: #88F; +} +.cm-s-ipython span.cm-number { + color: #080; +} +.cm-s-ipython span.cm-def { + color: #00f; +} +.cm-s-ipython span.cm-variable { + color: #000; +} +.cm-s-ipython span.cm-operator { + color: #AA22FF; + font-weight: bold; +} +.cm-s-ipython span.cm-variable-2 { + color: #1a1a1a; +} +.cm-s-ipython span.cm-variable-3 { + color: #333333; +} +.cm-s-ipython span.cm-comment { + color: #408080; + font-style: italic; +} +.cm-s-ipython span.cm-string { + color: #BA2121; +} +.cm-s-ipython span.cm-string-2 { + color: #f50; +} +.cm-s-ipython span.cm-meta { + color: #AA22FF; +} +.cm-s-ipython span.cm-qualifier { + color: #555; +} +.cm-s-ipython span.cm-builtin { + color: #008000; +} +.cm-s-ipython span.cm-bracket { + color: #997; +} +.cm-s-ipython span.cm-tag { + color: #170; +} +.cm-s-ipython span.cm-attribute { + color: #00c; +} +.cm-s-ipython span.cm-header { + color: blue; +} +.cm-s-ipython span.cm-quote { + color: #090; +} +.cm-s-ipython span.cm-link { + color: #00c; +} +.cm-s-ipython span.cm-error { + color: #f00; +} +.cm-s-ipython span.cm-tab { + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=); + background-position: right; + background-repeat: no-repeat; +} +div.output_wrapper { + /* this position must be relative to enable descendents to be absolute within it */ + position: relative; + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; + z-index: 1; +} +/* class for the output area when it should be height-limited */ +div.output_scroll { + /* ideally, this would be max-height, but FF barfs all over that */ + height: 24em; + /* FF needs this *and the wrapper* to specify full width, or it will shrinkwrap */ + width: 100%; + overflow: auto; + border-radius: 2px; + -webkit-box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8); + box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8); + display: block; +} +/* output div while it is collapsed */ +div.output_collapsed { + margin: 0px; + padding: 0px; + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; +} +div.out_prompt_overlay { + height: 100%; + padding: 0px 0.4em; + position: absolute; + border-radius: 2px; +} +div.out_prompt_overlay:hover { + /* use inner shadow to get border that is computed the same on WebKit/FF */ + -webkit-box-shadow: inset 0 0 1px #000; + box-shadow: inset 0 0 1px #000; + background: rgba(240, 240, 240, 0.5); +} +div.output_prompt { + color: #D84315; +} +/* This class is the outer container of all output sections. */ +div.output_area { + padding: 0px; + page-break-inside: avoid; + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: horizontal; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: horizontal; + -moz-box-align: stretch; + display: box; + box-orient: horizontal; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: row; + align-items: stretch; +} +div.output_area .MathJax_Display { + text-align: left !important; +} +div.output_area .rendered_html table { + margin-left: 0; + margin-right: 0; +} +div.output_area .rendered_html img { + margin-left: 0; + margin-right: 0; +} +div.output_area img, +div.output_area svg { + max-width: 100%; + height: auto; +} +div.output_area img.unconfined, +div.output_area svg.unconfined { + max-width: none; +} +/* This is needed to protect the pre formating from global settings such + as that of bootstrap */ +.output { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; +} +@media (max-width: 540px) { + div.output_area { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: vertical; + -moz-box-align: stretch; + display: box; + box-orient: vertical; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: column; + align-items: stretch; + } +} +div.output_area pre { + margin: 0; + padding: 0; + border: 0; + vertical-align: baseline; + color: black; + background-color: transparent; + border-radius: 0; +} +/* This class is for the output subarea inside the output_area and after + the prompt div. */ +div.output_subarea { + overflow-x: auto; + padding: 0.4em; + /* Old browsers */ + -webkit-box-flex: 1; + -moz-box-flex: 1; + box-flex: 1; + /* Modern browsers */ + flex: 1; + max-width: calc(100% - 14ex); +} +div.output_scroll div.output_subarea { + overflow-x: visible; +} +/* The rest of the output_* classes are for special styling of the different + output types */ +/* all text output has this class: */ +div.output_text { + text-align: left; + color: #000; + /* This has to match that of the the CodeMirror class line-height below */ + line-height: 1.21429em; +} +/* stdout/stderr are 'text' as well as 'stream', but execute_result/error are *not* streams */ +div.output_stderr { + background: #fdd; + /* very light red background for stderr */ +} +div.output_latex { + text-align: left; +} +/* Empty output_javascript divs should have no height */ +div.output_javascript:empty { + padding: 0; +} +.js-error { + color: darkred; +} +/* raw_input styles */ +div.raw_input_container { + line-height: 1.21429em; + padding-top: 5px; +} +pre.raw_input_prompt { + /* nothing needed here. */ +} +input.raw_input { + font-family: monospace; + font-size: inherit; + color: inherit; + width: auto; + /* make sure input baseline aligns with prompt */ + vertical-align: baseline; + /* padding + margin = 0.5em between prompt and cursor */ + padding: 0em 0.25em; + margin: 0em 0.25em; +} +input.raw_input:focus { + box-shadow: none; +} +p.p-space { + margin-bottom: 10px; +} +div.output_unrecognized { + padding: 5px; + font-weight: bold; + color: red; +} +div.output_unrecognized a { + color: inherit; + text-decoration: none; +} +div.output_unrecognized a:hover { + color: inherit; + text-decoration: none; +} +.rendered_html { + color: #000; + /* any extras will just be numbers: */ +} +.rendered_html em { + font-style: italic; +} +.rendered_html strong { + font-weight: bold; +} +.rendered_html u { + text-decoration: underline; +} +.rendered_html :link { + text-decoration: underline; +} +.rendered_html :visited { + text-decoration: underline; +} +.rendered_html h1 { + font-size: 185.7%; + margin: 1.08em 0 0 0; + font-weight: bold; + line-height: 1.0; +} +.rendered_html h2 { + font-size: 157.1%; + margin: 1.27em 0 0 0; + font-weight: bold; + line-height: 1.0; +} +.rendered_html h3 { + font-size: 128.6%; + margin: 1.55em 0 0 0; + font-weight: bold; + line-height: 1.0; +} +.rendered_html h4 { + font-size: 100%; + margin: 2em 0 0 0; + font-weight: bold; + line-height: 1.0; +} +.rendered_html h5 { + font-size: 100%; + margin: 2em 0 0 0; + font-weight: bold; + line-height: 1.0; + font-style: italic; +} +.rendered_html h6 { + font-size: 100%; + margin: 2em 0 0 0; + font-weight: bold; + line-height: 1.0; + font-style: italic; +} +.rendered_html h1:first-child { + margin-top: 0.538em; +} +.rendered_html h2:first-child { + margin-top: 0.636em; +} +.rendered_html h3:first-child { + margin-top: 0.777em; +} +.rendered_html h4:first-child { + margin-top: 1em; +} +.rendered_html h5:first-child { + margin-top: 1em; +} +.rendered_html h6:first-child { + margin-top: 1em; +} +.rendered_html ul { + list-style: disc; + margin: 0em 2em; + padding-left: 0px; +} +.rendered_html ul ul { + list-style: square; + margin: 0em 2em; +} +.rendered_html ul ul ul { + list-style: circle; + margin: 0em 2em; +} +.rendered_html ol { + list-style: decimal; + margin: 0em 2em; + padding-left: 0px; +} +.rendered_html ol ol { + list-style: upper-alpha; + margin: 0em 2em; +} +.rendered_html ol ol ol { + list-style: lower-alpha; + margin: 0em 2em; +} +.rendered_html ol ol ol ol { + list-style: lower-roman; + margin: 0em 2em; +} +.rendered_html ol ol ol ol ol { + list-style: decimal; + margin: 0em 2em; +} +.rendered_html * + ul { + margin-top: 1em; +} +.rendered_html * + ol { + margin-top: 1em; +} +.rendered_html hr { + color: black; + background-color: black; +} +.rendered_html pre { + margin: 1em 2em; +} +.rendered_html pre, +.rendered_html code { + border: 0; + background-color: #fff; + color: #000; + font-size: 100%; + padding: 0px; +} +.rendered_html blockquote { + margin: 1em 2em; +} +.rendered_html table { + margin-left: auto; + margin-right: auto; + border: 1px solid black; + border-collapse: collapse; +} +.rendered_html tr, +.rendered_html th, +.rendered_html td { + border: 1px solid black; + border-collapse: collapse; + margin: 1em 2em; +} +.rendered_html td, +.rendered_html th { + text-align: left; + vertical-align: middle; + padding: 4px; +} +.rendered_html th { + font-weight: bold; +} +.rendered_html * + table { + margin-top: 1em; +} +.rendered_html p { + text-align: left; +} +.rendered_html * + p { + margin-top: 1em; +} +.rendered_html img { + display: block; + margin-left: auto; + margin-right: auto; +} +.rendered_html * + img { + margin-top: 1em; +} +.rendered_html img, +.rendered_html svg { + max-width: 100%; + height: auto; +} +.rendered_html img.unconfined, +.rendered_html svg.unconfined { + max-width: none; +} +div.text_cell { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: horizontal; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: horizontal; + -moz-box-align: stretch; + display: box; + box-orient: horizontal; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: row; + align-items: stretch; +} +@media (max-width: 540px) { + div.text_cell > div.prompt { + display: none; + } +} +div.text_cell_render { + /*font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;*/ + outline: none; + resize: none; + width: inherit; + border-style: none; + padding: 0.5em 0.5em 0.5em 0.4em; + color: #000; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +a.anchor-link:link { + text-decoration: none; + padding: 0px 20px; + visibility: hidden; +} +h1:hover .anchor-link, +h2:hover .anchor-link, +h3:hover .anchor-link, +h4:hover .anchor-link, +h5:hover .anchor-link, +h6:hover .anchor-link { + visibility: visible; +} +.text_cell.rendered .input_area { + display: none; +} +.text_cell.rendered .rendered_html { + overflow-x: auto; + overflow-y: hidden; +} +.text_cell.unrendered .text_cell_render { + display: none; +} +.cm-header-1, +.cm-header-2, +.cm-header-3, +.cm-header-4, +.cm-header-5, +.cm-header-6 { + font-weight: bold; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} +.cm-header-1 { + font-size: 185.7%; +} +.cm-header-2 { + font-size: 157.1%; +} +.cm-header-3 { + font-size: 128.6%; +} +.cm-header-4 { + font-size: 110%; +} +.cm-header-5 { + font-size: 100%; + font-style: italic; +} +.cm-header-6 { + font-size: 100%; + font-style: italic; +} +/*! +* +* IPython notebook webapp +* +*/ +@media (max-width: 767px) { + .notebook_app { + padding-left: 0px; + padding-right: 0px; + } +} +#ipython-main-app { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + height: 100%; +} +div#notebook_panel { + margin: 0px; + padding: 0px; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + height: 100%; +} +div#notebook { + font-size: 14px; + line-height: 20px; + overflow-y: hidden; + overflow-x: auto; + width: 100%; + /* This spaces the page away from the edge of the notebook area */ + padding-top: 20px; + margin: 0px; + outline: none; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + min-height: 100%; +} +@media not print { + #notebook-container { + padding: 15px; + background-color: #fff; + min-height: 0; + -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + } +} +@media print { + #notebook-container { + width: 100%; + } +} +div.ui-widget-content { + border: 1px solid #ababab; + outline: none; +} +pre.dialog { + background-color: #f7f7f7; + border: 1px solid #ddd; + border-radius: 2px; + padding: 0.4em; + padding-left: 2em; +} +p.dialog { + padding: 0.2em; +} +/* Word-wrap output correctly. This is the CSS3 spelling, though Firefox seems + to not honor it correctly. Webkit browsers (Chrome, rekonq, Safari) do. + */ +pre, +code, +kbd, +samp { + white-space: pre-wrap; +} +#fonttest { + font-family: monospace; +} +p { + margin-bottom: 0; +} +.end_space { + min-height: 100px; + transition: height .2s ease; +} +.notebook_app > #header { + -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); +} +@media not print { + .notebook_app { + background-color: #EEE; + } +} +kbd { + border-style: solid; + border-width: 1px; + box-shadow: none; + margin: 2px; + padding-left: 2px; + padding-right: 2px; + padding-top: 1px; + padding-bottom: 1px; +} +/* CSS for the cell toolbar */ +.celltoolbar { + border: thin solid #CFCFCF; + border-bottom: none; + background: #EEE; + border-radius: 2px 2px 0px 0px; + width: 100%; + height: 29px; + padding-right: 4px; + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: horizontal; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: horizontal; + -moz-box-align: stretch; + display: box; + box-orient: horizontal; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: row; + align-items: stretch; + /* Old browsers */ + -webkit-box-pack: end; + -moz-box-pack: end; + box-pack: end; + /* Modern browsers */ + justify-content: flex-end; + display: -webkit-flex; +} +@media print { + .celltoolbar { + display: none; + } +} +.ctb_hideshow { + display: none; + vertical-align: bottom; +} +/* ctb_show is added to the ctb_hideshow div to show the cell toolbar. + Cell toolbars are only shown when the ctb_global_show class is also set. +*/ +.ctb_global_show .ctb_show.ctb_hideshow { + display: block; +} +.ctb_global_show .ctb_show + .input_area, +.ctb_global_show .ctb_show + div.text_cell_input, +.ctb_global_show .ctb_show ~ div.text_cell_render { + border-top-right-radius: 0px; + border-top-left-radius: 0px; +} +.ctb_global_show .ctb_show ~ div.text_cell_render { + border: 1px solid #cfcfcf; +} +.celltoolbar { + font-size: 87%; + padding-top: 3px; +} +.celltoolbar select { + display: block; + width: 100%; + height: 32px; + padding: 6px 12px; + font-size: 13px; + line-height: 1.42857143; + color: #555555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 2px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 1px; + width: inherit; + font-size: inherit; + height: 22px; + padding: 0px; + display: inline-block; +} +.celltoolbar select:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); +} +.celltoolbar select::-moz-placeholder { + color: #999; + opacity: 1; +} +.celltoolbar select:-ms-input-placeholder { + color: #999; +} +.celltoolbar select::-webkit-input-placeholder { + color: #999; +} +.celltoolbar select::-ms-expand { + border: 0; + background-color: transparent; +} +.celltoolbar select[disabled], +.celltoolbar select[readonly], +fieldset[disabled] .celltoolbar select { + background-color: #eeeeee; + opacity: 1; +} +.celltoolbar select[disabled], +fieldset[disabled] .celltoolbar select { + cursor: not-allowed; +} +textarea.celltoolbar select { + height: auto; +} +select.celltoolbar select { + height: 30px; + line-height: 30px; +} +textarea.celltoolbar select, +select[multiple].celltoolbar select { + height: auto; +} +.celltoolbar label { + margin-left: 5px; + margin-right: 5px; +} +.completions { + position: absolute; + z-index: 110; + overflow: hidden; + border: 1px solid #ababab; + border-radius: 2px; + -webkit-box-shadow: 0px 6px 10px -1px #adadad; + box-shadow: 0px 6px 10px -1px #adadad; + line-height: 1; +} +.completions select { + background: white; + outline: none; + border: none; + padding: 0px; + margin: 0px; + overflow: auto; + font-family: monospace; + font-size: 110%; + color: #000; + width: auto; +} +.completions select option.context { + color: #286090; +} +#kernel_logo_widget { + float: right !important; + float: right; +} +#kernel_logo_widget .current_kernel_logo { + display: none; + margin-top: -1px; + margin-bottom: -1px; + width: 32px; + height: 32px; +} +#menubar { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + margin-top: 1px; +} +#menubar .navbar { + border-top: 1px; + border-radius: 0px 0px 2px 2px; + margin-bottom: 0px; +} +#menubar .navbar-toggle { + float: left; + padding-top: 7px; + padding-bottom: 7px; + border: none; +} +#menubar .navbar-collapse { + clear: left; +} +.nav-wrapper { + border-bottom: 1px solid #e7e7e7; +} +i.menu-icon { + padding-top: 4px; +} +ul#help_menu li a { + overflow: hidden; + padding-right: 2.2em; +} +ul#help_menu li a i { + margin-right: -1.2em; +} +.dropdown-submenu { + position: relative; +} +.dropdown-submenu > .dropdown-menu { + top: 0; + left: 100%; + margin-top: -6px; + margin-left: -1px; +} +.dropdown-submenu:hover > .dropdown-menu { + display: block; +} +.dropdown-submenu > a:after { + 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; + display: block; + content: "\f0da"; + float: right; + color: #333333; + margin-top: 2px; + margin-right: -10px; +} +.dropdown-submenu > a:after.pull-left { + margin-right: .3em; +} +.dropdown-submenu > a:after.pull-right { + margin-left: .3em; +} +.dropdown-submenu:hover > a:after { + color: #262626; +} +.dropdown-submenu.pull-left { + float: none; +} +.dropdown-submenu.pull-left > .dropdown-menu { + left: -100%; + margin-left: 10px; +} +#notification_area { + float: right !important; + float: right; + z-index: 10; +} +.indicator_area { + float: right !important; + float: right; + color: #777; + margin-left: 5px; + margin-right: 5px; + width: 11px; + z-index: 10; + text-align: center; + width: auto; +} +#kernel_indicator { + float: right !important; + float: right; + color: #777; + margin-left: 5px; + margin-right: 5px; + width: 11px; + z-index: 10; + text-align: center; + width: auto; + border-left: 1px solid; +} +#kernel_indicator .kernel_indicator_name { + padding-left: 5px; + padding-right: 5px; +} +#modal_indicator { + float: right !important; + float: right; + color: #777; + margin-left: 5px; + margin-right: 5px; + width: 11px; + z-index: 10; + text-align: center; + width: auto; +} +#readonly-indicator { + float: right !important; + float: right; + color: #777; + margin-left: 5px; + margin-right: 5px; + width: 11px; + z-index: 10; + text-align: center; + width: auto; + margin-top: 2px; + margin-bottom: 0px; + margin-left: 0px; + margin-right: 0px; + display: none; +} +.modal_indicator:before { + width: 1.28571429em; + text-align: center; +} +.edit_mode .modal_indicator:before { + 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; + content: "\f040"; +} +.edit_mode .modal_indicator:before.pull-left { + margin-right: .3em; +} +.edit_mode .modal_indicator:before.pull-right { + margin-left: .3em; +} +.command_mode .modal_indicator:before { + 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; + content: ' '; +} +.command_mode .modal_indicator:before.pull-left { + margin-right: .3em; +} +.command_mode .modal_indicator:before.pull-right { + margin-left: .3em; +} +.kernel_idle_icon:before { + 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; + content: "\f10c"; +} +.kernel_idle_icon:before.pull-left { + margin-right: .3em; +} +.kernel_idle_icon:before.pull-right { + margin-left: .3em; +} +.kernel_busy_icon:before { + 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; + content: "\f111"; +} +.kernel_busy_icon:before.pull-left { + margin-right: .3em; +} +.kernel_busy_icon:before.pull-right { + margin-left: .3em; +} +.kernel_dead_icon:before { + 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; + content: "\f1e2"; +} +.kernel_dead_icon:before.pull-left { + margin-right: .3em; +} +.kernel_dead_icon:before.pull-right { + margin-left: .3em; +} +.kernel_disconnected_icon:before { + 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; + content: "\f127"; +} +.kernel_disconnected_icon:before.pull-left { + margin-right: .3em; +} +.kernel_disconnected_icon:before.pull-right { + margin-left: .3em; +} +.notification_widget { + color: #777; + z-index: 10; + background: rgba(240, 240, 240, 0.5); + margin-right: 4px; + color: #333; + background-color: #fff; + border-color: #ccc; +} +.notification_widget:focus, +.notification_widget.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.notification_widget:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.notification_widget:active, +.notification_widget.active, +.open > .dropdown-toggle.notification_widget { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.notification_widget:active:hover, +.notification_widget.active:hover, +.open > .dropdown-toggle.notification_widget:hover, +.notification_widget:active:focus, +.notification_widget.active:focus, +.open > .dropdown-toggle.notification_widget:focus, +.notification_widget:active.focus, +.notification_widget.active.focus, +.open > .dropdown-toggle.notification_widget.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +.notification_widget:active, +.notification_widget.active, +.open > .dropdown-toggle.notification_widget { + background-image: none; +} +.notification_widget.disabled:hover, +.notification_widget[disabled]:hover, +fieldset[disabled] .notification_widget:hover, +.notification_widget.disabled:focus, +.notification_widget[disabled]:focus, +fieldset[disabled] .notification_widget:focus, +.notification_widget.disabled.focus, +.notification_widget[disabled].focus, +fieldset[disabled] .notification_widget.focus { + background-color: #fff; + border-color: #ccc; +} +.notification_widget .badge { + color: #fff; + background-color: #333; +} +.notification_widget.warning { + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} +.notification_widget.warning:focus, +.notification_widget.warning.focus { + color: #fff; + background-color: #ec971f; + border-color: #985f0d; +} +.notification_widget.warning:hover { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.notification_widget.warning:active, +.notification_widget.warning.active, +.open > .dropdown-toggle.notification_widget.warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.notification_widget.warning:active:hover, +.notification_widget.warning.active:hover, +.open > .dropdown-toggle.notification_widget.warning:hover, +.notification_widget.warning:active:focus, +.notification_widget.warning.active:focus, +.open > .dropdown-toggle.notification_widget.warning:focus, +.notification_widget.warning:active.focus, +.notification_widget.warning.active.focus, +.open > .dropdown-toggle.notification_widget.warning.focus { + color: #fff; + background-color: #d58512; + border-color: #985f0d; +} +.notification_widget.warning:active, +.notification_widget.warning.active, +.open > .dropdown-toggle.notification_widget.warning { + background-image: none; +} +.notification_widget.warning.disabled:hover, +.notification_widget.warning[disabled]:hover, +fieldset[disabled] .notification_widget.warning:hover, +.notification_widget.warning.disabled:focus, +.notification_widget.warning[disabled]:focus, +fieldset[disabled] .notification_widget.warning:focus, +.notification_widget.warning.disabled.focus, +.notification_widget.warning[disabled].focus, +fieldset[disabled] .notification_widget.warning.focus { + background-color: #f0ad4e; + border-color: #eea236; +} +.notification_widget.warning .badge { + color: #f0ad4e; + background-color: #fff; +} +.notification_widget.success { + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.notification_widget.success:focus, +.notification_widget.success.focus { + color: #fff; + background-color: #449d44; + border-color: #255625; +} +.notification_widget.success:hover { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.notification_widget.success:active, +.notification_widget.success.active, +.open > .dropdown-toggle.notification_widget.success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.notification_widget.success:active:hover, +.notification_widget.success.active:hover, +.open > .dropdown-toggle.notification_widget.success:hover, +.notification_widget.success:active:focus, +.notification_widget.success.active:focus, +.open > .dropdown-toggle.notification_widget.success:focus, +.notification_widget.success:active.focus, +.notification_widget.success.active.focus, +.open > .dropdown-toggle.notification_widget.success.focus { + color: #fff; + background-color: #398439; + border-color: #255625; +} +.notification_widget.success:active, +.notification_widget.success.active, +.open > .dropdown-toggle.notification_widget.success { + background-image: none; +} +.notification_widget.success.disabled:hover, +.notification_widget.success[disabled]:hover, +fieldset[disabled] .notification_widget.success:hover, +.notification_widget.success.disabled:focus, +.notification_widget.success[disabled]:focus, +fieldset[disabled] .notification_widget.success:focus, +.notification_widget.success.disabled.focus, +.notification_widget.success[disabled].focus, +fieldset[disabled] .notification_widget.success.focus { + background-color: #5cb85c; + border-color: #4cae4c; +} +.notification_widget.success .badge { + color: #5cb85c; + background-color: #fff; +} +.notification_widget.info { + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; +} +.notification_widget.info:focus, +.notification_widget.info.focus { + color: #fff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.notification_widget.info:hover { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.notification_widget.info:active, +.notification_widget.info.active, +.open > .dropdown-toggle.notification_widget.info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.notification_widget.info:active:hover, +.notification_widget.info.active:hover, +.open > .dropdown-toggle.notification_widget.info:hover, +.notification_widget.info:active:focus, +.notification_widget.info.active:focus, +.open > .dropdown-toggle.notification_widget.info:focus, +.notification_widget.info:active.focus, +.notification_widget.info.active.focus, +.open > .dropdown-toggle.notification_widget.info.focus { + color: #fff; + background-color: #269abc; + border-color: #1b6d85; +} +.notification_widget.info:active, +.notification_widget.info.active, +.open > .dropdown-toggle.notification_widget.info { + background-image: none; +} +.notification_widget.info.disabled:hover, +.notification_widget.info[disabled]:hover, +fieldset[disabled] .notification_widget.info:hover, +.notification_widget.info.disabled:focus, +.notification_widget.info[disabled]:focus, +fieldset[disabled] .notification_widget.info:focus, +.notification_widget.info.disabled.focus, +.notification_widget.info[disabled].focus, +fieldset[disabled] .notification_widget.info.focus { + background-color: #5bc0de; + border-color: #46b8da; +} +.notification_widget.info .badge { + color: #5bc0de; + background-color: #fff; +} +.notification_widget.danger { + color: #fff; + background-color: #d9534f; + border-color: #d43f3a; +} +.notification_widget.danger:focus, +.notification_widget.danger.focus { + color: #fff; + background-color: #c9302c; + border-color: #761c19; +} +.notification_widget.danger:hover { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.notification_widget.danger:active, +.notification_widget.danger.active, +.open > .dropdown-toggle.notification_widget.danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.notification_widget.danger:active:hover, +.notification_widget.danger.active:hover, +.open > .dropdown-toggle.notification_widget.danger:hover, +.notification_widget.danger:active:focus, +.notification_widget.danger.active:focus, +.open > .dropdown-toggle.notification_widget.danger:focus, +.notification_widget.danger:active.focus, +.notification_widget.danger.active.focus, +.open > .dropdown-toggle.notification_widget.danger.focus { + color: #fff; + background-color: #ac2925; + border-color: #761c19; +} +.notification_widget.danger:active, +.notification_widget.danger.active, +.open > .dropdown-toggle.notification_widget.danger { + background-image: none; +} +.notification_widget.danger.disabled:hover, +.notification_widget.danger[disabled]:hover, +fieldset[disabled] .notification_widget.danger:hover, +.notification_widget.danger.disabled:focus, +.notification_widget.danger[disabled]:focus, +fieldset[disabled] .notification_widget.danger:focus, +.notification_widget.danger.disabled.focus, +.notification_widget.danger[disabled].focus, +fieldset[disabled] .notification_widget.danger.focus { + background-color: #d9534f; + border-color: #d43f3a; +} +.notification_widget.danger .badge { + color: #d9534f; + background-color: #fff; +} +div#pager { + background-color: #fff; + font-size: 14px; + line-height: 20px; + overflow: hidden; + display: none; + position: fixed; + bottom: 0px; + width: 100%; + max-height: 50%; + padding-top: 8px; + -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + /* Display over codemirror */ + z-index: 100; + /* Hack which prevents jquery ui resizable from changing top. */ + top: auto !important; +} +div#pager pre { + line-height: 1.21429em; + color: #000; + background-color: #f7f7f7; + padding: 0.4em; +} +div#pager #pager-button-area { + position: absolute; + top: 8px; + right: 20px; +} +div#pager #pager-contents { + position: relative; + overflow: auto; + width: 100%; + height: 100%; +} +div#pager #pager-contents #pager-container { + position: relative; + padding: 15px 0px; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +div#pager .ui-resizable-handle { + top: 0px; + height: 8px; + background: #f7f7f7; + border-top: 1px solid #cfcfcf; + border-bottom: 1px solid #cfcfcf; + /* This injects handle bars (a short, wide = symbol) for + the resize handle. */ +} +div#pager .ui-resizable-handle::after { + content: ''; + top: 2px; + left: 50%; + height: 3px; + width: 30px; + margin-left: -15px; + position: absolute; + border-top: 1px solid #cfcfcf; +} +.quickhelp { + /* Old browsers */ + display: -webkit-box; + -webkit-box-orient: horizontal; + -webkit-box-align: stretch; + display: -moz-box; + -moz-box-orient: horizontal; + -moz-box-align: stretch; + display: box; + box-orient: horizontal; + box-align: stretch; + /* Modern browsers */ + display: flex; + flex-direction: row; + align-items: stretch; + line-height: 1.8em; +} +.shortcut_key { + display: inline-block; + width: 21ex; + text-align: right; + font-family: monospace; +} +.shortcut_descr { + display: inline-block; + /* Old browsers */ + -webkit-box-flex: 1; + -moz-box-flex: 1; + box-flex: 1; + /* Modern browsers */ + flex: 1; +} +span.save_widget { + margin-top: 6px; +} +span.save_widget span.filename { + height: 1em; + line-height: 1em; + padding: 3px; + margin-left: 16px; + border: none; + font-size: 146.5%; + border-radius: 2px; +} +span.save_widget span.filename:hover { + background-color: #e6e6e6; +} +span.checkpoint_status, +span.autosave_status { + font-size: small; +} +@media (max-width: 767px) { + span.save_widget { + font-size: small; + } + span.checkpoint_status, + span.autosave_status { + display: none; + } +} +@media (min-width: 768px) and (max-width: 991px) { + span.checkpoint_status { + display: none; + } + span.autosave_status { + font-size: x-small; + } +} +.toolbar { + padding: 0px; + margin-left: -5px; + margin-top: 2px; + margin-bottom: 5px; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.toolbar select, +.toolbar label { + width: auto; + vertical-align: middle; + margin-right: 2px; + margin-bottom: 0px; + display: inline; + font-size: 92%; + margin-left: 0.3em; + margin-right: 0.3em; + padding: 0px; + padding-top: 3px; +} +.toolbar .btn { + padding: 2px 8px; +} +.toolbar .btn-group { + margin-top: 0px; + margin-left: 5px; +} +#maintoolbar { + margin-bottom: -3px; + margin-top: -8px; + border: 0px; + min-height: 27px; + margin-left: 0px; + padding-top: 11px; + padding-bottom: 3px; +} +#maintoolbar .navbar-text { + float: none; + vertical-align: middle; + text-align: right; + margin-left: 5px; + margin-right: 0px; + margin-top: 0px; +} +.select-xs { + height: 24px; +} +.pulse, +.dropdown-menu > li > a.pulse, +li.pulse > a.dropdown-toggle, +li.pulse.open > a.dropdown-toggle { + background-color: #F37626; + color: white; +} +/** + * Primary styles + * + * Author: Jupyter Development Team + */ +/** WARNING IF YOU ARE EDITTING THIS FILE, if this is a .css file, It has a lot + * of chance of beeing generated from the ../less/[samename].less file, you can + * try to get back the less file by reverting somme commit in history + **/ +/* + * We'll try to get something pretty, so we + * have some strange css to have the scroll bar on + * the left with fix button on the top right of the tooltip + */ +@-moz-keyframes fadeOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes fadeOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-moz-keyframes fadeIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@-webkit-keyframes fadeIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +/*properties of tooltip after "expand"*/ +.bigtooltip { + overflow: auto; + height: 200px; + -webkit-transition-property: height; + -webkit-transition-duration: 500ms; + -moz-transition-property: height; + -moz-transition-duration: 500ms; + transition-property: height; + transition-duration: 500ms; +} +/*properties of tooltip before "expand"*/ +.smalltooltip { + -webkit-transition-property: height; + -webkit-transition-duration: 500ms; + -moz-transition-property: height; + -moz-transition-duration: 500ms; + transition-property: height; + transition-duration: 500ms; + text-overflow: ellipsis; + overflow: hidden; + height: 80px; +} +.tooltipbuttons { + position: absolute; + padding-right: 15px; + top: 0px; + right: 0px; +} +.tooltiptext { + /*avoid the button to overlap on some docstring*/ + padding-right: 30px; +} +.ipython_tooltip { + max-width: 700px; + /*fade-in animation when inserted*/ + -webkit-animation: fadeOut 400ms; + -moz-animation: fadeOut 400ms; + animation: fadeOut 400ms; + -webkit-animation: fadeIn 400ms; + -moz-animation: fadeIn 400ms; + animation: fadeIn 400ms; + vertical-align: middle; + background-color: #f7f7f7; + overflow: visible; + border: #ababab 1px solid; + outline: none; + padding: 3px; + margin: 0px; + padding-left: 7px; + font-family: monospace; + min-height: 50px; + -moz-box-shadow: 0px 6px 10px -1px #adadad; + -webkit-box-shadow: 0px 6px 10px -1px #adadad; + box-shadow: 0px 6px 10px -1px #adadad; + border-radius: 2px; + position: absolute; + z-index: 1000; +} +.ipython_tooltip a { + float: right; +} +.ipython_tooltip .tooltiptext pre { + border: 0; + border-radius: 0; + font-size: 100%; + background-color: #f7f7f7; +} +.pretooltiparrow { + left: 0px; + margin: 0px; + top: -16px; + width: 40px; + height: 16px; + overflow: hidden; + position: absolute; +} +.pretooltiparrow:before { + background-color: #f7f7f7; + border: 1px #ababab solid; + z-index: 11; + content: ""; + position: absolute; + left: 15px; + top: 10px; + width: 25px; + height: 25px; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + -o-transform: rotate(45deg); +} +ul.typeahead-list i { + margin-left: -10px; + width: 18px; +} +ul.typeahead-list { + max-height: 80vh; + overflow: auto; +} +ul.typeahead-list > li > a { + /** Firefox bug **/ + /* see https://github.com/jupyter/notebook/issues/559 */ + white-space: normal; +} +.cmd-palette .modal-body { + padding: 7px; +} +.cmd-palette form { + background: white; +} +.cmd-palette input { + outline: none; +} +.no-shortcut { + display: none; +} +.command-shortcut:before { + content: "(command)"; + padding-right: 3px; + color: #777777; +} +.edit-shortcut:before { + content: "(edit)"; + padding-right: 3px; + color: #777777; +} +#find-and-replace #replace-preview .match, +#find-and-replace #replace-preview .insert { + background-color: #BBDEFB; + border-color: #90CAF9; + border-style: solid; + border-width: 1px; + border-radius: 0px; +} +#find-and-replace #replace-preview .replace .match { + background-color: #FFCDD2; + border-color: #EF9A9A; + border-radius: 0px; +} +#find-and-replace #replace-preview .replace .insert { + background-color: #C8E6C9; + border-color: #A5D6A7; + border-radius: 0px; +} +#find-and-replace #replace-preview { + max-height: 60vh; + overflow: auto; +} +#find-and-replace #replace-preview pre { + padding: 5px 10px; +} +.terminal-app { + background: #EEE; +} +.terminal-app #header { + background: #fff; + -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); + box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2); +} +.terminal-app .terminal { + width: 100%; + float: left; + font-family: monospace; + color: white; + background: black; + padding: 0.4em; + border-radius: 2px; + -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4); + box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4); +} +.terminal-app .terminal, +.terminal-app .terminal dummy-screen { + line-height: 1em; + font-size: 14px; +} +.terminal-app .terminal .xterm-rows { + padding: 10px; +} +.terminal-app .terminal-cursor { + color: black; + background: white; +} +.terminal-app #terminado-container { + margin-top: 20px; +} +/*# sourceMappingURL=style.min.css.map */ + </style> +<style type="text/css"> + .highlight .hll { background-color: #ffffcc } +.highlight { background: #f8f8f8; } +.highlight .c { color: #408080; font-style: italic } /* Comment */ +.highlight .err { border: 1px solid #FF0000 } /* Error */ +.highlight .k { color: #008000; font-weight: bold } /* Keyword */ +.highlight .o { color: #666666 } /* Operator */ +.highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */ +.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #BC7A00 } /* Comment.Preproc */ +.highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */ +.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */ +.highlight .gd { color: #A00000 } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +.highlight .gi { color: #00A000 } /* Generic.Inserted */ +.highlight .go { color: #888888 } /* Generic.Output */ +.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +.highlight .gt { color: #0044DD } /* Generic.Traceback */ +.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */ +.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { color: #008000 } /* Keyword.Pseudo */ +.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #B00040 } /* Keyword.Type */ +.highlight .m { color: #666666 } /* Literal.Number */ +.highlight .s { color: #BA2121 } /* Literal.String */ +.highlight .na { color: #7D9029 } /* Name.Attribute */ +.highlight .nb { color: #008000 } /* Name.Builtin */ +.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */ +.highlight .no { color: #880000 } /* Name.Constant */ +.highlight .nd { color: #AA22FF } /* Name.Decorator */ +.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */ +.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */ +.highlight .nf { color: #0000FF } /* Name.Function */ +.highlight .nl { color: #A0A000 } /* Name.Label */ +.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */ +.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */ +.highlight .nv { color: #19177C } /* Name.Variable */ +.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mb { color: #666666 } /* Literal.Number.Bin */ +.highlight .mf { color: #666666 } /* Literal.Number.Float */ +.highlight .mh { color: #666666 } /* Literal.Number.Hex */ +.highlight .mi { color: #666666 } /* Literal.Number.Integer */ +.highlight .mo { color: #666666 } /* Literal.Number.Oct */ +.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */ +.highlight .sc { color: #BA2121 } /* Literal.String.Char */ +.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #BA2121 } /* Literal.String.Double */ +.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */ +.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */ +.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */ +.highlight .sx { color: #008000 } /* Literal.String.Other */ +.highlight .sr { color: #BB6688 } /* Literal.String.Regex */ +.highlight .s1 { color: #BA2121 } /* Literal.String.Single */ +.highlight .ss { color: #19177C } /* Literal.String.Symbol */ +.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */ +.highlight .vc { color: #19177C } /* Name.Variable.Class */ +.highlight .vg { color: #19177C } /* Name.Variable.Global */ +.highlight .vi { color: #19177C } /* Name.Variable.Instance */ +.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */ + </style> +<style type="text/css"> + +/* Temporary definitions which will become obsolete with Notebook release 5.0 */ +.ansi-black-fg { color: #3E424D; } +.ansi-black-bg { background-color: #3E424D; } +.ansi-black-intense-fg { color: #282C36; } +.ansi-black-intense-bg { background-color: #282C36; } +.ansi-red-fg { color: #E75C58; } +.ansi-red-bg { background-color: #E75C58; } +.ansi-red-intense-fg { color: #B22B31; } +.ansi-red-intense-bg { background-color: #B22B31; } +.ansi-green-fg { color: #00A250; } +.ansi-green-bg { background-color: #00A250; } +.ansi-green-intense-fg { color: #007427; } +.ansi-green-intense-bg { background-color: #007427; } +.ansi-yellow-fg { color: #DDB62B; } +.ansi-yellow-bg { background-color: #DDB62B; } +.ansi-yellow-intense-fg { color: #B27D12; } +.ansi-yellow-intense-bg { background-color: #B27D12; } +.ansi-blue-fg { color: #208FFB; } +.ansi-blue-bg { background-color: #208FFB; } +.ansi-blue-intense-fg { color: #0065CA; } +.ansi-blue-intense-bg { background-color: #0065CA; } +.ansi-magenta-fg { color: #D160C4; } +.ansi-magenta-bg { background-color: #D160C4; } +.ansi-magenta-intense-fg { color: #A03196; } +.ansi-magenta-intense-bg { background-color: #A03196; } +.ansi-cyan-fg { color: #60C6C8; } +.ansi-cyan-bg { background-color: #60C6C8; } +.ansi-cyan-intense-fg { color: #258F8F; } +.ansi-cyan-intense-bg { background-color: #258F8F; } +.ansi-white-fg { color: #C5C1B4; } +.ansi-white-bg { background-color: #C5C1B4; } +.ansi-white-intense-fg { color: #A1A6B2; } +.ansi-white-intense-bg { background-color: #A1A6B2; } + +.ansi-bold { font-weight: bold; } + + </style> + + +<style type="text/css"> +/* Overrides of notebook CSS for static HTML export */ +body { + overflow: visible; + padding: 8px; +} + +div#notebook { + overflow: visible; + border-top: none; +} + +@media print { + div.cell { + display: block; + page-break-inside: avoid; + } + div.output_wrapper { + display: block; + page-break-inside: avoid; + } + div.output { + display: block; + page-break-inside: avoid; + } +} +</style> + +<!-- Custom stylesheet, it must be in the same directory as the html file --> +<link rel="stylesheet" href="custom.css"> + +<!-- Loading mathjax macro --> +<!-- Load mathjax --> + <script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML"></script> + <!-- MathJax configuration --> + <script type="text/x-mathjax-config"> + MathJax.Hub.Config({ + tex2jax: { + inlineMath: [ ['$','$'], ["\\(","\\)"] ], + displayMath: [ ['$$','$$'], ["\\[","\\]"] ], + processEscapes: true, + processEnvironments: true + }, + // Center justify equations in code and markdown cells. Elsewhere + // we use CSS to left justify single line equations in code cells. + displayAlign: 'center', + "HTML-CSS": { + styles: {'.MathJax_Display': {"margin": 0}}, + linebreaks: { automatic: true } + } + }); + </script> + <!-- End of mathjax configuration --></head> +<body> + <div tabindex="-1" id="notebook" class="border-box-sizing"> + <div class="container" id="notebook-container"> + +<div class="cell border-box-sizing code_cell rendered"> +<div class="input"> +<div class="prompt input_prompt">In [1]:</div> +<div class="inner_cell"> + <div class="input_area"> +<div class=" highlight hl-ipython2"><pre><span class="c1"># log into the virtual coach, update with your credentials</span> +<span class="kn">from</span> <span class="nn">hbp_nrp_virtual_coach.virtual_coach</span> <span class="kn">import</span> <span class="n">VirtualCoach</span> +<span class="n">vc</span> <span class="o">=</span> <span class="n">VirtualCoach</span><span class="p">(</span><span class="n">environment</span><span class="o">=</span><span class="s1">'local'</span><span class="p">)</span> + +<span class="c1"># disable global logging from the virtual coach</span> +<span class="kn">import</span> <span class="nn">logging</span> +<span class="n">logging</span><span class="o">.</span><span class="n">disable</span><span class="p">(</span><span class="n">logging</span><span class="o">.</span><span class="n">INFO</span><span class="p">)</span> +</pre></div> + +</div> +</div> +</div> + +<div class="output_wrapper"> +<div class="output"> + + +<div class="output_area"> +<div class="prompt"></div> + +<div class="output_subarea output_stream output_stderr output_text"> +<pre>INFO: [2017-04-03 08:37:43,320 - rospy.topics] topicmanager initialized +</pre> +</div> +</div> + +<div class="output_area"> +<div class="prompt"></div> + +<div class="output_subarea output_stream output_stdout output_text"> +<pre>INFO: [2017-04-03 08:37:43,464 - Configuration] Loading configuration file config.json +INFO: [2017-04-03 08:37:43,468 - Configuration] Using user specified environment: local +INFO: [2017-04-03 08:37:43,470 - VirtualCoach] Logging into OIDC as: kennysharma +INFO: [2017-04-03 08:37:43,726 - rospy.internal] topic[/rosout] adding connection to [/rosout], count 0 +INFO: [2017-04-03 08:37:43,823 - VirtualCoach] Ready. +</pre> +</div> +</div> + +</div> +</div> + +</div> +<div class="cell border-box-sizing code_cell rendered"> +<div class="input"> +<div class="prompt input_prompt">In [2]:</div> +<div class="inner_cell"> + <div class="input_area"> +<div class=" highlight hl-ipython2"><pre><span class="c1"># parameterized transfer functions we are testing/optimizing</span> +<span class="n">color_tf</span> <span class="o">=</span> <span class="s1">'''</span> +<span class="s1">import sensor_msgs.msg</span> +<span class="s1">from cv_bridge import CvBridge</span> +<span class="s1">import cv2</span> + +<span class="s1">@nrp.MapRobotSubscriber("camera_left", Topic('/mouse_left_eye/mouse/left_eye', sensor_msgs.msg.Image))</span> +<span class="s1">@nrp.MapRobotSubscriber("camera_right", Topic('/mouse_right_eye/mouse/right_eye', sensor_msgs.msg.Image))</span> +<span class="s1">@nrp.MapSpikeSource("color_left_eye", nrp.brain.sensors[0], nrp.poisson)</span> +<span class="s1">@nrp.MapSpikeSource("color_right_eye", nrp.brain.sensors[1], nrp.poisson)</span> +<span class="s1">@nrp.MapVariable("bridge", initial_value=CvBridge())</span> +<span class="s1">@nrp.MapRobotPublisher('mask_left', Topic('/mouse_left_eye/mouse/left_eye_mask', sensor_msgs.msg.Image))</span> +<span class="s1">@nrp.MapRobotPublisher('mask_right', Topic('/mouse_left_eye/mouse/right_eye_mask', sensor_msgs.msg.Image))</span> +<span class="s1">@nrp.Robot2Neuron()</span> +<span class="s1">def eye_sensor_transmit_right(t, camera_right, camera_left, color_left_eye, color_right_eye, bridge, mask_left, mask_right):</span> + +<span class="s1"> def detect_color(image, publisher):</span> +<span class="s1"> color_left = color_right = 0</span> + +<span class="s1"> if not isinstance(image, type(None)):</span> + +<span class="s1"> # Transform image to HSV (easier to detect colors).</span> +<span class="s1"> cv_image = bridge.value.imgmsg_to_cv2(image, "rgb8")</span> +<span class="s1"> hsv_image = cv2.cvtColor(cv_image, cv2.COLOR_RGB2HSV)</span> + +<span class="s1"> # Upper and lower thresholds for color detection, convert RGB to HSV and use</span> +<span class="s1"> # a range of SV values as suggested by OpenCV documentation</span> +<span class="s1"> h = cv2.cvtColor(np.uint8([[[{r}, {g}, {b}]]]), cv2.COLOR_RGB2HSV)[0][0][0]</span> +<span class="s1"> lower_color = np.array([h - 10, 30, 30])</span> +<span class="s1"> upper_color = np.array([h + 10, 255, 255])</span> + +<span class="s1"> # Create a mask where every non color pixel will be a zero, plublish the image.</span> +<span class="s1"> mask = cv2.inRange(hsv_image, lower_color, upper_color)</span> +<span class="s1"> res = cv2.bitwise_and(cv_image, cv_image, mask=mask)</span> +<span class="s1"> publisher.send_message(bridge.value.cv2_to_imgmsg(res, "rgb8"))</span> + +<span class="s1"> image_size = float(cv_image.shape[0] * cv_image.shape[1])</span> +<span class="s1"> if (image_size > 0):</span> +<span class="s1"> half = cv_image.shape[1] / 2</span> + +<span class="s1"> # Get the number of color pixels in the image.</span> +<span class="s1"> color_left = float(cv2.countNonZero(mask[:, :half]))</span> +<span class="s1"> color_right = float(cv2.countNonZero(mask[:, half:]))</span> + +<span class="s1"> # We have to mutiply the rate by two since it is for an half image only.</span> +<span class="s1"> color_left = 2 * (color_left / image_size)</span> +<span class="s1"> color_right = 2 * (color_right / image_size)</span> + +<span class="s1"> return dict(left=color_left, right=color_right)</span> + +<span class="s1"> image_results_left = detect_color(camera_left.value, mask_left)</span> +<span class="s1"> image_results_right = detect_color(camera_right.value, mask_right)</span> +<span class="s1"> color_right_eye.rate = 1000.0 * np.mean(image_results_left['right'] + image_results_right['right'])</span> +<span class="s1"> color_left_eye.rate = 1000.0 * np.mean(image_results_left['left'] + image_results_right['left'])</span> +<span class="s1">'''</span> + +<span class="n">turn_tf</span> <span class="o">=</span> <span class="s1">'''</span> +<span class="s1">import hbp_nrp_cle.tf_framework as nrp</span> +<span class="s1">from hbp_nrp_cle.robotsim.RobotInterface import Topic</span> +<span class="s1">import sensor_msgs.msg</span> +<span class="s1">import std_msgs.msg</span> + +<span class="s1">@nrp.MapSpikeSink("left_neuron", nrp.brain.actors[0], nrp.leaky_integrator_alpha)</span> +<span class="s1">@nrp.MapSpikeSink("right_neuron", nrp.brain.actors[1], nrp.leaky_integrator_alpha)</span> +<span class="s1">@nrp.MapRobotSubscriber("joint_state", Topic('/joint_states', sensor_msgs.msg.JointState))</span> +<span class="s1">@nrp.Neuron2Robot(Topic('/robot/mouse_head_joint/cmd_pos', std_msgs.msg.Float64))</span> +<span class="s1">def head_twist(t, left_neuron, right_neuron, joint_state):</span> + +<span class="s1"> #Retrieve the current position to interpolate</span> +<span class="s1"> idx = joint_state.value.name.index('mouse_head_joint')</span> +<span class="s1"> cur_pos = joint_state.value.position[idx]</span> + +<span class="s1"> #Calculating the target position: the difference between the left and right neuron output</span> +<span class="s1"> if left_neuron.voltage > 1e-12 or right_neuron.voltage > 1e-12:</span> +<span class="s1"> data = 50.0 * (left_neuron.voltage - right_neuron.voltage)</span> + +<span class="s1"> #Interpolate the joint position factorly</span> +<span class="s1"> return std_msgs.msg.Float64(({factor} * cur_pos + data) / ({factor} + 1))</span> + +<span class="s1"> #Default to neutral position if no neuron input</span> +<span class="s1"> return std_msgs.msg.Float64(0.0)</span> +<span class="s1">'''</span> +</pre></div> + +</div> +</div> +</div> + +</div> +<div class="cell border-box-sizing code_cell rendered"> +<div class="input"> +<div class="prompt input_prompt">In [3]:</div> +<div class="inner_cell"> + <div class="input_area"> +<div class=" highlight hl-ipython2"><pre><span class="c1"># reusable Trial class definition</span> + +<span class="kn">from</span> <span class="nn">gazebo_msgs.srv</span> <span class="kn">import</span> <span class="n">SetVisualProperties</span> +<span class="kn">import</span> <span class="nn">rospy</span> +<span class="kn">import</span> <span class="nn">time</span> +<span class="kn">import</span> <span class="nn">csv</span> + +<span class="k">class</span> <span class="nc">Trial</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span> + <span class="sd">'''</span> +<span class="sd"> Reusable class to launch a trial of the ExDBraitenbergMouse experiment for optimization.</span> + +<span class="sd"> Allows the caller to:</span> +<span class="sd"> - automate start/stimulus/stop events</span> +<span class="sd"> - change the stimulus color</span> +<span class="sd"> - write joint data to a given path on disk</span> +<span class="sd"> - parameterize the head turning and color detection transfer functions</span> +<span class="sd"> '''</span> + + <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">vc</span><span class="p">,</span> <span class="n">automate</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">stimulus_color</span><span class="o">=</span><span class="s1">'RedGlow'</span><span class="p">,</span> <span class="n">data_dir</span> <span class="o">=</span> <span class="bp">None</span><span class="p">,</span> + <span class="n">turn_tf_params</span><span class="o">=</span><span class="p">{</span><span class="s1">'factor'</span><span class="p">:</span> <span class="mf">0.0</span><span class="p">},</span> <span class="n">color_params</span><span class="o">=</span><span class="p">{</span><span class="s1">'r'</span><span class="p">:</span> <span class="mi">255</span><span class="p">,</span> <span class="s1">'g'</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span> <span class="s1">'b'</span><span class="p">:</span> <span class="mi">0</span><span class="p">}):</span> + + <span class="c1"># store runtime configuration</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_automate</span> <span class="o">=</span> <span class="n">automate</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_stimulus_color</span> <span class="o">=</span> <span class="n">stimulus_color</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_data_dir</span> <span class="o">=</span> <span class="n">data_dir</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_done</span> <span class="o">=</span> <span class="bp">False</span> + + <span class="c1"># launch the experiment and register for status messages</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_sim</span> <span class="o">=</span> <span class="n">vc</span><span class="o">.</span><span class="n">launch_experiment</span><span class="p">(</span><span class="s1">'ExDBraitenbergMouse'</span><span class="p">)</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_sim</span><span class="o">.</span><span class="n">register_status_callback</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_on_status</span><span class="p">)</span> + + <span class="c1"># "turn off" both displays by setting them to black</span> + <span class="n">rospy</span><span class="o">.</span><span class="n">wait_for_service</span><span class="p">(</span><span class="s1">'/gazebo/set_visual_properties'</span><span class="p">)</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_color_srv</span> <span class="o">=</span> <span class="n">rospy</span><span class="o">.</span><span class="n">ServiceProxy</span><span class="p">(</span><span class="s1">'/gazebo/set_visual_properties'</span><span class="p">,</span> <span class="n">SetVisualProperties</span><span class="p">)</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_change_screen</span><span class="p">(</span><span class="s1">'right'</span><span class="p">,</span> <span class="bp">False</span><span class="p">)</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_change_screen</span><span class="p">(</span><span class="s1">'left'</span><span class="p">,</span> <span class="bp">False</span><span class="p">)</span> + + <span class="c1"># configure the transfer functions with parameters and update</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_sim</span><span class="o">.</span><span class="n">set_transfer_function</span><span class="p">(</span><span class="s1">'eye_sensor_transmit_right'</span><span class="p">,</span> <span class="n">color_tf</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="o">**</span><span class="n">color_params</span><span class="p">))</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_sim</span><span class="o">.</span><span class="n">set_transfer_function</span><span class="p">(</span><span class="s1">'head_twist'</span><span class="p">,</span> <span class="n">turn_tf</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="o">**</span><span class="n">turn_tf_params</span><span class="p">))</span> + + <span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> + <span class="sd">'''</span> +<span class="sd"> Blocking call, run the experiment until it is terminated.</span> +<span class="sd"> '''</span> + + <span class="c1"># if this is not an interactive launch intended for a user, automatically start</span> + <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_automate</span><span class="p">:</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_sim</span><span class="o">.</span><span class="n">start</span><span class="p">()</span> + + <span class="c1"># wait until the simulation terminates cleanly, blocking call</span> + <span class="k">while</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_done</span><span class="p">:</span> + <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mf">1.0</span><span class="p">)</span> + + <span class="k">def</span> <span class="nf">_change_screen</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">side</span><span class="p">,</span> <span class="n">stimulate</span><span class="p">):</span> + + <span class="c1"># convenience inline to set the material color of a display in the scene</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_color_srv</span><span class="p">(</span><span class="s1">'</span><span class="si">%s</span><span class="s1">_vr_screen'</span> <span class="o">%</span> <span class="n">side</span><span class="p">,</span> + <span class="s1">'body'</span><span class="p">,</span> <span class="s1">'screen_glass'</span><span class="p">,</span> <span class="s1">'material:script:name'</span><span class="p">,</span> + <span class="s1">'Gazebo/</span><span class="si">%s</span><span class="s1">'</span> <span class="o">%</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_stimulus_color</span> <span class="k">if</span> <span class="n">stimulate</span> <span class="k">else</span> <span class="s1">'Black'</span><span class="p">))</span> + + <span class="k">def</span> <span class="nf">_on_status</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">msg</span><span class="p">):</span> + <span class="sd">'''</span> +<span class="sd"> Receive and process simulation status events, registered as a callback in constructor.</span> +<span class="sd"> '''</span> + + <span class="c1"># simulation has been terminated</span> + <span class="k">if</span> <span class="n">msg</span><span class="p">[</span><span class="s1">'state'</span><span class="p">]</span> <span class="o">==</span> <span class="s1">'stopped'</span><span class="p">:</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_done</span> <span class="o">=</span> <span class="bp">True</span> + <span class="k">return</span> + + <span class="c1"># simulation timeline events, only disable stimulus and stop when non interactive</span> + <span class="k">if</span> <span class="n">msg</span><span class="p">[</span><span class="s1">'simulationTime'</span><span class="p">]</span> <span class="o">==</span> <span class="mf">5.0</span><span class="p">:</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_change_screen</span><span class="p">(</span><span class="s1">'right'</span><span class="p">,</span> <span class="bp">True</span><span class="p">)</span> + <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_automate</span> <span class="ow">and</span> <span class="n">msg</span><span class="p">[</span><span class="s1">'simulationTime'</span><span class="p">]</span> <span class="o">==</span> <span class="mf">15.0</span><span class="p">:</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_change_screen</span><span class="p">(</span><span class="s1">'right'</span><span class="p">,</span> <span class="bp">False</span><span class="p">)</span> + <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_automate</span> <span class="ow">and</span> <span class="n">msg</span><span class="p">[</span><span class="s1">'simulationTime'</span><span class="p">]</span> <span class="o">==</span> <span class="mf">20.0</span><span class="p">:</span> + <span class="bp">self</span><span class="o">.</span><span class="n">_sim</span><span class="o">.</span><span class="n">pause</span><span class="p">()</span> + + <span class="c1"># write all position data to disk if a path was given</span> + <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_data_dir</span><span class="p">:</span> + <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_data_dir</span><span class="p">,</span> <span class="s1">'positions.csv'</span><span class="p">),</span> <span class="s1">'wb'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span> + <span class="n">cf</span> <span class="o">=</span> <span class="n">csv</span><span class="o">.</span><span class="n">writer</span><span class="p">(</span><span class="n">f</span><span class="p">)</span> + <span class="n">cf</span><span class="o">.</span><span class="n">writerows</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_sim</span><span class="o">.</span><span class="n">get_csv_data</span><span class="p">(</span><span class="s1">'all_joints_positions.csv'</span><span class="p">))</span> + + <span class="bp">self</span><span class="o">.</span><span class="n">_sim</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span> +</pre></div> + +</div> +</div> +</div> + +</div> +<div class="cell border-box-sizing code_cell rendered"> +<div class="input"> +<div class="prompt input_prompt">In [4]:</div> +<div class="inner_cell"> + <div class="input_area"> +<div class=" highlight hl-ipython2"><pre><span class="c1"># perform a jitter parameter sweep</span> + +<span class="kn">import</span> <span class="nn">shutil</span> +<span class="kn">import</span> <span class="nn">os</span> +<span class="kn">import</span> <span class="nn">progressbar</span> + +<span class="k">def</span> <span class="nf">investigate_jitter</span><span class="p">():</span> + <span class="sd">'''</span> +<span class="sd"> Perform a parameter sweep for optimal position smoothing/weighting.</span> +<span class="sd"> '''</span> + + <span class="c1"># delete the last run of results if desired</span> + <span class="n">root_path</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">realpath</span><span class="p">(</span><span class="s1">'__file__'</span><span class="p">)),</span> <span class="s1">'jitter_data'</span><span class="p">)</span> + <span class="c1">#shutil.rmtree(root_path, ignore_errors=True)</span> + + <span class="c1"># loop through different weighting factors, save results to disk</span> + <span class="n">factors</span> <span class="o">=</span> <span class="p">[</span><span class="n">f</span> <span class="o">*</span> <span class="mf">0.5</span> <span class="k">for</span> <span class="n">f</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">8</span><span class="p">)]</span> + <span class="k">with</span> <span class="n">progressbar</span><span class="o">.</span><span class="n">ProgressBar</span><span class="p">(</span><span class="n">max_value</span><span class="o">=</span><span class="nb">len</span><span class="p">(</span><span class="n">factors</span><span class="p">),</span> <span class="n">redirect_stdout</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span> <span class="k">as</span> <span class="n">progress</span><span class="p">:</span> + <span class="n">progress</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span> + + <span class="k">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">f</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">factors</span><span class="p">):</span> + + <span class="c1"># skip existing results if the user didn't delete the prior results above</span> + <span class="n">data_dir</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">root_path</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">f</span><span class="p">))</span> + <span class="k">if</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">exists</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">data_dir</span><span class="p">,</span> <span class="s1">'positions.csv'</span><span class="p">)):</span> + <span class="k">continue</span> + <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span><span class="n">data_dir</span><span class="p">)</span> + + <span class="c1"># run the trial, wait for clean termination and loop</span> + <span class="n">Trial</span><span class="p">(</span><span class="n">vc</span><span class="p">,</span> <span class="n">automate</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">data_dir</span><span class="o">=</span><span class="n">data_dir</span><span class="p">,</span> <span class="n">turn_tf_params</span><span class="o">=</span><span class="p">{</span><span class="s1">'factor'</span><span class="p">:</span> <span class="n">f</span><span class="p">})</span><span class="o">.</span><span class="n">run</span><span class="p">()</span> + <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span> + <span class="n">progress</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span> + +<span class="n">investigate_jitter</span><span class="p">()</span> +</pre></div> + +</div> +</div> +</div> + +<div class="output_wrapper"> +<div class="output"> + + +<div class="output_area"> +<div class="prompt"></div> + +<div class="output_subarea output_stream output_stderr output_text"> +<pre>100% (8 of 8) |#############################################################################################################################################################################################################################################| Elapsed Time: 0:00:00 ETA: --:--:-- + +</pre> +</div> +</div> + +</div> +</div> + +</div> +<div class="cell border-box-sizing code_cell rendered"> +<div class="input"> +<div class="prompt input_prompt">In [5]:</div> +<div class="inner_cell"> + <div class="input_area"> +<div class=" highlight hl-ipython2"><pre><span class="c1"># plot the results of the jitter investigation</span> + +<span class="o">%</span><span class="k">matplotlib</span> inline + +<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="kn">as</span> <span class="nn">plt</span> +<span class="kn">import</span> <span class="nn">matplotlib.mlab</span> <span class="kn">as</span> <span class="nn">mlab</span> +<span class="kn">import</span> <span class="nn">numpy</span> <span class="kn">as</span> <span class="nn">np</span> + +<span class="k">def</span> <span class="nf">visualize_jitter</span><span class="p">():</span> + <span class="sd">'''</span> +<span class="sd"> Visualize a combined plot displaying gaze jitter in the following formats:</span> +<span class="sd"> - full simulation time vs position view</span> +<span class="sd"> - zoomed in view of the focus period</span> +<span class="sd"> - jitter distribution and curve fit</span> +<span class="sd"> '''</span> + + <span class="c1"># loop through different weighting factors, save results to disk</span> + <span class="n">factors</span> <span class="o">=</span> <span class="p">[</span><span class="n">f</span> <span class="o">*</span> <span class="mf">0.5</span> <span class="k">for</span> <span class="n">f</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">8</span><span class="p">)]</span> + + <span class="c1"># plot position and jitter distribution graphs</span> + <span class="n">fig</span><span class="p">,</span> <span class="n">axes</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">subplots</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">factors</span><span class="p">),</span> <span class="mi">3</span><span class="p">)</span> + <span class="n">root_path</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">realpath</span><span class="p">(</span><span class="s1">'__file__'</span><span class="p">)),</span> <span class="s1">'jitter_data'</span><span class="p">)</span> + <span class="k">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">f</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">factors</span><span class="p">):</span> + <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">root_path</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">f</span><span class="p">),</span> <span class="s1">'positions.csv'</span><span class="p">),</span> <span class="s1">'rb'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span> + + <span class="c1"># read all rows of time and positon data from the csv</span> + <span class="n">cr</span> <span class="o">=</span> <span class="n">csv</span><span class="o">.</span><span class="n">reader</span><span class="p">(</span><span class="n">f</span><span class="p">)</span> + <span class="nb">next</span><span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> + <span class="n">t</span> <span class="o">=</span> <span class="p">[]</span> + <span class="n">pos</span> <span class="o">=</span> <span class="p">[]</span> + <span class="k">for</span> <span class="n">row</span> <span class="ow">in</span> <span class="n">cr</span><span class="p">:</span> + <span class="n">t</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="nb">float</span><span class="p">(</span><span class="n">row</span><span class="p">[</span><span class="mi">1</span><span class="p">]))</span> + <span class="n">pos</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="nb">float</span><span class="p">(</span><span class="n">row</span><span class="p">[</span><span class="mi">2</span><span class="p">]))</span> + + <span class="c1"># plot the entire simulation duration of time vs joint position</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">t</span><span class="p">,</span> <span class="n">pos</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">'k'</span><span class="p">,</span> <span class="n">linewidth</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">axvline</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="mi">5</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">'r'</span><span class="p">,</span> <span class="n">linestyle</span><span class="o">=</span><span class="s1">'--'</span><span class="p">,</span> <span class="n">linewidth</span><span class="o">=</span><span class="mi">3</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">axvline</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="mi">8</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">'r'</span><span class="p">,</span> <span class="n">linestyle</span><span class="o">=</span><span class="s1">'--'</span><span class="p">,</span> <span class="n">linewidth</span><span class="o">=</span><span class="mi">3</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">axvline</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="mi">15</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">'r'</span><span class="p">,</span> <span class="n">linestyle</span><span class="o">=</span><span class="s1">'--'</span><span class="p">,</span> <span class="n">linewidth</span><span class="o">=</span><span class="mi">3</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">grid</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_xlim</span><span class="p">([</span><span class="mi">0</span><span class="p">,</span> <span class="mi">20</span><span class="p">])</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_ylim</span><span class="p">([</span><span class="o">-</span><span class="mf">0.35</span><span class="p">,</span> <span class="mf">0.01</span><span class="p">])</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s1">'Radians'</span><span class="p">)</span> + + <span class="c1"># plot the zoomed in view when the neck joint should be centered on the stimulus</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">scatter</span><span class="p">(</span><span class="n">t</span><span class="p">,</span> <span class="n">pos</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">'b'</span><span class="p">,</span> <span class="n">marker</span><span class="o">=</span><span class="s1">'.'</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">axhline</span><span class="p">(</span><span class="n">y</span><span class="o">=-</span><span class="mf">0.25</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">'r'</span><span class="p">,</span> <span class="n">linestyle</span><span class="o">=</span><span class="s1">'--'</span><span class="p">,</span> <span class="n">linewidth</span><span class="o">=</span><span class="mi">3</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">grid</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_xlim</span><span class="p">([</span><span class="mi">8</span><span class="p">,</span> <span class="mi">15</span><span class="p">])</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_ylim</span><span class="p">([</span><span class="o">-</span><span class="mf">0.3</span><span class="p">,</span> <span class="o">-</span><span class="mf">0.2</span><span class="p">])</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s1">'Radians'</span><span class="p">)</span> + + <span class="c1"># plot a distribution and curve fit of the jitter vs expected position in radians</span> + <span class="n">jitters</span> <span class="o">=</span> <span class="p">[]</span> + <span class="k">for</span> <span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">t</span><span class="p">,</span> <span class="n">pos</span><span class="p">):</span> + <span class="k">if</span> <span class="n">x</span> <span class="o"><</span> <span class="mi">8</span> <span class="ow">or</span> <span class="n">x</span> <span class="o">></span> <span class="mi">15</span><span class="p">:</span> + <span class="k">continue</span> + <span class="n">jitters</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">y</span> <span class="o">+</span> <span class="mf">0.25</span><span class="p">)</span> + <span class="n">n</span><span class="p">,</span> <span class="n">bins</span><span class="p">,</span> <span class="n">patches</span> <span class="o">=</span> <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">hist</span><span class="p">(</span><span class="n">jitters</span><span class="p">,</span> <span class="mi">25</span><span class="p">,</span> <span class="n">facecolor</span><span class="o">=</span><span class="s1">'green'</span><span class="p">,</span> <span class="n">alpha</span><span class="o">=</span><span class="mf">0.75</span><span class="p">)</span> + <span class="n">mu</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">mean</span><span class="p">(</span><span class="n">jitters</span><span class="p">)</span> + <span class="n">sigma</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">std</span><span class="p">(</span><span class="n">jitters</span><span class="p">)</span> + <span class="n">l</span> <span class="o">=</span> <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">bins</span><span class="p">,</span> <span class="n">mlab</span><span class="o">.</span><span class="n">normpdf</span><span class="p">(</span><span class="n">bins</span><span class="p">,</span> <span class="n">mu</span><span class="p">,</span> <span class="n">sigma</span><span class="p">),</span> <span class="s1">'r--'</span><span class="p">,</span> <span class="n">linewidth</span><span class="o">=</span><span class="mi">3</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">set_xlim</span><span class="p">([</span><span class="o">-</span><span class="mf">0.06</span><span class="p">,</span> <span class="mf">0.06</span><span class="p">])</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">set_ylim</span><span class="p">([</span><span class="mi">0</span><span class="p">,</span> <span class="mi">50</span><span class="p">])</span> + <span class="n">axes</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s1">'Bin Size'</span><span class="p">)</span> + + <span class="c1"># label and format axes</span> + <span class="n">axes</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="s1">'Entire Simulation'</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="s1">'Stimulus Focus'</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="s1">'Jitter Distribution'</span><span class="p">)</span> + + <span class="k">for</span> <span class="n">y</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">factors</span><span class="p">)</span> <span class="o">-</span> <span class="mi">1</span><span class="p">):</span> + <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="mi">3</span><span class="p">):</span> + <span class="n">axes</span><span class="p">[</span><span class="n">y</span><span class="p">,</span> <span class="n">x</span><span class="p">]</span><span class="o">.</span><span class="n">xaxis</span><span class="o">.</span><span class="n">set_visible</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span> + + <span class="n">axes</span><span class="p">[</span><span class="nb">len</span><span class="p">(</span><span class="n">factors</span><span class="p">)</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s1">'Time (s)'</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="nb">len</span><span class="p">(</span><span class="n">factors</span><span class="p">)</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s1">'Time (s)'</span><span class="p">)</span> + <span class="n">axes</span><span class="p">[</span><span class="nb">len</span><span class="p">(</span><span class="n">factors</span><span class="p">)</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s1">'Jitter (Radians)'</span><span class="p">)</span> + + <span class="n">fig</span><span class="o">.</span><span class="n">canvas</span><span class="o">.</span><span class="n">set_window_title</span><span class="p">(</span><span class="s1">'Jitter Analysis'</span><span class="p">)</span> + <span class="n">fig</span><span class="o">.</span><span class="n">set_figheight</span><span class="p">(</span><span class="mi">15</span><span class="p">)</span> + <span class="n">fig</span><span class="o">.</span><span class="n">set_figwidth</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span> + <span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span> + +<span class="n">visualize_jitter</span><span class="p">()</span> +</pre></div> + +</div> +</div> +</div> + +<div class="output_wrapper"> +<div class="output"> + + +<div class="output_area"> +<div class="prompt"></div> + + + +<div class="output_png output_subarea "> +<img src="data:image/png;base64,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 +UiQUgODgYABCQx27fu1aKE2awJ9/BqNpsHJlKG+/La+Hh8MPP4Ry44a0x9r+q1aFcvUqfPddMPny +JX69eXNYuDCUhATw9HRO+43r/v7BNG4MMTGh1K4NzZoFM26c886XHdcjIkCvl/crMtK+/f/6K5R5 +8yAmJhhPT2jePJQ1a8DXN5hatRzf3pMnQwkJsf36/Pmh/PEHnDoVzLFj0KpVKCNHwu7dwZw/D/Hx +oQwaBIcPy/alSsnnW6+X9YiIUH7+Gd5+2/H311Hrv/wC8fGyfu9eKPPnw4cfOv/83t7w88+hPHoE +O3cGs2WLfF4ALl8OpmNH2LAhFJ3O/uPPnDmTw4cPU6ZMGTI5O4HmiH9hpTTsl4Ck7OVDCnE0S/K6 +zb4mxOI3R3BwsOmeKRR2o2kEXnpM279v8Pzum/hG6Zn4dhBLrG1bMLlQVSosCs/4TOAroMjRhIaG +mvqOJ8lj5As8GnhkWB5m8JhTMc9qjARsOVo8h8x4H03y/DjgAzvOoykyiNmmwOmnOnfunAZofn5+ +2r179xx34Cd4DQonk8ney1u3bmnVq1fXAK1cuXLaf//95+om2Q0pCzxpxRn9xCnMYlUxw7o1ciED +i6EWz1VDZrovGJY4ZPKjsJX9NW9vTfv4Y03T6xPfo717Nc3b2/yRa9v2ybw3kZGaVrWqpul0mta3 +r6ZdvCjP//ijpvn4yLJiRfL9Hj7UtAIFNM3XV9MqVNC0hITkr/fpo2mFC2ta8+aaZs/X7KFDmvbn +n8mPlRpTpmiah4fctwYN0ravQjhzRtM6d9a0Tz9N/tm0xbBhmublJfe9cGFNq1RJPsM+Ppp2/rxj +23f+vKYVK6ZpuXNr2ubNyV+PjZXPouXXNmhaXJymbdkibcqdW9MmTTLvEx2taevWadpbb2mau7t8 +TuPiHNtuRzJzprTTeG0lS2ra/fvOPader2kbNmjanj2a9uKLmpYnjyz+/ubvKw8PTStePOPnwrH9 +hCMolmTdA2iSzmN9DAzHvr4m4zdTkWOpVLeSNmpoNe1syTzJvhAPBPlrlepWSr7TkiWa1r69pvXu +rf3j66PFeOg0DbR+4+towd8HJ1oq1a2kaRs3atr69WnvrBWKDIID+gl7PKR8Ddt5A36GJaPB0/bm +a29H8rutkcJstyIrUq5cOZo0acKjR4+oWLEi4eHhrm6SQmGTsLAwgoODOXLkCBUrVmT79u08/XR6 +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 ++fELrIXTGXn6vl7A63n6Lr/G0fRxQRERERERERERERERERERERERERERERERERERERERERERERER +ERERERERERERERERERERERERERERERERERERERERSd//A/Fr91+xy/w7AAAAAElFTkSuQmCC +" +> +</div> + +</div> + +</div> +</div> + +</div> +<div class="cell border-box-sizing code_cell rendered"> +<div class="input"> +<div class="prompt input_prompt">In [6]:</div> +<div class="inner_cell"> + <div class="input_area"> +<div class=" highlight hl-ipython2"><pre><span class="c1"># perform a high level RGB color sweep for 'SkyBlue' stimulus</span> + +<span class="k">def</span> <span class="nf">fit_rgb</span><span class="p">():</span> + <span class="sd">'''</span> +<span class="sd"> Perform a parameter sweep to see how different rgb colors influence the experience for a</span> +<span class="sd"> desired stimulus.</span> +<span class="sd"> '''</span> + + <span class="c1"># delete the last run of results</span> + <span class="n">root_path</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">realpath</span><span class="p">(</span><span class="s1">'__file__'</span><span class="p">)),</span> <span class="s1">'color_data'</span><span class="p">)</span> + <span class="c1">#shutil.rmtree(root_path, ignore_errors=True)</span> + + <span class="c1"># perform a coarse 4x4x4 (64 iteration) high level RGB sweep</span> + <span class="n">step</span> <span class="o">=</span> <span class="mi">64</span> + <span class="n">rmin</span> <span class="o">=</span> <span class="n">gmin</span> <span class="o">=</span> <span class="n">bmin</span> <span class="o">=</span> <span class="mi">0</span> + <span class="n">rmax</span> <span class="o">=</span> <span class="n">gmax</span> <span class="o">=</span> <span class="n">bmax</span> <span class="o">=</span> <span class="mi">255</span> + <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span> + <span class="k">with</span> <span class="n">progressbar</span><span class="o">.</span><span class="n">ProgressBar</span><span class="p">(</span><span class="n">max_value</span><span class="o">=</span><span class="p">((</span><span class="n">rmax</span><span class="o">/</span><span class="n">step</span><span class="p">)</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span><span class="o">**</span><span class="mi">3</span><span class="p">,</span> <span class="n">redirect_stdout</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span> <span class="k">as</span> <span class="n">progress</span><span class="p">:</span> + <span class="n">progress</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span> + + <span class="k">for</span> <span class="n">r</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="n">rmin</span><span class="p">,</span> <span class="n">rmax</span> <span class="p">,</span> <span class="n">step</span><span class="p">):</span> + <span class="k">for</span> <span class="n">g</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="n">gmin</span><span class="p">,</span> <span class="n">gmax</span> <span class="p">,</span> <span class="n">step</span><span class="p">):</span> + <span class="k">for</span> <span class="n">b</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="n">bmin</span><span class="p">,</span> <span class="n">bmax</span> <span class="p">,</span> <span class="n">step</span><span class="p">):</span> + + <span class="c1"># use the middle of the RGB window, not the extreme edges of the bins</span> + <span class="n">rh</span> <span class="o">=</span> <span class="n">r</span> <span class="o">+</span> <span class="n">step</span> <span class="o">/</span> <span class="mi">2</span> + <span class="n">gh</span> <span class="o">=</span> <span class="n">g</span> <span class="o">+</span> <span class="n">step</span> <span class="o">/</span> <span class="mi">2</span> + <span class="n">bh</span> <span class="o">=</span> <span class="n">b</span> <span class="o">+</span> <span class="n">step</span> <span class="o">/</span> <span class="mi">2</span> + + <span class="c1"># skip existing data if it wasn't deleted above</span> + <span class="n">data_dir</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">root_path</span><span class="p">,</span> <span class="s1">'</span><span class="si">%s</span><span class="s1">-</span><span class="si">%s</span><span class="s1">-</span><span class="si">%s</span><span class="s1">'</span> <span class="o">%</span> <span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">rh</span><span class="p">),</span> <span class="nb">str</span><span class="p">(</span><span class="n">gh</span><span class="p">),</span> <span class="nb">str</span><span class="p">(</span><span class="n">bh</span><span class="p">)))</span> + <span class="k">if</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">exists</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">data_dir</span><span class="p">,</span> <span class="s1">'positions.csv'</span><span class="p">)):</span> + <span class="k">continue</span> + <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span><span class="n">data_dir</span><span class="p">)</span> + + <span class="c1"># run a trial and store the data for this RGB combination response to 'SkyBlue' stimulus</span> + <span class="n">Trial</span><span class="p">(</span><span class="n">vc</span><span class="p">,</span> <span class="n">automate</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">data_dir</span><span class="o">=</span><span class="n">data_dir</span><span class="p">,</span> <span class="n">stimulus_color</span><span class="o">=</span><span class="s1">'SkyBlue'</span><span class="p">,</span> + <span class="n">turn_tf_params</span><span class="o">=</span><span class="p">{</span><span class="s1">'factor'</span><span class="p">:</span> <span class="mf">1.5</span><span class="p">},</span> <span class="n">color_params</span><span class="o">=</span><span class="p">{</span><span class="s1">'r'</span><span class="p">:</span> <span class="n">rh</span><span class="p">,</span> <span class="s1">'g'</span><span class="p">:</span> <span class="n">gh</span><span class="p">,</span> <span class="s1">'b'</span><span class="p">:</span> <span class="n">bh</span><span class="p">})</span><span class="o">.</span><span class="n">run</span><span class="p">()</span> + <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span> + + <span class="c1"># update the progress bar</span> + <span class="n">i</span> <span class="o">=</span> <span class="n">i</span> <span class="o">+</span> <span class="mi">1</span> + <span class="n">progress</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">i</span><span class="p">)</span> + +<span class="n">fit_rgb</span><span class="p">()</span> +</pre></div> + +</div> +</div> +</div> + +<div class="output_wrapper"> +<div class="output"> + + +<div class="output_area"> +<div class="prompt"></div> + +<div class="output_subarea output_stream output_stderr output_text"> +<pre>100% (64 of 64) |###########################################################################################################################################################################################################################################| Elapsed Time: 0:00:00 ETA: --:--:-- + +</pre> +</div> +</div> + +</div> +</div> + +</div> +<div class="cell border-box-sizing code_cell rendered"> +<div class="input"> +<div class="prompt input_prompt">In [7]:</div> +<div class="inner_cell"> + <div class="input_area"> +<div class=" highlight hl-ipython2"><pre><span class="c1"># visualize the RGB color sweep to see what color parameters resulted in movement</span> + +<span class="k">def</span> <span class="nf">visualize_rgb</span><span class="p">():</span> + <span class="sd">'''</span> +<span class="sd"> Visualize RGB colors that caused any deflection in neck angle.</span> +<span class="sd"> '''</span> + + <span class="n">means</span> <span class="o">=</span> <span class="p">[]</span> + + <span class="c1"># look at all color_data trails run</span> + <span class="n">root_path</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">realpath</span><span class="p">(</span><span class="s1">'__file__'</span><span class="p">)),</span> <span class="s1">'color_data'</span><span class="p">)</span> + <span class="n">fits</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">listdir</span><span class="p">(</span><span class="n">root_path</span><span class="p">)</span> + <span class="k">for</span> <span class="n">d</span> <span class="ow">in</span> <span class="n">fits</span><span class="p">:</span> + <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">root_path</span><span class="p">,</span> <span class="n">d</span><span class="p">,</span> <span class="s1">'positions.csv'</span><span class="p">),</span> <span class="s1">'rb'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span> + + <span class="c1"># read the csv, store any values during the focus period of 8-15 seconds</span> + <span class="n">cr</span> <span class="o">=</span> <span class="n">csv</span><span class="o">.</span><span class="n">reader</span><span class="p">(</span><span class="n">f</span><span class="p">)</span> + <span class="nb">next</span><span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> + <span class="n">focus</span> <span class="o">=</span> <span class="p">[]</span> + <span class="k">for</span> <span class="n">row</span> <span class="ow">in</span> <span class="n">cr</span><span class="p">:</span> + <span class="k">if</span> <span class="nb">float</span><span class="p">(</span><span class="n">row</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="o"><</span> <span class="mi">8</span> <span class="ow">or</span> <span class="nb">float</span><span class="p">(</span><span class="n">row</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="o">></span> <span class="mi">15</span><span class="p">:</span> + <span class="k">continue</span> + <span class="n">focus</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="nb">float</span><span class="p">(</span><span class="n">row</span><span class="p">[</span><span class="mi">2</span><span class="p">]))</span> + + <span class="c1"># if the color has caused movement, store the average and RGB value</span> + <span class="k">if</span> <span class="nb">abs</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">mean</span><span class="p">(</span><span class="n">focus</span><span class="p">))</span> <span class="o">></span> <span class="mf">0.01</span><span class="p">:</span> + <span class="n">r</span><span class="p">,</span> <span class="n">g</span><span class="p">,</span> <span class="n">b</span> <span class="o">=</span> <span class="p">[</span><span class="nb">float</span><span class="p">(</span><span class="n">n</span><span class="p">)</span> <span class="o">/</span> <span class="mf">255.0</span> <span class="k">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="n">d</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">'-'</span><span class="p">)]</span> + <span class="n">means</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">np</span><span class="o">.</span><span class="n">mean</span><span class="p">(</span><span class="n">focus</span><span class="p">),</span> <span class="p">(</span><span class="n">r</span><span class="p">,</span> <span class="n">g</span><span class="p">,</span> <span class="n">b</span><span class="p">)])</span> + + <span class="c1"># sort the means by total deflection from stimulus</span> + <span class="n">means</span><span class="o">.</span><span class="n">sort</span><span class="p">(</span><span class="n">key</span><span class="o">=</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="nb">abs</span><span class="p">(</span><span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]))</span> + + <span class="c1"># plot a bar graph with average deflection in the color of the stimulus</span> + <span class="n">fig</span><span class="p">,</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">subplots</span><span class="p">()</span> + <span class="n">ax</span><span class="o">.</span><span class="n">bar</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">means</span><span class="p">)),</span> <span class="p">[</span><span class="n">m</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="k">for</span> <span class="n">m</span> <span class="ow">in</span> <span class="n">means</span><span class="p">],</span> <span class="mf">0.75</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="p">[</span><span class="n">m</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="k">for</span> <span class="n">m</span> <span class="ow">in</span> <span class="n">means</span><span class="p">])</span> + <span class="n">ax</span><span class="o">.</span><span class="n">set_xlim</span><span class="p">(</span><span class="o">-</span><span class="mf">0.5</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">means</span><span class="p">))</span> + <span class="n">ax</span><span class="o">.</span><span class="n">set_ylim</span><span class="p">(</span><span class="o">-</span><span class="mf">0.275</span><span class="p">,</span> <span class="mf">0.1</span><span class="p">)</span> + + <span class="c1"># lines for neutral 0 position and target angle</span> + <span class="n">ax</span><span class="o">.</span><span class="n">axhline</span><span class="p">(</span><span class="n">y</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">'k'</span><span class="p">,</span> <span class="n">linestyle</span><span class="o">=</span><span class="s1">'-'</span><span class="p">)</span> + <span class="n">ax</span><span class="o">.</span><span class="n">axhline</span><span class="p">(</span><span class="n">y</span><span class="o">=-</span><span class="mf">0.25</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">'g'</span><span class="p">,</span> <span class="n">linestyle</span><span class="o">=</span><span class="s1">'--'</span><span class="p">,</span> <span class="n">linewidth</span><span class="o">=</span><span class="mi">3</span><span class="p">)</span> + + <span class="c1"># label the bar plots with their real RGB values</span> + <span class="n">ax</span><span class="o">.</span><span class="n">set_xticks</span><span class="p">([</span><span class="n">x</span> <span class="o">+</span> <span class="mf">0.75</span> <span class="o">/</span> <span class="mi">2</span> <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">means</span><span class="p">))])</span> + <span class="n">ax</span><span class="o">.</span><span class="n">set_xticklabels</span><span class="p">([</span><span class="s1">'</span><span class="si">%i</span><span class="se">\n</span><span class="si">%i</span><span class="se">\n</span><span class="si">%i</span><span class="s1">'</span> <span class="o">%</span> <span class="p">(</span><span class="nb">int</span><span class="p">(</span><span class="n">m</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span> <span class="o">*</span> <span class="mi">255</span><span class="p">),</span> <span class="nb">int</span><span class="p">(</span><span class="n">m</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span> <span class="o">*</span> <span class="mi">255</span><span class="p">),</span> <span class="nb">int</span><span class="p">(</span><span class="n">m</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">2</span><span class="p">]</span> <span class="o">*</span> <span class="mi">255</span><span class="p">))</span> <span class="k">for</span> <span class="n">m</span> <span class="ow">in</span> <span class="n">means</span><span class="p">])</span> + + <span class="c1"># figure and axes labels</span> + <span class="n">fig</span><span class="o">.</span><span class="n">canvas</span><span class="o">.</span><span class="n">set_window_title</span><span class="p">(</span><span class="s1">'Colors That Caused Neck Movement'</span><span class="p">)</span> + <span class="n">ax</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="s1">'Colors That Caused Neck Movement (Generation 1)'</span><span class="p">)</span> + <span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s1">'Neck Joint Angle (Radians)'</span><span class="p">)</span> + <span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="s1">'RGB Color'</span><span class="p">)</span> + <span class="n">fig</span><span class="o">.</span><span class="n">set_figheight</span><span class="p">(</span><span class="mi">15</span><span class="p">)</span> + <span class="n">fig</span><span class="o">.</span><span class="n">set_figwidth</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span> + <span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span> + +<span class="n">visualize_rgb</span><span class="p">()</span> +</pre></div> + +</div> +</div> +</div> + +<div class="output_wrapper"> +<div class="output"> + + +<div class="output_area"> +<div class="prompt"></div> + + + +<div class="output_png output_subarea "> +<img src="data:image/png;base64,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 +UyuRjW5st23qwvX2efrZTn3q3JsXjnPvpq5Nx5pa9TxsYd2zOnX8nFs3dd25uumH7F926jhLW3lc +9SdbLP9Ip449s3iueze1nLq2aWym79lU82VN3XuOzuu2cn7TQMpvno/zxqand104r/+RphY972oa +r2jzIMlPm4//+qbBsj/SFCJc3MnrdbTp6XiLY9p8c1PLl+Pzuf/LwrqHNLXe2Hjq3FYDM294Sjcc +b+j35zoWnzr3o01d5I43Pe3u8oXtH15d2RTYvaHpqXdtOu9tm57c9ittHcJsNx7WuZtq2dsU8L2z +6X3/wBbHe0NTuHfupuUPaXqq3dGmz+tvdDKo2Xz+53Ry8O+awq/FJ8E9sOn+vGeu5QVNXfHqhtd7 +82fzinmfo/NxtvKbTYPHL3p003fhunn/v2j6zGwMaL7TfdrfqZ/tOvU9n+m+d53f57VNre2+pZOf +3Zr+GfF3Td/hn52XLQ4GvtN93Oq7vPl7vOjgfOzFafHe/X5TsA0At2iXNv1L+Q1tPSDpZzQ1k/5A +N3wM8On2BQBgvX1mUyjGTXO/Tj6REQBusc5p+r+d+5r+D9Srmv5jYtGdq/+t6f+Cfu8Z7gsAAADA +WbSbYzQ9sCksOtLUV/x5ndp9oKbm9a/ohn3Jl9kXAAAAgLNoN4OmSzr1McNv7dTBI1e1LwAAAAAr +sJtB0zKPtV3FvgAAAACswOankJxNb2t6jPGGuze1TBq27/3vf/8TV1555Y0uEAAAAIAbuLL67K1W +7GaLpldU92wa0Ps21SOr52+z7ebH9S6175VXXtmJEydMJ070lKc8ZddrWLfJNXPNXLOb5+SauWau +2c1zcs1cM9fs5jm5Zq6Za3bznNb9mlX33y7s2c0WTR+uLq9e3PQUuWdWf1t967z+GdXF1cur86uP +Vt9V3bt67zb7AgAAALBLdjNoqnrhPC16xsLrd3RqF7nT7QsAAADALjlntwtYsYMHDx7c7RpuNvbt +27fbJawd1+zMuWZnzjU7c67ZmXPNzpxrduZcszPnmp051+zMuWZnzjU7c67ZmVvna3bFFVdUXbHV +us1jH93SnJj7DgIAAAAwwJ49e2qbTGk3BwMHAAAA4BZE0AQAAADAEIImAAAAAIYQNAEAAAAwhKAJ +AAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCE +oAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAA +MISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEA +AAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0 +AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACG +EDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAA +AIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYA +AAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgiHN3uwAAAGD9XHTh+R09du1ul7FyF+49 +r6uPXrPbZQCsjT27XcCKnThx4sRu1wAAALc4e/bs6cihfbtdxsrtO3AkvykATrVnz57aJlPSdQ4A +AACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGOHe3CwAAgN12 +4YXnd+zYtbtdxsrt3XteR49es9tlAHALJmgCALiFueii8zt69JYfmlx44XldffWY0OTYsWs7dGjf +kGPdnB04cGS3SwDgFk7QBADcrF100d6OHj2+22Ws3IUXXtDVVx8bcqyjR6/tyJF9Q451c7Zv35Hd +LgEA2ETQBMCNtnfv+R0/fstvNXHBBed17NiYVhMXXri3Y8du+aHJ3r0XdPToqNDkeEeOHBhyrJuz +ffsO7XYJAAA3maAJgBvt+PFrO3Bg326XsXKHDh0Zdqxjx4536NCBYce7uTpw4NBulwAAwC7w1DkA +AAAAhtCiCWB20UUXDuvqc3N24YV7u/rqo7tdBgAAcAskaAKYHT16rCNHDu12GSu3b9+B3S4BAAC4 +hdJ1DgAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEA +AAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0 +AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYYreDpkur11VvqJ64zTY/ +N6+/snrAwvIj1aurV1Z/tboSAQAAAFjGubt47nOqp1VfXr2tenn1/OpvF7b5qurTqntWn189vXrQ +vO5Etb+6+uyUCwAAAMBOdrNF0wOrNza1TPpQ9bzqYZu2uax69vz6L6u91V0W1u9ZbYkAAAAALGs3 +g6ZLqrcszL91XrbsNieqP6xeUf2fK6oRAAAAgCXtZte5E0tut12rpS+u3l7duXpp01hPf7p5o4MH +D17/ev/+/e3fv/9MagQAAAD4mHb48OEOHz681La7GTS9rbr7wvzdm1os7bTNJ87LagqZqt5V/U5T +V7wdgyYAAAAAzszmhjtXXHHFttvuZte5VzQN8r2vuk31yKbBwBc9v3rs/PpB1bHqqur21Xnz8jtU +X1m9ZrXlAgAAALCT3WzR9OHq8urFTU+ge2bTE+e+dV7/jOoPmp4898bquurx87qLq/8+vz63+q/V +S85K1QAAAABsaTeDpqoXztOiZ2yav3yL/f6h+uyVVAQAAADAjbKbXecAAAAAuAURNAEAAAAwhKAJ +AAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCE +oAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAA +MISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEOfudgHA6uy98PyO +H7t2t8tYqQv2ntexo9fsdhkAAAAkaIJbtOPHru3AoX27XcZKHTpwZLdLAAAAYKbrHAAAAABDCJoA +AAAAGELXOdbGhRft7djR47tdxkrtvfCCjl59bLfLAAAAgBtF0MTaOHb0eIeOHNjtMlbqwL5Du10C +AAAA3Gi6zgEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAiDge+SvRed3/Gj1+52GSt1wYXndezq +a3a7DAAAAOAsETTtkuNHr+3AkX27XcZKHdp3ZLdLAAAAAM4iXecAAAAAGELQBAAAAMAQgiYAAAAA +hhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAA +AACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIIm +AAAAAIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQ +giYAAAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAA +wBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQA +AADAEIImAAAAAIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQ +BAAAAMAQgiYAAAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAY +QtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAA +ABhC0AQAAADAELsdNF1ava56Q/XEbbb5uXn9ldUDznBfAAAAAM6S3Qyazqme1hQY3bt6VPWZm7b5 +qurTqntW31I9/Qz2BQAAAOAs2s2g6YHVG6sj1Yeq51UP27TNZdWz59d/We2tLl5yXwAAAADOot0M +mi6p3rIw/9Z52TLb3G2JfQEAAAA4i3YzaDqx5HZ7VloFAAAAAEPsZojzoOpg0zhLVf+++mj1Ewvb +/GJ1uKlrXE2Dfz+4+uQl9q3lwywAAAAAlrdlpnTu2a5iwSuaBvneV729emTToN6Lnl9d3hQ0Pag6 +Vl1VvWeJfas6cULWBAAA7L49e/a078Ch3S5j5Y4cOjDsd9h0zY4MOdbN2ZFD+8Zes0NHhhzr5uzI +gbHX7MDHwDU7NPiabWc3g6YPN4VIL256itwzq7+tvnVe/4zqD5qePPfG6rrq8afZFwAAAIBdsptB +U9UL52nRMzbNX34G+wIAAACwS3ZzMHAAAAAAbkEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAA +GELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAA +AAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwia +AAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABD +CJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAA +AEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMA +AAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhB +EwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABg +CEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAA +AGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgC +AAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwh +aAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAA +DCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAwhKAJAAAAgCEETQAA +AAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhtitoOmi6qXV66uXVHu32e7S +6nXVG6onLiw/WL21euU8XbqqQgEAAABYzm4FTU9qCpruVb1snt/snOppTSHSvatHVZ85rztR/XT1 +gHl60YrrBQAAAOA0ditouqx69vz62dXDt9jmgdUbqyPVh6rnVQ9bWL9nhfUBAAAAcIZ2K2i6S3XV +/PqqeX6zS6q3LMy/dV624TurK6tntn3XOwAAAADOknNXeOyXVhdvsfzJm+ZPzNNmWy3b8PTqh+bX +P1w9tXrCVhsePHjw+tf79+9v//79OxwWAAAAgEWHDx/u8OHDS227yqDpK3ZYd1VTCPWO6q7VO7fY +5m3V3Rfm797UqqlN2/+X6gXbnWgxaAIAAADgzGxuuHPFFVdsu+1udZ17fvW4+fXjqt/dYptXVPes +9lW3qR4571dTOLXh66rXrKRKAAAAAJa2W0HTf2xq8fT66kvn+aq7Vb8/v/5wdXn14uq11W9Ufzuv ++4nq1U1jND24+u6zUjUAAAAA21pl17mdXF19+RbL31599cL8C+dps8euoigAAAAAbrzdatEEAAAA +wC2MoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQB +AAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABji3CW2uU/1JdW+6kR1pPrT +6m9WVhUAAAAAa2enFk3/qvqr6qeqi6t/aAqZ7jove3n1zSuuDwAAAIA1sVOLpgurL6uu3Wb9+dWB +0QUBAAAAsJ52Cpp+7jT7XrPENgAAAAB8jFhmMPCfrC6obl29rHp3U7c6AAAAALjeMkHTV1bHq69p +GqPpU6t/t8KaAAAAAFhDywRNG93rvqb6b02h04mVVQQAAADAWtppjKYNL6heV32g+vbqE+bXAAAA +AHC9ZVo0Pan6oupzq3+urqsetsqiAAAAAFg/y7RoqvqM6h5NA4LX1HXuV1dSEQAAAABraZmg6deq +T6leVX1kYbmgCQAAAIDrLRM0fW517wwADgAAAMAOlhmj6X9Wd111IQAAAACst2VaNN25em31V9UH +52UnqstWVRQAAAAA62eZoOngqosAAAAAYP0tEzQdXnURAAAAAKy/ZcZo+oLq5dV7qw9VH62uWWVR +AAAAAKyfZYKmp1WPrt5Q3a56QvULqywKAAAAgPWzTNBUU8h0TvWR6lnVpSurCAAAAIC1tMwYTddV +t62urP5T9Y5qzyqLAgAAAGD9LNOi6bHzdpdX76s+sfqGVRYFAAAAwPpZpkXTkfnv+6uDK6sEAAAA +gLW2U9D0W9Ujqtdsse5Edb+VVAQAAADAWtopaPqu+e/Xno1CAAAAAFhvOwVNb5//HjkLdQAAAACw +5nYKmt7b1EVuKyeq88eXAwAAAMC62ilouuP890eaWjf92jz/mOpuqywKAAAAgPVzqyW2uaz6heqa +eXp69bBVFgUAAADA+lkmaLqu+ubqnHl6TFO3OgAAAAC43jJB06Orb6yumqdvnJcBAAAAwPV2GqNp +w5uaus8BAAAAwLaWCZo+rnpCde/qdgvL//VKKgIAAABgLS3Tde451V2qS6s/ru6eMZoAAAAA2GSZ +oOnTqv/QFC49u/qq6vNXWRQAAAAA62eZoOmf57/Hq8+q9lZ3XllFAAAAAKylZcZo+uXqouoHqudX +d2xq4QQWguGdAAAgAElEQVQAAAAA11s2aKppfKZPnl/ffTXlAAAAALCuTtd17nOrR1T3mefvXv1S +9WerLAoAAACA9bNT0PQj1a9VX9/UZe6p1Z9Ur63utfrSAAAAAFgnO3Wd+/rqAdUHmsZoektTy6Yj +qy8LAAAAgHWzU4umDzaFTFVXV29IyAQAAADANnZq0fQp1QsW5vctzJ+oLltRTQAAAACsoZ2Cpodt +mn/qwusTK6gFAAAAgDW2U9B0+GwVAQAAAMD622mMpt+vHlHdfot1t68eWf3BKooCAAAAYP3s1KLp +8dXl1RXVR6p/qvZUF8/7/Ub1uFUXCAAAAMB62Cloemf1g/N0cXWPefk/Vu9YcV0AAAAArJmdgqZF +70i4BAAAAMAOdhqjCQAAAACWJmgCAAAAYIhlg6bbV5++ykIAAAAAWG/LBE2XVa+sXjzPP6B6/soq +AgAAAGAtLRM0Haw+vzo6z7+y+pRVFQQAAADAelomaPpQdWzTso+uoBYAAAAA1tgyQdPfVI+pzq3u +Wf189eerLAoAAACA9bNM0PSd1X2qD1a/Xl1T/dtVFgUAAADA+jl3iW2uq75/ngAAAABgSzsFTS/Y +Yd2JpqfRAQAAAEC1c9D01LNWBQAAAABrb6eg6fDZKgIAAACA9bfMGE2vaeoqt2dh2fHq5dWPVO9Z +QV0AAAAArJllgqYXVR+untsUNn1TdfvqqupQ9bWrKg4AAACA9bFM0PTl1QMW5l9dvXJe9ppVFAUA +AADA+rnVEtucU33+wvwDF/b78PCKAAAAAFhLy7RoekL1rOqO8/y187I7VD++oroAAAAAWDPLBE0v +r+5bXTDPH19Y95vDKwIAAABgLS0TNN2u+oZq38L2J6ofWlFNAAAAAKyhZYKm/6c6Vv119YHVlgMA +AADAulomaLqkesiqCwEAAABgvS3z1Lk/r+636kIAAAAAWG/LtGj6F9XjqzdVH5yXnUj4BAAAAMCC +ZYKmh26aP7GKQgAAAABYb8t0nTuyML2r+pLqF1ZWEQAAAABraZmg6bbV11e/Vf1T9WXVL66yKAAA +AADWz05d5x5SPar60upw9avV51UHVl4VAAAAAGtnpxZNL6wuqh5UPbZ6QcZnAgAAAGAbO7Vo+pym +Fk1/XP19U9e5c85GUQAAAACsn51aNL2qemJ1r+qHqwdUt25q6fQtqy8NAAAAgHWyzGDgJ6o/qy6v +PrH6mabudAAAAABwvZ26zm3lI9VL5gkAAAAArrdMiyYAAAAAOC1BEwAAAABDLBM0PWfJZQAAAAB8 +DFsmaLrvpvlzq89dQS0AAAAArLGdgqbvr66tPmv+uzG9s3r+6ksDAAAAYJ3sFDT9WHVe9VPz343p +oupJqy8NAAAAgHVy7hLbPKm6pLrHpu3/ZCUVAQAAALCWlgmafqJ6ZPXa6iMLywVNAAAAAFxvmaDp +66pPrz644loAAAAAWGPLPHXu76vbDD7vRdVLq9dXL6n2brPdr1RXVa+5kfsDAAAAcJYsEzS9v3pV +9UvVz8/Tz93E8z6pKSi6V/Wyth9c/FnVpTdhfwAAAADOkmW6zj1/nhaduInnvax68Pz62dXhtg6L +/rTadxP2BwAAAOAsWSZoOrSC896lqUtc89+7nOX9AQAAABhsp6Dpt6pHdMPxkWpq0XS/0xz7pdXF +Wyx/8hbHuiktpHbc/+DBg9e/3r9/f/v3778JpwIAAAD42HL48OEOHz681LY7BU3fNf/92htZx1fs +sO6qphDqHdVdq3ee4bGX3n8xaAIAAADgzGxuuHPFFVdsu+1Og4G/ff57pGlA8M+q7lu9b152Uzy/ +etz8+nHV757l/QEAAAAYbJmnzn1j9VdN3egWX98U/7GpxdPrqy+d56vuVv3+wna/Xv1509Pl3lI9 +/jT7AwAAALBLlhkM/Aeqz+tk97Q7Vy9rGsPpxrq6+vItlr+9+uqF+Ued4f4AAAAA7JJlWjTtqd61 +MP+eeRkAAAAAXG+ZFk0vql5cPbcpYHpk9cJVFgUAAADA+lkmaPq+6uurL65OVM+ofmeVRQEAAACw +fpYJmk5Uvz1PAAAAALClncZoem917TbTu6u/yIDcAAAAAMx2atF0x9Psd5+mcZvuM7QiAAAAANbS +Mk+d28qHqyurnx9YCwAAAABr7MYGTRt+cUgVAAAAAKy9mxo0AQAAAEC1XND00C2WfdvoQgAAAABY +b8sETf+h+rKF+e+rHr6acgAAAABYVzs9dW7DZdXvVf9cXVp9xrwMAAAAAK63TND07qZg6WXVK6p/ +WZ1YZVEAAAAArJ+dgqb3dmqgdJvqkzsZNJ2/wroAAAAAWDM7BU13PGtVAAAAALD2lhkM/OuqvQvz +ezMYOAAAAACbLBM0HayOLcwfm5cBAAAAwPWWCZr2bLHsnNGFAAAAALDelgma/rr66epTq0+rfmZe +BgAAAADXWyZo+s7qQ9VvVM+rPlB9xyqLAgAAAGD97PTUuQ3vrZ5Y3aG6brXlAAAAALCulmnR9IXV +a6vXzfP3r35hZRUBAAAAsJaWCZp+trq0evc8f2X14JVVBAAAAMBaWiZoqnrzpvkPjy4EAAAAgPW2 +zBhNb66+aH59m+rfVH+7sooAAAAAWEvLtGj69qanzF1Sva16QJ46BwAAAMAmy7Roelf16FUXAgAA +AMB62yloeso2y0/Mf39ocC0AAAAArLGdgqbrOhkqbbhD9YTqTgmaAAAAAFiwU9D0Uwuvz28aBPzx +1fOqp66yKAAAAADWz+nGaPr46rurx1S/Wn1OdXTVRQEAAACwfk7Xounrql+q7ldde1YqAgAAAGAt +3WqHdd9TXVL9QPX2pqBpY7pm9aUBAAAAsE52atG0UwgFAAAAAKcQJgEAAAAwhKAJAAAAgCEETQAA +AAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkAAACAIQRN +AAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAAAIAh +BE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAwhKAJAAAA +gCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkA +AACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISg +CQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAw +hKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAA +ADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQB +AAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGCI3QqaLqpeWr2+ekm1d5vtfqW6qnrNpuUHq7dWr5yn +S1dSJQAAAABL262g6UlNQdO9qpfN81t5VluHSCeqn64eME8vWkGNAAAAAJyB3QqaLvtf7d1/sG1n +Xd/x94WEAQ3khxFCgPQgJUXFCh1EZgxwUVGQqaCd6Y+xLcH+gdqBKAjlxzi5mcoIpS1OnbHOVKlB +SgoFy+BvUsslVEtGkQQTiDRolBQTqAmliAgDt3+sdcm5N+ece9a5zzn75J7Xa2bPXnvtZ5/95Jvn +2Xvdz14/qqvn5aur523S7n3V3Zs8d2h0pwAAAADYuVUFTQ9rOiSu+f5hO/gbL6purH6hzQ+9AwAA +AGCP7GbQdG3TuZVOvn3vSe2Ozbcl/n316OoJ1Z9X/+a0egoAAADAaTtrF//2M7d47s7qouqO6uHV +Jxf+7fXtf776lc0aHjly5CvLhw8f7vDhwwvfCgAAAODgOnr0aEePHt1W290Mmrbyrur51evm+3cu +fP3Dm/Zkqvq+7n1Vuq9YHzQBAAAAsMzJO+5cddVVm7Zd1TmaXtu0x9NHq2+fH1ddXP3aunbXVL/b +dHW6j1cvmNe/rvpQ0zmanl792O53GQAAAICtrGqPpruq79xg/Seq56x7/I82ef0/Hd4jAAAAAE7L +qvZoAgAAAOAMI2gCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkA +AACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISg +CQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAw +hKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAA +ADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQB +AAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQ +NAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAA +hhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAA +AACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIIm +AAAAAIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQ +giYAAAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAA +wBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQA +AADAEIImAAAAAIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQ +BAAAAMAQgiYAAAAAhhA0AQAAADDEqoKmC6prq49W767O26DNo6r3VDdXN1UvXvh6AAAAAPbQqoKm +VzQFRZdWvz0/PtkXqx+rvrF6SvXPq8cteD0AAAAAe2hVQdP3VlfPy1dXz9ugzR3VDfPyZ6uPVI9Y +8HoAAAAA9tCqgqaHVXfOy3fOj7eyVj2xun6HrwcAAABgl521i3/72uqiDda/+qTHx+bbZs6p3l5d +0bRn08m2fP2RI0e+snz48OEOHz68xVsBAAAAsN7Ro0c7evTottruZtD0zC2eu7MphLqjenj1yU3a +nV29o3pz9c4dvP6EoAkAAACAZU7eceeqq67atO2qDp17V/X8efn5nRgiHXeo+oXqw9VP7+D1AAAA +AOyhVQVNr23a4+mj1bfPj6surn5tXv626h9Xz6g+ON+edYrXAwAAALAiu3no3Fbuqr5zg/WfqJ4z +L/+PNg/CNns9AAAAACuyqj2aAAAAADjDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkA +AACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISg +CQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAw +hKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAA +ADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQB +AAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQ +NAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDnLXqDgAAABwEDz73vG77xctX3Y1d +9+Bzz1t1F4AVEjQBAADsgc98+u5Vd+E+58Hnnt9tv7i26m7sugefe/6quwDDCJoAAADYlz7z6btW +3QVgIedoAgAAAGAIezQBAADAGeLB553fbZevrbobu+7B5znccL8SNAEAAMAZ4jN3O9yQ1XLoHAAA +AABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEET +AAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAI +QRMAAAAAQwiaAAAAABji0Ko7sMuOHTt2bNV9AAAAAPap886/oP/76btX3Y1dd+555/fpu+8a8rcO +HTpUm2RKgiYAAAAAtm2roMmhcwAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYA +AAAAhhA0AQAAADCEoAkAAACAIQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCC +JgAAAACGEDQBAAAAMISgCQAAAIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADA +EIImAAAAAIYQNAEAAAAwhKAJAAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDrCpouqC6tvpo9e7q +vA3aPKp6T3VzdVP14nXPHalurz443561i30FAAAAYBsOreh9/1X1f+b7f1GdX73ipDYXzbcbqnOq +D1TPrW6prqz+X/VvT/E+x44dOzau1wAAAAAH3KFDh2qTTGlVezR9b3X1vHx19bwN2tzRFDJVfbb6 +SPWIdc+vKiQDAAAAYAOrCpoeVt05L985P97KWvXE6vp1615U3Vj9QhsfegcAAADAHtrNvYKubTr0 +7WSvbtqL6fx16+5qOm/TRs6pjlY/Wb1zXvfQ6lPz8r+sHl79sw1ee6wj91555dOv7Mjhez9x5OiR +rnrvVdprr7322muvvfbaa6+99tprr7322m/SfqtD587aaOUgz9ziuTubQqg7mkKiT27S7uzqHdWb +uydk6qT2P1/9yqbv9J51y2vVo7foFQAAAAAnOHr0aEePHt1W290Mmrbyrur51evm+3du0OZQ02Fx +H65++qTnHl79+bz8fdUfbvpOzzjNngIAAAAcYIcPH+7w4cNfeXzVVffe++m4VZ1Q+4LqbdUl1W3V +368+XV1c/YfqOdVl1XXVh6rjl457ZfWb1ZuqJ8zr/6R6Yfec82k9V50DAAAAGGirQ+fO9Cu3CZoA +AAAABtoqaFrVVecAAAAAOMMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAAAIAhBE0A +AAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAwhKAJAAAAgCEE +TQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCEoAkAAACA +IQRNAAAAAAwhaAIAAABgCEETAAAAAEMImgAAAAAYQtAEAAAAwBCCJgAAAACGEDQBAAAAMISgCQAA +AIAhBE0AAAAADCFoAgAAAGAIQRMAAAAAQwiaAAAAABhC0AQAAADAEIImAAAAAIYQNAEAAAAwhKAJ +AAAAgCEETQAAAAAMIWgCAAAAYAhBEwAAAABDCJoAAAAAGELQBAAAAMAQgiYAAAAAhhA0AQAAADCE +oAkAAACAIQRNAAAAAAwhaAIAAABgCEHTAXH06NFVd+E+R82WU7Pl1Gw5NVtOzZZTs+XUbDk1W07N +llOz5dRsOTVb7kyumaDpgDiTB/FuUbPl1Gw5NVtOzZZTs+XUbDk1W07NllOz5dRsOTVbTs2WO5Nr +JmgCAAAAYAhBEwAAAABDHFp1B3bZ0erpq+4EAAAAwBnkvdXhVXcCAAAAAAAAAAAAAAAAAOA0XFH9 +YXXTvHzci6qPzOtft4J+7SdvrO5sqtN6m9XoldX/qm6pvmsvOngfYJxt7VHVe6qbm2rx4nn965vq +c2P1y9W5J73ukuqz1Uv3ppv7nnF2aj7PljE3l1OznTE3lzHOTt8Dq+urG6oPVz81rz9VDQ8yNVtO +zZazPct93uObBvEDq/tX11aPqZ4xL589t/valfRu/3hq9cRO3PjbrEbf0PRBena1Vt2aqzYaZ6d2 +UfWEefmc6o+qr6+e2T3j57Xzbb23V2/NBnMZZ9vl82wZc3M5NdsZc3MZ42yMr5rvz6reX13WqWt4 +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 +3/QF/cDq/tW11WOaTgh4bdOJ26q+diW927+Ms1N7avXETtwA3GxcHb/ixNlNV6m4tXtqeZAZZ8v4 +POXIfyEAAAWySURBVFtGvXbO3FxOzZZTs63ZzljuouoJ8/I51R9VX9+px9Xbq7d2MAMANVvuQNfs +IH6wHBSfm+8f0LThfFfTF86X5/XXV49cQb/2q8c11eTz1Zeq91bfX/1Q069nX5zbfWolvdu/jLNT +e19190nrfriNx9Vzm65Q8cXqtqYNwCfvfhf3PeNsGZ9ny6jXzpmby6nZcmq2NdsZy93RFLjVtOfI +R6qL23pcPa/646Y96w4iNVvuQNdM0HTmul/TwL6zaZe9kwfrD1a/vted2sduavpF6IKmX86+p2l3 +x0urpzX9gna0etKK+rdfGWc789g2HlcXV7eva3d79Yg97dn+ZJwt4/NsGfXaOXNzOTVbTs2Ws52x +fWtNe4Rdf9L69ePqnOrl1ZE969X+tpaaLbXWAauZoOnM9eWmXfUe2fRFc3jdc6+uvlC9Ze+7tW/d +0nT8+rur32jaoPlS027a51dPqV5WvW1VHdynjLOdWTKuju1Jj/Y342wZn2fLqNfOmZvLqdlyarac +7YztOafpMKUrmvY4Oe7kcXWkekPT3nWH9rB/+5GaLadmnLF+ovrxefny6neazkXB5l7TtNvxb1RP +X7f+1uprVtKj/c8429xaJ547YaNxdWH1ivl23G9W37rbnbuPMc6W83m2jHrtjLm5nJotp2YbW8t2 +xlJnV79V/ehJ6y/v3uPquupP5tvd1V9UP7L7Xdx31Gw5NeOMcmF13rz8oKZB+x3Vs5rOen/hivq1 +3z10vr+k6Rjah1QvrK6a119a/dkK+rVfGWfbt9aJG4CbjavjJ+l8QPXo6mP5RcM42xmfZ8uo13Lm +5nJqtpyabc9atjOWOFS9qWnvkfW2M66urF6yS/3az9RsOTXjjPNN1R80fZF8qGmX2ZouZfqn1Qfn +28+upHf713VNk/6Gpqt11JRC/1LTl/cHOnF37YPOONuea6pPVH9dfbx6QVuPq1c1/fJ4S/Xde9nR +fco42xmfZ8uo13Lm5nJqtpyanZrtjOUuazok84buGUPPbnvj6qAGAGq2nJoBAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAA8KXqg9WHql+uzln33GOrX61urX6/+u/VU+fnLq8+Nb/2puq/ +VA/a5D2eXf1edXP1B9W/PkWfjlQvXfRfAQCwi+636g4AANxHfK56YvW3q89UL5zXP7D6ternqr9Z +Pal6UfV18/PHqmvm1z6++kL1Dzb4+4+vfqb6geob579z6yn6dGzhf8P9F7YHAFhE0AQAsNz7q8fM +yz9Q/U7THk3H3Vxdve7xofn+rOqrq7s2+Jsvr36y+uj8+MtN4VXVWtNeUjdW/6161Aavf8Lcrxub +9rg6b15/tHpD055SLz7FfxcAwGkRNAEALHP/6plNh8FVfUPTYW6bOdS0B9MHq9ur8zsxlDruG6sP +bPI3fqb6j9U3V/+p+nfrnju+V9ObqpfNbf6wunLd82dX39IUOAEA7BpBEwDA9jyoKSz686Y9in5u +3XOH1i3/16ag5x3r1v3npkPnLmoKqF628L2fUr1lXn5zddlJzz+kOrd63/z46upp655/68L3AwDY +EUETAMD2/FVTWPQ3qs9Xz53X31z9nXXtvq/pBOAXrFu3Poj61U4MgY67uem8TJs5tMVzp2r7lwte +CwCwY4ImAIBl/qrpXEevaQp0rqm+rfq769p8dZufqPuyNj7J9+urVzVdwa6m7bTjJxz/3eofzss/ +UF03Lx+ab5+p7u6ePZ3+SdO5mQAAAADYhz5z0uN3dc/V4/5W05XnPtYUCv1W9e3zc8+vPtl02N2N +TXs0XbjJezyn+v3qw017OL12Xn9J9dvz66+tHjmvv7J6ybz8zdX/7J6TgZ87r39PJ+5xBQAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHDf9/8BvF17RChU9LEAAAAASUVO +RK5CYII= +" +> +</div> + +</div> + +</div> +</div> + +</div> +<div class="cell border-box-sizing code_cell rendered"> +<div class="input"> +<div class="prompt input_prompt">In [8]:</div> +<div class="inner_cell"> + <div class="input_area"> +<div class=" highlight hl-ipython2"><pre><span class="c1"># launch the single generation optimized experiment in interactive mode</span> +<span class="n">logging</span><span class="o">.</span><span class="n">disable</span><span class="p">(</span><span class="n">logging</span><span class="o">.</span><span class="n">NOTSET</span><span class="p">)</span> +<span class="n">Trial</span><span class="p">(</span><span class="n">vc</span><span class="p">,</span> <span class="n">automate</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span> <span class="n">stimulus_color</span><span class="o">=</span><span class="s1">'SkyBlue'</span><span class="p">,</span> + <span class="n">turn_tf_params</span><span class="o">=</span><span class="p">{</span><span class="s1">'factor'</span><span class="p">:</span> <span class="mf">2.0</span><span class="p">},</span> <span class="n">color_params</span><span class="o">=</span><span class="p">{</span><span class="s1">'r'</span><span class="p">:</span> <span class="mi">96</span><span class="p">,</span> <span class="s1">'g'</span><span class="p">:</span> <span class="mi">160</span><span class="p">,</span> <span class="s1">'b'</span><span class="p">:</span> <span class="mi">224</span><span class="p">})</span><span class="o">.</span><span class="n">run</span><span class="p">()</span> +</pre></div> + +</div> +</div> +</div> + +<div class="output_wrapper"> +<div class="output"> + + +<div class="output_area"> +<div class="prompt"></div> + +<div class="output_subarea output_stream output_stdout output_text"> +<pre>INFO: [2017-04-03 08:37:47,111 - VirtualCoach] Preparing to launch ExDBraitenbergMouse. +INFO: [2017-04-03 08:37:47,113 - VirtualCoach] Retrieving list of experiments. +INFO: [2017-04-03 08:37:47,125 - Simulation] Attempting to launch ExDBraitenbergMouse on localhost. +INFO: [2017-04-03 08:37:47,144 - Simulation (ExDBraitenbergMouse - localhost #0)] Simulation Successfully Created. +INFO: [2017-04-03 08:37:47,148 - Simulation (ExDBraitenbergMouse - localhost #0)] Attempting to transition to state: initialized +WARNING: [2017-04-03 08:37:47,149 - Simulation (ExDBraitenbergMouse - localhost #0)] Waiting for localhost to accept commands, this may take a few moments... +INFO: [2017-04-03 08:37:48,271 - rospy.internal] topic[/ros_cle_simulation/status] adding connection to [http://127.0.0.1:44983/], count 0 +INFO: [2017-04-03 08:37:50,210 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Connecting to Gazebo robotic simulator +INFO: [2017-04-03 08:37:51,125 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Starting Gazebo web client +INFO: [2017-04-03 08:37:51,126 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Restarting Gazebo web client communication adapter +INFO: [2017-04-03 08:37:54,122 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading experiment environment +INFO: [2017-04-03 08:37:54,131 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Cleaning model ground_plane. +INFO: [2017-04-03 08:37:54,524 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Cleaning lights +INFO: [2017-04-03 08:37:54,530 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading light "main". +INFO: [2017-04-03 08:37:54,722 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading model "ymaze". +INFO: [2017-04-03 08:37:54,971 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading model "left_vr_screen". +INFO: [2017-04-03 08:37:55,208 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading model "ground_plane". +INFO: [2017-04-03 08:37:55,443 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading model "right_vr_screen". +INFO: [2017-04-03 08:37:55,662 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading robot +INFO: [2017-04-03 08:37:56,173 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading Nest brain simulator +INFO: [2017-04-03 08:37:56,177 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Connecting brain simulator to robot +INFO: [2017-04-03 08:37:56,179 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading brain and population configuration +INFO: [2017-04-03 08:37:56,180 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Initializing CLE +INFO: [2017-04-03 08:37:56,264 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading transfer functions +INFO: [2017-04-03 08:37:56,265 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Generating transfer function: 1 +INFO: [2017-04-03 08:37:56,267 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading transfer function: csv_spike_monitor +INFO: [2017-04-03 08:37:56,287 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Generating transfer function: 2 +INFO: [2017-04-03 08:37:56,288 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading transfer function: csv_joint_state_monitor +INFO: [2017-04-03 08:37:56,293 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Generating transfer function: 3 +INFO: [2017-04-03 08:37:56,295 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading transfer function: all_neurons_spike_monitor +INFO: [2017-04-03 08:37:56,298 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Generating transfer function: 4 +INFO: [2017-04-03 08:37:56,300 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading transfer function: head_twist +INFO: [2017-04-03 08:37:56,331 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Generating transfer function: 5 +INFO: [2017-04-03 08:37:56,332 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Loading transfer function: eye_sensor_transmit_right +INFO: [2017-04-03 08:37:56,364 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Waiting for Gazebo simulated sensors to be ready +INFO: [2017-04-03 08:37:57,371 - Simulation (ExDBraitenbergMouse - localhost #0)] [Neurorobotics Closed Loop Engine] Finished +INFO: [2017-04-03 08:37:57,392 - Simulation (ExDBraitenbergMouse - localhost #0)] Simulation state: initialized +INFO: [2017-04-03 08:37:57,393 - Simulation (ExDBraitenbergMouse - localhost #0)] Ready. +INFO: [2017-04-03 08:37:57,394 - Simulation (ExDBraitenbergMouse - localhost #0)] Status callback registered. +INFO: [2017-04-03 08:37:57,402 - Simulation (ExDBraitenbergMouse - localhost #0)] Attempting to retrieve transfer functions +INFO: [2017-04-03 08:37:57,408 - Simulation (ExDBraitenbergMouse - localhost #0)] Attempting to set transfer function eye_sensor_transmit_right +INFO: [2017-04-03 08:37:57,465 - Simulation (ExDBraitenbergMouse - localhost #0)] Transfer Function 'eye_sensor_transmit_right' successfully updated +INFO: [2017-04-03 08:37:57,466 - Simulation (ExDBraitenbergMouse - localhost #0)] Attempting to retrieve transfer functions +INFO: [2017-04-03 08:37:57,471 - Simulation (ExDBraitenbergMouse - localhost #0)] Attempting to set transfer function head_twist +INFO: [2017-04-03 08:37:57,537 - Simulation (ExDBraitenbergMouse - localhost #0)] Transfer Function 'head_twist' successfully updated +INFO: [2017-04-03 08:38:58,307 - rospy.internal] topic impl's ref count is zero, deleting topic /ros_cle_simulation/status... +INFO: [2017-04-03 08:38:58,309 - rospy.internal] topic[/ros_cle_simulation/status] removing connection to http://127.0.0.1:44983/ +INFO: [2017-04-03 08:38:58,318 - Simulation (ExDBraitenbergMouse - localhost #0)] Simulation has been stopped. +</pre> +</div> +</div> + +</div> +</div> + +</div> + </div> + </div> +</body> + + + + +</html> diff --git a/examples/recording/recording.ipynb b/examples/recording/recording.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..85638f685a44c89a7ebe6afbd9bb7737ea320192 --- /dev/null +++ b/examples/recording/recording.ipynb @@ -0,0 +1,154 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "INFO: [2019-05-05 07:40:52,277 - rospy.topics] topicmanager initialized\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO: [2019-05-05 07:40:52,413 - Configuration] Loading configuration file config.json\n", + "INFO: [2019-05-05 07:40:52,414 - Configuration] Using user specified environment: local\n", + "WARNING: [2019-05-05 07:40:52,415 - VirtualCoach] No OIDC username supplied, simulation services will fail if OIDC is enabled in this environment (local).\n", + "INFO: [2019-05-05 07:40:52,415 - VirtualCoach] Logging into the Storage Server as: nrpuser\n", + "········\n", + "INFO: [2019-05-05 07:40:55,157 - VirtualCoach] Ready.\n" + ] + } + ], + "source": [ + "# log into the virtual coach, update with your credentials\n", + "from hbp_nrp_virtual_coach.virtual_coach import VirtualCoach\n", + "vc = VirtualCoach(environment='local', storage_username='nrpuser')\n", + "\n", + "# disable global logging from the virtual coach\n", + "import logging\n", + "#logging.disable(logging.INFO)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "# reusable Trial class definition\n", + "\n", + "from gazebo_msgs.srv import SetVisualProperties\n", + "import rospy\n", + "import time\n", + "import csv\n", + "\n", + "class Trial(object):\n", + " '''\n", + " Reusable class to launch a trial of the ExDBraitenbergHuskySBC experiment for optimization.\n", + " '''\n", + "\n", + " def __init__(self, vc):\n", + "\n", + " # store runtime configuration\n", + " self._done = False\n", + "\n", + " # launch the experiment and register for status messages\n", + " self.exp_id = vc.clone_experiment_to_storage('ExDBraitenbergHuskySBC')\n", + " self._sim = vc.launch_experiment(self.exp_id)\n", + "\n", + "\n", + " def run(self):\n", + " '''\n", + " Blocking call, run the experiment until it is terminated.\n", + " '''\n", + "\n", + " self._sim.start()\n", + " self._sim.start_recording()\n", + " time.sleep(10.0)\n", + " self._sim.stop_recording(True,'A description of the experiment')\n", + " self._sim.stop()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO: [2019-05-05 07:44:19,454 - VirtualCoach] Retrieving list of experiments.\n", + "INFO: [2019-05-05 07:44:19,607 - VirtualCoach] Experiment \"ExDBraitenbergHuskySBC\" cloned successfully\n", + "INFO: [2019-05-05 07:44:19,607 - VirtualCoach] Preparing to launch braitenberg_husky_sbc_0.\n", + "INFO: [2019-05-05 07:44:19,608 - VirtualCoach] Retrieving list of experiments.\n", + "INFO: [2019-05-05 07:44:19,621 - VirtualCoach] Retrieving list of available servers.\n", + "INFO: [2019-05-05 07:44:19,624 - Simulation] Attempting to launch braitenberg_husky_sbc_0 on localhost.\n", + "INFO: [2019-05-05 07:44:26,079 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Simulation Successfully Created.\n", + "INFO: [2019-05-05 07:44:26,085 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Ready.\n", + "INFO: [2019-05-05 07:44:26,085 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Attempting to transition to state: started\n", + "INFO: [2019-05-05 07:44:26,090 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Simulation state: started\n", + "INFO: [2019-05-05 07:44:26,091 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Attempting to send a comment to the recorder: start\n", + "INFO: [2019-05-05 07:44:26,105 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Start recording\n", + "INFO: [2019-05-05 07:44:36,116 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Attempting to send a comment to the recorder: stop\n", + "INFO: [2019-05-05 07:44:36,162 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Attempting to send a comment to the recorder: save\n" + ] + }, + { + "ename": "AttributeError", + "evalue": "'VirtualCoach' object has no attribute '_Simulation__set_experiment_file'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-4-ddb2ce5efd3f>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;31m# launch the single generation optimized experiment in interactive mode\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0mlogging\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdisable\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlogging\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mNOTSET\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 3\u001b[0;31m \u001b[0mTrial\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mvc\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;32m<ipython-input-2-136682f618c4>\u001b[0m in \u001b[0;36mrun\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 29\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_sim\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstart_recording\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 30\u001b[0m \u001b[0mtime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msleep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m10.0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 31\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_sim\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstop_recording\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'A description of the experiment'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 32\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_sim\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/home/yves/Documents/NRP/VirtualCoach/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/simulation.py\u001b[0m in \u001b[0;36mstop_recording\u001b[0;34m(self, save, description)\u001b[0m\n\u001b[1;32m 927\u001b[0m \u001b[0mfilename\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msplitext\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 928\u001b[0m \u001b[0mfilename\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfilename\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;34m'.txt'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 929\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__vc\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__set_experiment_file\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__experiment_id\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'recordings'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfilename\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdescription\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 930\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 931\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__send_recorder_cmd\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'reset'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mAttributeError\u001b[0m: 'VirtualCoach' object has no attribute '_Simulation__set_experiment_file'" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO: [2019-05-05 07:45:22,557 - Simulation (braitenberg_husky_sbc_0 - localhost #1)] Simulation has been stopped.\n" + ] + } + ], + "source": [ + "# launch the single generation optimized experiment in interactive mode\n", + "logging.disable(logging.NOTSET)\n", + "Trial(vc).run()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/simulation.py b/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/simulation.py index a99a9d73fb84565a1677d061919099151b5726dd..d11f978490f72f4f3f41d854971b6f27c0358e51 100644 --- a/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/simulation.py +++ b/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/simulation.py @@ -33,6 +33,7 @@ import json import logging from urllib2 import HTTPError import traceback +import os class Simulation(object): @@ -711,8 +712,6 @@ class Simulation(object): # check for current simulation state and pause simulation if it's running if self.get_state() == 'started': started = True - self.pause() - try: status_code, _ = self.__http_client.put(url, body=body) if status_code != httplib.OK: @@ -873,3 +872,76 @@ class Simulation(object): :param file_name: The name of csv file for which to retrieve the content. """ return self.__vc.get_last_run_csv_file(self.__experiment_id, file_name) + + def __send_recorder_cmd(self, cmd): + """ + Internal helper to attempt to send a command to the recorder + + :param cmd: A recorder command supported by ExDBackend. + + """ + + assert isinstance(cmd, str) + + # ensure the simulation is started and valid + if not self.__server or not self.__sim_url: + raise Exception( + "Simulation has not been created, cannot receive recorder command!") + + # attempt to send a command to the recorder + self.__logger.info('Attempting to send a comment to the recorder: %s', cmd) + url = '%s/%s/%s' % (self.__sim_url, + self.__config['simulation-services']['recorder'], + cmd) + + status_code, result = self.__http_client.post(url, body=cmd) + + # check the return code, this will return OK if the REST call succeeds + if status_code != httplib.OK: + raise Exception( + "Unable to send command to recorder, HTTP status %s" % status_code) + + return result + + def start_recording(self): + """ + Start recording. + """ + self.__send_recorder_cmd('start') + self.__logger.info('Start recording') + + def stop_recording(self, save, description=None): + """ + Stop recording and save the file if save is True. An optional description can be passed. + + :param save: True if the recording needs to be saves. + :param description: If provided a description of recording to be saved. + + """ + self.__send_recorder_cmd('stop') + + if save is True: + result = self.__send_recorder_cmd('save') + if description is not None: + json_result = json.loads(result) + filename = json_result['filename'] + filename = os.path.splitext(filename)[0] + filename = filename + '.txt' + self.__vc.set_experiment_file(self.__experiment_id, + os.path.join('recordings', + filename), + description) + + self.__send_recorder_cmd('reset') + + def pause_recording(self): + """ + Pause recording. + """ + self.__send_recorder_cmd('stop') + + def unpause_recording(self): + """ + Un-pause recording. + """ + self.__send_recorder_cmd('start') diff --git a/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/tests/test_simulation.py b/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/tests/test_simulation.py index 326e216d0d29c21c5a0ec26f6a21be3caa505372..2e7ee9ced60d16055667eb35761263237e67cc16 100644 --- a/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/tests/test_simulation.py +++ b/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/tests/test_simulation.py @@ -640,3 +640,21 @@ class TestSimulation(unittest.TestCase): self._sim._Simulation__experiment_id = 'experiment_id' self._sim.get_last_run_csv_file('file_name') self._sim._Simulation__vc.get_last_run_csv_file.assert_called_once_with('experiment_id', 'file_name') + + def test_recording(self): + self._sim._Simulation__config = {'simulation-services': {'recorder':'recorder'}} + self._sim._Simulation__vc = Mock() + self._sim._Simulation__vc.set_experiment_file = Mock() + self._sim._Simulation__server = 'server' + self._sim._Simulation__sim_url = 'url' + self._sim._Simulation__vc = Mock() + self._sim._Simulation__http_client.post = Mock() + self._sim._Simulation__http_client.post.return_value = (httplib.OK, '{"filename":"name.txt"}') + self._sim.start_recording() + self._sim._Simulation__http_client.post.assert_called_with(u'url/recorder/start', body='start') + self._sim.pause_recording() + self._sim._Simulation__http_client.post.assert_called_with(u'url/recorder/stop', body='stop') + self._sim.unpause_recording() + self._sim._Simulation__http_client.post.assert_called_with(u'url/recorder/start', body='start') + self._sim.stop_recording(True,'My description') + self._sim._Simulation__http_client.post.assert_called_with(u'url/recorder/reset', body='reset') diff --git a/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/tests/test_virtual_coach.py b/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/tests/test_virtual_coach.py index f85c5413273717b6bf83530dfef0e34dbdcbf828..77741b6b5ea70c0dc6020b07672f50b2ae9a66dd 100644 --- a/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/tests/test_virtual_coach.py +++ b/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/tests/test_virtual_coach.py @@ -615,4 +615,14 @@ mock-server-5 self.assertEqual(csv_content, 'a,b,c\n1,2,3') self._vc._VirtualCoach__get_csv_file_content.assert_called_once_with('exp_id', u'uuid4') + @patch('bbp_client.oidc.client.BBPOIDCClient.implicit_auth') + @patch('requests.post') + def test_set_experiment_list(self, request, mocked_oidc_login): + + class Request(object): + status_code = 200 + content = None + + request.return_value = Request() + self._vc.set_experiment_file('exp_id', 'file_name', 'file_content') diff --git a/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/virtual_coach.py b/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/virtual_coach.py index fcd0d17c79548b955efe8367cd8a835be7c90ec4..3edcd0286d732a8f4b7f689cd5ab89a16e6e8a5e 100644 --- a/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/virtual_coach.py +++ b/hbp_nrp_virtual_coach/hbp_nrp_virtual_coach/virtual_coach.py @@ -39,6 +39,7 @@ import logging import getpass import httplib from texttable import Texttable +from copy import copy logger_format = '%(levelname)s: [%(asctime)s - %(name)s] %(message)s' logging.basicConfig(format=logger_format, level=logging.INFO) @@ -580,3 +581,25 @@ class VirtualCoach(object): file_uuid = csv_files[sorted_runs[-1]][file_name]['uuid'] return self.__get_csv_file_content(exp_id, file_uuid) + + def set_experiment_file(self, exp_id, file_name, file_content): + """ + Create/Update a file with passed file content + + :param exp_id: The experiment id + :param file_name: The file name + :param file_content: The content of the file + """ + + url = self.__config['proxy-services']['experiment-file'] % (exp_id, file_name) + url = '%s?byname=true' % url + + file_headers = copy(self.__http_headers) + file_headers['Content-Type'] = 'text/plain' + response = requests.post(url, data=file_content, headers=file_headers) + + if response.status_code != httplib.OK: + raise Exception('Error when setting file: %d. Error: %s' + % (response.status_code, response)) + + return response.content