From ebdb47f12dd770986ca539238f9c2137a1da18bf Mon Sep 17 00:00:00 2001 From: emizzle Date: Mon, 25 Jun 2018 13:09:10 +1000 Subject: [PATCH] Step 0: initial setup --- .babelrc | 5 + .gitignore | 6 + README.md | 4 + app/css/1fonts.css | 12 + app/css/2bootstrap.css | 6759 ++++++++++++++++++ app/css/3bootstrap-theme.css | 596 ++ app/css/dapp.css | 96 + app/fonts/PostGrotesk-Book.eot | Bin 0 -> 174344 bytes app/fonts/PostGrotesk-Book.svg | 3 + app/fonts/PostGrotesk-Book.ttf | Bin 0 -> 114768 bytes app/fonts/PostGrotesk-Book.woff | Bin 0 -> 64051 bytes app/fonts/PostGrotesk-Medium.eot | Bin 0 -> 178630 bytes app/fonts/PostGrotesk-Medium.svg | 3 + app/fonts/PostGrotesk-Medium.ttf | Bin 0 -> 118012 bytes app/fonts/PostGrotesk-Medium.woff | Bin 0 -> 66471 bytes app/fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes app/fonts/glyphicons-halflings-regular.svg | 288 + app/fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes app/fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes app/fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes app/img/.gitkeep | 0 app/img/avatar-default.png | Bin 0 -> 8730 bytes app/index.html | 20 + app/js/components/App.js | 136 + app/js/components/CreateUser.js | 226 + app/js/components/DoTweet.js | 140 + app/js/components/Error.js | 55 + app/js/components/FieldGroup.js | 64 + app/js/components/Header.js | 245 + app/js/components/Home.js | 34 + app/js/components/Main.js | 42 + app/js/components/PropsRoute.js | 26 + app/js/components/Search.js | 102 + app/js/components/UpdateUser.js | 176 + app/js/components/UserTweets.js | 169 + app/js/dapp.js | 15 + app/js/utils.js | 78 + chains.json | 26 + config/blockchain.js | 63 + config/communication.js | 12 + config/contracts.js | 64 + config/development/genesis.json | 18 + config/development/password | 1 + config/namesystem.js | 6 + config/storage.js | 27 + config/testnet/password | 1 + config/webserver.js | 6 + contracts/DTwitter.sol | 139 + embark.json | 19 + instructions/0 Overview.md | 16 + instructions/1 Embark Docker install.md | 16 + instructions/2 Template download.md | 26 + instructions/3 First run.md | 24 + instructions/4 Coding: contract.md | 54 + instructions/5 Coding: tests.md | 72 + instructions/6 Coding: dApp.md | 68 + instructions/7 Watch the magic.md | 11 + package-lock.json | 671 ++ package.json | 24 + test/dtwitter_spec.js | 93 + 60 files changed, 10757 insertions(+) create mode 100644 .babelrc create mode 100644 .gitignore create mode 100644 README.md create mode 100644 app/css/1fonts.css create mode 100755 app/css/2bootstrap.css create mode 100755 app/css/3bootstrap-theme.css create mode 100644 app/css/dapp.css create mode 100644 app/fonts/PostGrotesk-Book.eot create mode 100644 app/fonts/PostGrotesk-Book.svg create mode 100644 app/fonts/PostGrotesk-Book.ttf create mode 100644 app/fonts/PostGrotesk-Book.woff create mode 100644 app/fonts/PostGrotesk-Medium.eot create mode 100644 app/fonts/PostGrotesk-Medium.svg create mode 100644 app/fonts/PostGrotesk-Medium.ttf create mode 100644 app/fonts/PostGrotesk-Medium.woff create mode 100755 app/fonts/glyphicons-halflings-regular.eot create mode 100755 app/fonts/glyphicons-halflings-regular.svg create mode 100755 app/fonts/glyphicons-halflings-regular.ttf create mode 100755 app/fonts/glyphicons-halflings-regular.woff create mode 100755 app/fonts/glyphicons-halflings-regular.woff2 create mode 100644 app/img/.gitkeep create mode 100644 app/img/avatar-default.png create mode 100644 app/index.html create mode 100644 app/js/components/App.js create mode 100644 app/js/components/CreateUser.js create mode 100644 app/js/components/DoTweet.js create mode 100644 app/js/components/Error.js create mode 100644 app/js/components/FieldGroup.js create mode 100644 app/js/components/Header.js create mode 100644 app/js/components/Home.js create mode 100644 app/js/components/Main.js create mode 100644 app/js/components/PropsRoute.js create mode 100644 app/js/components/Search.js create mode 100644 app/js/components/UpdateUser.js create mode 100644 app/js/components/UserTweets.js create mode 100644 app/js/dapp.js create mode 100644 app/js/utils.js create mode 100644 chains.json create mode 100644 config/blockchain.js create mode 100644 config/communication.js create mode 100644 config/contracts.js create mode 100644 config/development/genesis.json create mode 100644 config/development/password create mode 100644 config/namesystem.js create mode 100644 config/storage.js create mode 100644 config/testnet/password create mode 100644 config/webserver.js create mode 100644 contracts/DTwitter.sol create mode 100644 embark.json create mode 100644 instructions/0 Overview.md create mode 100644 instructions/1 Embark Docker install.md create mode 100644 instructions/2 Template download.md create mode 100644 instructions/3 First run.md create mode 100644 instructions/4 Coding: contract.md create mode 100644 instructions/5 Coding: tests.md create mode 100644 instructions/6 Coding: dApp.md create mode 100644 instructions/7 Watch the magic.md create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 test/dtwitter_spec.js diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..db84814 --- /dev/null +++ b/.babelrc @@ -0,0 +1,5 @@ +{ + "plugins": [ + "@babel/plugin-proposal-class-properties" + ] +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..21256a1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +.embark/ +node_modules/ +dist/ +config/production/password +config/livenet/password +chains.json \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..504d4ec --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +# Embark DTwitter Workshop +In this [workshop](https://github.com/status-im/embark-dtwitter-workshop/tree/start/instructions), we'll explore how can we use Embark to simplify the development of a decentralised Twitter dApp (or DTwitter), and we'll be showing off some of the killer features of Embark v3.2. We will start off using an Embark Docker image to quickly bootstrap our Embark environment, then we'll download the DTwitter dApp template and off we go! Next, we'll walk through developing our DTwitter dApp using test-driven development. + +## ☛ [Let's go!!](https://github.com/status-im/embark-dtwitter-workshop/tree/start/instructions) ☚ \ No newline at end of file diff --git a/app/css/1fonts.css b/app/css/1fonts.css new file mode 100644 index 0000000..335a36d --- /dev/null +++ b/app/css/1fonts.css @@ -0,0 +1,12 @@ +@font-face { + font-family: "Post Grotesk Medium"; + src: url("../fonts/PostGrotesk-Medium.ttf") format("ttf"), + url("../fonts/PostGrotesk-Medium.woff") format("woff"), + url("../fonts/PostGrotesk-Medium.eot") format("eot"); +} +@font-face { + font-family: "Post Grotesk Book"; + src: url("../fonts/PostGrotesk-Book.ttf") format("ttf"), + url("../fonts/PostGrotesk-Book.woff") format("woff"), + url("../fonts/PostGrotesk-Book.eot") format("eot"); +} \ No newline at end of file diff --git a/app/css/2bootstrap.css b/app/css/2bootstrap.css new file mode 100755 index 0000000..39ddde2 --- /dev/null +++ b/app/css/2bootstrap.css @@ -0,0 +1,6759 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +/*! + * Generated using the Bootstrap Customizer () + * Config saved to config.json and + */ +/*! + * 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 { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + 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"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-appearance: textfield; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + 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; + -webkit-box-shadow: none !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('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: 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: "Post Grotesk Book", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #666666; + background-color: #ffffff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #2a2b4e; + text-decoration: none; +} +a:hover, +a:focus { + color: #0f101c; + 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: 6px; +} +.img-thumbnail { + padding: 4px; + line-height: 1.42857143; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 4px; + -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: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #ffffff; +} +.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: "Post Grotesk Medium", 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: #aaaaaa; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +mark, +.mark { + 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: #aaaaaa; +} +.text-primary { + color: #2a2b4e; +} +a.text-primary:hover, +a.text-primary:focus { + color: #18192d; +} +.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: #2a2b4e; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #18192d; +} +.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: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #ffffff; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +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: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .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 #aaaaaa; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #ffffff; +} +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: #aaaaaa; +} +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 #ffffff; + 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: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: "Source Code Pro", Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #ffffff; + background-color: #333333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + word-break: break-all; + word-wrap: break-word; + color: #666666; + background-color: #f5f5f5; + border: 1px solid #cccccc; + border-radius: 4px; +} +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: 15px; + padding-right: 15px; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1054px; + } +} +.container-fluid { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +.row { + margin-left: -15px; + margin-right: -15px; +} +.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: 15px; + padding-right: 15px; +} +.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: #aaaaaa; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.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 #dddddd; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #dddddd; +} +.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 #dddddd; +} +.table .table { + background-color: #ffffff; +} +.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 #dddddd; +} +.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 #dddddd; +} +.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: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #dddddd; + } + .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: 20px; + font-size: 21px; + line-height: inherit; + color: #666666; + 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: 14px; + line-height: 1.42857143; + color: #888888; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #888888; + background-color: #ffffff; + background-image: none; + border: 1px solid #cccccc; + border-radius: 4px; + -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, -webkit-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: #999999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999999; +} +.form-control::-webkit-input-placeholder { + color: #999999; +} +.form-control::-ms-expand { + border: 0; + background-color: transparent; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #ffffff; + 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: 34px; + } + 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: 46px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + 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: 34px; +} +.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: 3px; +} +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: 3px; +} +.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: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 46px; + line-height: 46px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.form-group-lg select.form-control { + height: 46px; + line-height: 46px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 46px; + min-height: 38px; + padding: 11px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 42.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 46px; + height: 46px; + line-height: 46px; +} +.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: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #a6a6a6; +} +@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: 27px; +} +.form-horizontal .form-group { + margin-left: -15px; + margin-right: -15px; +} +@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: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 11px; + font-size: 18px; + } +} +@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; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + border-radius: 4px; + -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: #333333; + 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: #333333; + background-color: #ffffff; + border-color: #cccccc; +} +.btn-default:focus, +.btn-default.focus { + color: #333333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.btn-default:hover { + color: #333333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333333; + 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: #333333; + 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: #ffffff; + border-color: #cccccc; +} +.btn-default .badge { + color: #ffffff; + background-color: #333333; +} +.btn-primary { + color: #ffffff; + background-color: #2a2b4e; + border-color: #21223d; +} +.btn-primary:focus, +.btn-primary.focus { + color: #ffffff; + background-color: #18192d; + border-color: #000000; +} +.btn-primary:hover { + color: #ffffff; + background-color: #18192d; + border-color: #0c0c15; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #ffffff; + background-color: #18192d; + border-color: #0c0c15; +} +.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: #ffffff; + background-color: #0c0c15; + border-color: #000000; +} +.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: #2a2b4e; + border-color: #21223d; +} +.btn-primary .badge { + color: #2a2b4e; + background-color: #ffffff; +} +.btn-success { + color: #ffffff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success:focus, +.btn-success.focus { + color: #ffffff; + background-color: #449d44; + border-color: #255625; +} +.btn-success:hover { + color: #ffffff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #ffffff; + 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: #ffffff; + 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: #ffffff; +} +.btn-info { + color: #ffffff; + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info:focus, +.btn-info.focus { + color: #ffffff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.btn-info:hover { + color: #ffffff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #ffffff; + 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: #ffffff; + 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: #ffffff; +} +.btn-warning { + color: #ffffff; + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning:focus, +.btn-warning.focus { + color: #ffffff; + background-color: #ec971f; + border-color: #985f0d; +} +.btn-warning:hover { + color: #ffffff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #ffffff; + 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: #ffffff; + 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: #ffffff; +} +.btn-danger { + color: #ffffff; + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger:focus, +.btn-danger.focus { + color: #ffffff; + background-color: #c9302c; + border-color: #761c19; +} +.btn-danger:hover { + color: #ffffff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #ffffff; + 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: #ffffff; + 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: #ffffff; +} +.btn-link { + color: #2a2b4e; + 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: #0f101c; + 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: #aaaaaa; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="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; + -o-transition-property: height, visibility; + transition-property: height, visibility; + -webkit-transition-duration: 0.35s; + -o-transition-duration: 0.35s; + transition-duration: 0.35s; + -webkit-transition-timing-function: ease; + -o-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: 14px; + text-align: left; + background-color: #ffffff; + border: 1px solid #cccccc; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + -webkit-background-clip: padding-box; + background-clip: padding-box; +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #666666; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + text-decoration: none; + color: #595959; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #ffffff; + text-decoration: none; + outline: 0; + background-color: #2a2b4e; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #aaaaaa; +} +.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: #aaaaaa; + 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: 768px) { + .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: 4px; + border-top-left-radius: 4px; + 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: 4px; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-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: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 46px; + line-height: 46px; +} +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: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +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: 14px; + font-weight: normal; + line-height: 1; + color: #888888; + text-align: center; + background-color: #ffffff; + border: 1px solid #cccccc; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="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: #ffffff; +} +.nav > li.disabled > a { + color: #aaaaaa; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #aaaaaa; + text-decoration: none; + background-color: transparent; + cursor: not-allowed; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #ffffff; + border-color: #2a2b4e; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #dddddd; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #ffffff #ffffff #dddddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #888888; + background-color: #ffffff; + border: 1px solid #dddddd; + 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: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #dddddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #dddddd; + border-radius: 4px 4px 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: #ffffff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #ffffff; + background-color: #2a2b4e; +} +.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: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #dddddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #dddddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #ffffff; + } +} +.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: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 0px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + overflow-x: visible; + padding-right: 15px; + padding-left: 15px; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + 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: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + 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: 480px) 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: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .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: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .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: 15px 15px; + font-size: 18px; + line-height: 20px; + height: 50px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + margin-right: 15px; + padding: 9px 10px; + margin-top: 8px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + 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: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.navbar-form { + margin-left: -15px; + margin-right: -15px; + padding: 10px 15px; + 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: 8px; + margin-bottom: 8px; +} +@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: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + 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: 0px; + border-top-left-radius: 0px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-left: 15px; + margin-right: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #363763; + border-color: #2a2b4e; +} +.navbar-default .navbar-brand { + color: #ffffff; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #e6e6e6; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #ffffff; +} +.navbar-default .navbar-nav > li > a { + color: #ffffff; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #898abd; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: #2a2b4e; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #cccccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #363763; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #2a2b4e; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #a1a1b4; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #2a2b4e; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + background-color: #2a2b4e; + color: #ffffff; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #ffffff; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #898abd; + 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: #ffffff; + background-color: #2a2b4e; + } + .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: #cccccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #ffffff; +} +.navbar-default .navbar-link:hover { + color: #898abd; +} +.navbar-default .btn-link { + color: #ffffff; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #898abd; +} +.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: #cccccc; +} +.navbar-inverse { + background-color: #222222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #d0d0d0; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #d0d0d0; +} +.navbar-inverse .navbar-nav > li > a { + color: #d0d0d0; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #ffffff; +} +.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: #ffffff; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #d0d0d0; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + 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: #ffffff; + 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: #444444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #d0d0d0; +} +.navbar-inverse .navbar-link:hover { + color: #ffffff; +} +.navbar-inverse .btn-link { + color: #d0d0d0; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #ffffff; +} +.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: #444444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + content: "/\00a0"; + padding: 0 5px; + color: #cccccc; +} +.breadcrumb > .active { + color: #aaaaaa; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + line-height: 1.42857143; + text-decoration: none; + color: #2a2b4e; + background-color: #ffffff; + border: 1px solid #dddddd; + margin-left: -1px; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-bottom-left-radius: 4px; + border-top-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-bottom-right-radius: 4px; + border-top-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 2; + color: #0f101c; + background-color: #ffffff; + border-color: #dddddd; +} +.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: #ffffff; + background-color: #2a2b4e; + border-color: #2a2b4e; + 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: #aaaaaa; + background-color: #ffffff; + border-color: #dddddd; + cursor: not-allowed; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-bottom-left-radius: 6px; + border-top-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-bottom-right-radius: 6px; + border-top-right-radius: 6px; +} +.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: 3px; + border-top-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 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: #ffffff; + border: 1px solid #dddddd; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #ffffff; +} +.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: #aaaaaa; + background-color: #ffffff; + cursor: not-allowed; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #ffffff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #aaaaaa; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #919191; +} +.label-primary { + background-color: #2a2b4e; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #18192d; +} +.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: #ffffff; + line-height: 1; + vertical-align: middle; + white-space: nowrap; + text-align: center; + background-color: #aaaaaa; + 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: #ffffff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #2a2b4e; + background-color: #ffffff; +} +.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: #ffffff; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #e6e6e6; +} +.container .jumbotron, +.container-fluid .jumbotron { + border-radius: 6px; + padding-left: 15px; + padding-right: 15px; +} +.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: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 4px; + -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: #2a2b4e; +} +.thumbnail .caption { + padding: 9px; + color: #666666; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: 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; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + overflow: hidden; + height: 20px; + margin-bottom: 20px; + background-color: #f5f5f5; + border-radius: 4px; + -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: 20px; + color: #ffffff; + text-align: center; + background-color: #2a2b4e; + -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); + -webkit-background-size: 40px 40px; + 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: #ffffff; + border: 1px solid #dddddd; +} +.list-group-item:first-child { + border-top-right-radius: 4px; + border-top-left-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item, +button.list-group-item { + color: #555555; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: #333333; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + text-decoration: none; + color: #555555; + 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: #ffffff; + color: #aaaaaa; + 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: #aaaaaa; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #ffffff; + background-color: #2a2b4e; + border-color: #2a2b4e; +} +.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: #8788bd; +} +.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: 20px; + background-color: #ffffff; + border: 1px solid transparent; + border-radius: 4px; + -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: 3px; + border-top-left-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + 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 #dddddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .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: 3px; + border-top-left-radius: 3px; +} +.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: 3px; + border-top-right-radius: 3px; +} +.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: 3px; +} +.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: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.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: 3px; + border-bottom-right-radius: 3px; +} +.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: 3px; +} +.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: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #dddddd; +} +.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: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #dddddd; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #dddddd; +} +.panel-default { + border-color: #dddddd; +} +.panel-default > .panel-heading { + color: #666666; + background-color: #f5f5f5; + border-color: #dddddd; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #dddddd; +} +.panel-default > .panel-heading .badge { + color: #f5f5f5; + background-color: #666666; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #dddddd; +} +.panel-primary { + border-color: #2a2b4e; +} +.panel-primary > .panel-heading { + color: #ffffff; + background-color: #2a2b4e; + border-color: #2a2b4e; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #2a2b4e; +} +.panel-primary > .panel-heading .badge { + color: #2a2b4e; + background-color: #ffffff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #2a2b4e; +} +.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: 4px; + -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: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000000; + text-shadow: 0 1px 0 #ffffff; + opacity: 0.2; + filter: alpha(opacity=20); +} +.close:hover, +.close:focus { + color: #000000; + 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; + -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: #ffffff; + border: 1px solid #999999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + -webkit-background-clip: padding-box; + background-clip: padding-box; + outline: 0; +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000000; +} +.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: "Post Grotesk Book", "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: #ffffff; + text-align: center; + background-color: #000000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000000; +} +.tooltip.top-left .tooltip-arrow { + bottom: 0; + right: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Post Grotesk Book", "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: 14px; + background-color: #ffffff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #cccccc; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -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: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + 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: #ffffff; +} +.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: #ffffff; +} +.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: #ffffff; +} +.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: #ffffff; + 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; + -o-transition: -o-transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-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: #ffffff; + 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: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001))); + 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: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5))); + 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: #ffffff; + 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 #ffffff; + 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: #ffffff; +} +.carousel-caption { + position: absolute; + left: 15%; + right: 15%; + bottom: 20px; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #ffffff; + 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 { + 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 { + 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; + } +} diff --git a/app/css/3bootstrap-theme.css b/app/css/3bootstrap-theme.css new file mode 100755 index 0000000..017708b --- /dev/null +++ b/app/css/3bootstrap-theme.css @@ -0,0 +1,596 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +/*! + * Generated using the Bootstrap Customizer () + * Config saved to config.json and + */ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +.btn-default, +.btn-primary, +.btn-success, +.btn-info, +.btn-warning, +.btn-danger { + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); +} +.btn-default:active, +.btn-primary:active, +.btn-success:active, +.btn-info:active, +.btn-warning:active, +.btn-danger:active, +.btn-default.active, +.btn-primary.active, +.btn-success.active, +.btn-info.active, +.btn-warning.active, +.btn-danger.active { + -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-default.disabled, +.btn-primary.disabled, +.btn-success.disabled, +.btn-info.disabled, +.btn-warning.disabled, +.btn-danger.disabled, +.btn-default[disabled], +.btn-primary[disabled], +.btn-success[disabled], +.btn-info[disabled], +.btn-warning[disabled], +.btn-danger[disabled], +fieldset[disabled] .btn-default, +fieldset[disabled] .btn-primary, +fieldset[disabled] .btn-success, +fieldset[disabled] .btn-info, +fieldset[disabled] .btn-warning, +fieldset[disabled] .btn-danger { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-default .badge, +.btn-primary .badge, +.btn-success .badge, +.btn-info .badge, +.btn-warning .badge, +.btn-danger .badge { + text-shadow: none; +} +.btn:active, +.btn.active { + background-image: none; +} +.btn-default { + background-image: -webkit-linear-gradient(top, #ffffff 0%, #e0e0e0 100%); + background-image: -o-linear-gradient(top, #ffffff 0%, #e0e0e0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e0e0e0)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e0e0e0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #dbdbdb; + text-shadow: 0 1px 0 #fff; + border-color: #ccc; +} +.btn-default:hover, +.btn-default:focus { + background-color: #e0e0e0; + background-position: 0 -15px; +} +.btn-default:active, +.btn-default.active { + background-color: #e0e0e0; + border-color: #dbdbdb; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.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, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #e0e0e0; + background-image: none; +} +.btn-primary { + background-image: -webkit-linear-gradient(top, #2a2b4e 0%, #151526 100%); + background-image: -o-linear-gradient(top, #2a2b4e 0%, #151526 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#2a2b4e), to(#151526)); + background-image: linear-gradient(to bottom, #2a2b4e 0%, #151526 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2a2b4e', endColorstr='#ff151526', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #11111f; +} +.btn-primary:hover, +.btn-primary:focus { + background-color: #151526; + background-position: 0 -15px; +} +.btn-primary:active, +.btn-primary.active { + background-color: #151526; + border-color: #11111f; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.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, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #151526; + background-image: none; +} +.btn-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #3e8f3e; +} +.btn-success:hover, +.btn-success:focus { + background-color: #419641; + background-position: 0 -15px; +} +.btn-success:active, +.btn-success.active { + background-color: #419641; + border-color: #3e8f3e; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.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, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #419641; + background-image: none; +} +.btn-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #28a4c9; +} +.btn-info:hover, +.btn-info:focus { + background-color: #2aabd2; + background-position: 0 -15px; +} +.btn-info:active, +.btn-info.active { + background-color: #2aabd2; + border-color: #28a4c9; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.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, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #2aabd2; + background-image: none; +} +.btn-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #e38d13; +} +.btn-warning:hover, +.btn-warning:focus { + background-color: #eb9316; + background-position: 0 -15px; +} +.btn-warning:active, +.btn-warning.active { + background-color: #eb9316; + border-color: #e38d13; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.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, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #eb9316; + background-image: none; +} +.btn-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #b92c28; +} +.btn-danger:hover, +.btn-danger:focus { + background-color: #c12e2a; + background-position: 0 -15px; +} +.btn-danger:active, +.btn-danger.active { + background-color: #c12e2a; + border-color: #b92c28; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.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, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #c12e2a; + background-image: none; +} +.thumbnail, +.img-thumbnail { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-color: #e8e8e8; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + background-image: -webkit-linear-gradient(top, #2a2b4e 0%, #21223d 100%); + background-image: -o-linear-gradient(top, #2a2b4e 0%, #21223d 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#2a2b4e), to(#21223d)); + background-image: linear-gradient(to bottom, #2a2b4e 0%, #21223d 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2a2b4e', endColorstr='#ff21223d', GradientType=0); + background-color: #21223d; +} +.navbar-default { + background-image: -webkit-linear-gradient(top, #484984 0%, #363763 100%); + background-image: -o-linear-gradient(top, #484984 0%, #363763 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484984), to(#363763)); + background-image: linear-gradient(to bottom, #484984 0%, #363763 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484984', endColorstr='#ff363763', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + border-radius: 0px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075); +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #21223d 0%, #272747 100%); + background-image: -o-linear-gradient(top, #21223d 0%, #272747 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#21223d), to(#272747)); + background-image: linear-gradient(to bottom, #21223d 0%, #272747 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff21223d', endColorstr='#ff272747', GradientType=0); + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075); +} +.navbar-brand, +.navbar-nav > li > a { + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); +} +.navbar-inverse { + background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222222 100%); + background-image: -o-linear-gradient(top, #3c3c3c 0%, #222222 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222222)); + background-image: linear-gradient(to bottom, #3c3c3c 0%, #222222 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + border-radius: 0px; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); + background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25); +} +.navbar-inverse .navbar-brand, +.navbar-inverse .navbar-nav > li > a { + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); +} +.navbar-static-top, +.navbar-fixed-top, +.navbar-fixed-bottom { + border-radius: 0; +} +@media (max-width: 767px) { + .navbar .navbar-nav .open .dropdown-menu > .active > a, + .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-image: -webkit-linear-gradient(top, #2a2b4e 0%, #21223d 100%); + background-image: -o-linear-gradient(top, #2a2b4e 0%, #21223d 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#2a2b4e), to(#21223d)); + background-image: linear-gradient(to bottom, #2a2b4e 0%, #21223d 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2a2b4e', endColorstr='#ff21223d', GradientType=0); + } +} +.alert { + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); +} +.alert-success { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); + border-color: #b2dba1; +} +.alert-info { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); + border-color: #9acfea; +} +.alert-warning { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); + border-color: #f5e79e; +} +.alert-danger { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); + background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); + border-color: #dca7a7; +} +.progress { + background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); +} +.progress-bar { + background-image: -webkit-linear-gradient(top, #2a2b4e 0%, #18192d 100%); + background-image: -o-linear-gradient(top, #2a2b4e 0%, #18192d 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#2a2b4e), to(#18192d)); + background-image: linear-gradient(to bottom, #2a2b4e 0%, #18192d 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2a2b4e', endColorstr='#ff18192d', GradientType=0); +} +.progress-bar-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); +} +.progress-bar-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); +} +.progress-bar-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); +} +.progress-bar-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); +} +.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); +} +.list-group { + border-radius: 4px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + text-shadow: 0 -1px 0 #18192d; + background-image: -webkit-linear-gradient(top, #2a2b4e 0%, #1d1d35 100%); + background-image: -o-linear-gradient(top, #2a2b4e 0%, #1d1d35 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#2a2b4e), to(#1d1d35)); + background-image: linear-gradient(to bottom, #2a2b4e 0%, #1d1d35 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2a2b4e', endColorstr='#ff1d1d35', GradientType=0); + border-color: #1d1d35; +} +.list-group-item.active .badge, +.list-group-item.active:hover .badge, +.list-group-item.active:focus .badge { + text-shadow: none; +} +.panel { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); +} +.panel-default > .panel-heading { + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); +} +.panel-primary > .panel-heading { + background-image: -webkit-linear-gradient(top, #2a2b4e 0%, #21223d 100%); + background-image: -o-linear-gradient(top, #2a2b4e 0%, #21223d 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#2a2b4e), to(#21223d)); + background-image: linear-gradient(to bottom, #2a2b4e 0%, #21223d 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2a2b4e', endColorstr='#ff21223d', GradientType=0); +} +.panel-success > .panel-heading { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); +} +.panel-info > .panel-heading { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); +} +.panel-warning > .panel-heading { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); +} +.panel-danger > .panel-heading { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); + background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); +} +.well { + background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); + border-color: #dcdcdc; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1); +} diff --git a/app/css/dapp.css b/app/css/dapp.css new file mode 100644 index 0000000..e58e28d --- /dev/null +++ b/app/css/dapp.css @@ -0,0 +1,96 @@ + +nav.navbar-default{ + background-image:none; + background-color:#363763; + border:0; +} +nav .navbar-form { display: inline-block; } +nav .navbar-right a, nav .navbar-right a:hover { + color: #fff; +} +nav.navbar-default .navbar-brand { text-shadow:none;} +nav .accounts-list.dropdown-menu {position:static; padding:2px 0; min-width:280px;} +nav .accounts-list > li > a { + padding: 5px 10px; + line-height: 30px; +} +nav .accounts-list > li > a > img.profile { + margin-right: 5px; +} +nav .accounts-list small.balance { + font-size:75%; +} +nav .accounts-list > li > a > small.balance { + float:right; + margin-left:30px; +} +nav span.glyphicon-question-sign{ + font-size:60px; + margin-right: 5px; +} +nav .accounts-list > li > a > span.glyphicon-question-sign{ + font-size: 30px; + +} +nav .accounts-list > li > a > span.glyphicon-question-sign, nav .accounts-list > li > a > .address{ + display: inline-block; + vertical-align: middle; +} +@media (min-width: 991.98px) { + nav .navbar-brand {padding-top:30px;} + nav .accounts-list.dropdown-menu {position:absolute;} +} +nav.logged-out .navbar-brand {padding-top:10px;} +nav .navbar-brand small { + display: block; + color: #ddd; + margin-top: -5px; + font-size:66%; +} +nav .tooltip-inner {max-width:340px;} +nav .profile-link { + display: inline-block; + vertical-align: middle; + padding: 10px 10px 0 10px; + margin: 0 0 0 5px; +} +nav .profile-link .username{ + display: block; + text-align: center; + margin-bottom: 10px; +} +nav .sk-spinner.pacman{ + display: inline-block; + vertical-align: middle; + margin: 10px 0 10px 30px; +} +nav .navbar-text a { + text-decoration:underline; +} +nav .navbar-text a:hover, nav .navbar-text a:focus { + text-decoration:none; +} +nav .error {color:red} +nav.error .navbar-brand {padding-top:10px;} +.tweets .tweet .list-group-item-text { + white-space: pre-line; +} +.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { + background-color: rgba(221, 221, 221, 0.4); +} +nav #dropdown-accounts { + background:none; + border:0; + box-shadow: none; + color:#fff; + text-shadow:none; +} +nav .accounts-list.dropdown-menu { background-color: #aaa; border-color:#363763; } +nav .profile-link .username {text-shadow:none;} +nav .dropdown .caret {border-width: 7px; } +nav .btn-toolbar {display:inline-block; vertical-align: middle;} +.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus { + background-image: linear-gradient(to bottom, #2a2b4eb3 0%, #2a2b4e38 100%); +} +.tweet h4, .profilePic .created { font-size: 1.25rem; opacity: 0.5;} +.profilePic { padding:20px; } \ No newline at end of file diff --git a/app/fonts/PostGrotesk-Book.eot b/app/fonts/PostGrotesk-Book.eot new file mode 100644 index 0000000000000000000000000000000000000000..06846d371bd63a9ef30f5212b6c2bc98ef5a2f54 GIT binary patch literal 174344 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 NZ@r=KCqmy({soe@7q + + diff --git a/app/fonts/PostGrotesk-Book.ttf b/app/fonts/PostGrotesk-Book.ttf new file mode 100644 index 0000000000000000000000000000000000000000..331a1ba42a3fba678bb9d73eba86bd1d49cf2882 GIT binary patch literal 114768 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 w%KIE{lvBUv0?omQ1kfAekyACN*4fM=UoJG%Zn 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 literal 0 HcmV?d00001 diff --git a/app/fonts/PostGrotesk-Medium.eot b/app/fonts/PostGrotesk-Medium.eot new file mode 100644 index 0000000000000000000000000000000000000000..e0171ff3b3c3169b50e677e37da16c38605f5700 GIT binary patch literal 178630 zcmeFa34B|{wLd;{uU7A}ByX~1$=V!CcD(O#6x(t3#E!GrNl5H$glq&8LI^t~0n!k{ zQc5YM5GbV-s1hgznzoeo(LmWsDWyE%5hnrKQc6=EP)Owe_srFmWm}F-KfL#UpWmlW zMt7S#bLPyKBzyO}cw4s)(7 zUztwVL;t+2ot?|hXIqhJ8tcRPR<;J$8*n`bXRFyc>;kq4FC`7TrgAFB`S$R#@G3!@ zh93=M)7s~CPIyG~29vZ|jD7p%X`Kt3Uv_E@OgivBV;PotofFI7|LyOq@Y1z-t7p}w z-Yq};?2$h(mi!cBmh@HIwmQu7*gqKyyou+vYqy-e=|3MU*~^&oRmKu7IJ@`!EmRxI zPs7o0_Qs3W9%x?tJYy9a#($KsZcXoMcELaJE>FVq>UFqbxLilqt+;lt+q8B2g|}ZH zz%}4We0}4&t9sL)xPLig#TLf2A8zX1zD46m^x*kAj{5kmTh2Xy z>(3o+%NYOD{fybp-qN>b%RgG(9|GRl$iH9U0;ot|S$^e;)W-j2*)r;3?1j&tT0+Mc zcm3_dfy=_5YiG)j;?fxHcDy4$8vYzGY#O+1;4BTLHxmg+8 zjPv~o7l=EuG?9PIw8(W>+JifLl_P(Pl{1t)IKu8?>~HP7=VI{|ezsiHcRmX;#}^vu z!vP&Z!gUVDZ=Qo^{0-?a4i2W3C$TBwjidNQl0vLh`X%d-CL@(0y@l(avJRew^joHt zcH&+t>yS6$_!`n*@qBaSxC_V2Scz26tSD!W^mUdd-^tRXA0XYt5~Pi60`8f{ljJ8@ zs(^*yiA@CCYs@U*BN)$=2=>^7cAzZ=p3Sn6(s=g3M@T1-Uc$8o$3NpZRXiJP>r`rQ zG)-W#Xg9T8O@xCnlBNK82tR5fJPl8TH#HId#*qlWu}R>Wa82n|)JHg1lLD_<^p}pg zrP*vc|CIS~^hwFg#}}b*GMGcE!hMM~aP7c7xTf>z@+>x;?n@Iy{^|4%zXH$RX8C+A z-YaFT{O>GDdXFXXzp`Y0636FI2h}r1k}H{;;253+ToKp^zB49*J2q7f90$CK1UnKP z4O|*{AL$LGUn2bz>A!Hl0ZB$%4^X1^M%t{$eR_8azY52ufdSEe!hxCy7h@!OLj+HR zt1D0z;cHmJ7@kfzR1@KHTnV@)e5*;|obZk$>CrCWUrhq$BBk&6U95l~M!&S+dK`%# zLEd8YaS6uL99AKn4O;L|q>pjEomEO}aGs8IJLp3(jxXRoo=X=X?Z$Hljyv%l(Gw4w z$onzQ7qQtWFHIUi3L+I_yry8RQa$5HvXdnXSO}ij1lUloL%>Hco*@a?34S%99cW7y z+G0gY;pqb>k@}Hdz%|G5Jsew*5@Omqh1wfUe*k@;cE={d!5B%t40#AYY66}JSFwrk zrY3LZ-1NrBlx{e_j%$-mC(_*u+_ql<4~E*54sz8Sc^j@7YW zvvT$d=F$Z?{|{CNx>ZN_`K2O%op{HL>v_!1jd*VttLCd%1|LA`MOuM01$ErOT+(9n zInAkdjK{sqDRr?QBOOAz1?fDbdyw`Zy^FL9>1m`O(#=R8Abo`NEYeSq{*I)+zaQtZ z@1MYR?ECxCmrbDeP3loD#JO=Wf$rNR17J!ODOWvbe`Q7NLsrNiVns-WIQQY`qx<4s zHQHUx3V>TXQUT6~Uf;}&oKgx~jJdd29M5ORwu8; zv5VDdLb#{qIn(nEpwk<`0kpDqBs==Si)2ARl_I6$*_oezjpgz`D@k&LE}X{-F-D7} zW$54I;C)_V<-CuT%fDj9B9*a#jKqHoJRD@X((}wOT?L#j!Pu5qKx$w`k`sK#c4m~W z5Pe^c_VggNAvGa+keZPikftD2A(ct1Sq0z9vZWl186WaAvmB`$WzN9;FIYNg$^@Jj zA@6w0E92*)JPTm*piPrd-bAd~Ehz63lvj`PT9CT%yo+r`nu|nm6(UVVnvB$fREt!> z_oB_o=*O+-&&{C2+c5{uVH0o+@R^`7=ZkZfcy<9R#yl!!$3;s2|LtAVz-7|;%q$l~ z(&emBPQv*j=9cqt+=1(}aegJU$@#eMWfNoydX0^J%_7pRH$JS;9D(&n6?yko9aiCFw(UHPZY@x*E@#C;_L`k7YQY zr6ybx&P77qZ8h-L}M%Vn$D?w>N^@=RhV0qku)oMKA1^>oT-sycFBf-kCV81oN}wCK zP@d3*@~3WGV>cG+v!O@jO_~3PWR+Z!UAlwcD_Qs{ep*VBp5(vaf8kH@wF3ff`4K5Y`furD>@l@WhaHds^do^KvLu$wQdlZ>geI2G z%*?{9EQ4jTESAl3Fpt9gzxaS;lFa@s#ayMkTGu3}fSoopA|&8}hBvg_C$_BFPb zUC;Kh8?b}Bk=?{@X1B1fvs>9Wus?rC;u3b-QXWw7isa>D#P_zs6`^ zcM&z1zsO(WFZ18>WBfz@5x-xuvA6jj*z0)o8QX^E&q(=_L%LHc;Qdl6e^AO|r}^vB z3;Y8qn}1(=9lNzIshi)&4@hbJ&-@V9x-kEvbgi^Yx{g1KKFMQt=3x2E$-K#*tHiap~|b{qR9yPe&^zQw-H?q>I~ z@3RNk57>k33HBuW2|LWbV9$dhzs!Eie#c&se#ZX5POx{`d+dGo4|aK&6D zt&S~@%N&^yF7P$ ze&9LedD3&(^DED9JTG~Uc}{r#=1uqhpwxJ@{pjMOOOEy)U3GNb(G5q>J$h9?>rd^^ z=`ZN__D|^d_m}n8^|$o5_0Q;^)jzMlvwvCtivE@TYx>vqZ|d*s-`2mQ|I+?l{nz&I z>Hm8FZT;Wszw;P7raP8!%zP~4Sk^JyvHWAsWA0&_sZT2zPIar=ld7@ zsp?PP`pbcn*(VE5djG*cY5HXCC%^pU^G{BHGVtk+Pe1zflTQb}&% z!0F=t<-qA`;B-U(dBEvK!0DC!*F)xl^8u&5$2K23@7VTZ zR~|PXcOEZ{;I!j-@A31FUwQn-6K3GF8aSPDV)luS6N^urcjCqoIJKU1ob&*vg`Wh0 z(|-z__I~=#rzb!C>4xVOT-+`bIQrS>KEE*v4XvU}}bH1^whx8&WNcT?VO{JSpiYTW6| zJ0E2I^IS;QazD%c6#qWSlk=*wKDKSlZpe8gyD;k;S>+ksX_u#6l=fUIpn$XuQmupy z30E1vPgmlP^ZCFjWKR4Nq@8q+?}luH$&HlcCM6rrgYrzQy+i(Fz^MMobCG8*{VIPl zNzcTe+@_wXN4Zu#Q;ssEcabx9(`YY$CXM;yMO*xk{B1cFB zWl(pV_h7%2F9*w(e+9GA6Q*V z{})%60#G{_`wnE9cVTCA0K24nuxt7*o51d60rov`yZ1xd`7kSIKV%gw#H!grR>dA- zHS7?pWshJrdK9$tN34N8#v0j=A*uW+)~BC=n*N+kWxrsp>~VG>`-HWzUqU$kE9^t3 zvuD^$c7)Bq{&W_5md$3*K`j0oh{0cE^VkcZz@M{4>{Ygy{hoC(TIXK}W&R^Oi~T2C z#@=Ad*_&(ydyB1P?_d>to2_QY*ece~)_^x(&;G;s73{|qVZU)j0X_w}*A zvkTbA;0Cs{PqA|T6P&|mp!Wa8zsG;bAK*XW5AjF%{rq9Jh5e14$3BAi{v`jq;3rP< zqk_YDg}*AejNkF!3qIr+zggNXT_f$3?vf5jcT4w3uSq|Vo|0aa{vh4Y4bmIZThg06 zn-_Brck=+R<0ZU`*YIjy%bR&UZ{Ur*mACP!d>Yp98GH%v=1ci9eiq-v&*hu>#r!

I-QA8*;?&;Np+dS$oazXb(n%@hc&fe2vDUF?Pp>1C z(B9R9I}Uo5Kxfr-R^4Ok>F(~fg_ys)+ZAH%U2D3#i$hYtfpRpSUVxx&Y3~YYUCkk# ztJ&ssc87RRaYzoh0FPt!LG8+B2R%6i?QM}0r!9^>jy)*uV5!!#r=zQ<-PSw5yUW#$ zXTi=cJg^b;k*bPAnm|b3;y(l%iI$$`;*b`Xu4b1b#9Yn2A!+5>5MPA~Lz<%EkS^dL zsHCZ@9@nsy$O5>6J>8V0r&U0uS8_1F>!3m7>2XZmK&LP@S>M-OWJQF1be zEV#LOPtU<*tv|HMZz}+1QjsymUmQvc9OQH~1rADdOb;BC>1Yld)X>oal+)1~IH;pz zM&O{Hj+udj20CU14jSp09S9lx8_51CB;9xI6(gIl0Ht0#x@<*Yx5Tau+#^L*78h;}3Z-MtvB8(=c%2 z4pLWdt;?}zVb>XRU{n-`3Zt0j86jU$h+9hqVkg8RV(6oyfTK#l=?}1w9A}PT>cs_% z?z0Rsiejv_$yIx>h+EN;0NM>eqw5jLAvQh&_lwOKMeO-}m0f5D!sz~)M zYQOZ*f;Jp$YCl#7T#gb#SsMszV|U3xFSlUU)kJTjD+h1aMsJJU>Z?QY)CEGNe)Y+a zLhA#eGXEY7AQ~xqFc(Kuj6Nv|c~O6Zz!i-?6}2IZEElFk31)}_VaEP%+oV4MD z)5)~JAujGr$BDQzgYrzmqnVV4PG(UaI+;y*=wuG%sl&-!%0nmfC=Z>qQyx0$pgavY znNNA>q?7W{$pXqlCkrW06HXRU9y(b}dFZ5z^3X{)<*CQX63Rm-ODPYXETcSha#kQz z9!2wVx(HR{_6l)UgR>qno^ZPs7rlW{MKt$Hx)8Zni8IQ*TAWeVHGxoNH0xTr5LwR_ zXOwlFIHRoR1VUBOtn2AQWZfXnDCXPD@KMDF3X-*^&8REcm|e zCk#;Xu5y4Hw}xcbmQdzYhXapOI%b7*olCkxm9|h}cMsUgg&>R((y%flxmv*k>WU5} z>F{I0Pxm2Bp>gW`)uk8TOc5Roq^3oMJC*=}cX!qlMU{^?U{Xs3H z#>4-%LLQ7nHnGxS{sy#4welkaInuKO|B#OG_Xhqk;HPW6RucKQ4N~hjxdzhC+j)o| zm(rlw-XT3Ih2?trR{2#;rDlOn*og-nRBwAIwP4SeNm$%$&?USvgr-vR=!s z%)Tq9Bxifh5nHM4j@-1|oq1__$L$&R9{WD~i}@+}UHOk9)9g+#&b79=B(;=W#FdHhG`%HT(7zN`(swZ<+9JQ9;q%qFai7R`jaB)_;}% z)j(U|sp9nFb;b7;e^6pCxuWEOlH(IoCf-|GU;1X*P34;_W>)l9?yt(Iy0_|7^^)o* zYf5WAsNGomVcpES`|DHcudV;EVRpme#-_$cn;IuSJ!N_GXDw|l`&;g7InwfeYkKS4 z)(2XjpUS2dOzoR`VCwO<+P39wm$e;e>z|e~t$Nz6(*x7@&M?eaJ>#jF?wNPYDxbA) zR(STx*)PsnH0RN|_PO`Y)6Ls5@6GmQ9qx`tJ5J4CIsf5K);YiP;ROW?9$Pql;hl?g zi+UD4xwvrgtz8LSw{*SU?e5;){r(dBk|j$XUYfh~ilwhF>sj{TvJcOyJ?pBoURhqd z{Qeb5D;BMIxF?~ft*5Ui)bnm{Qm?zWzISWy-rhTUf7bhY@1IwCSGKR*xAO5-(yG9! zt*iE|3axr=b>Zr^)yr3JU;Xgv<7@0|Hm^CdHf!zNwfon;w)VrbEoUz{`?j;+T<2bQ z$-2wy9{-l1;a43T=9RQ+RX1=HTY7o1Z^dbMD-8Z#nnPE#57=x12n$_Po94z1dgP z*VlJn-`nRGp1tRN+iu_1e_`5%voG9v;WOJE z+jne#{i2x{t-omBMMo|=xg%po(~k8!?%naqj?XV{x_HOM4_y52B{`S0Uh?!M$1l}g zT6^jIOIKcc>!oj8rnxM5*(I0VdD%Oc8!j)peD>vgFTelt7cW14h2x4nSM*;QyzwnD4>TTFe&Egn@7|-i zXZ1Y~-t)n|hI?D@z5U+9_n!K0>vvav_nG@r?wfnx=KCJ_9{XOw_f~%If$tr;KXCun z`=7f1gYP$g|LO04_CVVMk3Z1=gVjHH?FZopvmTuJ;N}N!dhq23Pd(K7Q0SrK50^i@ z|KZ1f=>6eUKfM2kPyO(CNEa#$EemZ6Js1if%ssf^;4KFa9nu|YJGA`J=0m#=-GAu0 zLmxe|=uz*FS|3~erjf?tJBw-?jd3`|sX()%)toR}cJt!D}h6?S1XzKeYehzSpmK z{k}gY{IT|rxBc;hH`?CV1!^y|DOeFsV_lG8A7f?-KTa~}G_V#g^qZX~XAP3sSL3V6 ztjW}8>U~qB!>3!@q|(zbpH+VNaQRPuB7W7IU#K^58)b7=iq+*t=~-C*_=4`7Y@A#4OnnJ=6{JX3iyfEMHJK^6ERjl! z7w(w7@oNR=S>{hIn_Xecshm~bJU?TLYtP2n7cD5}%R6_ks93qQuwlBlZDm74Z=0{R zal)ci70Y3~K=xi8__-NvO@ft`J!nJq0+6H@z`#2JS2AyPdI}u`NJY6F)u%{)&MQms zYpN)3k~%({vtvPuuLK|ku3HIm#-&Bp^sESN^4?a*c0;Dlkk(g zH2gB3EgkNCy7v#g$g7l{g0hXQFz6Xsww7x&$r>uw$c$8~&OBJEse}JC{5X{)~ z^wq8Cs|jp%FflVj0&tvbrRG^7OM6$4Y!q}bVe7_i(Pij7t(JG9KM85JU_qP=ctp9R zP9WMUwRQ)MRxkS5l%~({bEnBwl_FEGRt@j-3_|rJ?t(V7bVH(ZVxw=)*7m}ZMVHK7 zz0bQTb8$<_>}vZttDTcdbAQe^hi{sZmY(^O${;n&r%jZfURE&SVU(&6yi zyx?>zuLY_U+_PV!Jej2jQ_*mAr9guzO)^mlcoXlO2KG7A4*Y}fLS7Rq3i?tx<0){s zkZ2Mlwa5TL#SUjl30e(YButuAe@%IH6`;WIa}{`fHFo~vGVg_^;<-)JI&A%v#gaP3aigT#x2en0SQ|C{AqM zwvDIk35U6DAD=rjdIAkb z!;8@D?_z+8@hRuxJvW;e445$Hd9xO_muNg+Cv!WpED(tLHCcDXGHCX-5 z64~b>5Hm9Ea%PiUQ(Z$H;!4r#`IV-s+R9XUbIB!YtWSb1wFh=`g~nb0Xx? zRa5Epb1R7SueXKkSG2mlt;_4Kn>}yawz+e7LiiKua8_kUU0r8&&YR5@e{WFgEgkrY zz(oe^W6FXhPDj2Slrb$OnFdC4D(92qqQ_t8ABr9wtx38;6wyM}#7Cg1zM`#l?vy!E zOnLHKo9E=`k3`n;8%k$2EXXCi5uOrfHg>wtnXIBr!PiRQD;0LSz!yfZ7R#BIW;u^i z#-tV+Lcp5S>ol1xpefv<)0G-b^+uXKTA@zqag zX*YSBiffk!U7psnYBzk%bfIB-OLI`tXBT9r>k}MhQ%g(RYx4{0=J?Zd$~+l$wOMYP zS#QXjIJLBFcBO4qx2-l<4fsJjU@3hVTt-eX6PSxGf)PSuN~2ZRX(cSVtWw$w+g`xp zbo#p(jriki4%)v8?^~HG=%Dv8IBEUX0NH3WXXz$EK&{-WP4#OFyn=ud`+$iZ*lZ<}3iwmuDOZsDDe8jV9Bh*gW3Hku+(3s) z>ohWmsi+i$582GjY|6~kg8V6@K_OJ!CGRVAr#kI936jy4?@VoYbPj5)M;$WiX+_3RaPsnTa}0 zMy#K5gbt<1dY#@SE5x!w0U`z<`GzO2%FRx+T1+}wXR>A{=Hy-V#P^t8`7}=p_8%fBx2=}D>7>;_-$Oi{-=j` zarT#e-@R`a-xA)>Q^F@<8`bgAN1`ua#}8Zb!w{4PbefE-jm=euE=g^ZEeV|D0U@q-~6i^|L0&b z>wPt&!*u0yo}b2rX;b6XQJD4%JlR=Ou)&^}Ys=BfIuJ4p&-MB<<10HWiZR0|7^}d7 zp!baq;Dm+eSFc-B9S_Fk=U1*-Q;Gfr6DInTJk~Rr3qAvrgN+F)Xa=q`a=on6FOA=+ zC4oY3fg?933Tk3}P|cOq*yva-SiZcznDfzLFLdYSxhXxbp2TZLlFjY5#iYUUd5LIG z4Ld8iq=4&n72K#V=LVzP?BaSpCE7rUA(_#jGcHATgRD2iZ6~_IP!gEnv*%{jWY#$h9;(<@s!SAh<6%U4~~#7A#&o6YOUHKkb%23>8UDW%wv2-H5P1Xud{+!c717SJ*CDRizSCry!P1xH8p{vhK3@u&1N>| zKxC`ZpZTI)HdYs`HmIYOoQ^P7!JJ@O)9_&gh{#m5?~J4L9jM>vFz@1~@ZaKr>6jIT zYnOn_!-By{o_u?jMi(3oUfdyOFu0sC(`YpC?3_lH5D<9JF!5(=iyV$3ZD-Qr$&(i+ z#e=vrZ^DGUtm-LKszC!JW*VrL9>Q8-gU=GiiIFoo0n3imY-N(nr|7v(qt)oN>%jg= zvQ}DxjWJdvY$l0k77V?Kx8~;N`g8rD@mU@Z?QBw@7^0z|3N)%Jt7}HmeQ9TPRYpcy zPFhJ$y~|pdZ}#MkvIb;SFDGnH;iLv^WQA8s-wX84^|F1?GE-pD_W zofm)cSkEPVH~)M1FfR$e!e^eoDWo}gFd`N~?Lpuk@C&&U)?+90kmMyQdGfej1sWDq zS>-P;fZ|yF#u7q3fi>_9k|=2|t%WL#`vGGis|uDE`n(>umT4leO3lEYW_?^pEhH<` zTE>u-ab+nS3)*~TK|B+{yCMst3iGWh%u&1obXS2^6C54p>~X@MN z-@-G2+*Pq=O~uxjv9KF_sn~0JJ=i%x?$C^fB#WTEu0#SV3%oNA^5t>bMU+Xufa&#SeXDI&C=Krv(>q!n zNk7K(Qm|x5ezh=8M(mOJ(qnm*7_AlYWXKXAVbXn|#c7yzfJn*!&Rl}s%)(Wc&!kQ*&b;n3q_IJN4q}hDRLhc<3%zrF=ha}oWTM0+$psg~< zHRu*0h)C)gh1(j9CRHP7yA@jmQO4T~|gKne~|Bv-4H3b52+Nm(z`cc}84U8hpPfm)8^RZQl73W9j za*R|z{11f&N9vaMN9nDC>-hrLwL$XbB$7qUoEF?iH%&g;t%?;`-(lc-eX_oF5ZQnk zk^;z7oN^4hzfUY%S4_+2&pP$b;qBf90aiA(J6W$2{i{;TGgh6Fl9HX0O>4NtQ$SS@ zVa{TKI68zKn-l}ht|%LJ3aT1a-=X#g(eX?+hzsHz&wz`hq@>Iw$Z$<2vs(ZZL(XHt z`Ljy9zZnCGN~TY}JqU+FBhuwd1spEc7_7qtfH(^L^-^NC4a96~wVDovA2b+@9SPiM zOg6S=Wo5atTna31cR^y-ki{i-3m6L-U#xESqPxEO7#N#kc6zkyJN4EetSZiko~09{ z!>Ad=y|Sho(dF?bP~x&s9P*xUsq__k79sP=-6q~ zAP69v9pIx$2j*mL!4`1QlEOuUs_OJwMW57xfh?$))L}G8kO#)H&=~Yi2C{~~Ophla zGd>dyJ>?*$_Y*Dly+^xkl*45=;@r7|8Z`6k`ybk(gsV`Y}_4zZ*+UCS9(I zKS0`uf4)^F8c@S74W@hClB7%LvR-PAkOM_2=p}*#>Gx8+V$e&5Zfpbu2L)b=mLy21 zNw;PT7M&rZ*fHt#nodj@s|HHKL9LiD6NiwN-D9f|8) zPtaUaEXjHs*BFu@PL)aRH(9}ppZKT^Sk8Z3D?}lxwC-2Aib36Vl(nDeAg>_S61p3pmsdHh9W!Q-_8h;^pY!jA zf6M>Ty#;^W;bhXH^V_?-K@4rb_eT4+6jc!U*Us8XH8;ZUsCf?Xt0 zgIynci3!*z1tUepHq(Q~2}2(gHDr}R zp_Ux;f|R9#*MKt60^$z?qxi%> z*7W6u5k!7xj4@0cYW~Df^B6G(_!oli7)k4??uFHkiW}%O27?nmR7`MwbUwrnqs{=oz zYEBl+p2Sy$`{&MC_gb%*E3_xyCHmY(vSqc;$1)-kb|9!m8&TB98WQn;k}zUVJaZyt zfW$Q^QpO8lxdgG*gjSDsRyI)g9B^H7b0TacrZ9-?H3rgB=rvmX+62sA8B}#CO&u&o zOUcF{3EMKU!gE#wB~@|2Uo@f6>Bz8{Qgs@{^36|7_46}o@bvK-1FsjEhz`7qixDTTQ)CBSde-X4m zAXGyA6A!-@vJ#A{e?~`cWc3}}SnxnZL@<`kApfVbL~A1BL6L#^5ycU5=@=sW33kl6X3jSc_&S>eShfa-BL zpnyt+m1J2?NNZq=JY1qZ3dlZ>(EknD8H@!y_YK)M+&gwN26q*w|E@MeJq~Y>a?z^2ikK?_-(f%;dmX$dY(ZQYIW7!RbGP!?Njxu!-i_GLuud>- zaD{71A$#CkT&K55Z|NOp}Cu0m=?Yzf@Nm2xFrE zsubfZ)u4P5xwZ(4^3p|HTie#;@h4QvitrTs>gH+N7MAYFshCw>I-@i@w_8y$z zAZYiB@`~b4p_`dsTwbw!_kz0K>4m=5v#PE2D_Y!zZ7b2`XaVucE5SFAy)^I>ECB}w zi)q;WWy3lWTY!Jja9T!p$2Fc#!x|mefSTW_2zpeQNGFm3`VLJ}0+*oG8{```(Ddpc z_|Zv1kwbFnq!wZw$vKEjx~(xxqjnV2?mHC5k=Mns@Q&zvzldk&4fwz}l8t!==E+0` z=}k^VkQ%%7H9#t8Al;3!1y&`fQ3;`dGvf@bqj?m#`R)W%#02FrX z7z0&^bqV=q)N;M9wx*f{GlK>Mmu$q;j@H_?%fYTARyDeIAlOrN`f~$>Vp(;Mb3siLZURzK=6W`@Wpl2JKBtV1q<> zX=l#`Z6(F#bc}1*AW5xJ8>IHpZIA|?1tm#Q)5KZ_jbei|#!JBwHb`fF0X9gfb7xO) zYeDDuClq53g3b|a-Jl`TnLK022Q}hEGt4SUim^(n?yPt4GrG*Eo#&m}+ZfkMN$06; z^PRzorZ}ea=GEr&LCYnQ9SZ*%AqPnzj(l)EgXI$Gaa1M05R;MuC)R2y;&yYTGK=04 z-Z!dQQq%_rbzqK=4^IZOlb1t`OalWYDv%`siyYDEM}&z&nmC$J7Dk@J>4&cxG2+9A z1Slg%vg}j98uTklrB*|&0TBv$+3K-i6aPWtK1JT6D6NEL6e^5pt6(ElCA^Jx?%cL> zCwUw_v?Tl>U$EpM!m02%5^|4h;qQe_u7(E{F_Pd=Ng9sz3T}w7Hivt2wl*7ra58X` z<2WGw0n&~cLwt}FQzw0VPo#gjep(9S)z4qYdN+3%09ejWO^*wJTK|4DF_-$A__i#F z+etdXHR}iQumCDv!UJcS8G~+Ey7+Ebs`0{5Z>%3F3sqdFEcx5&as-}I=@UivAS^l+ z$pe`oko6V1Tc^`>8ZZW7O^}^cG{Ievmz!0bT}xz@k>XD9KJUc zeZ$2Ir(TYW%IH`knL-uo47QIYQGnz!wmn9rJx&K_W28R+vCh4=IQtG2*--}!|bdPt`*UKBUwi_D-H@v78y2pili2#Md}36 zA@}xJBA}>EvF(b7_m@e;aqUpt!UpeyxJU#AQ|BScFkCbbV=W$8#zQd1oHIa%iP z6j!RtQveO_Ff*EXL)|z;ba7xPc!Oe!Q@i7Wsr2Hp?SfCb@QHLzQTVM={6Y zu1TtT5=ji}%smnDL;Nm0e^BIrC20<9&&X#qK$@?7*yuT6JT1W~G2+O{(03Sfv_c5( z#H4M_^h~gN%oL#@-hhMi(ntpm*H8$Xf`O(X=4ZKC+Bm>2y`Uho&K_fl<|s+0z83zV zV$G>x6~R&=X_tf0y^i7-3UkjIO--h747HMDC>9^BJU-`8-iZ~7_x%eVqGI7H{jy%7 zUrGBgEXLbDX&%V~{-oE{i9M==YQ?^O60c)l~HjoZo?l8u8@U5!EOR9@+ z!uVZ$J&GC1zvSr~-WAy(eo2qtS0gL392u|5dOT~;9#&6gfm*G;BPr1+>-9-32^_{< zh;|~FG1$V+%9_>M(%3-$%w}4eVM{dH(mdYo=AVpMuBA2q%HSTps-OL(2Z97EBKR$1 z9vcvC#uap^p36yz2}amAfjK44RH7gn!yK52?!`DUzd%Dc#*tZQgh3~i^7o_sRN_rj zQ<9SswMQJ4pBYx5mc|uH0=@C6pY-Or36In%3doD$N7UrND)fQp- zL9dbxQEa2gs0lTKjz&GRW0m-^oL3A8t44I-kfsms7osN}uvI1ha2YGl{9u9^qStg` zD53~k%@kvW~kl=N#j}h}9d~he5A%^j88|x{b^E+=D?e!~vb(NU|%{3q4FiDYY(= zZKkp6AmY1d5N$?=(aezDAXYndGl=+0v{8eRF5KOR?Fb`o?{_PE!nb3+-_@<*pbxxS zH`&BmX|+v(h``KIZ!@q!x*?(ls<(nH3;TFz;ZZH@SxGk(!lZe4MbzGX$<<`wqSVf4}eMSmWO0h0#44O|r+O1-71-|cf{c(6Nk;v++(BZ0ASlT@L2Z0mhZ2%BP;@;LNM zia9YxtR;i5*61>))lFYqvGCkUMa9JdzFFg{ndb9PtH{%7KY|OZrE6nAUtn=gm_E65 zvNz4{ofxpExvJde41du7c}8B!v=o~++vlB_hwr=rAJak0NWNkL)wnouI7%LHBFNGmOy|twvSpKdQ=$=H z$+hT}y`-X8^ZFp0sW3Hhl3a>VDiMv5mCq}gTjzAv%`KTU)4ZwAIPnzF3Ee%TaPg`*8&rH=!=puZHn*pIv2%u4eapHW1KGFf!L{#J>1I3AuVm{}j#WfQqmpYTqPADt1`*V|% zbN%^6{^WB~Jf%&A)r%%M|604O*==!^=K8#TTc9C7zpmI8a1`d06j@zw;9+gi+u#(BwaFvJi&TP$RGY#AYZGMBQfs;@_n8> zTS^j{J>zrH83OqknPeRn6CEv6MY`GvoK?-Rp0_a}*ISlfOx@5h?-yC_fF+O6pC8Dz z2E0JO-_Gp_*Oz9`Oi_E{sHf7AlI3qGaMk;>QXCcJ!Xes;FJQd~DUXZRja(SrlHs#L z0=kK36AtZYU_`}?8D!6MI`Uk0m)lxcpf~$Hie^y>DnxU|DPj#l4yDsqAS(HrxvOSX zFP`LdPFh%5x1h!rewe4^`W=CZDVr*4wQoy}>#8Tao0rwqE}P;mZ0Rm_*vfsGg|J#~ zuB@Ac6$I9Tj9&{mbT+Ln(AjZVs$*qC60lh!;c{qUPo<6!MvNx2$D>g7q0x@=xMHmC zGPT=FC)qtyEfW(9GVPuX8_sLzZ#0#+PDnSWElMzX1CtkocW|=ubzpr-;(uq&_+IG> zew#7^tj&$Eo`tqh&&oL0&-Y7keQ$Py{`8SQ7}NH6R8Qj&*g zF|xE;fp}wQA{@!ESxra~>`JzVoOrWPQC0L6^k(!8a*P<`WrDII_GRIRf!ZQY6=$dy zAA^86N78dZyAI~s0%BA@-V%bf(U*0M8FctYom$8kl~btWU}pQg?#1&~w6B;mYueOc zQ+;ib)j6R6;YWo2Ul%nDpokkW0(>RhU^Q$7DDndRg32S@WD_|XXKG`@beK!HFS6OE zz-wOqsorc%Hfv4k1+_B@^PCBZd1h~&r)Wk^zOQ9TMd|#;0$-jj%jL+)FQ}d7b<|qT zCC+qvV))J~Utv{Mp|9#3SCz?<-d3Mi;jz~7JM>z;HoY=;LQ^2akY-6v(Q9NmCAZXD z)aXr5b(Xo@bxFyAjNFnG%cR1h=0Ij@LYi5peXz8oq_niGEWAh3YK%UsJKvCQGuth| zJm$!B{G0^6%4Xi63!EkqQNia%Y$!5ezAcE8)nj!%~eQI4n zQ?actHOpZ_1d8-N(C@b#C6>a*!tfJ3knPS)NOxDezMy&~)_~t%OGm)_r80_b7a`mk zM7S{-6_o?{JhFz5;qx*<1v0^JP9;zec)jcj!G$$;TEXNC~+jG11Z>9MCykW;XPKw<~|0?8Q2>~ zRv|0VXNE|eV1QCv^jg^d3a2|b*5Fzp-k>NvGx`ip`A~qktX`MUhE!OU;jeHxVkBVN zq=1HFOsHqmH(91umd`RL*nK57N4-D0uQcD{$u;$r{+Rn!iGXb z7Y$VS#Sn>}MDfT^q8-_+pswZw|3 z$MCA0Ktn-6Lm)>z65fb6td%@~k$6M!BCr=CHW{3t%8RJH2k@nGBv>psM;IF7MZ`>u z@E)M+!?Q#g!K4JiiztjBWS~9@_NXEmlgg*^AZj!Dy!vUDzD<@nbrFW}SHl^>Olgb67*|KaR$J0o& z2lo7Lv3%|8|4yGm+jTQ;6&ov}R26ELg%m!;T~ovb#t z#MOFwIoIR`c)B;1`^vBMMriiMV(j%OJ(+@!0%5<5pJoU%g0^4^4hZ|9+>}+$AN&v; zafsPOheyO32u(y+FufuU6BrTqyMN>|S&8;WY~yHNt8<>OPRvWSPH9r_TE~{>Gf*Vz4$ud-B1b{{%1=6MtR^S<{f%lcFBgbjMfXDIzkDtr7*E)L|<{ z@oR|&!z51)`2mf(i14htvpV2ut;j$3tgbDF&6-MoVOdGTgyxAkj_PS%Uu&gPyIC73 z#HMVSBTKI}J1acXJ7%<{6}s(?T$@p6#X9M!b*HC0%j}s29&Dn(Cj!=X>Fcmeg}qrO z%*}8QgC{9bl7b}vkvbwcqoIJ-ft7W^E6q$o2*Jc6a3pDkYe+*J5%%-;^orc(+3oG; zZP<`)NzF>s8xyBC^P~mWRQ_Z^I6pgq(1dzgQTO}!xO#1GxM7&+&Z1RqA7po68^^gHhWWT zaf+#>y|XodHY5X2@1PBdH9iVlsn2xz z^vMt1efi4X?caIuvdtU+@!pL$_J4Nw-2(RmwftR_30fWWf|(ba+1MT+&v+0hlxty@ z%uFgbvu0=vPkH;?C%5M1BxaaXV9$_}o`J}n8wZa3n*S$S&{$cNkWf_FXm6W;IufVZ zjf(F>oukCI6huPE-$>#djcqBD>#o@q;1_-RS@^O~G3(pHPcNFmiKCMh`Hb{C$Vcd# z+BYlo$uuaTsjMh3)5suEk$WVliQM}?D6b*^;ql3A%Apn;r`$%Wr*ND9&*4faA;u-& zqHt&9#+9(0RL9lRVqDd*yOnX3PR?f)2)Ch*FB#U;!)}uQa%5zAFn1M6AZeGd@I}@< zBlgR%C5Vax5mPsAKC%!=hUeShGSD5&AekWSD~3n~6TX~OP}Qr93wgGg=hv)USv6k# zU3^9P`t{|Qn(z)1vQz0!fx|}Z{32LPP_ZZEg(KvrMR4_lCQgL)RPho;U6MdXVia{H zXUd!?@Ta^2fP_pnm+&`j>XgY1byXEZv6%cNu^6*WjNQ47Z~m?wp+*`nhO=^AuG}1t zCns_wT&v^t9)at2_IqW#+8Ve)Kbt2QW^rQ_>)Pfu=S88niAi6|sT#6LR|X6j-Tlww}W7T|(xo7%`P)=Aia zbfQAX@EHQR86Is2AFh{lOOp(cLn^_XGFy@pB)wkQ`hrhrY^bVip3>0P*j8IpSzlG} zwvzVMU67I)*?>dv9!~?Si0R|#mc+)GEQiP{l<>#WNIwhCXCs+0;p zl9EHp+Y(aVDmt_`uvd~HpMxIVkq;>e22Qgu;A24&=#aPp!jj0$f@dt0nZi|`EPl?c z(Bu?ZKm7XGYE9`%@Yvy;v6P!CyidbcBtUT!pnsHMJI`DN_(lVni~v@_R!1bSkWi>b zGJv{BQ67l!N2*ioD5}`^6c%^RI6!||u(#nKi~+m~`wAXDHP z_>VVgY{5M6|A-O*JL-7PyMOHVlA0U>tufT(vC5cnsLT(jdXh8i&Ut7s7z>9?H%I99 zC$ph3j4Pu4Lz74MABwoop$j9V6{6ko#xNf3rIG$aXRZZo7GfCFpcml_GF4%ws{qqh zRUxVZ&DbEuGGhJ+%}PWJ`s+b=AxGzmGmj`uJP)B6rYl#DKDuJvfk1^wr}3nSC6og{ z(!QXD6h!#YgNDLMVH+*O#WkpK3SWU8gI438;LJ}?gLR`plcUWcI|iUf3$5x{whYpf zh+Gu@_Sgmu62&$8czi|;f<{RATp>J_D%b_Vgj{aWC2);V)t7i6q}0Q5ks-X8(Ba`5 z6ZE+Uj2fdcCI}$~wiqQJaf-+s6Mk@FvB!*92lz`P2kZ(pC|-;y2kDus5amtryH>t$ z2%XUvx1Bd>(hz%&5+LNZ+lCu;NEb|-HvjZnLu@+y_FZ8pR7Ti!h%vzbiZzMsI(%e} z9I@=6So3gX`YH`PKu+~z8+kko!P=P&J^reEyN2w62yR$iC~!L<0)@6!tfgbYUEuV% zoxTDe3{$)?Orc?D9>X~0DlD#h$1+e6E9>d6pV3T3nRkGl)>RjDwXMM^%AzDOmtGR) zkQj1^{G$Z5BabD)CkkSvssKFDvAByoMQA}`8p21bBBe98;$3B-<>!pqkjOggJ#$mA z#wh)8CxqXbkpDJNYbvuOJ>2CnDIO6g z7Qu*mJbL^Wn5rt~8Dx?Xhs!G+A=Kg9$873~Ve*`?>&%T-=M3={k^U3?7Ry^mB0zxX z#PRiCgxMHt6qYK?M(vo5QaFv%ubjCl(XqHKGXD`vK(*{bplYz`h;IN(FRj!~vd}?3 zPgRTA^N3CiT6w`dattdkAMJ6+wDfwC_P1xE0{yh7RmNUOz+T2?1luC8m-&m_8eI_m zLrqZaR7Y*X#NtBlmubS#P>^Fc=87Sk%rmu$=f>DH0WBLE+X6)29{v#1skYttINx(D$8ohYd~W%5j2`&77qW$&Y<2o zYM7WwU!qd26LW@aqjR&%=hfzov{YQ_Xsj+xR?HPw4e{JE%f2by)x&HTeGMLGDSt~C zFv9hW><7iVFoP{*YxzeC?*&U?+IZ>Mj246(Nk$ZHUJEOy?s6$Xqa{m1GVmLb$v7+% z8S+Ik>7ykL%@qH+tkwjhIt8FoNYS{YF-VH(H*BuB5|>6SQ3;(%JRt$-PfQfVK3l6A zA=VFl4@_0`HTsekMYcIZ3Dkhv5hVzzE8dEHit7yTlQ|+j8fuUXGQ#~C5b#fJ000?p zF~LdE5@3sHgbC)*lEwf-7$#;dUevRE(b~mp7tEhKn^YlWm{^#WOkWlj+huJDmbw1{ z1I43}<^Q^`)J{=Sc!m4EYHLMxK7bK6NHUd5g?YHK^p>^5E@G}s%c5M6Bj zC`8?X402MkZ0w9z1dVstK1a-NqeYEjhC8yPU~ohsXEw(jQG^)vw)S}&&RM-Oj!ACH z|C~wgu%-H|HPF3t$h!Vjo9jwHkKqN>x$r<_E^Lrel(`T!Aph#D%VSK%ladlULB=WE zXw2{(ZNSkoG&wp~SoGyDIrK@sH7R~E;~)J0&&{9iASTfIb^q%VC`QTt72CJps`7$g z`OG;#%0Q~~rXRc0CHNHCg*>9)&0exV(irVoQle%C*CwuSk&^Wq3LLI3Akhp-BQgYs zJk!O#tS%jOLcEMsgUR>^;!>6fFAII5c4-oJQN~XC+7B2N1XS)!<;lrll~Pg+o$#p0 zHmIx;WSEdok1PN}&glC|Nzv2MilS*SWw5A(SXfY0LMJ>$011@@4(bdr(PBcb1GKMA z)F$GimI5}VKtzs4+rC73!M0I~N?@9#1b7xEMv5E*FlAv`clLSbo_*oE3)ie#aaPx& z`R&9`x!q3i>q>;fnoMD-UQVC(P~@!tQw-MAN^~MCz6qk!WES9~AWmNO)iPV_QoZh6 zZR{6Be()7DUedsE^v+4d`p<@J4Y5QV`S=F278bIwQiRe6XX`=Ip?MhYGGY=Y_vEQd z?tmkGMk4HO9M_R#HN-$%50b&}WpIoP#ec;~kR@Yn({EyC}EJqf!?)kj0Mwl<|n zig!4CH25225sQzf0Ck@Wx#h5LnT&XeY!UI|B#OU*m!&I(6(N;@@3OE@2g^{^hr(`G zm~)#fR57HQ_?m$0Q%Ei^g_8(r{r(9cq=EN=!z{7S6yGsX^?Ir&5a)nJ7`2)*leSrZQxFv*b_k)1t4X zBgW^Dua*pYYDI>y6#0G$B;4MJ4_dsaIx)B9>lhDd09_95Vm_^e6PlMLO#_`rdI zBKA|vVe!R@7%#Gj?}QL|!gmawWB3@v2+y&Iw^+_Zc#GxbpI1swVy4tCLz>Sk$)dke zKDS}c(f3o(e&zcq61W4!Uk#!x;iWySIyk42EAxo@U|&vOcN+WwN^|1VM_RivA&x!=+4HMj|kJZRrPQi8K{qU3~_pk z_|c&+5*fajqWIClN&*ZA2va;CI;-%Z`%78Ghweo2WgbSU7*~Qo=B36>1w}Z4& zXwDI@cL=Tg1hn#!zP`veS6VS{iRsxQbfkI)zr}dpTTu%kH4+hAz6ILK--2W*A6X$2 zeu+&9f6kr}xX&T~u~Fh8DuV!8LwtOKKI;G%59<4oUnoO0&y2wFWqo}kv5U{DsO{J$ z{0O7pB7#wlBEW@VF4jho!KRvy74b7vTouu0p1j-?RwJKdi!M1>oM2lUhyC^q54~nn zBCdT5s&hqgw2*M1WF#z_Y7kAHA}81ZHiufl*NJLNrFPXz+(KYkIOLQz$5e~Szg;;^ zqjyk40VS}u)*{a-**kA)9Iz<`<6{a%%L889` zdy3=%x#cB_a1qu8{(!d>t-nH&Fdl-Z#Gp`)D_=#`xEK&g1Zt7pOd*MkycNarI-HFPWA~9}yousiv8dGFP`(S% zE%&5Qk@ME18$hO-XxP=|?&|E&IJHhH<|ProQ99{0e5O-WTRt&1TttL+K0RMsWv(>eTCd7{ zgK~_GwpwB%;lG(}xU#lIq|O!DL)0$@2s4nd4B2SZU_r)DC26Qw3doCHy*bg(9wsmB zq>VV>^&DDtqcy*AVNP9L^|RS3t8_oe*LZ-sp$~NDQyNXFl730cNf4q$eswu%F$+NH ztzAa_#$W-f;u#w)TTi`hx0yw{tj_k6_iVTLJ*c|z*;-3Kb^7}9rODA+Qi6HQV5}YmXGV>&8+Q*;M~8c6dS`Okba$p3+4iYeq+Km` z=ehQIfL2t2aGK;^@nKd|7Nrs7C=DO*`&WilT#MlqzkmNAvg>_-Pd5SwA=6#SuD>nV zO<)(@D(D6BL%Nd5E_F$>$z-+x@~QlY3V)$~D)z%|${ByPtbWbfMB-NNWN8p460VhB+03eVGic$ejxEaboU=@G@Km5yox(Y=>)`xF{ zkA%*71>3^mfze>&(Pyw|C3_vv0Qf@F_=RE(0Te~z%CV|$%Kkhr%KRaisOJcG4Jlft z{N>6cz<@}RyG7BNr6$AC%KEZ>^@xXlL}1{tIF z8;<6db(1x0G_>ElYWR)nGyAtyGePzO$H?Hk*-P~w*)DX-fKOd!K9SUCuDT%%17=l# zCjgd_SJ+G1Bwz-+3Osl3=1?flLF#6TDDfz&`pl$aakSRvdJ;YTIqjoa!~5J(7xkiQpQp>Mdi)3(U{a- zv&k_ri@cS7w8=p!JM43t92Ms`>^;I{aiA^@n#truBCgr6Uk%o*s%3%uvhrqWYIJUz zBa02bs&{Q}*iClU=QlY64ExQ)$G=rTT}dVlce>n{W~@?IvUTmclG^2#^Y;;x6?A(M zwzcXgOlv|&G)Hx$+7<@rSOlOhR%ed$eUqCS>q^#ti(FUYOXks`0*3$Ux{~!!b5Q9f zqwCZ+r1@C2z$7rYSGNwHj=VlsA8b}-vZZx?Y)yn6pSnKtyT#gq6Zmyuf4hLsSQK8X zoXkl~UI$JCHx2?9P6GfVmMrzZL`uAh=YXmw$V*hFz+cwF1tc%GX2=}m=v(AWX>tXE zGNoE;{XEG7!pG_2Zn~evz_Us(=x9Tp` zw@wWYZ)N-0RK9P(k?8lAk=x60iSFdSW-ry-d0`(y2ZbVM>LmT7Wqov_1bMqi3n6b_ zGlZf$;g*iBLMh@t>NDA9SVf=*@`G@as6R0@<~-ADoJ`Wo$96O#%I9|7sY@oB77*_I z@YU;iPA;r94xdEF?pl3{i)#_BZ;%{YR}G<2L|oS}oGRv1P$-qggXp)29g9jIQ>UmY z!7$S^)+#dKm=f+Zrkx^|N?S!J$bK(^aaQ^hLD7y30X5EeW1tEQR1+wu-2?`8*=1EY zsLPi2aXhGfOBcw9P@;?n1)YGRri-NxEHe}W>WZNemC~#8i3}B|5}XEfsPaePNo$0N z`U^SWT%}QxX@oUfRa%sde9q`qs`niMd0Kjy7j+0$Z-xr@?${$}1%U(avM;*m!IC%)rRamSCj8Q^sy>7~5*!*qO(gjFNN_d41jwJ}**S zB!aj|0dbK&9v4Bm({yyLxQK|jNHg}TkBih?wHht0WOcjp*>p1Ca~0i14xNU$NOS14 z__|?{CR^vfHt>u!PRAG5c7wraljrF>JddJVxUY^MVwgwt97WDKIhDY()DyOWFJzn% zxB=F$oz#L-iIrvy6Ik_S1D~{_;~fF(!8TljJE(Z6QG9-o zT#AjPzI&m<_YZ>BxNxy5-{Zl6OQTifyGnCYCRb@zzigyA4vN>MnX57tSd2#M|Ek>inFkh>W3>`o*4Gj zpy)(C0rx9A2$@5pB6CQ{`BcsWIc!2oKHCce9AF%n*i1YQwJO{!`=qJR{87(dcvypUAAQCpC_+97)eZnAl!)4?|LO(-MF1#h@4M33> z<(@l;;x3+*2FSxTIV{U++trG)A>HOgh#L-P2!4^+wHJGY@q3V+Ia%Yrab8tr9h3IcQ&jTU2WAsA7m z`q$8=m&hDY8keK5(}HVZW}09=-4xAhUt2SAZfflBX;4(YbMDiyT9LW>+$Ka`d&2a@ zp0&w2Uhvu?pMf&HC^nAysKTq#l5Yg=N%@;i0Y2XYj&26>DQ)A}iI5$fj!%OQuYkVO zyvH7}K!_f3S|tR&iuM_-62M+b1afL18)dN3mPW8qgTjwZNixao*OaQ)DG6xc8BW)G z@s1D>Wsrd;&yY$HaLAGGK$s;mS$dVMu5>&a^t+u3ajlKSNwvyIZ9ZvJY8y4%ri3R~ z6^3JtHNxoGF7||iV;@E&2{CLp)53W{z^1Sw;keadQXPoID|o)JCbTkG3)(Rd_IwZ*QI zvSh@@!1D71pC!BuZv^yFwcnJZCLB@o)=njB=PxTSR&sUJSF7*+E1>P!g^NmUlzRm; zA7g9;(19}DFxpxGoo3$yKqpENxs=LWnT=x2f>z*iD<#hr+}tOt33TKW%kUhclyIzM z?L>?UiaQg+aQ%e9QW^yvnhexhB=1_5@&XNrvl_JcDyDbs6)UIXX$pIggGfOYsRDcx zF8(UUW3T8`A@S8zpg$)~1lp`nYi0MQQwyMvvR&=nFiu-`H7b-@l5 z5|H){^v84xelME!xH7?nldn`p=qd}Lpv8-E@+1;YJ{lzr5>Eb0)GkRXSpH9`Q4#^= zOLtPIBm$3DdnDx*w0ur)gpD9)^^@3pJ;JLNA9TP`-R30KgA?sl|Dp8EqObkfgd8as zJp-ssmR2}G8uZuWb~#yu^xYi)1Qbr zJA7%MaeC&{Hhb%U!5*{*{Bb9Fd`JedVfIeUhZ!~)(6-U&kM!pQ+=`|kf4ekmMauxc z*AlnJTXlk&nGxByQne6CWSQ?)_igyMy_b1=XEW)!Uaz-zF71xF37_PuU`QFLjQ>r^ky=d4I6q@%T&^^6EoQvj%zfG9DKYfN&xxpg=`( zJ1cB5PCGam8s3>3T(q1x(dv!&1hU(QLO=0lgC^9tGuloKit(7&iX zozPP&k&O?8J1MS37#hFBSwQ`(x`npW-8rH|+9VxtCvJk4H^Nxh3_Z_Q^YmUgO=K)? zf~KQ5xHd(Tf=4aS6Y2GS*ko;|lL41O5-?ASQ&5JuTYuSpB5O%Y8?T;HT~q!r?f4B> zk@OOoK3N~nBNL>f)Hc+e_SuYjQIlHJ^|u+S*+7GSJ-vw$tX8PYAKK(tRGxf4=gCFP z^=S4Scyj$rw@q-y#T$6^Hp4Z{v9^;>U90c#@fGE@Dvk8#X^>c}O$mS+O{3QLwu#}r zqQMcjnF0N1m1_=iRb8hWE3zYhF6%@UYRhk#dkYsi>8J08u9829Zn4s}PN zYB8J18!=~)f@Y3*&FuNye8C&@_Ltu}=t+9}wvPC^yvF&#!Fe3-977eUS)xxQFl;B@ z+lj7lcyBnGjOwD+f{ynGDezVyqVM|dC%UhB{Dw(U*Vf)*w7kjE+0ucgNUwQ~*nfSC zCz7(}2M6=kRKx?gHL?KMSv=PU`JMpZ!~zaGYD!4H%X)y0des=kE@nkTQ|eR`MaNJ2 z>|#sLEFb7}2Tj&g$nNc(N&WW31wHw6?#Qu;+;IPk#Qr5@9|UYIk|~f6#U{`N)Akfp3m|se5KLLKjIK=|S*@lc& z{V7uiaB%n-c?7(R@dmAC3~cGErOW0MZ++!g*@>O|F1&ExPO(3+^~#x7-@`ont|;Gq zIhk!VXJ5v%44@l6ycD{`IAQw|yQ%y?zy39A7yB=I^`UoMq+I_cTn{+7)z>ev zTgt!v^{@H0&(gE|F(-YPlQ^z5wcy!|>qDHU)J#OVKaj#&h{v+t@-g#{@v)1hB8jb+ zPc7Z*zsx+>yJi2*ZSL-b^KGoB{IzjkKEM0;MCtg>u5DX0x!x--KXRb^Po2bnV*gW5oq6I}P9v@t{sGrZpb;u1U61y^CvnZ0Cuj^> z=vKS%y&2!P(YhAFFcjvj*!k~^`d(~G&J@NLoZGFD-Gu>md-=}n)_#A&x6R>F=2#3X zGyyCa&){w2z&$>xbUhoPp}Vowl448 zK4DSE6T^F*cyGH*o9yHx3{bvtsfF@&#U6Vm88V2MUpGiUh4GWvzi&r)W}@H1UU%k+ zJ=;SwlLOZBO{CuwuPlRCs5hJbRKx{TWsI52qH6E8qS}>9F}(Vd^T)==kIg65&l|9h zlF5+-?I-@pJaZ?ur?742XhWrToS4fk3#6H#qhQc!oXFn@0VLVRc zUFc7xeKoRGPE>)`EsFwqP(?WLC(x);&b}?E1IlLx$0s~PAsQqfoZV3zEulSg!}u0o zk{B+|v>DVfYR8IOygPa-!&Kx(C&t;y$7#2q|1S0>E_r53gThgWOuIQg(e{^Gi{08If1~0_hiBFZJCE4m~ zlHTM{dV+mqVm>uL7z&Rq_YUqI4YO-C!(;i$@yYDMP%t>OBY*Hl<4N7nKt9jjmk74& z9P#0<%xvE6%TGitnc-9>9yaJ4iIGfZvdg}6(cP6t43xoBB+E0D;wk$kjFI90cJ{X) zIQapw|Kf6neT&wJ3ERPQZI}KHXUV^yW73N>;LKG zSH%APyCd7?#$B%Qxowf%`_F)vlxO`MKNavSE|Zz0Y^znhv-k$Dd5`$>x7_Zq=*_5g zLY7>oS#P!9{?->eta`Jl9UZTXCTpwReTCEBYBBLEOlYpaR#M&=e`doQ|}|I2FS|5Ex;(Rh16Bb^&a-2xw3(J3oxm8feLJMy(V-}I)J zedQB(-hSK5Si1b}#~+7eH$VKaJnwC|H;Q}p>b>ZRg}Wqs^k2X6iZ{LS_J4lyPucwU zzh8dzr}Fh_EY=TkJ)JqgA_b3CI>-01hsyuNa^)>JH~z2KzqkC-i}tWPAm#3d^^NzQK$NmP7SjaKXY`-*(yx{1b`cT|AYmiC)A0 z4=mS5*U)Xmufkk?{`*Z{NxHE-E(>f}BQTHKPCGg~bhS1tGFThbs9(x9D|_!6Z99+ap@3@xyR;c4Y^=c!Wgl6CD)E6;zWX!Bo6@JuiTDg( z>mueP=~{2C*Ub)DlM7}yuqd05#=6!tAeA|ly4IM}+OR^cZP;v1Khj_fvi`NE^z*As zz%$J_8=Fp@)5q{rm8X$k!uMXd85wWnz!q;@>&=fXoOx4|IjVWrbA0{cSikVP>sOZx zvF3X1th4HxyqOhij5x~M92B=f#(3dF)1N|fsCJx+hs_m}7!?5)SG2sSrcyuHqv z#DPSwqX}J*|9p>w7Ji12zR02yEF)`_*`<464LyE6d#pSsYp4)&)Z0*m+KqFa>;a2O z%k8NF$N^T><>Q5cD7*cEZ8x)i_AyzjFY8|}5d~bgfAS|-3({L)$3SjM+$IbWNT@8w zTau{9pbTv1rm`4_KFIk@m zMc9>Jy$%@_IvlI$sBI^)=2Tp!M7CDeCqz8PrEYm(9YU1#5Pt)^GKcxd#C%n~cr5~I zg~tYV=9emHFKZi|?0dDbuEJRlw{u5u77yCMo7!rcHN3WJql9L()n~CYO-&m6l{c?3 zSH5cwG)-PNzT;)hrfqJwRGY32E?xpt7bIFoGb*y$PCIR#@_7jvRzzS*E9>~k5U-fc zY(`nYdmHR$dC4AJWku7z3E{6P>_Hp>ouiy1PSm^X@jDdX_dy@LD!(T!@g6r*c2K}XCtC#-~3X8I-#jmRQzv?q& z{2vs5R`zv`z0dBEL&2)mFKZ&ovubIf{b>O$ddwwgQT^vNk5c-|FT=j5M_y;nCaJ}@WY{o|VYUaE8v@*M z5jg=y_EYp>o#L?0^ryNvPfOkMZ9vjU-I}iJ^AbbVl_oxteQv)2eZ8PBpW5_X)v&+@ z)b*%*u`Xfk|5lF;q6@fH00? zB+5Qk8+cBZ5oBX=p5qLqt8pnZqs%@FvTIQha~CTPMiE(Lg17_w#47t-Y_eZVK`^W| zj)C`u!9lq+JdDTizu2Cq*gZS<;D0;IC!T$lElpEdrpWyp8m^zA58^4Ewu<9MXTZsm zV_f*dk-#Oti1SDg&Qz|aoDGuKlzEA1J_B)oD}0?K=YLB6PVwx2aBzavW$Zc+UFqLd*)<+l72)lO5fEh74w7F62oB{bsX6r`Ha(;oqc7i_ffS zu3_GhV!$kr@r0qEKh>hV8*-h-flQI|&v%3L#}>vpvEteP!u4H{6J$y0Pr=(#p|wsB zfHr5{X6KaDNN-wm%4hy6%8TvR`AINuQ@$` z2{MEH=7e>pKjn3=BQt6o>g?JE;c&a^V{ak{F0XOBx@x;(2j=DJx`Bq9GUn&`6crCFUJyy7mfPbG1Z8DKDLinc?h?&bXAB`@~go9 z5$n+b9)drS;uy)I3mAK8CSc!evR>o^}*AcMlU|Fp%iIG z*ZOjW?30*8x@Z9OT9tD~wM`nyW)~|u>C2nWj$)uRqocxam>=3x6qksu!*8tF!raxs zedQ;b5z>qu*C0xgV?W>xiv4uq?C45U{D*u^8^nLCIP*4+0Yz~nZWsq*uO&FhSAckiwkspr7#UNv8Zt^rYsm;!fto&|F(hZ9KyHTW!Jt6DB8YNcuQ%+L> zIS=p$qhn5n2t)46hKp7sa%vTVjVb+9gSxQsOkT0diCmde$OxL#dCX~X({sA6?|9<@ z?A<_sY&@JlUt32}cm+C&x{orO9vAeOjj2aUC7_EpWRn|U(Wz|9yC$3u{|C(<$x;1hA;&OqFS`jqQ?(8pr&VnE0 zvjnn9qL{r8F(LRS!#wY)l0Q^+J%<%@P7U9WBb%6D82Zy&4iAp)wy0i!@|})d#i1ix zQa4zW!-@D%+{*S$$A^+O=9xXQJ)QNBUwk*RP)0+k%=Qzr*@eM?zkf@*^YEpdBH7p1 z$#o1XkHfhgM)}yZoW%?}HvpaeD_cJ?IR`ro&#V7Vm3nKd<%nD;tjPH#8E`cy6=b zHlazBCUE;?5Hx13wZ2N2 zKO9?SLo$CRACJA8B~&qKezj>zRXT~EYUosWY4g)rl)3BdW(if}507n{Qa-1!S18}Z zA#A~%jz!n8S2jDt?7{}ld|8w#wE>=LOAb0+Ub+XhWnrn_LL)CxHV zhT9ZItdXJKrclyhm_xB6{zT4;Q49wqI|k3dI+K5wB;5LTDPoK~!G;YrEMxg!`NNwm z();8WRr7T^G5>lcwDFbmJyx#EhGmtRh~J1^f^{w-_W`EvRE;rTm|L3Zvl zcRRUV+boBNLlM{K@%#!#LDO6w@q0>MhbZR)xXJP>!zg9!be_lJhrmI6r)Dv|6y6OAGA63<9_(8WL&x3OQGLSb8@`E<%BFh?*0D-R0a&@2(e)r`USJMJV z#s+(9-K3$Mt>x-VRwoMXJmPWoW3DN8?&pvz1@5CN4)A!~W^?=q{^DcbU&%{x zk@67bv@9P~AA`B(bSSZ_5av4Qrqo87>l&F}JBO8rH_2x_p;Eg#j8$H#yb>~C33*ma zkV9rjKE&kZT0#mCgm@lJh{5afc*!eP9iFsktfUNvjfj;t?{u}@@3gu zF`?zJ*JaIekGh&UOXrOI9I{7DcuxCj{gIN&23VN&DjMV)>Yk=3k`2#8{EF)Mk)PJi z^V6z1ytO6wb@{xN?vj9eXVcu59fK@4uBt<@q1YU?=lrmOzd@UXI=OT` z6(S^1l5oZHa$(B3)#S555c?19yQq6M=Qzm{ zJ@JoaKx>$}&{u6gqGyyhk&JpM<_>UV?v6?D3Y=zz+=Jr`?cHpSX8@{{jrJ5ngIkhr zx5vYFN{(3GGc>P}-tEcuPq^Ql1E)n>DK;RbO;ob7`n?>5@>1wggg{pL>4 zF$_Ac6aTeRXU6NjpkpSXl?fcw1N==8LQ zlgV(q2US$Apd-ir?zGM4$c)BgqiM%moFS`zFr6v3T0>Mc&V(r5JBji8z#nePqm*OO zP967;$<^3OMOGrZcS~`^w9t{WxXn79$zySP^^4}w;@n>L$in{Kn70=-ZdOawYx3Cq zp&o!Ei2V77YQ|;c@}~ylK&hcC*457y|H|Ks@x%-MaNfAQv!iFE)8R2hlL;DECu1&0 zdNdXv%{aWaN6Irfd+5W?kgc_tNe}Azz~uMtz_=XHnDnPSPQ6IE36wH{MMZ~9LUxbJ zYFZNgfC_m)*jQ$Iw(Q+I6EDUs-xdQ2k6%9(h=_NHF?KYP+`nzxes^{_WDoYZ%uRJa@m$29cz%fFc9??Y@xKxlQV{O4x`yQGqYR} zcLXEdzV;5on6Ay?kBt5|G7BJUL&Ce*Vet^MK(+#SpzZY1_PNQS0LfbN3F?$`eJl`h zV8ug2MjU9fQ(W-wk2- zzz#*0Dhp4oQJpZHk2$?wr^Dy9EQ@#gY)+5IY4a7!-(Wc`0rDvRMR=F+r+9{$^N-U4 zOl7QXwW5t`B7s~}^U!zL!zrshX$tGC9VY8?T6sRx1v4Ilp>4dS&FNuNMfF|ESg*ub zsXm0)yjd$DdS~=Q{^jM97vJ>iBkUud>)7A@`qFDYMf`^O5&i`C)Yak*FJl(UNP*zr z1D>4ZS<6G6yv9<6=$}BR(z;o!PUo)nY$Vjv-q9P)j4t~u&iJyQ{t|cOoI$V07M5o> z)%B<99INZJAM3OY$b^7=0)mSN2pe|Bz`}&GNI!^604Nm1Id93$f4c(|5-`|7nq%d= zl}D^mYgBH3*kq}9b>w4M>X40=dPm+Fs#$79zN}!pa^9XY=6S6pwYhT{g z(HCu$#g0zq@>xE}KGNm%tFrj55Lvad7%~g*Jyi2vQ!DY@=4EBHw`1qBF+Xl}c-ouD zN}n@R-upp|ZMm^2?b7D09(KlJ)JpC4u&bw#%eFghCX2aKt7*4~T!co_l{BSb34jJK zb0L3+dT%24f}dqv-j73a6b6bst5{Cx`9*uw(%n}mEYHkz7~48^ET+}<^u2R*fBd%5 zx7kcBT09QV8^oBli#udlM0*JjQl40l1?V^{ua=_+FEwfP08R#o~?a`1s zoqZ3U;b0;D4D#Jo^)KcuOfafEm7zN6K{{Lq$wUUJU-Jk!V0Ea{mJ=cPb0Ol}4b*hO+Ggn7e&GRTvRTBT{Rfwf?b^21 z7C_$67vhdWS7P2|*&6S{t2E<_)2-jef_7OF5nromTfD1Jo(FpWBHmAOO0NGcqA@3$ zQKBYN=eXwbgQLUyFTLjAREdS|y=ULPH^1j%DuBb-!OuHzAMq8xZ<5tfS&%O3zHtwg zs~cJ+rge67T6X@~{V!wr-i#$4^5~3PVwv9ZUjD2wXb9n1)%v!A9XW>4fnqfAKkvHt z?0s*?Xg)D9@R%YK_E-0jy+fk2e^tID^o}G77&*?2EFGA>BcJf~#BBChuRq+=vGcxm zkHcuRyW2yF7#7wZQne1+N#7{yZ6T*y)jJ^1a8?M2L46VVj6UIJ88Eu74G262D5)Y4 z-{~JZ`5%>DAJjL3VBKv1QqyRJC14i;j|}ica@V{FppXH*q;!{PdJ*7isq3@Z5|5h* zZLMDa;OYnYiOEbd?{;?$hXWI~j3HC9m=ghjyh- zZUB!$OL!5jS~>W%8HWI2kScqOE52shue3-7_R|ygE&ZLo_Uo?e1LA1FavcCgb=uE~ z_m{s}=(5BHqrc!f?l_9l|nDT>I8HcW1L?3A2^g$dR@>}1fgXKNc%Dj+#Z6| z1s=AyT5drPN=#N5V;G zG8VPnH5^D?!@lV53$@xkXfd42oGC|bU(>syT^v+O=E>8dO~LhRc?i&xIBVeVJ58QD zwRboZ{s!0F&$0iMYbd_W?k8UvH3;Xt@;1@LJ|hy=k*#D_aQY_kO}j8_VkWhsis=+b zm5d+?x%OgM1V0kr54<-ZpSFR$yg+>OFj11G4cN+4z`qpPE<)Ur;ihG-Vd6YQqRrgd zq7i~Ds3qhrDxzMiH|a)*+v~I(1&!|)v+QA!_n9l%AdH!?gT@T-L4nQ54cpm1s3UA39;pJE8Q z)L-H3$jXR>0AY}u{Sg!mz z_yD2c2~bLys|4g&^Q2n;6kBTa*R95Kf=vIkXl8F0Wt{SH8FJi$UsrI|Ff%p@13?bE zvf9{<;x0vEi)?=7ltM^tl6P(Jjmm9z$)<{h+{(jzewe6d~de z$0;aNY6cO4$dw=kVw*S}N9I+ygDJmSdDt086+x5WN&%6Sjtz6nDZiWvzXX5Y0PIPp z5G#cNm|db@UIiWm;^Zzm7$krjGHE^*wmS%H626I|6P_bKI=yh08IApy@+#TQ?P80@ z83}~qVeyL2M9in{(zTn~Bo_AAlY>ONa9VtZ{WX^k(oTp2Kxor4WhjyMFMBO9!PlU*CV}rTzTc7mH`ukEGinZ(-ANpTO@W zIHlWbni0@w~{)T-;x(hN=^-ruL3#Gew z9B*)H3X{i#ABxYj>!rK79*r*9IJatK(+`uOP?G*grC>4{3?!&s0m-?u>>JWc75kQa z?xf4s+_!;DlP0{en78H+p8099T5|kqK`Wf6l%jy`A#_+WPWy94C47&4ZU+HhA4W>5{^wmlj@v zX~5h~oPAFCrtlij3|U6M;p!v0xzlM;>m8rSgu@y7QwpV0A^cJAzgze&?)M0hQm~;b zJ(O^qALx;iNI0-1i}3T*^`a+dT0s16o3A%%HMs1?mR3)?)#9}}pvQ%5J-KL0q0Qv% zK+RpC-DB%8`>}YUOf&ldpJ$w?>cPjmX3@5k&@rgV;b5*=-O6axQL%fKVU<5uGd_A3 z#>d}<{I^n<3tbc0w3&%$@hOQ{*SuQk#04PsM8d^|V(rS4hpWlROX}fCd6&<~CMkO`>R_W<_PPRFG<@dH8V0Eq5e?v`d4@e_}s5 z^QvGX5yVU6=MD*vv*$6sPGNNMK^M8gYGxfR4+&qI8$wokDP$hCH&K7Pa*DvRxqz;U zW%$Jk6Y2}^xTWJTdxVCBx1PD55flN92Y){?g^+Uv$)jvcOyl0%b`TCfAjt5Z}g z1!AEIpvI9&fuD_%pXqAm@vCNE+}7^4wT~1+xu99PP9GcHTO8Rthu_bidb{-#rqE4sVV5a)9VE2LeHh?@cx95C(4fvsecj%f*ji zD9{veD${xdFe0R&iU9Xj#(|xPvC(<#CS}xDy#QK=sNrr(_3M=q$^`4i3@17t9d`xM zv1;USh008fBg>f1Rvv9|uu^rN`g<}F(0qG&6JYikg-D#&mo(x;V%V?8FH~FpGkE&G-kwXz&=q4 zHfaq{CE-cbO-Qx7lihDm1+9CuHm}tnUJI7mBeRslTL_1>Mvt}qQFSY^Ypi}h0y*s7 z)<8UCv*ve=hGWC?F;7=4@S4a_$9LNu-f(%j!d1}hF~42xSKup;KqwQG=M)TBS`d=~ z)5ASs1&~~2{Rb&=7M!IzAANC``#(g=Ig3ZcDGDe`LZfu#OwWAZX>ds zee7LTqKKwnv0q`$8)yPG=Z_|~bMr(oA;Uf|d`|old|=5^tQ}?&2@*vsh1CSR7)wr0 z6qv*4lZV5$MkTF?zPy-e^D1Ypw#}1{CUDZWirv=UJRP-WM@I`w2Hkm!KMvg>#Xcu| z2J*{;{v2)9vt70~P0IU3h%fZ-7O>CB=oIKo&n`X}W%wN@y{tdhr) zPpg#=?&_NFFteu<2@fWh2G(4)a5n#S^Et=hHop?K=Ig_NA$_;-ncq_v{7h3tXl-2( z?*!%=>7N4vq+jiv%F_lmfEG%V$JJ0}($>&K*POIw3hLjV1F4v^X38w>>(60dlW!Y) ztb-gZ(>7?A)jd}2Q|ct=Da>6~)jRnfbHrlGc2^D0B+oC<<)uukE#yc<)1Ef1(e5%> zlfB+H?5~91oOcIOVoQh9+*W9b=3(-JKS2xj7tzv7{F$I`l59F>6IFURe+uveQR_IG zSWXh$6hsqEvGN`9rz4gDVamp9AWQ+N<}QMDsr}SuM__97QSc*FO0#6@aw102%3>FlzjwWK>GSu|B^%zO#XT%v{_e#rD&NF}17{Bi zrzJn0>Riiji$KnSBS$3v^CMU%T+c4$*Xx9eA9M#c1ne5_2c1Khf~*;e|45W7r#X7` zqw?+2=kN&m8Ol3#Lbw#bn4tQz73lsFB5u&h(5Oa~)CUomgk7eA9#ek#XUe?RfFXnQ z33QUS4C?-YN0#(^Q>8Y`|jUVDvJ zDp*_JgT`RwpU#~o`=K8uR z6u(ja`De;M0evIF)0n>}F@Fknz1jDXc|+2VeAPG9IfasHml9NVMA&pabPRHoyx zP0;bG^2=)J5SQwnNu-LdGe4qB_%o&4#?KU=J=0$I%;3iNu>UN3YVXn9#P5N30cs!k z4!aSb1TH3kRaJSxkRYnL>35&TokZUhi(vg8#QLGeXSHvzx?EROmW#&3Ca_*_tKrqk z^1O|Y8Q;h2zDK~E<{94-HFW=Db>H**X_f8iP3jCAD*pV8gly7t;{ ziT}I%jCD7sC2;nH@GO4@>?+71ih!(unIs<9laNb=bBNeWC+HyYwdftkGb;<`03LMD zZt#L_k`dn!Aga%#2C z)HuSuLs_3@QOqqI8#ep$F{gH3qShmr-2J>ZWL_@jzH@05T}^7MiCyyw89k}FgmEsuuS5BYdHacxk! zmg{#+N?N5N3qE?_-S0lY3T1DIeU^PTL}Q;ldkc7Y=3IFA;S#B#QCB)ZTZ*hhn8aS9WCt*)Q9yxim(|Wq11d!V@aMpfuW`O)abjkA zV(}%;Ys637l-?S-IDg3{`HLf4(>GxaeXwc2f@d4(*_7QQERo`gJQ`%BaId;%7P1KX zCz)61Frn70`rd#1{rHdl`***4xU7L!t@!!4Ayqtgqz6^s$>87VIZkJjr+ z9hKVkFfxPq9lj({SiQRDij`7_)xs$tBHCPCMHI^-7myRe^8t~U?R!7b!vFfhXAghv zYllC3_^GEbCFuQfb_(v}FAC$3IJr`0ZX%zHbQ;kUPl6zVZcM2_@G8kd6FY3SuLmtW zGjLkQ0i+P%-d8BDmFj2+DN28=&Cga_dqBJfB!r`JvUDR$UC!$kg?!fI2^6>Im#(&4 zVd%;AbX$P<5S}Uol`nG3SDP<4^yYf<{EJc{^p~DcSMqvKFq1Mzg6^O7jJqAkY@Nz ziiI;8@%c08;UVPMQT80((LymIa1$I)w7|mEm}`2t#RMM$>i($>4twt8O}Ae4$Psq* zm%rrc0JwipcuI`3+Yl>8$5O8cG`8W~5S7FncmyQmX5c!tyF9XVBw=-8P8>P6NO;n< z=#qm)$`Po`(_ycU_NC%>N1)B1-)3}JN4uhZ>A1tL{(I~xtHWwBbeKjwHnZRA#Lw;K zAuoQ$dt1-GlzsQ?7uM0SolwGB+1JbYp+#KZ$G#%G2lF8bu996luyI*(N$iPJ}+j{8Lg@Su(`PkUy@4s$*`yC%Svge)?rD$no(3|phYFs;_ zvj@V(#Y}3_7--Qu!xlG^mXp!Ucsu)c`B|+&>+tvoclFI&wU8=a_Lh}BFW;XnBC9v% zw~SwV-{EUMcH4B%MX%mJeqy<&!|v@&M~@!pUzv(Wg0Btaf}Ni1NT_>ws7Nv>clJHf zeX#Fo{`IF;mhv%*>-_(H62$cRn*>S70z*d&IZT*MbHa|&!o+xQ4>Hgpg*Ae<1&x#; zE_7mxjv}f`s1g~UXtYZFXBTGeHYQA$Mu!Iq`E1Z{OWKo$R>8`wZJj7nSKF=1(Mrk* zuH~ybJaxIfSEWG}d)M~6E*T!a=UzJ9D|6SKj9B-I5vG zW!q**M+-wkeUUE1R@<(z40>sH3?98}_pZB+3=ST-YuE0(jtiEtqOXe5)eZ_)15MLY{TZ{%hy+gkK1q``%K8lE~94PJWV%k=QzU%09s?`7r3C@OA zo&F%wrL~$??MiiC&;S|p0-31J%jEdjNPk~%Pj^07H#hAY&&?VrI)fX|%ePXI3lA)f zY<-ivFXh@5iB3#M1DlwT8!|=XefQkMZf`>_t{d-V`ShOIWpNNRS$OE_ zr}_K4klFYa@gEQ~-ir4ZG9l{cpw?{==npj}=3RcMa09vtg`Rk2V2gHbDsPU2tTCU- z8qTvU_*W@m@i9)Nh#+NskRtbV&I>NMozhBPt=+RY}N zJ{!tq;>pgW=?7~M4&y>PF7l`^7e6la3x8WOcN&pP2t)xiOGt{qV#k?9uE{jQ0I(>b zHm(?0OB)o;79DL9uGF=Yn%TMsN0_~JR`FSOHMFHUX$nv`1TPb{`5q>`LXLl5U&%&4`OF^mtgZUadf1wHyrY!T&@k((?vx}ib1^$+#U2Z6d(zXGV9>Q(n9FP^m;y{6ro6!6hZ3U7j z{bG9#US&Kc89gaqVQI+kD=rPpUVWW(l(l+$)5E*^oSy!j1G69P84jhLt<2v));}ix zZR>?w-S9X#wBIs>dZu&f`GJV$$YK47ohCyf8PY!89_yJ%C1(0U(xv665(VRzB)czE z{#aMO^Skw0*?qyd?v1 z8reAb*UG~#r|gD+PXxvV4Lp%V18is{jE`F)SU0EHC}ll`g`VlTz1Bn4@ld?|BG1yy zboWBRdv&Wl>UBpQZR~>Hy;GT%V=vNg?M+N|mOrJ-c$2-ex}!&1(o_2i?*438$4V`s zE<}Tf*E45-DW-vUGA_Jt@j(;FbZ~~xc7frCLP1FnEv?A(lc>O}egW-G*D}O_+{?d1 zF$&!ou5O9yMu1+|qTkcX^m;p4Ts7OKdJSqPIOn6*L#N}q8?J@zHBg90lV*D|&TTI% zajD|bm)o0B7AlD}62et2TVZO_zmf4VaQX1Cv#>PMHQgIBTx!gxJaJe1pZ%G`#`J!R zD;n^b6RD1)&V6%^NGu!7&3j#TSBJ!kdoRfB9E;iGeZF`qXAO6`j_$o7HflgHL#x$> zQ^C1$e75QL82sUg8S^Ndy#o2wUxJ1)S{hP|c7m)$6JXFVreQdsH8?WjSD+`xL=XKz(5o0_$L@$8h+cWK z`|4ZpNk3onQrF3s$M!GX;kx7Vpa1;6KiU0R{BQT4?E5_P{Rv64KAa&51t&CHN`u)2 z1m{Tt$bow7d}J+>Vp*$DqMbV1K;>ZBxx=Gg@95z<^)pro8I7SrO!*Wa8#?-`ZQEXT zbV&U?b5GZ{BLf3RwsonWSQ4!N5fEw;{~FGl#Ya%nM@brs4`#9SZVKRGy^#zrw(|rH z%`$v49b|tw@CEYFA=j>=__+GT$|Gj8%}Q0cXom@@m4x)-VA@AM=$Ox1$M$(HeMfos zh3tD~r?{d^1ke2Cg`9>hpuviH$_VHsyVDvu5qdh*$>bTsU8#B{Ki)#OGvd3dv2Ze`+R zQ*#V`|zQNI7r{nnls-9qkJR`{$CwJ1s52Y%!47Ivh<5j=KWpbkt=FrtSSDc9@O# zxDuWYi!WgX@5ZqvBajPi;EZFZT4DPWV~|V;VxWRXD_o&(f$s*Vxxg;O=GXAycJQJ% z{8OvB3VulKRW%o35%Kj($!5U8XD}L!9qo908~J)#5nDFHfdGjB$P+7~%3)+#WdE!1Nu_Jouv*3D%(kvg|H-3n^DPZe}-K^hsMNHN7X(bD)%n^iTLe&?v^90v|@;`F>Z)5b$H0qD+sE zo%GV609T3zzc~oiRNxuO7?xJc^-?NJlq2Zm9aX=j1>~%XNvgSU!$(2$bi|@iAyUyi z%B`JNbE{5>u!tT)3=WdIIZ#0}NTbv7T6)+?*uQKlJ)A%fkfrINeM7$B*o7l6edViP z-nY;n)E(CtUGezX+}v1k>x_6bIlIyu=}(pRban47B|h}AhyTu-8wr{^f*$j4ca2Rg zZ=acfIweejcirF(qfi8{0QghkT;vmp6hp01!KiHq9cn9J60U`zWQG!q!W5Q@QhX}B z%swC9v)F%q@7ASI`2*quyOOuO`{P$0d*t4m63}l4uoh9QMHJY)lfqkfOeZkJzQfam` z*w+ymnvaKvbHNtNuHo3sKqxdY6C2(I@sJx1$LEJ4qONanu&-xyw0s93M;v|A(|z_# z2vvaKzg~631YW>Z%&p(0zEW6ufTO zR@4Vt9XNBQM-n!XIAt$!%F4(~U-cSrN+F~>q3HmpjL&Tu8{9U#BRP9P--e9B$3lJh zdNCIA3+Ydh$xptqjn3b`El0<_-tnVb)XzkJxU)0dpHMzGfBpi~f(3E@wjqWE8H;zL z>Q^~CS@0#csg%8cpIiLvGrPngvmM7~l;_rfS^>G*bY`|Zly>62jSs}k`8^Ps5J&EC z88l3S1_#Fpc>#x7;g5Ex@%5%cqi*F~1Ll^2V`Qy9d;W3#vj=#`qK=8V2J|QI2 z7z^oCviwAkfSzo^EaOtjPStZ2g`q#9D8yQ16#D5buB^r81)Ayn3bcBgWApOt4`ELr z--U2s&cze}FI8=UP0O|OtmxP3`M-x;`{OC=T&~sX>ubujP3zQ~muu%st0lQstJhZc z(&pvb`Bfw9^vEW1Z9TQHK`%THa_x_);;qv0Dr>QMxptlvHCg8@h^2GY(?$-@#ACCE zM@BE6jm2jUkHiKeKoA*>DW75~z5T=-HNC*+>>NJJ9l^oHY}evYFgUc>m0cWEa>+ zwaB$bbA`TaXC&R1^OM)&xGp}jt8ZXezq^=AUzB71^2`CPD-er?JAC7b%z!hVcUZd? z`U9c<>1c6JB0AwYg!iV9|MfiHJN|-nGZ+>y-UeF&{W}Kwmxuf#J-!_L4Wlb#lNSuS z*;TT?As^^i*rILMcC@rON>h_rPttD^**m$nVPGy%^)?Je?-&JTru&V(G+fa|GoF_XP+!jvqR+%V7xtNZxOY4MhfHI zyiR6@MLxF0=;_Z$XAa9`p|}K#eDcspaZl0D=A7w}WeFB}(iI|${LtUq zf~l$HOwax)*&SVku8(#d?7Vto7IAMhaJXPFV^aaK)82R0+ zZ|_|wkOAD`Bm;QM$k6J5i`Lnec-&=DP) zkNJnX!!73JA=OA7S~jz2ZYzA{`UrUzlSzne7VJu`T zlYM!fWLftA3t3hGPk6Bh>g>$T%QDw_mt|~}9T7hZSr!zEGGdVhM+eecDXhukA2x~w ztp23~5r9*%L@LH{Dr8I)!ayMBUs3h*!I_dZ$3`=m(U@8N{9Ygy4F;pJ0BVc34hDmR zTT|(I`kYS>&CLxJx4?3QjItuD@k@vawh5_HT!$281hn9plp|S?UnpopOn~PrBlci5 zBheP&2G!&Cr3>0KE^}naBz~g&8Ww0ZBGu7};3d_E&$6u;Z%CLe84v|mV^r$U5hf5N zpj8Xp+iRo1C}Din{?Z{}=w=U+dx4=uIiac^NI`0zAWBhesDbG5+U<7PG97`q&lLzr zdkpi_kwVnmoiJz3e_sACb{A3$!UlJb-|5S`jDzzw#HKSdL1VyxNnk>Zjj=h(*U))$WDvN4@Q4r7tKwvwt0 zuPp*|ibISX)YUK+{YwX|s!(@mVj<-AC9R3UNPH0Ln&k4jB&IVu%^`QpuR$PJlneo% z-{$g*;)^U%zj?AJl-6sz!_G{|Y7N9KtVO3|Z8lR|zye6*S>~}h96oYSW756&_hIDj zkUm)~_0#ac1gIoHl;jGYX1t_p!S8rhsT>fHW(@`kNy(YsdL$kfk>Je(Qqkf-ROh|- z_(WU(^24XZ%h?k@dwP0tar*xIX|B`Q2XlB=ROl_`&G3Y`8)zGdlvXGQmJl!!5bIaN zQPM1eMnDpy~Wly`s9?iRby)m1~8wJlo-vDja@s3^C5;|#UiWh%oD)WoUc5qjrx2c z85i4g7)Qut1@h+n^77*7MB8qS)9a6f{qA^3eC1S+4Z+f!%hMgRAH4LE%ZC%KM#tST zj~9Z#6Qi|ef(vV1!2BBtiAN6h(0WsS`+9CQ0}miXXG(BTXQosQr@FdX&!qG2?Z3?W~&M`yt1N%$>fc7-wqT@QX4 zvNFHZg>(p~^H+YS+wXTfVYmWE8gsC{$~%bjYQR6l*vd3iLOq;m1nGbpH?$$RTJo*= zwL`le?;xAHF%ZP7A8O-34{pRe?By!&xVvMHwRk7SUV?RgH)>Dfr3l}xRP>Bu1R(cN zKv1)U$gqZLmg~z;C~qZpeCKieC-xjazT?_!WnRp&r*KB}fP>Wf*=Bf|Ip!_@Q0$?v zFwZ&mZrno{n>t})@xc(bB_+$?#6oGFA~QNwa7g*Lt4gYIrpVRV@VfK=^B3@!+_)6~_Z)Ys=qT%5eC1Rbu<5Uxf z=UDKZ({<0GdMlh=5MdOmJ8cQ#Ir&s7kLLs}?AOt`@!IE%@#l~o^jmg>y^`w=s5hs1 zkOZ-kcuh!NvVtHZCsbqTn^O=zv95lAw|$A-+*Cgx)qo2PajedY>Bi)1Iz`W*&GFW64fC6?eSOu6`PXnN}iUBKW4)hEQ!==Fn9RQ<4=|;=J z8YMsuQ`6l4F%NeZIH$uMXFCRWnBB zvl>{+%3+Ny0OcRaSk>dWntidxA?)OJ9Dkrg7~OKt`3%O`wpZ7=<_xYG6$Xm*rHbZ; zEQ>YP83*WjIa^27WnSZGh3pY}uqGF5`dmdtrCd!}Jy)NRk5!yq!u!}(;hA;L)FOG! z>9~6aI3u|J0?6S$ex7ckQhxQ3$@=KX#GK~NJ|TRay}f#7%IH~gS!Lsy`PYp{CeBMd z<8<9K);%x(y79QAv$C5V5gz4drT&!9VWb{1&I+i>xfssv>z<2ehlDQ)4??agc__su zR`G+ihaSZkhOjn|;>>G#C`k3!&fn)qd-Xa;8l7i7Y!2@l#=Fpz0&!)^HTlC@p8L=B zY{GmT7UY~sieu;qF9|&^);MlTmE#8dmc}~I;od05=kK7o{C$nXLmQkS-E1G`lg<$R zsfgd+30jNi$#lCx6%lKl1hCsMR|Sl>5}&{}R#Wck?Xw4J1wI|?e6AKiyDanDPWNV0 zkxt4P`GX4Ze>z724jT$_Wn z&VC#FIffZlFm)=TH3peTb);{`_g8V*sz24DfmaPYvs#2+#U-dLLp8$Jg|Ad)D9J6V zXQ9&cMj7gCE<-iK>AGjED?^=)GL)Tt8S>QbL4BVj#Fu7%z%Ou^f99J9VVItwa3QnGESEz<>Iccnh9IzNObaqBt1kd|H4r*ZLW? zA|)SFM;6MNmtTy`T;&p=4^XDDxJ0D@)yqoATNWjx*2|aSZb5T(^*Z=nR!Wxo{AsIM zSLef&Ky}5B>E`6uc{9%x<-tgNEWg26Lhy5RGqGe!#YAmO#dx7IH$vJqZjIEoice$-I%)Q7_HMAj>7?ltXKGR#XCbC;qLjhFQ*Kp zQ_TNh(#iCy4M~@c{q85qy1j@k}tyewujmS#N{8bx;%_KgPj=k9b`!KijhX*g!sja7cX7B^wcFMpEz$e&1z(j zEC3%2G(!_SWInM$Wb`|)Bf^HvIptEm_ctMwId~rp=r-bH?<^b=Bj?R#jr>OIm7dw80Qjy%}Q2 z^*@?ahA$1i>Hc7-)xA{Kb}xVNHwIs~yKmF$w$l6l3I0pNn)MR4r#dn(OISmVK~7!q zgK`y$;|>JfheVs;7J271v7dXc%^^ZVr4k!F--%66n$)L~E$=g+)FUXg1FD~YV1%=U z+Sc?LxQ}qC&clj|($kAdif{%(I`*MO$El&%u=u=;fx6Lt6&ni?`=4{|>GG}ZeGk=& z6@jY1);6Cc=?}e*{i+)0g^19QbS_L~Kx!SexuaMpvsprII7zox8CY=!3sr7Z3>1Mw zD}q4;k#)%ka!PeS_}*iZtS3OZ0%m8$e+umdAC3{Zq92NPlYdb&}`%rZO++ zd)%n!UXAH3Qs&l4nxD!Vc$C&-J9Tcl#o;XCHb>1kA#6q!AcZK=$2HW)Rg=D@%wgv? z;jlsa;`T18BlYTaBys7|r436PPCsq&DGTS#nRUX9g8Up+*0lY7z_LCrfrrCs`Y-(+%kfFU zzBxkJhb$I@=)4!pQmsuc!L7Y^96XKo*Udv6i3u)?HI#%Rop3Q;Ur2(+%I>h)7h!lM z)anRbtQMBIObbiG(CA7<#yLMCTsWPvPQ9yJ(-#sJ7Urz&jR`f}A5nD;j$a6)P1bT* z%fPAWjRPz(vb5CUC>>o&o7eKwN7CsCw29Yf_#%5Pg~6FD`f`N8t5)bla?^Sl94#^c z2VAC3D()Xu*S5~sG7=>{x{r`J(gy=JDtMS`#{5E48(3k4#&x}z zlf$ZfEozAXy`|8(fr2BX)(UFL?iIX`kkp;YE-TB)p$VX}in5B)Tg2 z7BaPxR4HlifYoBRVjj%m2*;$NB)3bIG{_x_K?tdDP(ek6d5f6}sP-m!fO~2s-2SrKco^S${(+P72*z;6<9bmrq%RVb{&q=y28Z7&nq>I|IlX*0og#CXXRy*aeYFe}i4c5Dw zG|?Y~?$Bzqt}Fo<&kS0oFs9{isEU3gzi@X(28&w<~IHan?G*SpvG*D<% zf17|Z+E2Uz1EOd%Yilbjunv&bPOhC?UpHY~#iYtf<)uXhNePZzXD;%Jg{Ll`L0f(t zQ_m!4y#u|xYp|=qdIF6J4{?Q9omPOsUcIV{ox&Q~nQT2fRvqUzL^*GgaN2Z*w%j{H z2$c!vc-jQV2oHL0Hm5o{g<8#++6eUYt@9(p(ezqlt<-MP*wCN?$Mp(~@j~z6EI60R zK8Nle4;*u^z$nj*wzgF($Bt=R-?qM^ecjrXXRbPP#j>SKW=tD%%Ggu1k;ACtSqpo- zr9SjEw3S2Ujv*|%?Y?7ZGh-U_1WOq|4s|~bEAwY#&B|%)AJvhD4n8hlIJ|0CnXXn_ z=}70`P!_xd8nDA2>QGl8;+ims02jC0Lm=S8Eg>PXSjem<7ApG*E9JYsHn&%JXnRfp z39qa4wqRzPgA`!o!ao6+)#w#Jcqe_ylDTs-(wCgJsg2aHK7 z(0(CM!l_fHj2j!_nlgRL^l4LZLhR&mldCF9i`^-%!iYkwW(xN?PA2VmOVW4E@~j~i zo6jQW?u(D7pk!Mel%(lorMNY85_45Mt0$J1<>t@=f?zs?VyH@`Nx!7=amzIWYA0@8 zzZ4m|smC=ajl@UQ>@n}~==q*%&}4fS)Trfg8C!=I4S8&BS+RUV__}haU1xFT5J|@G8hl^+FD6A^BdC<|L8of;oQbvai;146oILA<$)krx&jFQN zfAYODAo;EwK+hGA4v|`YtGwxfXal(yG)$vSh17jPo4VSn%27kDPo}jq{$%*kfMmG9 zXE(&oN`bJl!idD%b*cI*Y6hU$pRqDZ1O*1G+ z9m1gV2Fj?3H0yOD-Krbj9F*ua(}LHT31e)t(`K&~4W?@}AQ`-Yol7*>c#a{52Ty~c z&*z(Jkcny}l7k)_h*V!!9KT5Jo}$x~#|?_8$19wD3c$N&K+%1QMt73c%h*by`-7>iVJS}XPh zV7S2+G#?w(f@08bKp$ehJvoC%!n|~O2z^Tn=#8}38FQl?(v z`U-+FNOrrIoxWtzf_c-?Z%}37PIIS4)9xo%3@!lbo6a=$bG&5~^m?CV@b#<5Uw(J> zQ9vJ&YJD8#Dsaxk98o7)WSP#bo|QU+ZlPf*!<<-pYKf0^g<+z^GRci~sMT>ep?@MR zGPGbiY%yKZ%f)Q{lx4xEWTbOeRFGbgQK8P-l!q+if_2=Ei`A$&JKU;nc%f^n1=41FLoRj&Kb z@V%TSnWv`6^MWfZbX-qrp+!6xQ!(ST@$)ZOm{)xAc{3KCKQFucFP0P>f?qPDBE#{1 z)ts`VAbx)k&h@!1cT(Z7^3yMyx9IXEg;mQgosl$g)zqwExS@i-m_2p**zwD!WMOJ) zBCEiHuZxMX?+>AM_dGT=-fF|?^cGw9`wvz3?B<>gKZUVc5D#u8w&B41$WneErL5;~6CXbHmIqZD9~888 zj9tub6`Qm$^4_xyE44mY#4I+|^jx%v-_+CnUJXC5r<>o5T~ury{IAvHkan-=w4R3jP|_ngixJr~y?SuzYmm;{vW&%t7U$*|noSvt@`O+De(w@&tXXx)St7jGz%v?QY z>?(S%LRyWuL+%fk{NN|0EHPu2Uow6ACCkU?Z=f|ri)1MN#u+300A#i)5B~c-{qsu9uHajZB>(wsqGLkRQPeKUS2Lwq~CERp@?C z65-vSQ-C=liNaWX!bIczr7#K^vw`D=>dKm$%IccRNs}rye1EH{fYl`Y$NU-|++T(?9}+Kun%dr^QX4PfOZigq zVmD5AfUNu!?%ND^n-GV3Ztb}hL?}Zz9mhMGAB_EH=iz=d@lN-A@q0pK#N*>98u5tV z!_zjxCh=q=t}o1S1zUo7@E-9}gn02Sq$LmTboU&k6^#(eEW?r~UfRR=z9rLYc30>9 zMrVk`J>8|0*0)qT%yCE@8Nt!wi|*1rFTRD`U~ZR95$R(5p!e75*Cx`w^|I#|zwpB1 z=Xo3czw(NTuZ+iwblzs>iP+RK{%KDHZ=>}kWuSk$I2ZA`SZ;L|mgal+$kRwE-DeSE zoeRAv%&P8c#C~*nk%h6Xj|8k9HQ{~y@yD0^=}$dhV*N0k`MDJLX5`9!D)L^?3~Gio z2IsGCzOCl=+pBNiT(kN1rJ8}vly(c!HXdo4A=8$~@}On|BMMkw7lVV_gM%?)7!*V& zzXt_RNl%N6Qm1dotBB-D)0uSgUcBjhf3}-01a@a{Au4RqzeMnetgI1$j>SLKOjO6q zuq!^Dzl_va*?4t(g7@qfE^lpS@{)2KN+#3R>sIt$Tlf|6iBK;uUM6W&#uAXv7RXE7 z>n-ngPDS-s7gVHzTJqwGGM=)mero$&nA&b)K{2mIxma@PaL4Y}=$m&vsL zLZtB{(3B@a9u>J=^1N%zKGNANIEaQ8bot#?XzkaPUpf*u7aBJij?4AC$uMsKcfLek zb?A(!l2;wlwTI5gD!S^hvo8m#^K3NEby|SYCFmuR9_1OaVLY~kAL_Z3e~-tWws-Aq zx6!5m&MM(I)9jbW2A3D`a*^2+#lHvd>ra1Y&26{CvtZ@;mj+%B!7Od)12*g^#~!C> zi5uz`-A-_*=llEu1U$s&uKd%gYp+>-HSt=&a9TW4yGTQj3lQ`W-j6gsv+CMwS9QN5 zm(PQL=86-=M#=x`-fq)|*s}K)@87@pJ$^m@A3P}YQ^v=N6S1$<)b5~miILrJ^Xo~U zn88}bM4|4y?p>dH9(kntk*zh4Y^{FekydGjp?d2hKrQQ21Jcr})hGKy!=l2S*xmyg zn5u_=b?MeC$PP-x4*g5y1gI{O2j4>akI4FBY7^Dz6*3<(FGnQn%d%dGvTpCQtjm1L zdLhc%^7xlGD=Fx#R+#c#}!&N@%zfsLm)kW2!b@(Af0sE0S zh}B8@{>HLGZGU41Zd3C)9tB+#{g%osV+t`uzY&(sjlr=pv$C^hm8aJfr=%3uq?gai z%AQr0UQ?2iQc|-izA`htxHvtta$|gDR$6g!T2|$c%0`bai!Z7#Dwn_GofF*VM#Klz9Vg)Ztwjl>y?siCsIP_pzx{Jr-zNre<$E%a67B?h=8 zvCy(O@ud2V=l)4A> zA0%7oJo!~yP> zp#B;*?0ZS@kJ-DpEBjF6N|>ryuRn%8S@fKPbe*&S(?DtH(oJj z<|$Rz&7E=HqLPwD=gpXVUDYWw$6V1^vWWEFMN*ES1|XeuU$@kmpnsyP6qz z@-s5>2}It=F}cHr<&GJtztc-f(g8C5EKi;YLSJGeauNDKaaJtdf0*H0NpX95Oo;dX zt_cDc->Wi;#f@(Az90UR*lAS-v#L^4$IdRSoEg)6_5}-94O{IjDaj~FaSlt*k4Y|Y zM@EjwPl_qX7(ORCFLnIM6_uw<99fuF*E8*$3nq@ubmt`GSGnKIEO&>;=Ty4gqqE|} z-DUDTSD8k!MW(SHvZ$t#(g~S9uZB&QF>+@g(O^^1z=> z&dEt0Rz7JGT3OT@m7k|jdvY)fZGWh;Few^im#BNC=w)EUV5sCjG`+oI*|KszY$&B5 zp1QDP&6<*)@FA6kk^X%cAs&NuFZPF~O)N-{36^av?T<#~O~$oPx&+OP9%^>}96Br~ zHNqAf=@cPB@gq~*8L3YWDQBx)ndwQvc~)nH-NI87VzWl~*oKr#y^MYbc~FQkaQj2! zOH*+&i=Q4b_0y0CJh*8!}A%B z^&RhT*Nvm$CoOKOQ*@7Ptj$9G056giWIn1mH!8!OU=5#~o?G1Wa8;=_WV|Cb0kSv}W04!t{>DHSPePeZ9F;aa z!iIWo+@XYfS<^6@Ie}aB=1y<^GPKJ)HLXnEm<_*LBOc`(17S!a%M1-GYcb-tYpl2h$4CNRJp*$6N7$$Yt^x?4~ zlJ~v0y%&O1-n4PbiB!6gQY|CNJT0`|`jqmOiKOfz* z$6XkcJubWF5uQIhJ>DLL<1oLXI!WnTDbtk>{z^{lH(kNFBo7#F479a^X=WhkQI(~Og&+BMkIm$GTA49x3;GJX#>9kZR`pv7l3XSftpAsGU=QHQb z8Cf|kYxI(Y*%8^Pc_ln^#Hew}?lB2P4tH$Q2!0t+d_h*(%;NaG%(}SLF{SC<|A0mv z8RjKBDPm8`*pg*ajj>nOJEH+HfGVMRsYm>V$n^dK^9!EX0gQ8 zI6Eq_xH-k9}dR&cUEp$b1ZcVUHI@j}sgF@JpLB zBI$ngyj~p}6pv5IsE;Xf zjEqmoSi83EDUf$;aUJe_b)967%*-7(p`DWfzBr^lvbJnhHbZHl8MS66A2c0^?6kMUt~HLfmYWzapKIcY>ELsrh4IquLyo+>6%&NKzlZqZ;nZcfCZbRt~?CkYvhzn;D_UQ3sY`zmxO3|lN`_!aVnws`^V&<7k zVQjUsxgl5=z+AOqcI@_3Cl1j?sb;UTF$nCHA~t*N2P=uREbRQ%uXx6F=zS-mx|otG z@1})dGXmkDn!cidc*AaOY;#vlNe(X4maRzyomk>4GzP3qP!k3!Jyad&ECZJtAFbv) zX-st@#*cpzV4ea)LB>2q1?DNP>>ST|&$F1QxZ_QKYLh027TiUkXrd2@BM~*g^xS`eqU1({moTCkCXaT zB4mY}yHRaX?{)~y4!`V=y_G1fnekPes8vCm0^ypBIzn@E*=%xkZ2}KriJXUsNl;7J ze4GiwuoE29P@0j>+!AxGXuhEu*`O}r;4Uo8${Hnspsh6ZvEoaSC|}OL5vtR78>aALWeshX++xvdWr+2r)LJKqEW7ep%K|xLfok( z9=vFw{UTx>#wcUZqsnHL)#ccPL|02_$IFu5sbBi7-K318sqf^AG&y`e^6!eIQ~#Gic|d zH$e}^QRIIzV`dy*%H9HMMrmg3>4wIy>_cEX2~_7nIB*Cf5(_jl#wplF&1}Kw*=3qJ z2y*8M%^ZRg43ErdZSQbTX>09hY+rjqxv6UjT$xfjC0!B$C9JwR-hcs-ra_k zuP5w6Ze{JPgSpuh)&_G2c09JTwfH^(rWLFSyC2v2n2Vw7jgr5y>l1x_5vvN z9L{TV@-Upk9?o4nf*s?LJc>v281^!Ik-fxrVi{~47C#N+!+8Qv2 zW7SA0FXQEWG_T;5>?2;q9_3^BSoQ&KOc~EUWFO|EW2$27c`^nTlfS%kyo>uSr4zl@{UQYmDl1% znln-QD0^PdC-W&dpLiOd&c5U`aJused=~o)_@;xM#m?rl`5aXLd3-)!fD^t?$gkQ=pcINn02|DU&F8EKjzo*pYWgZpYiMY z&-pL-FZr+duW_fr4g5xa6Tg|?!f)lj;kWVI`DXrGeh0sk|Bm0q@8-Yf_wal97XAl* zAHSdfkw3s6@9XR+r!>r@1nggR523k4bnvhX05YCHV(_kMVsz|TufniVLA72L>|T$ zZ^f}h1)@+Cu?KM)>L1wytdspoj1tA{akib^$$lqFM5!nf<&c{b*=e}r?eFYzQ6VZt z6>cLNE5>29P=uHuCbIiPHM?Kbh)JRrYisMpWHCid71P9YL2GE7m`|z3TFleMOmTvk zC1#5`m;sz8=8FYlA)1Mc*i(?XKVUVifkyiHXJjhi7ZJh5{tzWajIAI zu}-vzR&j}K&>aR=6v{!ZM*wu!sh5%GK6YyAZ~D()3q#2>_c;(qZ*@qlWd#dBf@=5AjQFN&Vq9<^u8+o zEM60@;}**|#b3lO@mH~1{0)0wKVd&%pR$M1nq0$v3!OKW{gnMoye0OCx5YbRuXtDN zW4DR-*mdj|Y!kbk-68g~U$I}}eBq15`{Dy}K>S^Nh;;)Wi7xRm*28@wJ{6yd&vA<1 z5v*7{iXFDc#Fyfq;w$mB=w?rd9+ttpwYfDJYvbM&v8m%?0t6Ezc z*M`=#w8FZ*-BG)|scrfCbt{`2H`r@ew01NsU*6c#5mL9jfkM^6Q$vTfUPDqZk=W}E zfA!LzwO*lhOfg}b;`Qa6vb=TOx(0>XG1c%BG<8`+TgbGIrsfrm)@fQK(^MqWyuq#0 zH0;xjkj@z~dnnWw_dQ{m>B!iCJ2PLBDeB+WOwFHm6?nCyZUP;M8>+y*afYie0#U8u#r zP{qE`9J_U)%67;}tJ)gQY799^#dwktqwS;>O^t1h?M>~DQw&=%ZFDRuaBGvo9txZ0#`g9#jx`1f=UNkP=h{_mjg2kM4J|90 zmWMQ}0&G@=(QNV;)C^Q1Ey}$`xwn|yt*u>2;}snu{i+O@(Vy;o3~$LfWO1qurFg zcC&kj3e#b-3+f;mtXGV&UNXjdE%x;)_Vwo2t?M<$I9oBs*(%1fjTmibdl};#!&Wq{ z3E3$9+BbSBYiVp*71~hPzI=6SYjaqG#OVE!p0%&21_P63715wa;|(G6pnW+TC@b1W zxW;^5pE6@!N0lS(Gpe<1#mdHYO)X6=jha;mlDKa986nHmYq@%@P%n5Qx0ULJ80l-Z zdNrxn8uePMUd`&YPQ6;xt5vUFkyZBVas)N7-BIdpm= zK@P}22q|eF;X_L}hMOoU{c3cC*{)F$MyHpC(vL<#>7dgOA7KreY?o148&s5z<)-LO zHD0B2xnxRdb{Qf-eutq!SkctntO~%Pq=E{iM1wLnYMetUYcxgGXyzI?h69W0RQP2^ecPoDL@SOE~AZ+ZlP#sG((4CL3_vQ);1-4?T{|( z&uDCGYHhPa#Op?gdEE$6uN%Pzx)CB@Hv+kC1bW>F@vj?^T-}IfKsTZ((2ZygbR$xw z8__K2Ml=n&5zT{cMA7R;G!wcJHBL98xzLShGIS%F4c&;QLpP%N(2Zz9G-HH89o0^U zDD40;9ZLHA=GL~< zXl!e1UDnXD%4IT>d$ixTL_mF*w)Vy|*JJdrxp8GjwAo_CvSzZ2T(!QbxgDB^{Gwn{ zUYoY2RjWJ5N_uK;Tu18UN@*iKNgJ;x+ltop%bFWeyKPDgAz;|DhUII$UskI5Wb5@Q zzm~PNu5E15-0aKNBPBA9aLM8;sE36%aD^4mmYa1m+Bh40)pkZe;v_UV|s2wi9yp(pCf>In2+PBw3 z7+J_7m#LFqUdI@7WO@v-W=pTvkOo;0;G0!V?XnQOwan4p*mhRaaws8fYlG_7x3yX~ zHnz1E&YTkhTGFfIZ2Ah7w1dIAvUPo%d^epX-P@Zskb66Lw1o_flG)%<>aln$dwKm0G-&TD+B7yp>wK zm0G-&TD+C@p^{EbEi0|W81yDe;cZi_0aK{t4QU`^ksqQy`BCI2lcE=SYN3t}8O~^4 z-!6Tj^P`za5HypWsRH54T!HW@^IBX!S$nIz7niHN7niHN7niHN7niHN7niHN7niHN z7niHN7niHN7niHN7niHN7nj%Lyey12Z0JB2yJNLW=GXh#4xw?D;o9z!Sv5IRHjU2+ zRART99=O9gQn&4QM&ers|F^5=^p=TcvS58a%S1c0^I6 zO3Qhbmh&nt=T%jXvsX8D$X-fwqhlGg>b2BDHaAADlXFWZSIx%cNBM6jQQfHUD08@a zty|yR(R4=hIT12Q`?`kaX5|nev6?Kxm%**IV_EBlvzt0rZ?JZ>H8reSe};OmXi@KG zFdEsnb;vxG*Q?SkuUDm8UavU6yuMWN5#*>%@exc;JuxId?JJtjYFg1qMw{X>kf!{&f<(^(D8jV;R?Ev>89g+k3zLj`&-OMXT9bi$-nv~O2S+C`eXW6~xR z3Xe2|>8hvvit}P#u;s`8@%7Z(Ii%`p*c_P@n9sMW;E@%mgznw+;~`c zb3;c9M#F<>@(n)7J&6U?EUI_2^xAm~+$?|I>=WFqY{9%4Zp^DGKky~}V)jnHE!rDc zSGh>POu|3BSoPP2r#gQWas#;@H>Y2`0jZnHdP zc|FJ;R2Q@;s3Yj=pgV$|3ECU<&tPY8Zt%F^S-~qpR)$ZKds8+jX`(Y>(TH*rV*D?6d66_ABh0?DyFBI}#jo9G5w^IX-u0JC{0t>inJa z3Fn*6uCS0Wci5P)1z{~=KM1=uY+KlyVV{QE!_&hjg`W|=G5n|D_k=$ezAyZUE5tR- zmFpVkn&mp()#kdywbk{a>uuMk5g`#t5hW2*BbG*<9iHj09BwmzwW#X?AwlZ%+PQ@*k5Q zPkt`>&&h8ke~^46MWjTeq@?7JxN*cQBX*D2KjP4cV{YMgy5qnMx$ZLe1ou?;Jogg! zO7{l$J?{Ofxv6KQKA8IT$Vnrojy!SXFGk)t^0tv%(_T+In)Y>iT)I0wH@z%6vRXJ2KDD{6Xe* znVT{ahTvleBo$ZE;jkabbkm08zk z-JJEitUqQwp7mVT?yRn?&$GVH4#|$lPRLHrF3hgXo{(LaJuCa<>}A=_*=J>+n|)dK zmD$&4-<|zn_O|S&vR}-8JNwfdkrR`XnNyiFJ!eTyOU{KkSL9rqbA8UHoLh75$hj|P zTh22%ujK5`*`ISL=UA@5(a3SR?%dqmvfK%|Q*-C#F3DY)+mU-w?zOo$=H8wAVD1yS zJ9A&p-JQ2T?_mBf@^8$)BmchqZTZjSzmmT@e}Dd={9^^8z*!Ji;4a857*#O3U|hlE zf;k0?3RV=f6m%49EV!iL>VjVs+*)vV!Gi@)6g*$>dcp33{RM{#junbRXJJ&~u)>tW z?81`5afOo$=M*j~Y%aX0@XEsL3V%^}YvGGUpN~o!HF?w-qkc8&=24qRy)x>}QEwI7 zi(`rtirvMT#rfD0Sy?=xxUP75@tooliCL5^OYbgyyUbZOrfhZD z^<|x9&zHSY_GZ~zWgnD%T6VO2Sb0i$dU;`aS^4zxIprsoUx-<^t(d!e6gv{OVV?dm z%*j8_+?W}R;n!fcJ_xoh*hbx_`U}I!x74fPy#U}BGd%ntVO77gsMQOD1;i0P$>u%gHSI1wr4Bf@7aoZ!bg$D zZJ6173?Uz9R^W4EhVW6~+XmBP5=RWey5N#BfQw5DlZ$wr2t%n$k@$xLQwnSok&-C5 z3`a`rl#&5322Mq9x)GhNNOcBMP=dH>ke3X^7f-1OK<6O%wZku^D~<9kDM1uZflV%K zD8Ch$bNv;l^lQ&+Y?J2|cBAJ3c9Z8x_8Yu!^W4eq@;t=u_UvH4_uR+s!Mcrm;rBkz z9qfM3c9cjQ(qu%^6cT~0nYclBX)Zp z7JEJ0#k+`ucp-4P7O_mvRqQIyF7`9PuRS{@jc!6d?gre8{5=A`Qe`p@`6rG{L;kCf zf5D#jbRq9g%6z};`3(7bhaE)?_zGzW@;t*+J^PTK2aunqc%kPOtJQgb2Ixmu~sL8^(9CLqto*`RU( zQr4xV>L5~eV1Rm1f%I%)zwrDLX?g%@B2L=^F5ATJ^!yCz+X61T5nT35Q1&+J{3~<{_&ub`&O~~_W$nO@cwul6!e*-SsCgmDQD55M$D6Aj_MIT4~+s;ZrJr~NA z>S_|oH44;=LTD#WGr1C_2}#L+=GiIsd3K2RkjDQTw#O&w`)^OaE7#ugxVO#m<@bM~ z%j7tZZV^sT zr$_)KdhQZQp1ZKIBhj-Nrp?EtvmFo3drOi3G@IkAk-fFg!PrnO>aC&vt8D+L`Tmar zzhgQv0gM2+0jYqIfHXilAOmo|=S6lQdJEqNTm-lTJ(er*{t@6xz}0|j0M~l{ z#;)`1LyzG#=(;bmUjlvw_%+-%q4#qG%r^pV0^AI^1#m0eegn7-a64c#;J1J~0Cxg@ z2e=DxH{kbxdjR(WwgCPBxDRQ$AMi)O1AvEN*H3?${R!?b0A2*V1lS398So0=RluJC zuK`{Mya9L<>HZ7ey8wR$><0V|@D}pA2kiSS?H?LiNZ0XRU&-rgI~&EMd`fDnKc5DKuPmlO@1Jss~1Kqepykd2;U4&J$d zJU~9601#+QfO>?tp=bDnXET2i&Um4H=%)qp0z8o*jWGhiK{1<(pO18^pw4bTqQitvvD z9tVKF=u^BQKwt3|U=QF6@L%7()c=26{{21L|Hb&P7$^9@JreN0-2L~C;`A*`Ne>?S z_|CsGRNwuN-hGPxN0S9cqzcd%dJUV9uE9z8iD-W;IIo6AyQ}bZP>v<*qsuhnOJm7t z(svo$cVkre5sZdz#TetG*w3~Nd-op0{=>(ygKax@s$IjzVf3pOdy{IZ&&6CYWy{bd zGFC3JahSXMiOEQzVNz)|QXR=IM;uQ9o@TX#l|Sb>#$N#J^c>|c16~2V3V0px2H+ix z?Y-}LO~ha%H5Nc~7Dx%k^$07{?b$C)*+{dpOM~4Z&5!a~1WmCEnqn6;#V%-vUC<7@ zpyhQz%j<%c*99%F3tCuM1jU7qq-CXn9@G^17g* zbwNYxf`--w4UNW@yP%wq@^@35=+UW9v>P3HRm@8i20yDdHJBEea^u&|B7 z$u@`>_G1wXh+~O3t$zdf@pACr<=6rDW9)zXu{arU3SbdnF<=ScRKQZeX@JuK4S;2U z<$x7{O~8EvU_W-!y$|>RZ~*Xkz=wc?fR6xOfR6!(0G|Oq2OI{SouFF`D47OIjsqoU zfRd+yk`NlH)JAOH2a)eWpJV2uRUB4Bj`s~cF0ywp}LQ-AH#WGRi5 zBx>-HM1z$=PqSP5l|UqQbcr)~X>+BYw7D{XwAqL}o2AW0LxoN3A zK<3VY%$*}kOVKri{S4A&8#IZ>WF1R^yo!OmiWyRyVPKnt+1Zg&NARP`s zIvfBWMuKA^!7-8Gm`HF;BseA#9Fqu+Nd)C0!7Y)XSQ+>)5l3C9(0dSi54f+>Bm+rT z$R^&@Bm;esoxi4G=p22UqCim^38%FdZY@qJ&-&4G_CU|sW72bWW90h~PF1)7W3ZP3 zegOC(;6cDcs7sxAKLdCc@El+V;CaZsckw<7_!=_m8qCH232PtVj(QshdX<1)BtuF- zuM*I!1oSFFo+pD7CoEJB-Cgf=f1Z5~M|s(B@#Wr9?=CqipH32-vt z6u=_DV!#r>seq+`(*UOf8UV`x%K<9@n}F*Ew9{1bhW2KdlpaT}-`r$TSRgn0))G}& z_xT?fhD-US|9624cYu#}piH}Lm^x@#At+_NatXECpF6y@3l{Z(ms zNti#kU_|l&@0J?vhkl&?&GXwo)u*h+(G$G`hn8y zmDEw#gOTpL_&Vvsj#U@vBWSt}rI!x!*J6iRU<`2=Y^_of_|u>_RScV(G&&hJxAd~v z+{;F%ZhxVAmE!#>!Ix8V1I2OJYdR!-5a*7A4=LNdTses+V@!Jl z)_%BAD>2u=*W$Ywu+FoaZ-Cu7fQ^9f0nUZ{d4Tf)JF$M{Wxy+dR{^gB-T=G@_z?I$ z!n+IbG2js36Tqi{&j6nT4#Uq8z!w0lhvEMK90Pm__$PSPiB(ZiSc?(^hy^6zJJIt1 z+J>FtM9%?n65wRODS$rvXj}Gys+XmIGD*wj%tafX4yPAf9IdJFwP8 z)zUov9$LW<0UrUn03QPm0X_kI3iu50Ip8qh2;d9AQNTX{#{gdf{z=+7(i%mYIo_!M zNb`22c{|d)9ckW>44^LC_pJJP%zY2J=BZ%3N9BhA|dR<{XgD&ld# zGk|9SJ0OSpmn=Sius{g)U_cd22SA+X_XwAj~B_iM3o$syIEL z^fS(+T1UcrSnC&r#SG4|9s1bPmh^8X5-9GWlc ziu_ObUjy}NOqFYhihyAaYPm<^XU2k`Zpm<;`D8d68p?K^#e*NBjumin8gTgpbI6YhpC_8ew`U-0Y~ z<+wwr0(>jPD9=H$OSR9)H-%Kb4>6mFmn(yIidv+l4p5Id+sRmQJH_**mne}|=?U5KA-_ek5xxG8oTTy~-U+hO|xu>VNnMxSk){hV?=2R z4@2Tgs`qyM$Osog@I@AaQrFJr7hjYLvO zbfL#Hz}$&8szoj79NB7`LsL!YJu^do)3k7Q)VR-3wvsWe-v`T@zz(B|PmeU@+OXJ|ZUMk~#b!2kA#;)HzKXGCmH1^SWyeGm2|`##hH zDI3LaX0Fp+d_x5Of?VG>6#s#-d?&Us-$|@PiF9anr-rz8DCoZ{ztDpIZ#+XQpGE&I zKyB*M>CG@X&+P%A~(YJa3XK{C|hKHWCnt(dfVr#$;F; z@^Z-YiRTD;>5n(zivF$256a3K80Ej-wvXJ{p@k1e>Y$5blum!l?G)XO?DHV!>TXf5TccVXOqQ zQq#}%Q05%=3h`ZA^gmu=?pJwJs^`mV@ogId>YP{yGK6@}Ln-{nXs-XNl$iU0L!iyK z?iJ^U81l;>dp1s4i9y?A)yl8R--G!ZwJVOkeaiaZUw`bTF%fg}C}p%-*lI`wpOpIf zh3~EX*RNgy{_PfWWXqJF{uAKo)OoJ25wZTmACD{59-LM~PpAs-p;Lh5qwF@e{>EGd5z;vbH)3Gkp*b$Q+=lks5g0c|RByid`azSZOTQraFRdnyn7 z??nAkB`>|;Yb&)#(CRt?#}MZ(&tBbZs;=3I8_HO%Yn8yigNz}%KZr=;uwA5F{~56T8V z@2ANi%SQHnOqM>zUi1X_NiOb#!+ioD|3_q>K}qY6p>aEbQv{X3yw0B{4A;D zUvHxNjN=SLMw^&u(BQzH(|$?AGM^zOR4P(xN%^J6=2rrqzjpo+9U&ukygXM zsl)_I$;b^tej5)?RA8Q4AU(0((3`UJSsWzTC*XnC^f;u9-mFR6!{~1xgDc677|e)c z3`hExGsJM~XFk}JAK6zY9EhJJ_jN=Iv%4Pm(BC+JjUKA&cp!rlHIp|#u-zqnxwXC? zE~S%xl9bPY|H+5MX>NsJ7bboCmAF0=jl3xt8xZB-Ewwsi8VNBtXE0c(9g)=ba&4fL zskHiyD*$~Uzk`XjKR*UH_wCEyPk*$8?0D1PzX>z6MXVC=)*!f0ZT%NKK5_KMKZIC) zq+f4L{x+tz%-?D7-%5(faSNY%44%NQL8>j_1v3?y=YHs6y6$3d7queL4Yc}&1ju&G zuiZB^UHHYhDu%?NcmT%+pK|gUkU#8H(vUJcf&b^y7i0}=APtQ8$p+uh#~=-9ZHt^6 z)oU?qk$dY}OB-u?&fPhn*rbhDv9ay-hswh@l>aP|#sxm}4&X2Old}TXVA86rXO6lXur*# zhwvSPwVH>J@-5Q;E_`i+RF?E0`uMkxnoP$&TVU>#Qk2$rGQ@F}=MB$0p1niNKrio- zM<9doM5+-uw1FAQn`%82)zEs7RL_NG&?Pkiw3~R!KW=|pU7i>HAG4$~jbE!UrvHRZX@*)kX>LmUpkAt} zjLf=~3C9qPo|_=sHhZp>ng+E!)QbE7aIxp-kU7_(G`2%>ZHE-tpZ)moo)e+Eil~$mj^Vtf?W953h&s0K<%a%rBpc+8! zJSeU|s87dqvw9n;lyyxXWtEOH4Fl*$zSshNndGl59qGqtA^d|#eHvV-%`c$M@;>IA zC`(^Tcs&{hBSypSTQ_-mJOE~*D)ON9CjxlTtW@5JRwjBWH`&7W9nx^|FI&UKY(hU^ zP-}_IVZIx4FG?JLG6MB1HEiH=*#jL6^;B(<(!|hZ2G3*tq{5sv@C@~r`>c6z+iUi3 zHlt5NDRV($1Zr8lUbWuGXP*6D-9wig<{qurzt>=D+cb&ebqZ|o909%LI6+`{aQwg{ zu1@4fPhUVZs`Q9zzCBiWHl;XVP_HFgs3W9_3=q=+O}_g{QZE{6jZCeIVUL`?gI>i| zh~qUHb(i_>i`sGCa4|^NeWBQ);Q(<>(`3Uf}8@1*A?SbE;;-&8W;~q$OMOXBu`mrWq+S{0x{f!|OLP zDXoK0AQgjdae75bA(h@w@4$G7QpELs^%?plRtFgC36PSmUib%LL7|jn@@jj0bvqLp=>xZ+c5GYL}HQ{`bKnKB3UssraNk z*k#lowCoQ9*G?&eclAz_zm1dw=v`8cKux4tq~?-#pcVFx!zmf#IbV*sbs^5jG&}** zs?|1P&qqM%#(1W+F-@O=PhNMR=3(?M3AH358K_dR}?AM{)r5Q`QBH|}XIoa}AC zNc~~mMw(!f9YW0p@maAV2WB4KsUgt)wOpl;MXm7ldbh=kNwe6@40qTJ6 zCD2odm?!o3gSh036JmVP$1O0|(O4R!W*}XFN=?&8{Z2QKqscwrPJ2L_G2)T@ z9xxSBACi>vt{3c&pH!Y@Dfnc+_Xj9NryQ81n!<~5CmP3j0KAJEJdi#wjZJNmL??OG z4ocG)4sNjU(EW}+kCZ5oQ}if#pqaH$+x1qO;8#Pq2xyW z38g9ff8Nsa^F`}`q%QAoufBl+S`Omz;StRZqg2YIeS0M!efzrMTWYmF{(V9lF0vG5 zdi`-2eva3KmUu}Z{*omyS#srvNGmuM56*N`@nBs1fPeoMXXp9ujH-}wdz=c<$Nv)8 z)BL)o>HGM~Mu`>y;?NUt;iiKAF&RN|>YMT5WAbnPqhv{gvkX2r{DU%m;W0eY;{Xq0Y*OYY1aG)u^^(^I&AXa? zD<57PQ|ltRS5iKZJoJWu!N6{|)y=9FXzkBF-B!J+XQOG&T zhk?eXwcC;cn7hP}dgy*B(EWe2H#Dg{nUg3p9>`2N4kY8HmiMr9l`@&ihw>rou&IW@ zMy(xJh*FIHJXsjjQqDvEFW0>e97=1qECFk{8g($V8Cimo-@teN5A_lK?E-%rc{5Cb zeIAFct_uf9p~6Od;j0s9SEdb#vt0X<*o2|oFO zl#trI+Sw^_r%E85%RaWztB)H9a(nML4zcH}msxv;e+((+#qD3i zRXOyNA3y!gi|9Yb&{x|3V-omnBqXITB>q}NU;h53_K-#-(fY1Mq&fRbGpt>J&TMWY z@dbbX36EBPG%0OPQLp-=MjEu5=1&F41HbyCOMWxX@6sGNJ$=0uhq{-1$g9XkOxQP$%ot?jr~>q+(n?$P=O?#aR(ojjC%&h7kC_BFqS z-^w@e+wj}SpTzHb{2Bbt<+$I4pT}S4Z}9K)zuqi75U{5hLRHuS9}K;5UjCk-~2hg`$w( zEJle6ev6nSX7D@3Cb5a%FSd$D`5(pO;&J|<_^WuAKP2{x5BL+}@8To=wD?#Y;?IiD z#OHj6I3m8lEnk8qA^+5hIM7oIW)W-*z9zGotdz}V8}W56^1p&T$!}$M$b4SGpWvPR zM>3z+^5>9~AM+29i+g#GV2DGAApVR96`_cO^6exv2QMILe!#`2M$2>6V|uMoTMqF|23Zxpm5+)&11@hijFQXE3X(`ou_7=D!) zZyL_>SOR`yFdvLNfIy`THUjZv;++MzRNyWEwnBu=z^K<4#6B6n(cq#faGwea=7WN# zz|SK5GT35vD&k$rmLcBdplBIu#4nSrWUUBw25#7`WF71*U^*MW(QE^#KMvGC7Z}dN zuaKROUkiBg0${lizb5v5{7z*T;kO94r(TRWF2QdJZh*U#tpWF5#@6D-zROuNxcCQb z9d3mCA^cy#egr&Mva5jSYWz-R*Wh?ioGU_ZrgId1g(88BRr z-wO6~{2FoV>dnA&3x11m-{EGY=eO(*V7n9dvMyrxu?LWn2T^O*u!r$$!O8gBk)9{< zTZ=mbpGK-W*`I*(8Qe&BDsH6Pfiig>zgYGH+X??Kv%esPyYO4Y{>uJ_6u!mwB8Bhb zw-mRy?ngS`XNQo^PuS;3;bGL#6}ZjrC@}wneTfwQ6TfEM@A?(E;A{MrvToMHrpp@K z%5B`nrlTI)am$N?J6I@pawi+f!+01==ixjYcfh*1i)HZ$9>H>WB#&abJeo)2X3Q8K z!&dQFj$1f+9FK?nFg^^ShI5Qp@&uj$b0SY<#XN~8u~MGQlUX@W;VB3^0%!Cmb2oRh zDxS(yfoCKi$;R?Dp2o)WbY6h;6!JpEUc^h0o-$qzY@_)E*i7V;kdj({0%DxSX93%6 zJ{uV3@C8W8LVhyrPvH&lzl<+~|K+?9X;{hEAPsAIGt#gQx1VM47JfFuZs6ZT8qVeC zBlZjU1+cl0UxYMV%r6F>OZX+gb1CFp5xlSH{F z$8CqB#c0@9hzj_hBqrhhk6Ka7;zgaPV@aZ3)Z@;x$+$lxT1*jBSd^G5rXuV#+zgT+ zriU$jr;1O+r@)Ms2j;`Lfw&nG{R>D`!CsXzop#!VLQ0ba zw@9fSDdlyfl+?jeQin)M-5@3Pcqys#rKGNtlG-LEwOvYTE+uuXl+=+@I!8+BY=J~x zgjh%l2TLg&BBk&+DTN!P6wa4Y*e2z#UCP{%Qsx#y;$8&2BxkFnoDGw5wouC1G%07( zA!UCENlg+q0}}R1_`eFjLMdl6rJT)>ayDGb*=#9ibEKSgNjaM<&DOJ;?R85Ce?L>@!!Y>1|^?8^{o@PLv?g9pqq#06@ zhD%9WC?#pOl%zRQlIBWD>XMSQP)gD~DM>S=B%LTFX`z&)6;hIBN=aJ5Ns>lLNg5?3 zsemMPu_!4$g_NFAQhEkKdd9<^B&LuOGwS~}b|$b{RaqRr=e+l|1xmrTtSwNWv;`4L zTcDIu3bKQMrIb<%w6su`QcBCdR76BnR7Bhm(Q%xKF=R4vmv#>9oj z#A;*WB4c8@F|oHXG1r)wW=zaBCZ-z`(~ODP_@>`5MtT~~QsE1)RmQJlW*IBH7%K~5O7@*iFQDo$bouWDQhojFkNp~$>240+vR;H&)_^DHTadyP!2wvE4z;rIg7fffONggt@WrDFe8OdXcc>{=HUjUj zg6Mtla^0qQdeHQNrj2V`f}^I7n?7m!d(%IeKC=!J zJa2l+^i|W>P0yKLZ1!b7F#U(=r>0+;e(N<1TURx$2s@f~HSKPiZaTm;r*&;zb2!Yj zz_iG;)O3pJtk%}t5n-8WrRfsWdehaW&1hb@$#jS5Zqt3HcbXnT^TWfYkDC70^qA>W zrYF#X@LAIrO;4MiHGRYMJUTLb&-5eHOQx4izw#P!ts9$LBXOpQrpcx~P5YW=Zs0CO zhM4A>jxsGaooG6ZzUwpQzK{RER`5Xl5$&sw%!Pj1o_4jp?W?DZ7;CPq9jr|I8oj!x z`WYIDU9X?>75g>FmDLkYjB{7k6f4ud`d>E+)M!urER-iQAQw1e3~B9o$I@d|F}dp$dg2! zepE_jWX)on59NYp^2d_iWJ^c*YM$SQ^;;Of1~38_G5XGB?5$zMY9=Dsg@1p*@*Yp< zgT#J=IA)Lz(Zeif$Ce*rd2np`ke$hwxY_E@(!FN0b)VTBz0K@kz0>RvJz#dIFHbwH zJl4u%tvuGsW34=Ps9jw$Bl!Tm#cIgb+haAeP6=E0NAm6@;bCOpVdT0(z4wO}-fHD@ zbbsu)yUh+&wsTyLvTkQmUxVHeD}}XMBX}SCSJwr+I= zJSSSM_y2IjJ+YElD*>(af$#S^?ReQ8!=Jj$^+sq%JjZw7xpw00ow=?qJU1UVrtqY@ z(ViY$X)o?d8oo#$TGx;3?$47Qh`*DCzmbE7Gz4$P=kkW(E9KHJM&jG#;fIXE!zsiY zDZ+m$<{abjVaB^se5r}}J(KWJI`MW)<;>IYf@a{c%)-Z-jXyLO-=z$1s~pd$0xzZ# zzpDx#sTzM~2_9Gt-qJFQK9}QRHSlh&!n0dLFIyM9WIeu+Dm47pWI4j`gYkbcgUS`mmHA0<)GXn zhvZ(lPwtloIGV<3$;oYX|*oaCAw5=v{s3=I-GEAM2DS- z3Okcm>q10GE{#|)l?)o$Ga|uWM1W~Tetqb%{Un1ZZ-5MxOc^9uk}WwhScb^eGL$H9 zxa7(R$&-Aa7b7b+S_);16vMj9cP_Q z9GFVR?0PAac~VZ+tU?w@C2?VuERt$j3^SHWjntAutCMy&(iB+RC#q#DbrpnVf>l&3({^T$Jv)fKJfQ>%rq(f+&^dLi=#*Wqi)j8x<$9@Hr=i}bf>oI4Z4f*u?>=F{BFLiJB)}n zmq<3x=kthMM-j13)N6@SClj4cB`TdxG&+;g^vxO+RX+uk4^d?1v*q$e0|HVQSbr%m}l>pb12)u@T7I z85;+Gld$nnxC^6Q0(Y&ezQvXfF!?HMN64Iv?F64wu!&IG|2nKQtnP+Qg4o@$UEp>P zY*+4jPwZ7NycaeZlJ~}@!1FY0DpXI$c7yGGu-zeiUu+LJ&o_n1j31Ekz91Jj6ivx(5smfQ8!cy&}(EQI!s2P!(}v@D}`u*j6p|A5jsM~ zqIpt`=F2$L&!hy*b&S`yv4v8q=dfdB0(tMi@y6a0K1S*y`tG>Y(_IEJg4`TAAmFgBQyo#Vi<7 z$l3z z0zP;q=SsH{S!6!{;zu<8esX4OtH1Yn9Q-+2;>Ud-X|@qN-bY;YpgZgyB7%I_9d(bm zN13ho1Cit(nNPUP-0U|T8Bn&3Yw>f(!j^CFtbGn-&ktqs8mKFJ1owrEIAc0|^sRK( zO0`xdS}T*-C$^QHPNPda_xaQtT_4R3ej!0CmDs?a(YGA$#O`5W_b|d)UWK)1Iah++ z&klA!JKOzCVN`-{c0UK${T#@9HQHrT?|kANe{UypSD$6x?K$qP=R@32@0_*0&Dyrh L+J2k0egD4!v3aBe literal 0 HcmV?d00001 diff --git a/app/fonts/PostGrotesk-Medium.svg b/app/fonts/PostGrotesk-Medium.svg new file mode 100644 index 0000000..2e26fe7 --- /dev/null +++ b/app/fonts/PostGrotesk-Medium.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/fonts/PostGrotesk-Medium.ttf b/app/fonts/PostGrotesk-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8c1451880e3800aa9b3676dcbbfeb2f3af340ff4 GIT binary patch literal 118012 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%0DL*9QbRh4g+)$7w_S!c317XLu%oycjv*zH1UlSRm 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 literal 0 HcmV?d00001 diff --git a/app/fonts/PostGrotesk-Medium.woff b/app/fonts/PostGrotesk-Medium.woff new file mode 100644 index 0000000000000000000000000000000000000000..933c51b2bb9343c9f33eed917448fa35e07a09a8 GIT binary patch literal 66471 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/fonts/glyphicons-halflings-regular.ttf b/app/fonts/glyphicons-halflings-regular.ttf new file mode 100755 index 0000000000000000000000000000000000000000..1413fc609ab6f21774de0cb7e01360095584f65b GIT binary patch literal 45404 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 G`u_lkUM?>H literal 0 HcmV?d00001 diff --git a/app/fonts/glyphicons-halflings-regular.woff2 b/app/fonts/glyphicons-halflings-regular.woff2 new file mode 100755 index 0000000000000000000000000000000000000000..64539b54c3751a6d9adb44c8e3a45ba5a73b77f0 GIT binary patch literal 18028 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 literal 0 HcmV?d00001 diff --git a/app/img/.gitkeep b/app/img/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/app/img/avatar-default.png b/app/img/avatar-default.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed4fb1b4ccbc6105661f05edcea28bcff7759f1 GIT binary patch literal 8730 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 AjsO4v literal 0 HcmV?d00001 diff --git a/app/index.html b/app/index.html new file mode 100644 index 0000000..d39711a --- /dev/null +++ b/app/index.html @@ -0,0 +1,20 @@ + + + + + + + + + + Decentralised Twitter dApp for DappCon 2018! + + + + + +

+ + + + \ No newline at end of file diff --git a/app/js/components/App.js b/app/js/components/App.js new file mode 100644 index 0000000..9958be6 --- /dev/null +++ b/app/js/components/App.js @@ -0,0 +1,136 @@ +import Header from './Header' +import Main from './Main' +import React, { Component } from 'react'; +import { withRouter } from 'react-router-dom' +import imgAvatar from '../../img/avatar-default.png'; +import { map } from 'async'; + +/** + * Class representing the highest order component. Any user + * updates in child components should trigger an event in this + * class so that the current user details can be re-fetched from + * the contract and propagated to all children that rely on it + * + * @extends React.Component + */ +class App extends Component { + + //#region Constructor + constructor(props) { + super(props); + + this.state = { + user: {}, + account: '', + error: {}, + userAccounts: [], + balance: 0 + } + } + //#endregion + + //#region Helper methods + /** + * Loads user details from the contract for all accounts on the node. + * + * For each account on the node, first, the owners mapping is queried using the + * owner address key. It returns the hash of the username it maps to. This + * username hash is then used to query the users mapping in the contract to + * get the details of the user. Once the user details are returned, the state + * is updated with the details, which triggers a render in this component and + * all child components. + * + * @returns {null} + */ + _loadCurrentUserAccounts = async () => { + + // get all the accounts the node controls + const accounts = await web3.eth.getAccounts(); + + // Generates a mapping of users and accounts to be used + // for populating the accounts dropdown + await map(accounts, async function (address, next) { + try { + // gets the balance of the address + let balance = await web3.eth.getBalance(address); + balance = web3.utils.fromWei(balance, 'ether'); + + // get the owner details for this address from the contract + const usernameHash = await DTwitter.methods.owners(address).call(); + + // get user details from contract + const user = await DTwitter.methods.users(usernameHash).call(); + + // update user picture with ipfs url + user.picture = user.picture.length > 0 ? EmbarkJS.Storage.getUrl(user.picture) : imgAvatar; + + // add the following mapping to our result + next(null, { + address: address, + user: user, + balance: balance + }); + } + catch (err) { + next(err); + } + }, (err, userAccounts) => { + if (err) return this._onError(err, 'App._loadCurrentUserAccounts'); + + const defaultUserAccount = userAccounts.find((userAccount) => { + return userAccount.address === web3.eth.defaultAccount; + }); + + this.setState({ + userAccounts: userAccounts, + user: defaultUserAccount.user, + account: web3.eth.defaultAccount, + balance: defaultUserAccount.balance + }); + }); + } + + /** + * Sets the App state error and redirects the user to the error page + * + * @param {Error} err - error encountered + */ + _onError(err, source) { + if (source) err.source = source; + this.setState({ error: err }); + this.props.history.push('/whoopsie'); + } + //#endregion + + //#region React lifecycle events + componentDidMount() { + EmbarkJS.onReady(() => { + setTimeout(() => { this._loadCurrentUserAccounts(); }, 0); + }); + } + + render() { + return ( +
+
this._loadCurrentUserAccounts()} + onError={(err, source) => this._onError(err, source)} /> +
this._loadCurrentUserAccounts()} + onError={(err, source) => this._onError(err, source)} /> +
+ ); + } + //#endregion +} + +export default withRouter(App) \ No newline at end of file diff --git a/app/js/components/CreateUser.js b/app/js/components/CreateUser.js new file mode 100644 index 0000000..d3ed054 --- /dev/null +++ b/app/js/components/CreateUser.js @@ -0,0 +1,226 @@ +import { Button, FormGroup, ControlLabel, FormControl, HelpBlock, Grid, Row, Col, PageHeader } from 'react-bootstrap'; +import { withRouter } from 'react-router-dom' +import React, { Component } from 'react'; +import FieldGroup from './FieldGroup'; + +/** + * Class that renders a form to facilitate the creation + * of a user in the contract. + * + * @extends React.Component + */ +class CreateUser extends Component { + + //#region Constructor + constructor(props, context) { + super(props, context); + + // initial state + this.state = { + isLoading: false, + username: '', + description: '', + usernameHasChanged: false, + error: '' + }; + } + //#endregion + + //#region Component events + /** + * Handles the 'Create Account' button click event which + * sends a transaction to the contract to create a user. + * + * @returns {null} + */ + _handleClick = async () => { + + this.setState({ isLoading: true }); + const { username, description } = this.state; + + try { + + // set up our contract method with the input values from the form + + // get a gas estimate before sending the transaction + + // send the transaction to create an account with our gas estimate + // (plus a little bit more in case the contract state has changed). + + // check result status. if status is false or '0x0', show user the tx details to debug error + // if (result.status && !Boolean(result.status.toString().replace('0x', ''))) { // possible result values: '0x0', '0x1', or false, true + // return this.setState({ isLoading: false, error: 'Error executing transaction, transaction details: ' + JSON.stringify(result) }); + // } + + // Completed of async action, set loading state back + this.setState({ isLoading: false }); + + // tell our parent that we've created a user so it + // will re-fetch the current user details from the contract + this.props.onAfterUserUpdate(); + + // redirect user to the profile update page + this.props.history.push('/update/@' + username); + + } catch (err) { + // stop loading state and show the error + this.setState({ isLoading: false, error: err.message }); + }; + } + + /** + * When user changes an input value, record that in the state. + * Additionally, if the username field was updated, perform a + * check to see if the username already exists in the contract + * and set the component state accordingly + * + * @param {SyntheticEvent} cross-browser wrapper around the browser’s native event + * + * @return {null} + */ + _handleChange = async(e) => { + let state = {}; + const input = e.target.name; + const value = e.target.value; + + state[input] = value; + + if (input === 'username') { + + state.usernameHasChanged = true; + + if (value.length >= 5) { + + // ensure we're not already loading the last lookup + if (!this.state.isLoading) { + + // call the userExists method in our contract asynchronously + // .then((exists) => { + + // // stop loading state + // state.isLoading = false; + + // // show error to user if user doesn't exist + // state.error = exists ? 'Username not available' : ''; + + // this.setState(state); + + // }).catch((err) => { + + // // stop loading state + // state.isLoading = false; + + // // show error message to user + // state.error = err.message; + + // this.setState(state); + // }); + + // set loading state while checking the contract + state.isLoading = true; + } + + // we are loading already, do nothing while we wait + return true; + } + } + + this.setState(state); + } + //#endregion + + //#region Helper methods + /** + * Validates the form. Return null for no state change, + * 'success' if valid, and error' if invalid. + * + * @return {string} null for no state change, 'success' + * if valid, and error' if invalid + */ + _getValidationState() { + + // considered valid while loading as we don't know yet + if (this.state.isLoading) return null; + + // check that we have at least 5 characters in the username + const length = this.state.username.length; + if (length === 0){ + if(this.state.usernameHasChanged) return 'error'; + return null; + } + if (length <= 5) return 'error'; + + // don't allow '@' or spaces + if(new RegExp(/[@\s]/gi).test(this.state.username)) return 'error'; + + // if we have an error, returning 'error' shows the user + // the form is in error (red). Conversely, returning 'success' + // shows the user the form is valid (green). + return this.state.error.length > 0 ? 'error' : 'success'; + } + //#endregion + + //#region React lifecycle events + render() { + const { isLoading } = this.state; + let validationState = this._getValidationState(); + let isValid = validationState === 'success' && !isLoading && !this.state.error; + let feedback = isValid ? 'Username is available' : this.state.error || 'Usernames must be 6 or more characters and cannot include @ or spaces.'; + + if (!this.state.usernameHasChanged) feedback = ''; + + return ( + + + + Create a user for { this.props.account } + + + + +
this._handleClick(e) }> + e.key === '@' || e.key === ' ' ? e.preventDefault() : true } + onChange={ (e) => this._handleChange(e) } + name="username" + autoComplete="off" + label="Desired username" + validationState={ validationState } + hasFeedback={ true } + help={ feedback } + inputAddOn={ + { + location: 'before', + addOn: '@' + } + } + /> + this._handleChange(e)} + name="description" + label="Description" + /> + + + +
+
+ ); + } + //#endregion +} + +export default withRouter(CreateUser); \ No newline at end of file diff --git a/app/js/components/DoTweet.js b/app/js/components/DoTweet.js new file mode 100644 index 0000000..84d3b88 --- /dev/null +++ b/app/js/components/DoTweet.js @@ -0,0 +1,140 @@ +import { Link } from 'react-router-dom' +import { Button, FormGroup, ControlLabel, FormControl, HelpBlock } from 'react-bootstrap'; +import React, { Component } from 'react'; +import FieldGroup from './FieldGroup'; + +/** + * Class that renders a form to allow the user to create + * a tweet that is stored in the contract. + * + * @extends React.Component + */ +class DoTweet extends Component{ + + //#region Constructor + constructor(props, context) { + super(props, context); + + // initial state + this.state = { + tweet: '', + tweetHasChanged: false, + isLoading: false, + error: '' + }; + + this.tweetInput = null; + } + //#endregion + + //#region Component events + /** + * Handles the 'Tweet' button click event which + * sends a transaction to the contract to store a + * tweet for the current user. + * + * @returns {null} + */ + _handleClick = async (e) => { + + // do not post tweet if there is a form error or user has not typed anything + if(this._getValidationState() === 'error' || !this.state.tweetHasChanged){ + return e.preventDefault(); + } + + // show loading state + this.setState({ isLoading: true }); + + const { username, account, onAfterTweet } = this.props; + const tweet = DTwitter.methods.tweet(this.state.tweet); + + try{ + // estimate gas before sending tweet transaction + + // send the tweet transaction plus a little extra gas in case the contract state + // has changed since we've done our gas estimate + + // remove loading state + this.setState({ isLoading: false }); + + // tell parent we've updated a user and to re-fetch user details from the contract + onAfterTweet(); + } + catch(err){ + // remove loading state and show error message + this.setState({ isLoading: false, error: err.message }); + } + } + + /** + * When user changes an input value, record that in the state. + * + * @param {SyntheticEvent} cross-browser wrapper around the browser’s native event + * + * @return {null} + */ + _handleChange(e) { + let state = {tweetHasChanged: true}; + state[e.target.name] = e.target.value; + this.setState(state); + } + //#endregion + + //#region Helper methods + /** + * Validates the form. Return null for no state change, + * 'success' if valid, and error' if invalid. + * + * @return {string} null for no state change, 'success' + * if valid, and error' if invalid + */ + _getValidationState() { + return ((this.state.tweet === '' && !this.state.tweetHasChanged) || (this.state.tweet.length > 0 && this.state.tweet.length <= 140)) ? null : 'error'; + } + //#endregion + + //#region React lifecycle events + componentDidMount(){ + // set focus to tweet textarea after render + if(this.tweetInput) this.tweetInput.focus(); + } + + render(){ + + const validationState = this._getValidationState(); + const isValid = validationState !== 'error'; + const { isLoading, error, tweet, tweetHasChanged } = this.state; + + let feedback = !isValid ? 'Tweet must be 140 characters or less' : ''; + if(this.state.error) feedback = error; + + return ( +
+ this._handleChange(e) } + name="tweet" + componentClass="textarea" + hasFeedback={true} + validationState={validationState} + inputRef={(input) => { this.tweetInput = input; }} + /> + + + { feedback } + + + ); + } + //#endregion +} +export default DoTweet \ No newline at end of file diff --git a/app/js/components/Error.js b/app/js/components/Error.js new file mode 100644 index 0000000..7937d49 --- /dev/null +++ b/app/js/components/Error.js @@ -0,0 +1,55 @@ +import React, { Component } from 'react'; +import { Grid, Row, Col, PageHeader } from 'react-bootstrap'; + +/** + * Class representing the home page rendering + * + * @extends React.Component + */ +class Error extends Component { + + //#region Constructor + constructor(props) { + super(props); + } + //#endregion + + //#region React lifecycle events + render() { + + const metaMaskPossible = (this.props.error.message.indexOf('Internal JSON-RPC error') > 0 || this.props.error.message.indexOf('Failed to fetch') > 0); + + return ( + + + + + Whoopsieee Something went wrong + + {metaMaskPossible ? + +

Metamask error?

+

It appears you might be using metamask. Have you signed in and are you on the right network?

+
+ : + '' + } +

Error details

+
{this.props.error.message}
+ {this.props.error.stack} + { this.props.error.source ? + +
Source: { this.props.error.source } +
+ : + '' + }
+ +
+
+ ); + } + //#endregion +} + +export default Error \ No newline at end of file diff --git a/app/js/components/FieldGroup.js b/app/js/components/FieldGroup.js new file mode 100644 index 0000000..5502c78 --- /dev/null +++ b/app/js/components/FieldGroup.js @@ -0,0 +1,64 @@ +import React from 'react'; +import { FormGroup, ControlLabel, FormControl, HelpBlock, InputGroup } from 'react-bootstrap'; + +/** + * Creates a from group with label and form control with options for feedback, help, and addons. + * + * @param {config} configObj + * * id {String} (required) The FormGroup controlId. + * * label {String} (required) The control's label text. + * * help {String} (optional) The help text below the control. + * * validationState {String} (required) Sets the validation state of the control. One of: 'success', 'warning', 'error', null. + * * hasFeedback {Boolean} (optional) Whether or not to show the form control feedback (ie green check mark for 'success' validation state). + * * inputAddOn {Object} (optional) Input add on to be prepended or appended to the form control. + * ** location {String} (required) Placement of the addon. One of 'before', 'after'. + * ** addOn {React.Component} (required) React component or string to represent the add on. ie '$' or . + * * ...props {Any} (optional) Any other props passed in will be appended as props to the FormControl component, ie type='file'. + * + * @example + * this._handleChange(e)} + * name="username" + * autoComplete="off" + * label="Desired username" + * validationState={validationState} + * hasFeedback={true} + * help={feedback} + * inputAddOn={ + * { + * location: 'before', + * addOn: '$' + * } + * } + * /> + * + * @returns {React.Component} The completed component to render. + */ +const FieldGroup = ({ id, label, help, validationState, hasFeedback, inputAddOn, ...props }) => { + return ( + + + {label} + + { inputAddOn ? + + { inputAddOn.location === 'before' ? { inputAddOn.addOn } : '' } + + { inputAddOn.location === 'after' ? { inputAddOn.addOn } : '' } + + : + { props.children } + } + {hasFeedback ? : ''} + {help && {help}} + + + + ); +} + +export default FieldGroup; \ No newline at end of file diff --git a/app/js/components/Header.js b/app/js/components/Header.js new file mode 100644 index 0000000..c920bde --- /dev/null +++ b/app/js/components/Header.js @@ -0,0 +1,245 @@ +import { NavLink, withRouter } from 'react-router-dom' +import { Button, Image, Modal, Navbar, ButtonToolbar, Dropdown, Glyphicon, MenuItem, Overlay, Tooltip } from 'react-bootstrap'; +import React, { Component } from 'react'; +import DoTweet from './DoTweet'; +import Search from './Search'; +import { limitLength, limitAddressLength } from '../utils'; +import Spinner from 'react-spinkit'; +import FieldGroup from './FieldGroup'; +import imgAvatar from '../../img/avatar-default.png'; + +/** + * Class representing the header of the page that handles + * commone functions such as navigation, searching of users, + * link to create account, and modal to tweet + * + * @extends React.Component + */ +class Header extends Component { + + //#region Constructor + constructor(props, context) { + super(props, context); + + this.state = { + showModal: false, + showTooltip: false + }; + } + //#endregion + + //#region Component events + /** + * Hides the tweet modal + */ + _handleClose() { + this.setState({ showModal: false }); + } + + /** + * Shows the tweet modal + */ + _handleShow() { + this.setState({ showModal: true }); + } + + /** + * Toggles the current account address tooltip + */ + _handleToggle() { + this.setState({ showTooltip: !this.state.showTooltip }); + } + + /** + * Handles the event when the user selects a different account from + * the dropdown + * @param {Event} e - the DOM event fired when the account was changed + */ + _handleAcctChange(e) { + if (e.target.tagName !== 'A') e.target = e.target.parentElement; + web3.eth.defaultAccount = e.target.attributes.value.value; + this.props.onAfterUserUpdate(); + if (e.target.attributes.username.value) { + this.props.history.push('/update/@' + e.target.attributes.username.value); + } + else { + this.props.history.push('/create'); + } + } + + /** + * Formats an ethereum balance for display + * @param {*} balance to be formatted + */ + _formatBalance(balance) { + return 'Ξ' + limitLength( + parseFloat( + balance + ).toFixed(4), 6, '', true + ); + } + //#endregion + + //#region React lifecycle events + + render() { + const { picture, username, description } = this.props.user; + const isEditable = Boolean(username); + const isError = this.props.error && this.props.error.message; + const isLoading = !Boolean(this.props.account) && !isError; + const tooltipProps = { + container: this, + target: this.tooltipTarget, + show: this.state.showTooltip + }; + + let navClasses = []; + if (isError) navClasses.push('error'); + if (!isEditable) navClasses.push('logged-out'); + + // generate the menuitems for the accounts to populate + // the accounts dropdown + const accts = this.props.userAccounts.map((userAccount, index) => { + const isCurrUser = userAccount.address === this.props.account; + const hasUser = Boolean(userAccount.user.username); + + return this._handleAcctChange(e, key)} + > + {hasUser ? + {userAccount.user.username} + {userAccount.user.username} + : + + + {limitAddressLength(userAccount.address, 4)} + + } + + {this._formatBalance(userAccount.balance)} + + + }); + + let states = {}; + + // state when we are waiting for the App component to finish loading + // the current account (address) from web3.eth.getAccounts() + states.isLoading = ; + + states.isError = ERROR!; + + // state when our account has loaded, and it was determined that that + // account (address) has not been mapped to an owner/user in the contract + // (This happens in the App component) + states.isNotEditable = + + + this._handleToggle(e)} + onMouseLeave={(e) => this._handleToggle(e)} + className='username' + ref={(span) => this.tooltipTarget = span} + >{limitAddressLength(this.props.account, 4)} + + + {this._formatBalance(this.props.balance)} + + {this.props.account} + + ; + + // state when our account has loaded, and it was determined that the + // account (address) has been mapped to an owner/user in the contract + // (This happens in the App component) + states.isEditable = + + {username} + {username} + + {this._formatBalance(this.props.balance)} + ; + + // state for showing the tweet button and associated modal + states.tweet = + + + this._handleClose(e)}> + + New tweet + + + this._handleClose()}> + + + + + + ; + + + return ( + + + + dTwitter embark by Status + + + + +
+ + + + + {isLoading ? + states.isLoading + : + isError ? + states.isError + : + + + + + {isEditable ? + states.isEditable + : + states.isNotEditable + } + + + {accts} + + + + {isEditable ? states.tweet : ''} + + } +
+
+
+ ); + } + //#endregion +} +export default withRouter(Header) \ No newline at end of file diff --git a/app/js/components/Home.js b/app/js/components/Home.js new file mode 100644 index 0000000..020f659 --- /dev/null +++ b/app/js/components/Home.js @@ -0,0 +1,34 @@ +import React, { Component } from 'react'; +import {Grid, Row, Col, PageHeader} from 'react-bootstrap'; + +/** + * Class representing the home page rendering + * + * @extends React.Component + */ +class Home extends Component{ + + //#region Constructor + constructor(props){ + super(props); + } + //#endregion + + //#region React lifecycle events + render() { + return ( + + + + + Decentralised Twitter Built using Embark by Status + + + + + ); + } + //#endregion +} + +export default Home \ No newline at end of file diff --git a/app/js/components/Main.js b/app/js/components/Main.js new file mode 100644 index 0000000..575404e --- /dev/null +++ b/app/js/components/Main.js @@ -0,0 +1,42 @@ +import { Switch, Route } from 'react-router-dom'; +import PropsRoute from './PropsRoute'; +import Home from './Home'; +import UserTweets from './UserTweets'; +import CreateUser from './CreateUser'; +import UpdateUser from './UpdateUser'; +import Error from './Error'; +import React, { Component } from 'react'; + +/** + * Class representing the area below the header. + * The component rendering in this area is controlled by + * a @external "BrowserRouter" + * + * @extends React.Component + */ +class Main extends Component { + + //#region Constructor + constructor(props){ + super(props); + } + //#endregion + + //#region React lifecycle events + render () { + return ( +
+ + + + + + + +
+ ) + } + //#endregion +} + +export default Main diff --git a/app/js/components/PropsRoute.js b/app/js/components/PropsRoute.js new file mode 100644 index 0000000..a87d0d4 --- /dev/null +++ b/app/js/components/PropsRoute.js @@ -0,0 +1,26 @@ +import React, { Component } from 'react'; +import { Route } from 'react-router-dom'; + +const _renderMergedProps = (component, ...rest) => { + const finalProps = Object.assign({}, ...rest); + return ( + React.createElement(component, finalProps) + ); +} + +/** + * Renders a @external "Route" with props passed to the route + * and available to all components mounted in that route + * + * @param {React.Component} component - component to render for the route + * @param {params} ...rest - props to pass to component when it's mounted + */ +const PropsRoute = ({ component, ...rest }) => { + return ( + { + return _renderMergedProps(component, routeProps, rest); + }} /> + ); +} + +export default PropsRoute; diff --git a/app/js/components/Search.js b/app/js/components/Search.js new file mode 100644 index 0000000..06c03e3 --- /dev/null +++ b/app/js/components/Search.js @@ -0,0 +1,102 @@ +import React, { Component } from 'react'; +import { withRouter } from 'react-router-dom'; +import { FormGroup, InputGroup, FormControl, Button, Glyphicon } from 'react-bootstrap'; + +/** + * Class that renders a form to faciliate searching of + * for a username and to redirect to that user's tweets + * page. + * + * @extends React.Component + */ +class Search extends Component { + + //#region Constructor + constructor(props, context) { + super(props, context); + + // initial state + this.state = { + username: '', + usernameHasChanged: false + }; + } + //#endregion + + //#region Component events + /** + * Handles the 'Search' button click event which + * sends the browser to the route to see the specified + * user's tweets. + * + * @returns {null} + */ + _handleClick(e) { + // if the form is in error, or the user has not typed in a username, do no nothing + if (this._getValidationState() === 'error' || !this.state.usernameHasChanged) { + return e.preventDefault(); + } + + // redirec the user to the user's tweets page + this.props.history.push('/@' + this.state.username); + } + + /** + * When user changes an input value, record that in the state. + * + * @param {SyntheticEvent} cross-browser wrapper around the browser’s native event + * + * @return {null} + */ + _handleChange(e) { + let state = { usernameHasChanged: true }; + state[e.target.name] = e.target.value; + this.setState(state); + } + //#endregion + + //#region Helper methods + /** + * Validates the form. Return null for no state change, + * 'success' if valid. + * + * @return {string} null for no state change, 'success' + * if valid. + */ + _getValidationState() { + + // ensure that the username has been changed and that a user has typed something in + return (this.state.username === '' && !this.state.usernameHasChanged) || this.state.username.length > 0 ? null : 'error'; + } + //#endregion + + //#region React lifecycle events + render() { + let validationState = this._getValidationState(); + let isValid = validationState !== 'error'; + + return ( + + + this._handleChange(e) } + onKeyPress={ (e) => e.key === 'Enter' ? this._handleClick(e) : false } + /> + + + + + + ); + } + //#endregion +} + +export default withRouter(Search); \ No newline at end of file diff --git a/app/js/components/UpdateUser.js b/app/js/components/UpdateUser.js new file mode 100644 index 0000000..b95a43c --- /dev/null +++ b/app/js/components/UpdateUser.js @@ -0,0 +1,176 @@ +import { Button, FormGroup, ControlLabel, FormControl, HelpBlock, Image, Grid, Col, Row, PageHeader } from 'react-bootstrap'; +import { withRouter } from 'react-router-dom' +import React, { Component } from 'react'; +import FieldGroup from './FieldGroup'; + +class UpdateUser extends Component { + + //#region Constructor + constructor(props, context) { + super(props, context); + + // initial state + this.state = { + isLoading: false, + picture: '', + description: this.props.user.description, + error: '', + formState: null, + formUpdated: false + }; + } + //#endregion + + //#region Component events + /** + * Handles the 'Update user' button click event which + * sends a transaction to the contract to update the + * user's profile. + * + * @returns {null} + */ + _handleClick = async () => { + // if the form has not been updated, do nothing + if (!this.state.formUpdated) return; + + // show loading state + this.setState({ isLoading: true }); + + // if the user has updated their photo, try to upload it to ipfs + // and use the resulting ipfs hash to send to the contract as part + // of the user's profile. + let hash = ''; + if (this.state.picture !== '') { + try { + // upload the file to ipfs and get the resulting hash + hash = ''; + } + catch (err) { + // stop loading state and show user the error + return this.setState({ isLoading: false, formState: 'error', error: err.message }); + } + } + + const { account, user } = this.props; + const { description } = this.state; + // get a handle for the editAccount method + + // get a gas estimate for the transaction with the input username + // and description + + try { + // send the transaction with our gas estimate (plus a little bit more in case the contract) + // state has changed since we got our estimate + + // if (result.status && !Boolean(result.status.toString().replace('0x', ''))) { + // return this.setState({ isLoading: false, formState: 'error', formUpdated: false, error: 'Error executing transaction, transaction details: ' + JSON.stringify(result) }); + // } + + // stop loading state, and render the form as successful + this.setState({ isLoading: false, formState: 'success', formUpdated: false }); + + // tell parent we've updated our user, so the current + // user is re-fetched to get the user's details + return this.props.onAfterUserUpdate(); + } + catch (err) { + // stop loading state and show user the error + this.setState({ isLoading: false, formState: 'error', formUpdated: false, error: err.message }); + } + + return null; + } + + /** + * When user changes an input value, record that in the state. + * Additionally, sets state that the form has been updated to + * allow for more fine validation control + * + * @param {SyntheticEvent} cross-browser wrapper around the browser’s native event + * + * @return {null} + */ + _handleChange(e) { + let state = { formUpdated: true }; + const input = e.target.name; + const value = e.target.value; + + state[input] = value; + + this.setState(state); + } + //#endergion + + //#region React lifecycle events + componentDidUpdate(prevProps){ + if(this.props.user.description !== prevProps.user.description){ + this.setState({description: this.props.user.description}); + } + } + + render() { + const { isLoading, error, formState, formUpdated, description, picture } = this.state; + const { user } = this.props; + const feedback = formState === 'success' ? 'Saved' : error; + return ( + + + + Update { user.username } {this.props.account} + + + + +
this._handleClick(e) }> + + this._handleChange(e) } + name="description" + label="Description" + validationState={ formState } + /> + this._handleChange(e) } + name="picture" + label="Profile picture" + inputRef={ (input) => this.inputPicture = input } + validationState={ formState } + /> + + { user.picture.length ? : '' } + + + + + + { feedback } + + + +
+
+ ); + } + //#endregion +} + +export default withRouter(UpdateUser); \ No newline at end of file diff --git a/app/js/components/UserTweets.js b/app/js/components/UserTweets.js new file mode 100644 index 0000000..8d7c0b1 --- /dev/null +++ b/app/js/components/UserTweets.js @@ -0,0 +1,169 @@ +import { Grid, Row, Col, Thumbnail, ListGroup, ListGroupItem, PageHeader } from 'react-bootstrap'; +import React, { Component } from 'react'; +import imgAvatar from '../../img/avatar-default.png'; +import { formatDistance } from 'date-fns/esm' +import { EventEmitter } from 'events'; + +// The Player looks up the player using the number parsed from +// the URL's pathname. If no player is found with the given +// number, then a "player not found" message is displayed. +class UserTweets extends Component { + + //#region Constructor + constructor(props, context){ + super(props, context); + this.state = { + user: {}, + tweets: [] + }; + this.event = null; + } + //#endregion + + //#region Helper methods + /** + * Get the user details and subscribe to their tweet event + */ + _init(){ + const { username } = this.props.match.params; + this._getUserDetails(username); + + // subscribe to tweet events + this._subscribeToNewTweetEvent(username); + } + + /** + * Fetches the user's details from the contract for display + */ + _getUserDetails = async(username) => { + // get user details and update state + let user = { creationDate: '' } // remove me + + // update picture url for ipfs + + // format the user.creationDate for display + user.creationDate = this._formatDate(user.creationDate); + + this.setState({user: user}); + } + + /** + * Subscribes to a tweet event from the contract. + * When a tweet is received, it is appended to the list of + * tweets. + * + * @param {String} username + * @returns {null} + */ + _subscribeToNewTweetEvent(username){ + this.event = new EventEmitter() // replace me with the NewTweet subscription + .on('data', (event) => { + let tweets = this.state.tweets; + + tweets.push({ + content: event.returnValues.tweet, + time: this._formatDate(event.returnValues.time) + }); + + this.setState({tweets: tweets}); + }) + .on('error', function(error){ + this.props.onError(err, 'UserTweets._subscribeToNewTweetEvent'); + }); + } + + /** + * Formats an int date into a displayable date + * @param {Number} intDate - date in seconds + * @returns {String} prettyfied date + */ + _formatDate(intDate){ + const padZeros = 13 - intDate.length; + if(padZeros > 0){ + intDate *= Math.pow(10, padZeros); + } + return formatDistance(new Date(intDate), new Date()) + ' ago'; + } + //#endregion + + //#region React lifecycle events + /** + * Get the user details and subscribe to their tweet event + */ + componentDidMount(){ + EmbarkJS.onReady((err) => { + this._init(); + }); + } + + /** + * If the username was changed (ie redirected from a new route), + * we need to get the new user's details and subscribe to their tweet + * event. + */ + componentDidUpdate(prevProps){ + if(this.props.match.params.username !== prevProps.match.params.username){ + this._init(); + } + } + + /** + * Unsubscribe from our tweet event so we stop + * receiving tweets. + */ + componentWillUnmount(){ + if(!this.event) return; + // unsubscribe from our contract event listening for tweets + this.event.unsubscribe(); + } + + render(){ + const {user} = this.state; + + if (user === {}) { + // Render loading state ... + return (Loading...); + } else if (user.username === ''){ + return ( + + + + { this.props.match.params.username } doesn't exist! + + + ); + }else { + // Render real UI ... + const {username, description, picture, creationDate} = user; + const tweetList = this.state.tweets.map(function(tweet, index){ + return { tweet.content } + }); + return ( + + + + { username }'s tweets + + + + + +

{ username }

+

{ description }

+

Created { creationDate }

+
+ + + + + { tweetList } + + +
+
+ ) + } + } + //#endregion +} +export default UserTweets diff --git a/app/js/dapp.js b/app/js/dapp.js new file mode 100644 index 0000000..369921c --- /dev/null +++ b/app/js/dapp.js @@ -0,0 +1,15 @@ +import { render } from 'react-dom' +import { BrowserRouter } from 'react-router-dom' +import App from './components/App'; +import React from 'react'; +import EmbarkJS from 'Embark/EmbarkJS'; +import DTwitter from 'Embark/contracts/DTwitter'; + +window.EmbarkJS = EmbarkJS; +window.DTwitter = DTwitter; + +render(( + + + +), document.getElementById('root')); \ No newline at end of file diff --git a/app/js/utils.js b/app/js/utils.js new file mode 100644 index 0000000..5dc71a1 --- /dev/null +++ b/app/js/utils.js @@ -0,0 +1,78 @@ +/** + * Limits the length of a string for display purposes, replacing the removed text + * with the replacement entity specified + * + * @param {String} strToShorten - string to shorten. + * @param {Number} maxLength - maximum length of string before appending the replacement entity. + * @param {String} replacement - string to replace the removed text with, defaults to '…' + * @param {Boolean} trimMiddle - if true, maxLength chars form the beginning and end will be + * shown, and the middle of the string will be trimmed, ie '123…789' (maxLength = 3, delimiter = '…') + * @example + * const fullLength = '1234567890'; + * limitLength(fullLength, 3); + * // returns '123…' + * @example + * const fullLength = '1234567890'; + * limitLength(fullLength, 3, '-', true); + * // returns '123-890' + * @returns {String} the shortened string + */ +export function limitLength (strToShorten, maxLength, replacement, trimMiddle){ + if(!strToShorten) return ''; + + const fullStringLength = strToShorten.length; + const ellips = replacement || '…'; + + if(trimMiddle && fullStringLength > maxLength * 2){ + return [strToShorten.substring(0, maxLength), ellips, strToShorten.substring(fullStringLength - maxLength)].join(''); + } + + if(fullStringLength > maxLength){ + return strToShorten.substring(0, maxLength) + ellips; + } + return strToShorten; + } + +/** + * Limits the length of an address for display purposes, replacing the removed hex + * chars with the replacement entity specified + * + * @param {String} address - address to shorten. + * @param {Number} maxLength - maximum hex chars to show before appending the replacement. + * @param {String} replacement - string to replace the removed hex chars with, defaults to '…' + * @example + * const fullLength = '0x3901F05c5e296E97c8Dc2ebEdCCa5F010f895552'; + * limitAddressLength(fullLength, 4); + * // returns '0x3901…5552' + * @example + * const fullLength = '0x3901F05c5e296E97c8Dc2ebEdCCa5F010f895552'; + * limitAddressLength(fullLength, 3, '-'); + * // returns '0x390-552' + * @returns {String} the shortened string + */ +export function limitAddressLength (address, maxLength, replacement){ + if(!address) return ''; + let prepend0x = false; + + if(address.startsWith('0x')){ + address = address.substring(2); + prepend0x = true; + } + + return `${prepend0x ? '0x': ''}${limitLength(address, maxLength, replacement, true)}`; +} + +/** + * Formats an ethereum amount using fixed-point notation. + * + * @param {any} eth - amount of ethereum to display. + * @param {Number} decimals - number of decimal places to display. + * @example + * const eth = 123.12345678901234567890; + * limitAddressLength(eth, 4); + * // returns 123.1234 + * @returns {Number} the ethereum amount in fixed-point notation + */ +export function formatEth(eth, decimals){ + return Number.parseFloat(eth).toFixed(decimals); +} diff --git a/chains.json b/chains.json new file mode 100644 index 0000000..8f19b1c --- /dev/null +++ b/chains.json @@ -0,0 +1,26 @@ +{ + "0x88ff9440720de19a7a4df9f79a0f90a242e059deb582c9bbdaeb71c9ba485ace": { + "contracts": { + "0x35cbd109f501602ed728b03e78faa3df2cc6b5c9db220e139623f9ae41389b02": { + "name": "DTwitter", + "address": "0x967F11b60DEbd189A4A659797331567391460ED4" + } + } + }, + "0x1252846a8808f56e5778eeba24370387a5ed8fc43c656222c06aa8fa685f33a7": { + "contracts": { + "0xafd56468410df34ac5cd883c2bc32f55d8d5324e90aa039195ef3e3c019529d5": { + "name": "DTwitter", + "address": "0x6dBe7dB352425FE5248f530E624f6B0BA80C8186" + }, + "0x98f6e2bd3b39af5c2cd9babc7aab7a780c9cb2329e23dd3fa47f268f7cfaefa7": { + "name": "DTwitter", + "address": "0x0229d76752D3088daA9c7cCeDcE368f687d015C9" + }, + "0xedfac3ca7a84cfa0b8da75f703f1cc5c59dc44fbd7f5ab5421b1aa4566e4ade8": { + "name": "DTwitter", + "address": "0x86c37cC359Face5A02947eB0A67EaA223F1a35c2" + } + } + } +} diff --git a/config/blockchain.js b/config/blockchain.js new file mode 100644 index 0000000..0acae11 --- /dev/null +++ b/config/blockchain.js @@ -0,0 +1,63 @@ +module.exports = { + development: { + enabled: true, + networkType: "custom", + networkId: "1337", + isDev: true, + genesisBlock: "config/development/genesis.json", + datadir: ".embark/development/datadir", + mineWhenNeeded: true, + nodiscover: true, + maxpeers: 0, + rpcHost: "localhost", + rpcPort: 8545, + rpcCorsDomain: "auto", + rpcApi: ['eth', 'web3', 'net', 'debug', 'personal'], + proxy: true, + account: { + password: "config/development/password", + numAccounts: 3, + balance: "5 ether" + }, + targetGasLimit: 10000000000, + wsOrigins: "auto", + wsRPC: true, + wsHost: "localhost", + wsPort: 8546, + wsApi: ['eth', 'web3', 'net', 'shh', 'debug', 'personal'], + simulatorMnemonic: "example exile argue silk regular smile grass bomb merge arm assist farm", + simulatorBlocktime: 0 + }, + testnet: { + enabled: true, + networkType: "testnet", + light: true, + rpcHost: "localhost", + rpcPort: 8545, + rpcCorsDomain: "http://localhost:8000", + account: { + password: "config/testnet/password" + } + }, + livenet: { + enabled: true, + networkType: "livenet", + light: true, + rpcHost: "localhost", + rpcPort: 8545, + rpcCorsDomain: "http://localhost:8000", + account: { + password: "config/livenet/password" + } + }, + privatenet: { + enabled: true, + networkType: "custom", + rpcHost: "localhost", + rpcPort: 8545, + rpcCorsDomain: "http://localhost:8000", + datadir: "yourdatadir", + networkId: "123", + bootnodes: "" + } +} diff --git a/config/communication.js b/config/communication.js new file mode 100644 index 0000000..eb969d3 --- /dev/null +++ b/config/communication.js @@ -0,0 +1,12 @@ +module.exports = { + default: { + enabled: true, + provider: "whisper", + available_providers: ["whisper"], + connection: { + host: "localhost", + port: 8546, + type: "ws" + } + } +} diff --git a/config/contracts.js b/config/contracts.js new file mode 100644 index 0000000..5ff7373 --- /dev/null +++ b/config/contracts.js @@ -0,0 +1,64 @@ +module.exports = { + // default applies to all enviroments + default: { + // rpc to deploy the contracts + deployment: { + host: "localhost", + port: 8545, + type: "rpc" + }, + // order of connections the dapp should connect to + dappConnection: [ + "$WEB3", // uses pre existing web3 object if available (e.g in Mist) + "ws://localhost:8546", + "http://localhost:8545" + ], + contracts: { + DTwitter: { + args: [ ] + } + }, + gas: "auto", + gasLimit: 9000000, + gasPrice: 100 + }, + testnet: { + deployment:{ + // accounts: [ + // { + // "mnemonic": "wave pigeon sustain sock boring monitor left sight hedgehog weapon champion session", + // "addressIndex": "0", // Optional. The index to start getting the address + // "numAddresses": "2", // Optional. The number of addresses to get + // "hdpath": "m/44'/60'/0'/0/" // Optional. HD derivation path + // } + // ], + accounts: [ + { + "mnemonic": "acquire hole quarter security auto wedding leader audit baby dawn gravity obvious", + "addressIndex": "0", // Optional. The index to start getting the address + "numAddresses": "2", // Optional. The number of addresses to get + "hdpath": "m/44'/60'/0'/0/" // Optional. HD derivation path + } + ], + contracts: { + DTwitter: { + args: [ ] + } + }, + gasLimit: 9000000, + gasPrice: 91200, + host: "rinkeby.infura.io/nmY8WtT4QfEwz2S7wTbl", + port: false, + protocol: 'https', + type: "rpc" + } + }, + + development: { + dappConnection: [ + "ws://localhost:8546", + "http://localhost:8545", + "$WEB3" // uses pre existing web3 object if available (e.g in Mist) + ] + } +} diff --git a/config/development/genesis.json b/config/development/genesis.json new file mode 100644 index 0000000..a67418b --- /dev/null +++ b/config/development/genesis.json @@ -0,0 +1,18 @@ +{ + "config": { + "homesteadBlock": 0, + "byzantiumBlock": 0, + "daoForkSupport": true + }, + "nonce": "0x0000000000000042", + "difficulty": "0x0", + "alloc": { + "0x3333333333333333333333333333333333333333": {"balance": "15000000000000000000"} + }, + "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "coinbase": "0x3333333333333333333333333333333333333333", + "timestamp": "0x00", + "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "extraData": "0x", + "gasLimit": "0x7a1200" +} diff --git a/config/development/password b/config/development/password new file mode 100644 index 0000000..c747d67 --- /dev/null +++ b/config/development/password @@ -0,0 +1 @@ +dev_password diff --git a/config/namesystem.js b/config/namesystem.js new file mode 100644 index 0000000..d4fa927 --- /dev/null +++ b/config/namesystem.js @@ -0,0 +1,6 @@ +module.exports = { + default: { + available_providers: ["ens"], + provider: "ens" + } +} diff --git a/config/storage.js b/config/storage.js new file mode 100644 index 0000000..2b72dbb --- /dev/null +++ b/config/storage.js @@ -0,0 +1,27 @@ +module.exports = { + default: { + enabled: true, + ipfs_bin: "ipfs", + provider: "ipfs", + available_providers: ["ipfs"], + upload: { + provider: "ipfs", + host: "localhost", + port: 5001, + getUrl: "http://localhost:8080/ipfs/" + }, + dappConnection: [ + {provider: "ipfs", host: "localhost", port: 5001, getUrl: "http://localhost:8080/ipfs/"}, + {provider: "swarm", host: "localhost", port: 5001, getUrl: "http://localhost:8080/ipfs/"} + ] + }, + development: { + enabled: true, + provider: "ipfs", + upload: { + host: "localhost", + port: 5001, + getUrl: "http://localhost:8080/ipfs/" + } + } +} diff --git a/config/testnet/password b/config/testnet/password new file mode 100644 index 0000000..414f849 --- /dev/null +++ b/config/testnet/password @@ -0,0 +1 @@ +test_password diff --git a/config/webserver.js b/config/webserver.js new file mode 100644 index 0000000..06771b9 --- /dev/null +++ b/config/webserver.js @@ -0,0 +1,6 @@ +module.exports = { + enabled: true, + host: "localhost", + port: 8000, + enableCatchAll: true +} diff --git a/contracts/DTwitter.sol b/contracts/DTwitter.sol new file mode 100644 index 0000000..12d8bfc --- /dev/null +++ b/contracts/DTwitter.sol @@ -0,0 +1,139 @@ +pragma solidity ^0.4.24; + +contract DTwitter { + /** + * User + * + * Struct holding the profile deatils of the user. + */ + struct User { + uint creationDate; // date user was created + string username; // username of the user + string description; // user profile description + address owner; // address of the account who created the user + string picture; // IFPS hash of the user's profile picture + string[] tweets; // array that holds the user's tweets + } + + /** + * users + * + * Maps the keccak256 hash of a username to the deatils of the user + * + * {bytes32} [KEY] the keccak256 hash of the username + * {User} the User struct containing the deatils of the user + */ + mapping (bytes32 => User) public users; + + + /** + * owners + * + * Maps the address of the owner account to the username hash of the + * owned user. This is needed so we can retrieve an account from the + * current address + * + * {address} [KEY] the address of the owner who owns the user + * {bytes32} the keccak256 hash of the username + */ + mapping (address => bytes32) public owners; + + /** + * NewTweet + * + * Event to be emitted once a tweet is stored in the contract + * {bytes32} _from - keccak256-hashed username of user who posted the tweet. + * This field is indexed so it can be filtered. + * {string} tweet - the tweet contents + */ + event NewTweet( + bytes32 indexed _from, + string tweet, + uint time + ); + + /** + * createAccount + * + * Creates a user account, storing the user (and user details) in the contract. + * Additionally, a mapping is created between the owner who created the user + * (msg.sender) and the keccak256-hash of the username + * {string} username - the username of the user + * {string} description - the user profile description + */ + function createAccount(string username, string description) public { + // ensure a null or empty string wasn't passed in + require(bytes(username).length > 0); + + // generate the username hash using keccak + bytes32 usernameHash = keccak256(abi.encodePacked(username)); + + // reject if username already registered + require(users[usernameHash].creationDate == 0); + + // reject if sending adddress already created a user + require(owners[msg.sender] == 0); + + // add a user to the users mapping and populate details + // (creationDate, owner, username, description) + + // add entry to our owners mapping so we can retrieve + // user by their address + + } + + /** + * editAccount + * + * Edits the deteails of a user's profile. + * {bytes32} usernameHash - the keccak256-hashed username of the user to edit + * {string} description (optional) - the updated user profile description + * {string} pictureHash (optional) - the IFPS hash of the user's updated profile picture + */ + function editAccount(bytes32 usernameHash, string description, string pictureHash) public { + // ensure the user exists and that the creator of the user is the + // sender of the transaction + require(users[usernameHash].owner == msg.sender); + + // update the description (could be empty) + + // only update the user's picture if the hash passed in is + // not empty or null (essentially disallows deletions) + } + + /** + * userExists + * + * Validates whether or not a user has an account in the user mapping + * {bytes32} usernameHash - the keccak256-hashed username of the user to validate + * {bool} - returns true if the hashed username exists in the user mapping, false otherwise + */ + function userExists(bytes32 usernameHash) public view returns (bool) { + // must check a property... bc solidity! + + } + + /** + * tweet + * + * Adds a tweet to the user's tweets and emits an event notifying listeners + * that a tweet happened. Assumes the user sending the transaction is the tweeter. + * {string} content - the tweet content + */ + function tweet(string content) public { + // ensure the sender has an account + require(owners[msg.sender].length > 0); + + // get the username hash of the sender's account + bytes32 usernameHash = owners[msg.sender]; + + // get our user + + // get our new tweet index + + // update the user's tweets at the tweet index + + // emit the tweet event and notify the listeners + } + +} diff --git a/embark.json b/embark.json new file mode 100644 index 0000000..4561fa7 --- /dev/null +++ b/embark.json @@ -0,0 +1,19 @@ +{ + "contracts": ["contracts/**"], + "app": { + "css/app.css": ["app/css/**"], + "fonts": ["app/fonts/**"], + "images/": ["app/images/**"], + "index.html": "app/index.html", + "js/app.js": ["app/js/dapp.js"] + }, + "buildDir": "dist/", + "config": "config/", + "versions": { + "web3": "1.0.0-beta", + "solc": "0.4.25", + "ipfs-api": "17.2.4" + }, + "plugins": { + } +} diff --git a/instructions/0 Overview.md b/instructions/0 Overview.md new file mode 100644 index 0000000..d85eb25 --- /dev/null +++ b/instructions/0 Overview.md @@ -0,0 +1,16 @@ +## Creating a Decentralized Twitter dApp with Embark +### Intro +In this [workshop](https://github.com/status-im/embark-dtwitter-workshop/tree/start/instructions), we'll explore how can we use Embark to simplify the development of a decentralised Twitter dApp (or DTwitter), and we'll be showing off some of the killer features of Embark v3.2. We will start off using an Embark Docker image to quickly bootstrap our Embark environment, then we'll download the DTwitter dApp template and off we go! Next, we'll walk through developing our DTwitter dApp using test-driven development. + +The final code for this dApp can be found in the [Embark DTwitter Workshop repository](https://github.com/status-im/embark-dtwitter-workshop), however we will be kicking things off using the [`start` branch](https://github.com/status-im/embark-dtwitter-workshop/tree/start) as a starting point for our workshop. This branch contains some "missing" code that we will be adding together in this workshop as we follow the steps outlined in the [instructions](https://github.com/status-im/embark-dtwitter-workshop/tree/start/instructions). + +This dApp uses [React](https://reactjs.org/), but getting in to React details is out of scope for this workshop, so don't worry, we will only be focussing on the pieces that Embark helps us build the dApp. In reality, any JS framework can be used with Embark. + +## What is Embark? +Embark is a fast, simple and powerful framework to help you develop and deploy fully decentralized applications. Embark allows developers to leverage all decentralised technologies for building dApps, facilitated by code-generating contract objects and an `EmbarkJS` javascript API for use in your dApp. Embark is fully configurable, and can leverage as many or as few decentralized technologies as required. Embark can: +* Automatically run a blockchain node. +* Automatically run an IPFS or Swarm node and make these available via the `EmbarkJS API`. Embark can also upload your entire dApp to IPFS or Swarm. +* Compile and deploy Ethereum smart contracts (solidity, vyper, or bamboo) as you write them. Embark will also code generate your contracts, and will make them available via a JS object. +* Webpack and deploy your dApp assets as you write them. +* Integrate with `ENS`, available via the `EmbarkJS` API (coming in 3.2). +* Write and run contract unit tests \ No newline at end of file diff --git a/instructions/1 Embark Docker install.md b/instructions/1 Embark Docker install.md new file mode 100644 index 0000000..174d1b4 --- /dev/null +++ b/instructions/1 Embark Docker install.md @@ -0,0 +1,16 @@ +# Embark Docker install +We will be installing an [Embark Docker image](https://github.com/embark-framework/embark-docker) that contains all components needed to run Embark and gets us up and running quickly. Alternatively, we could [install Embark](https://embark.status.im/docs/installation.html) globally our machine, or locally in our project. +## Check your environment +1. Prior to installing the Embark Docker image, please ensure [Docker is installed](https://docs.docker.com/install/) on your machine. +1. Ensure Docker is running on your machine. +2. Start a bash shell (v4+). Please see [bash upgrade instructions](https://github.com/embark-framework/embark-docker/blob/master/macOS-bash4-upgragde.md) for more information. +3. Ensure `docker` is in your `PATH`, alternatively we can alias `docker`: +```alias docker="/usr/local/bin/docker"``` +## Installing Embark Docker +Now that Docker is set up correctly, let's install the Embark Docker image and start a Docker container. +1. To get the Embark Docker image (with Embark v3.2.3), simply run: +``` +EMBARK_DOCKER_TAG=3.2.3 +source <(curl -L https://bit.ly/run_embark) +``` +2. Now, we can spin up a container using `run_embark ` (but don't do this just yet). diff --git a/instructions/2 Template download.md b/instructions/2 Template download.md new file mode 100644 index 0000000..0373335 --- /dev/null +++ b/instructions/2 Template download.md @@ -0,0 +1,26 @@ +# DTwitter template download +Now that we have Embark Docker setup, we can leverage Embark to download and install a dApp template for us. We can use any of the [Embark templates](https://embark.status.im/templates/), but in our case we will use the `start` branch from our repo and use it as the skeleton of our dApp. This template is a website built using React (don't worry if you don't know React, we are not focussing on this part). + +## Let's go +First, let's make sure our `pwd` is in the parent folder of where we want our dApp to be. For example, if we want our dApp to live in our home directory (`~`), make sure we're in our home directory: +``` +cd ~ +``` +Now, let's download the template in to a `~/dtwitter` folder: +``` +run_embark new dtwitter --template https://github.com/status-im/embark-dtwitter-workshop#start +cd dtwitter +``` +Embark will create new dApp called `dtwitter` and install all dependencies for us! +Let’s take a moment to open the template in our favorite IDE and take a tour of the file structure of a standard Embark dApp: +* `/app` - contains all our assets for the website. These will get webpacked according to our settings in `/embark.json`. +* `/config` - contains all our configuration + * Blockchain - configures options for running geth + * Communication - configures whisper options + * Contracts - configures options for deploying contracts from Embark, as well as the connection to make to geth from the dApp + * Namesystem - configures ENS support (coming in 3.2) + * Storage - configures decentralised storage for IPFS and Swarm. Includes a section for uploading the dApp as well as a dApp connection that can be used in the dApp. + * Webserver - configuration options for the webserver that serves the dApp during development. +* `/contracts` - contains our contacts +* `/test` - contains our mocha tests for testing our contracts +* `embark.json` - configures dapp asset file locations, webpack options, and library versions to use \ No newline at end of file diff --git a/instructions/3 First run.md b/instructions/3 First run.md new file mode 100644 index 0000000..53edeba --- /dev/null +++ b/instructions/3 First run.md @@ -0,0 +1,24 @@ +## First run +Now let’s run Embark on our dApp to see what it can do for us, and take a quick tour of skeleton dApp. +``` +run_embark run +``` +You should see the Embark console and it's components. +* *Contracts* - the top left shows which contracts are deployed and their address. * Modules loaded and running - the top right shows the status of the loaded modules running (or not running) in Embark. +* *Log* - the middle shows log output. +* *Console* - on the bottom row there is a console that will let us interact with `web3` and `ipfs` (try it out by typing `help` to see available commands). + +### Embark output +You’ll notice from the logs and from the modules that Embark has started Go-ethereum and IPFS processes, compiled and deployed our contract, and webpacked our website for us. +> The contract warnings in orange will disappear once we "complete" our contract. + +### Take a tour of the barebones DTwitter site +The website has several features that *are not yet hooked up to our contract*, but let’s take a look around at the website anyway. Launch `http://localhost:8000` in your browser. + +Functionality we'll see: +* Create an account +* Edit account +* Tweet +* Search and view user's tweets + +Later, we'll hook this functionality up to a contract. \ No newline at end of file diff --git a/instructions/4 Coding: contract.md b/instructions/4 Coding: contract.md new file mode 100644 index 0000000..1bcd7cf --- /dev/null +++ b/instructions/4 Coding: contract.md @@ -0,0 +1,54 @@ +## Coding: DTwitter contract +We can start updating our `/contracts/DTwitter.sol` contract code and watch as Embark watches and recompiles everything for us as we go. +### Functions +Let’s begin by writing some of our contract functions. +###### Create account +The `createAccount` function will be used for creating users in the contract. We need to add the new user to the user/address mapping so we can keep track of the address that created the user. +1. Add a user to the `users` mapping and populate details (`creationDate`, `owner`, `username`, `description`) + ``` + users[usernameHash].creationDate = now; // 'now' is not recommended for accuracy + users[usernameHash].owner = msg.sender; + users[usernameHash].username = username; + users[usernameHash].description = description; + ``` + > Note: we are using the block timestamp `now` to specify a creation date for the user (and also for the tweet time as we'll see later on). This application of `now` is fine, as ther are no reliances on this block timestamp for randomness. Please see the [Solidity documentation](https://solidity.readthedocs.io/en/v0.4.25/units-and-global-variables.html) for more information. +2. Add an entry to our `owners` mapping so we can retrieve a user by their address. This will be useful for when we need to find out if our current address is associated with a user. + ``` + owners[msg.sender] = usernameHash; + ``` +###### Edit account +We will be updating the user's profile in the `editAccount` function, so we need to be able to update the user's description and picture in the contract. +1. Update the description (could be empty): + ``` + users[usernameHash].description = description; + ``` +2. Only update the user's picture if the hash passed in is not empty or null (essentially disallows deletions): + ``` + if (bytes(pictureHash).length > 0) { + users[usernameHash].picture = pictureHash; + } + ``` +###### User exists +The `userExists` function is used for checking if a user exists in the `users` mapping stored in the contract. +1. In Solidity, we can see if an item in a `struct` exists by checking that a property of an item is not set to it's default value. For example, we can check if a specific user exists in the `users` mapping by see if the user's `creationDate` is not `0` (the default value in Solidity for the block timestamp which is a `uint`). + ``` + return users[usernameHash].creationDate != 0; + ``` +###### Tweet +For the `tweet` function to work, we need to add the tweet to the user in the `users` mapping. First, we need to get the user associated with the address who initiated the contract call (the `msg.sender`). Then, we can store the tweet in the `users` mapping against that user. Finally, we can emit an event that a tweet occurred. Later, we will subscribe to this event to get tweets as they are added to the contract in real time. +1. Get our user from the `usernameHash` + ``` + User storage user = users[usernameHash]; + ``` +2. Get our new tweet index + ``` + uint tweetIndex = user.tweets.length++; + ``` +3. Update the user's tweets at the tweet index + ``` + user.tweets[tweetIndex] = content; + ``` +4. Emit the tweet event and notify the listeners + ``` + emit NewTweet(usernameHash, content, now); + ``` \ No newline at end of file diff --git a/instructions/5 Coding: tests.md b/instructions/5 Coding: tests.md new file mode 100644 index 0000000..e4f588c --- /dev/null +++ b/instructions/5 Coding: tests.md @@ -0,0 +1,72 @@ +## Contract tests +Now that we have our contract written, we can use the code generation provided by [`EmbarkJS`](https://github.com/embark-framework/EmbarkJS/) to write our contract unit test cases for test-driven development. Embark will code generate a `DTwitter` javascript object for us from our contract and make it accessible in our dApp by way of the `DTwitter` object. +> Additionally, `EmbarkJS` allows us to interact with decentralised storage (IPFS and Swarm) and decentralised communication (Whisper), which are all configurable in config files. +###### Create account transaction should be successful +Our [first test](https://github.com/status-im/embark-dtwitter-workshop/blob/cryptolife/start/test/dtwitter_spec.js#L33-L40) is to ensure that our `createAccount` transaction is sent successfully. Let's fill in the code that calls our `createAccount` contract function: +``` +// do the create account tx +const createAccountTx = await DTwitter.methods.createAccount(username, description).send(); +``` +> Notice the `.send()` at the end. This is required when we are sending a transaction that will modify the state of contract. In this case, we are modifying the state by adding a user to the `users` mapping. +###### Should create user +After our successful `createAccount` transaction, this should have created a user. In [our test](https://github.com/status-im/embark-dtwitter-workshop/blob/cryptolife/start/test/dtwitter_spec.js#L42-L49), let's fill in the code to retrieve a user from the contract. +``` +// Get user details from contract +const user = await DTwitter.methods.users(web3.utils.keccak256(username)).call(); +``` +> This time we used a `.call()`. Why? Because in this case we are not modifying the state of the contract, and simplying querying data from it. Changing state costs gas, so we use `.send()`, while querying state is free, so we use `.call()`. +###### Should create owner for default account +The `createAccount` function should have also created an entry in the `owners` mapping with our `defaultAccount`, which we check in the [next test](https://github.com/status-im/embark-dtwitter-workshop/blob/cryptolife/start/test/dtwitter_spec.js#L51-L57). This is how we retrieve an owner from the `owners` mapping: +``` +// read from the owners mapping the value associated with the defaultAccount +const usernameHash = await DTwitter.methods.owners(web3.eth.defaultAccount).call(); +``` +###### User exists should be true +We can use our `userExists` function in the contract to check if a `usernameHash` exists. This will later be used for username validation in the dApp. Our [test for `userExists`](https://github.com/status-im/embark-dtwitter-workshop/blob/cryptolife/start/test/dtwitter_spec.js#L59-L65) can be completed using: +``` +// Check the usernamehash exists +const exists = await DTwitter.methods.userExists(usernameHash).call(); +``` +###### Edit Account should update user details +After a call to `editAccount`, our user's details should be updated. [This unit test](https://github.com/status-im/embark-dtwitter-workshop/blob/cryptolife/start/test/dtwitter_spec.js#L68-L79) can be completed by adding the following: +1. Call edit account + ``` + await DTwitter.methods.editAccount(usernameHash, updatedDescription, updatedImageHash).send(); + ``` +2. Then fetch the user details with the usernamehash + ``` + const updatedUserDetails = await DTwitter.methods.users(usernameHash).call(); + ``` +###### Tweet event should fire when there is a tweet +We need to ensure that our contract events subscription works correctly when someone creates a new tweet via the `tweet` function. In our [unit test](https://github.com/status-im/embark-dtwitter-workshop/blob/cryptolife/start/test/dtwitter_spec.js#L81-L94), we can add the following: +1. Subscribe to the `NewTweet` event + ``` + DTwitter.events.NewTweet({ + filter: { _from: usernameHash }, + fromBlock: 0 + }) + .on('data', (event) => { + assert.equal(event.returnValues.tweet, tweetContent); + }); + ``` +2. Do the tweet + ``` + await DTwitter.methods.tweet(tweetContent).send(); + ``` +### Run tests +Let's run the tests to ensure they are all passing. Type `quit` in the Embark consle, then run: +``` +run_embark test +``` +###### Test results +Your test results should appear similar to the following: +``` +DTwitter contract + ✓ transaction to create a dtwitter user 'testhandle' with description 'test description' should be successful (114ms) + ✓ should have created a user 'testhandle' (60ms) + ✓ should have created an owner for our defaultAccount + ✓ should know 'testhandle' exists (49ms) + ✓ should be able to edit 'testhandle' user details (186ms) + ✓ should be able to add a tweet as 'testhandle' and receive it via contract event (54ms) +``` +> Note: there is a known error with `ganache` that sometimes causes last test does to fail with the error `ERROR: The returned value is not a convertible string`. We are currently investigating this issue. diff --git a/instructions/6 Coding: dApp.md b/instructions/6 Coding: dApp.md new file mode 100644 index 0000000..c908086 --- /dev/null +++ b/instructions/6 Coding: dApp.md @@ -0,0 +1,68 @@ +## Coding: dApp +Let’s use the code-generated `DTwitter` API and the `EmbarkJS` API to interact with our contact in our dApp. As we update the .js files, notice how Embark watches the files and compiles as we save. +###### `CreateUser.js` +1. We need to update the `_handleChange` function that will check if a user exists as the user types in a username. +``` + // call the userExists method in our contract asynchronously + DTwitter.methods.userExists(web3.utils.keccak256(value)).call() +``` +2. We need to update the `_handleClick` event that is fired when the 'Create user' button is clicked. This should handle the creation of the user in the contract. We need to get a gas estimate and call our contract's `createAccount` function + ``` + // set up our contract method with the input values from the form + const createAccount = DTwitter.methods.createAccount(username, description); + + // get a gas estimate before sending the transaction + const gasEstimate = await createAccount.estimateGas({ from: web3.eth.defaultAccount }); + + // send the transaction to create an account with our gas estimate + // (plus a little bit more in case the contract state has changed). + const result = await createAccount.send({ from: web3.eth.defaultAccount, gas: gasEstimate + 1000 }); + ``` +###### `UpdateUser.js` +The `UpdateUser` component will call our `editAccount` contract function to update the details of the user. This happens when the 'Update profile' button is clicked and the `_handleClick` event is fired. In the `_handleClick` event: +``` +// upload the file to ipfs and get the resulting hash +await EmbarkJS.Storage.uploadFile([this.inputPicture]); + +// get a handle for the editAccount method +const editAccount = DTwitter.methods.editAccount(web3.utils.keccak256(user.username), description, hash); + +// get a gas estimate for the transaction with the input username and description +const gasEstimate = await editAccount.estimateGas({ from: web3.eth.defaultAccount }); + +// send the transaction with our gas estimate (plus a little bit more in case the contract) state has changed since we got our estimate +const result = await editAccount.send({ from: web3.eth.defaultAccount, gas: gasEstimate + 1000 }); +``` +###### `DoTweet.js` +The DoTweet components sends a tweet to the contract. We will need to update the `_handleClick` even to estimate gas and call the contract's `tweet` function. +``` +// estimate gas before sending tweet transaction +const gasEstimate = await tweet.estimateGas({ from: web3.eth.defaultAccount }); + +// send the tweet transaction plus a little extra gas in case the contract state +// has changed since we've done our gas estimate +await tweet.send({ from: web3.eth.defaultAccount, gas: gasEstimate + 1000 }); +``` +###### `UserTweets.js` +The `UserTweets` component is used to 1.) show the the profile of the user who's tweets we'd like to view, and 2.) show the tweets of the user. +1. In `_getUserDetails`, we need to get the details of the user + ``` + //get user details and update state + let user = await DTwitter.methods.users(web3.utils.keccak256(username)).call(); + + // update picture url for ipfs + user.picture = user.picture.length > 0 ? EmbarkJS.Storage.getUrl(user.picture) : imgAvatar; + ``` +2. In the `_subscribeToNewTweetEvent`, we will subscribe to the `NewTweet` contract event. Replace `new EventEmitter()` with +``` +DTwitter.events.NewTweet({ + filter: {_from: web3.utils.keccak256(username)}, + fromBlock: 1 + }, (err, event) => { + if (err){ + this.props.onError(err, 'UserTweets._subscribeToNewTweetEvent'); + } +}) +``` +#### Run through the site and fix any errors +Let's try out the functionality on the site and fix any errors we may have introduced. diff --git a/instructions/7 Watch the magic.md b/instructions/7 Watch the magic.md new file mode 100644 index 0000000..2a2dd09 --- /dev/null +++ b/instructions/7 Watch the magic.md @@ -0,0 +1,11 @@ +## Let's see the DTwitter magic! +Open two browser windows, and point them both to [http://localhost:8000](http://localhost:8000). In one window, select the account used to create an account already. If you haven't already created a user, select an account and create a new user. Do the same in the second browser window, but select a different account. + +You should have two different user accounts. As an example, let's say we called the first user `DTwitterUser1`, and the second `DTwitterUser2`. + +1. In the first window (signed in as `DTwitterUser1`), type `DTwitterUser2` in to the search, and press `enter`. +2. In the second window (signed in as `DTwitterUser2`), type `DTwitterUser1` in to the search, and press `enter`. +3. Back in the first window, click the `Tweet` button and write a tweet, ie "Embark is the best dApp framework ever made!". +4. You should see the tweet automatically appear in the second window! +5. In the second window, add a tweet and watch it appear in the first window! +6. MAGIC!! ![Embark by Status is magic](https://media.giphy.com/media/12NUbkX6p4xOO4/giphy.gif "Embark by Status is magic!") \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..5d126d7 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,671 @@ +{ + "name": "embark-dtwitter", + "version": "0.0.1", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@babel/code-frame": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-rc.1.tgz", + "integrity": "sha512-qhQo3GqwqMUv03SxxjcEkWtlkEDvFYrBKbJUn4Dtd9amC2cLkJ3me4iYUVSBbVXWbfbVRalEeVBHzX4aQYKnBg==", + "dev": true, + "requires": { + "@babel/highlight": "7.0.0-rc.1" + } + }, + "@babel/core": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.0.0-rc.1.tgz", + "integrity": "sha512-CvuSsq+LFs9N4SJG8MnNPI0hnl913HK1OqG3NEfejOKo+JqtVuxpmAFyXIDogX2x668xqFKAW6EQiCIcUHklMg==", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-rc.1", + "@babel/generator": "7.0.0-rc.1", + "@babel/helpers": "7.0.0-rc.1", + "@babel/parser": "7.0.0-rc.1", + "@babel/template": "7.0.0-rc.1", + "@babel/traverse": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1", + "convert-source-map": "^1.1.0", + "debug": "^3.1.0", + "json5": "^0.5.0", + "lodash": "^4.17.10", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/generator": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0-rc.1.tgz", + "integrity": "sha512-Ak4n780/coo+L9GZUS7V/IGJilP11t4UoWl0J9cG3jso4KkDGQcqdx4Y6gJAiXng+sDfvzUmvWfM1hZwH82J0A==", + "dev": true, + "requires": { + "@babel/types": "7.0.0-rc.1", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + } + }, + "@babel/helper-function-name": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0-rc.1.tgz", + "integrity": "sha512-fDbWxdYYbFNzcI5jn3qsPxHI1UCXwvFk0kGytGce/FEBYEPXBqycKknC8Oqiub8DzGtmTcvnqcm/cl/qxzeuiQ==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "7.0.0-rc.1", + "@babel/template": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-rc.1.tgz", + "integrity": "sha512-5+ydaIRxT42FSDqvoXIDksCGlW1903xC73HQnQCFF1YuV7VcIf+9M4+tRZulLlYlshw7ILA+4SiYsKoDlC0Irg==", + "dev": true, + "requires": { + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0-rc.1.tgz", + "integrity": "sha512-o263plHxPo1TxDDUx7gHuQ96Y8QyLs2n4968KZvo2l/9rkwn2L9kcIsRVjlhpPPKTz4tWe/7ZV50zkeDorrK9g==", + "dev": true, + "requires": { + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0-rc.1.tgz", + "integrity": "sha512-XOKPnL/AJz8ZyY553FsMAVt9g/mE1+RQfg5/m3X0K4+RqYviPGZlxwe5mGSd8s2kPSB6D6nZRUfvZFtmFIXEvA==", + "dev": true, + "requires": { + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0-rc.1.tgz", + "integrity": "sha512-8ZNzqHXDhT/JjnBvrLKu8AL7NhONVIsnrfyQNm3PJNmufIER5kcIa3OxPMGWgNqox2R8WeQ6YYzYTLNXqq4kgQ==", + "dev": true + }, + "@babel/helper-replace-supers": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.0.0-rc.1.tgz", + "integrity": "sha512-mcv+NKCazZfdEw7yBe/xROekR3qlFcy18d//mJTKnZb7xx2qFPjZAafkeIlpvzNHwd/WMTHShC4+3WjOL8FD5g==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "7.0.0-rc.1", + "@babel/helper-optimise-call-expression": "7.0.0-rc.1", + "@babel/traverse": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-rc.1.tgz", + "integrity": "sha512-hz6QmlnaBFYt4ra8DfRLCMgrI7yfwQ13kJtufSO5dVCasxmAng2LeeQiT6H4iN5TpFONcayp5f/2mXqHH/zn/g==", + "dev": true, + "requires": { + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helpers": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.0.0-rc.1.tgz", + "integrity": "sha512-4+AkDbZ0Usr7mNH4wGX8fVx4WJzHdrcjRkJy52EIWyBAQEoKqb5HXca1VjejWtnVwaGwW7zk/h6oQ9FQPywQfA==", + "dev": true, + "requires": { + "@babel/template": "7.0.0-rc.1", + "@babel/traverse": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/highlight": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-rc.1.tgz", + "integrity": "sha512-5PgPDV6F5s69XNznTcP0za3qH7qgBkr9DVQTXfZtpF+3iEyuIZB1Mjxu52F5CFxgzQUQJoBYHVxtH4Itdb5MgA==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^3.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + } + } + }, + "@babel/parser": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.0.0-rc.1.tgz", + "integrity": "sha512-rC+bIz2eZnJlacERmJO25UAbXVZttcSxh0Px0gRGinOTzug5tL7+L9urfIdSWlv1ZzP03+f2xkOFLOxZqSsVmQ==", + "dev": true + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.0.0-rc.1.tgz", + "integrity": "sha512-Y3yrKbLk8xSz8QHTDbrixJBVgiysAukRml/HqrXLsULMkHth3I3K/QBXEVxiJyawBUaDZvENQJ+H8CTv8y0aSw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "7.0.0-rc.1", + "@babel/helper-member-expression-to-functions": "7.0.0-rc.1", + "@babel/helper-optimise-call-expression": "7.0.0-rc.1", + "@babel/helper-plugin-utils": "7.0.0-rc.1", + "@babel/helper-replace-supers": "7.0.0-rc.1", + "@babel/plugin-syntax-class-properties": "7.0.0-rc.1" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0-rc.1.tgz", + "integrity": "sha512-mWUD9BevSNhbsgwLgHZmd89keY4lgCoSbOeDo3ZiyyMc5y4fjSm+2LTHi/GeRyO6AnBbqTbPmFlznPdq15k7/g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.0.0-rc.1" + } + }, + "@babel/runtime-corejs2": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs2/-/runtime-corejs2-7.0.0.tgz", + "integrity": "sha512-Yww0jXgolNtkhcK+Txo5JN+DjBpNmmAtD7G99HOebhEjBzjnACG09Tip9C8lSOF6PrhA56OeJWeOZduNJaKxBA==", + "requires": { + "core-js": "^2.5.7", + "regenerator-runtime": "^0.12.0" + } + }, + "@babel/template": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-rc.1.tgz", + "integrity": "sha512-gPLng2iedNlkaGD0UdwaUByQXK8k4bnaoq2RH5JgR2mqHvh2RyjkDdaMbZFlSss1Iu8+PrXwbIRworTl8iRqbA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-rc.1", + "@babel/parser": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1", + "lodash": "^4.17.10" + } + }, + "@babel/traverse": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-rc.1.tgz", + "integrity": "sha512-lNOpJ5xzakg+fCobQQHdeDRYeN54b+bAZpeTYMeeYPAvN+hTldg9/FSNKYEMRs5EWoQ0Yt74gwq98InSORdSDQ==", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-rc.1", + "@babel/generator": "7.0.0-rc.1", + "@babel/helper-function-name": "7.0.0-rc.1", + "@babel/helper-split-export-declaration": "7.0.0-rc.1", + "@babel/parser": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1", + "debug": "^3.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + } + }, + "@babel/types": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-rc.1.tgz", + "integrity": "sha512-MBwO1JQKin9BwKTGydrYe4VDJbStCUy35IhJzeZt3FByOdx/q3CYaqMRrH70qVD2RA7+Xk8e3RN0mzKZkYBYuQ==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + } + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "requires": { + "lodash": "^4.17.10" + } + }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "classnames": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz", + "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==" + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "core-js": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==" + }, + "date-fns": { + "version": "2.0.0-alpha.18", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.0.0-alpha.18.tgz", + "integrity": "sha512-Y/y5rw7tyZgcjKa3EbFy2WHyU3PyhMYOwwD4Eo9ydfIGUuoBr5jMfzY6ZBmI3O3seukaCOeqFgZNqX0c5RvmLw==" + }, + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "dom-helpers": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.3.1.tgz", + "integrity": "sha512-2Sm+JaYn74OiTM2wHvxJOo3roiq/h25Yi69Fqk269cNUwIXsCvATB6CRSFC9Am/20G2b28hGv/+7NiWydIrPvg==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "globals": { + "version": "11.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", + "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "history": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/history/-/history-4.7.2.tgz", + "integrity": "sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA==", + "requires": { + "invariant": "^2.2.1", + "loose-envify": "^1.2.0", + "resolve-pathname": "^2.2.0", + "value-equal": "^0.4.0", + "warning": "^3.0.0" + } + }, + "hoist-non-react-statics": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz", + "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "requires": { + "loose-envify": "^1.0.0" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "jsesc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", + "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "dev": true + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "keycode": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/keycode/-/keycode-2.2.0.tgz", + "integrity": "sha1-PQr1bce4uOXLqNCpfxByBO7CKwQ=" + }, + "loaders.css": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/loaders.css/-/loaders.css-0.1.2.tgz", + "integrity": "sha1-Op+0NybHMzSjgUKvnQYpAZtlh0M=" + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "requires": { + "isarray": "0.0.1" + } + }, + "prop-types": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.2.tgz", + "integrity": "sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ==", + "requires": { + "loose-envify": "^1.3.1", + "object-assign": "^4.1.1" + } + }, + "prop-types-extra": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/prop-types-extra/-/prop-types-extra-1.1.0.tgz", + "integrity": "sha512-QFyuDxvMipmIVKD2TwxLVPzMnO4e5oOf1vr3tJIomL8E7d0lr6phTHd5nkPhFIzTD1idBLLEPeylL9g+rrTzRg==", + "requires": { + "react-is": "^16.3.2", + "warning": "^3.0.0" + } + }, + "react": { + "version": "16.5.2", + "resolved": "https://registry.npmjs.org/react/-/react-16.5.2.tgz", + "integrity": "sha512-FDCSVd3DjVTmbEAjUNX6FgfAmQ+ypJfHUsqUJOYNCBUp1h8lqmtC+0mXJ+JjsWx4KAVTkk1vKd1hLQPvEviSuw==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "schedule": "^0.5.0" + } + }, + "react-bootstrap": { + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.32.4.tgz", + "integrity": "sha512-xj+JfaPOvnvr3ow0aHC7Y3HaBKZNR1mm361hVxVzVX3fcdJNIrfiodbQ0m9nLBpNxiKG6FTU2lq/SbTDYT2vew==", + "requires": { + "@babel/runtime-corejs2": "^7.0.0", + "classnames": "^2.2.5", + "dom-helpers": "^3.2.0", + "invariant": "^2.2.4", + "keycode": "^2.2.0", + "prop-types": "^15.6.1", + "prop-types-extra": "^1.0.1", + "react-overlays": "^0.8.0", + "react-prop-types": "^0.4.0", + "react-transition-group": "^2.0.0", + "uncontrollable": "^5.0.0", + "warning": "^3.0.0" + } + }, + "react-dom": { + "version": "16.5.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.5.2.tgz", + "integrity": "sha512-RC8LDw8feuZOHVgzEf7f+cxBr/DnKdqp56VU0lAs1f4UfKc4cU8wU4fTq/mgnvynLQo8OtlPC19NUFh/zjZPuA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "schedule": "^0.5.0" + } + }, + "react-is": { + "version": "16.5.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.5.2.tgz", + "integrity": "sha512-hSl7E6l25GTjNEZATqZIuWOgSnpXb3kD0DVCujmg46K5zLxsbiKaaT6VO9slkSBDPZfYs30lwfJwbOFOnoEnKQ==" + }, + "react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "react-overlays": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.8.3.tgz", + "integrity": "sha512-h6GT3jgy90PgctleP39Yu3eK1v9vaJAW73GOA/UbN9dJ7aAN4BTZD6793eI1D5U+ukMk17qiqN/wl3diK1Z5LA==", + "requires": { + "classnames": "^2.2.5", + "dom-helpers": "^3.2.1", + "prop-types": "^15.5.10", + "prop-types-extra": "^1.0.1", + "react-transition-group": "^2.2.0", + "warning": "^3.0.0" + } + }, + "react-prop-types": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/react-prop-types/-/react-prop-types-0.4.0.tgz", + "integrity": "sha1-+ZsL+0AGkpya8gUefBQUpcdbk9A=", + "requires": { + "warning": "^3.0.0" + } + }, + "react-router": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-4.3.1.tgz", + "integrity": "sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg==", + "requires": { + "history": "^4.7.2", + "hoist-non-react-statics": "^2.5.0", + "invariant": "^2.2.4", + "loose-envify": "^1.3.1", + "path-to-regexp": "^1.7.0", + "prop-types": "^15.6.1", + "warning": "^4.0.1" + }, + "dependencies": { + "warning": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.2.tgz", + "integrity": "sha512-wbTp09q/9C+jJn4KKJfJfoS6VleK/Dti0yqWSm6KMvJ4MRCXFQNapHuJXutJIrWV0Cf4AhTdeIe4qdKHR1+Hug==", + "requires": { + "loose-envify": "^1.0.0" + } + } + } + }, + "react-router-dom": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.3.1.tgz", + "integrity": "sha512-c/MlywfxDdCp7EnB7YfPMOfMD3tOtIjrQlj/CKfNMBxdmpJP8xcz5P/UAFn3JbnQCNUxsHyVVqllF9LhgVyFCA==", + "requires": { + "history": "^4.7.2", + "invariant": "^2.2.4", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.1", + "react-router": "^4.3.1", + "warning": "^4.0.1" + }, + "dependencies": { + "warning": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.2.tgz", + "integrity": "sha512-wbTp09q/9C+jJn4KKJfJfoS6VleK/Dti0yqWSm6KMvJ4MRCXFQNapHuJXutJIrWV0Cf4AhTdeIe4qdKHR1+Hug==", + "requires": { + "loose-envify": "^1.0.0" + } + } + } + }, + "react-spinkit": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/react-spinkit/-/react-spinkit-3.0.0.tgz", + "integrity": "sha1-Mf2vThgXd2bFfRsfMzApD4SSqFo=", + "requires": { + "classnames": "^2.2.3", + "loaders.css": "^0.1.2", + "object-assign": "^4.1.0", + "prop-types": "^15.5.8" + } + }, + "react-transition-group": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.5.0.tgz", + "integrity": "sha512-qYB3JBF+9Y4sE4/Mg/9O6WFpdoYjeeYqx0AFb64PTazVy8RPMiE3A47CG9QmM4WJ/mzDiZYslV+Uly6O1Erlgw==", + "requires": { + "dom-helpers": "^3.3.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2", + "react-lifecycles-compat": "^3.0.4" + } + }, + "regenerator-runtime": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz", + "integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==" + }, + "resolve": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "dev": true, + "requires": { + "path-parse": "^1.0.5" + } + }, + "resolve-pathname": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz", + "integrity": "sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg==" + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "schedule": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/schedule/-/schedule-0.5.0.tgz", + "integrity": "sha512-HUcJicG5Ou8xfR//c2rPT0lPIRR09vVvN81T9fqfVgBmhERUbDEQoYKjpBxbueJnCPpSu2ujXzOnRQt6x9o/jw==", + "requires": { + "object-assign": "^4.1.1" + } + }, + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "uncontrollable": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-5.1.0.tgz", + "integrity": "sha512-5FXYaFANKaafg4IVZXUNtGyzsnYEvqlr9wQ3WpZxFpEUxl29A3H6Q4G1Dnnorvq9TGOGATBApWR4YpLAh+F5hw==", + "requires": { + "invariant": "^2.2.4" + } + }, + "value-equal": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz", + "integrity": "sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw==" + }, + "warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", + "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "requires": { + "loose-envify": "^1.0.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..a174272 --- /dev/null +++ b/package.json @@ -0,0 +1,24 @@ +{ + "name": "embark-dtwitter", + "version": "0.0.1", + "description": "", + "scripts": { + "test": "embark test" + }, + "author": "", + "license": "ISC", + "homepage": "", + "dependencies": { + "async": "^2.6.1", + "date-fns": "^2.0.0-alpha.11", + "react": "^16.3.2", + "react-bootstrap": "^0.32.1", + "react-dom": "^16.3.2", + "react-router-dom": "^4.2.2", + "react-spinkit": "^3.0.0" + }, + "devDependencies": { + "@babel/core": "7.0.0-rc.1", + "@babel/plugin-proposal-class-properties": "7.0.0-rc.1" + } +} diff --git a/test/dtwitter_spec.js b/test/dtwitter_spec.js new file mode 100644 index 0000000..ec09ed3 --- /dev/null +++ b/test/dtwitter_spec.js @@ -0,0 +1,93 @@ +// our DTwitter contract object to test +const DTwitter = require('Embark/contracts/DTwitter'); + +// variables that will be updated in the tests +let accounts; + +// set up our config test parameters +config({ + contracts: { + DTwitter: { + // would pass constructor args here if needed + } + } +}, (err, theAccounts) => { + // this is the list of accounts our node / wallet controls. + accounts = theAccounts; +}); + +// other test parameters +const username = 'testhandle'; +const description = 'test description'; +const tweetContent = 'test tweet'; + +// Embark exposes a global contract method as an alias +// for Mocha.describe +contract("DTwitter contract", function () { + this.timeout(0); + + + it("transaction to create a dtwitter user 'testhandle' with description 'test description' should be successful", async function () { + + // do the create account + + // assert that the transaction was successful + assert.equal(createAccountTx.status, true); + + }); + + it("should have created a user 'testhandle'", async function () { + + // get user details from contract + + assert.equal(user.username, username); + assert.equal(user.description, description); + + }); + + it("should have created an owner for our defaultAccount", async function () { + + // read from the owners mapping the value associated with the defaultAccount + + // check the return value from owners mapping matches + assert.equal(usernameHash, web3.utils.keccak256(username)); + }); + + it("should know 'testhandle' exists", async function () { + const usernameHash = web3.utils.keccak256(username); + + // check the usernamehash exists + + assert.equal(exists, true); + }); + + + it("should be able to edit 'testhandle' user details", async function () { + const usernameHash = web3.utils.keccak256(username); + const updatedDescription = description + ' edited'; + const updatedImageHash = 'QmWvPtv2xVGgdV12cezG7iCQ4hQ52e4ptmFFnBK3gTjnec'; + + // call edit account + + // then fetch the user details with the usernamehash + + assert.equal(updatedUserDetails.description, updatedDescription); + assert.equal(updatedUserDetails.picture, updatedImageHash); + }); + + it("should be able to add a tweet as 'testhandle' and receive it via contract event", async function () { + const usernameHash = web3.utils.keccak256(username); + + // send the tweet + + // subscribe to new tweet events + DTwitter.events.NewTweet({ + filter: { _from: usernameHash }, + fromBlock: 1 // must be > 0! + }) + .on('data', (event) => { + assert.equal(event.returnValues.tweet, tweetContent); + }); + }); + +});