/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714286em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em;
}
.fa-pull-left {
  float: left;
}
.fa-pull-right {
  float: right;
}
.fa.fa-pull-left {
  margin-right: .3em;
}
.fa.fa-pull-right {
  margin-left: .3em;
}
/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-feed:before,
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before,
.fa-gratipay:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-slack:before {
  content: "\f198";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-pied-piper-pp:before {
  content: "\f1a7";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-spoon:before {
  content: "\f1b1";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-file-pdf-o:before {
  content: "\f1c1";
}
.fa-file-word-o:before {
  content: "\f1c2";
}
.fa-file-excel-o:before {
  content: "\f1c3";
}
.fa-file-powerpoint-o:before {
  content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}
.fa-file-code-o:before {
  content: "\f1c9";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}
.fa-history:before {
  content: "\f1da";
}
.fa-circle-thin:before {
  content: "\f1db";
}
.fa-header:before {
  content: "\f1dc";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-sliders:before {
  content: "\f1de";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-newspaper-o:before {
  content: "\f1ea";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bell-slash-o:before {
  content: "\f1f7";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-eyedropper:before {
  content: "\f1fb";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-area-chart:before {
  content: "\f1fe";
}
.fa-pie-chart:before {
  content: "\f200";
}
.fa-line-chart:before {
  content: "\f201";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-bus:before {
  content: "\f207";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-cc:before {
  content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}
.fa-meanpath:before {
  content: "\f20c";
}
.fa-buysellads:before {
  content: "\f20d";
}
.fa-connectdevelop:before {
  content: "\f20e";
}
.fa-dashcube:before {
  content: "\f210";
}
.fa-forumbee:before {
  content: "\f211";
}
.fa-leanpub:before {
  content: "\f212";
}
.fa-sellsy:before {
  content: "\f213";
}
.fa-shirtsinbulk:before {
  content: "\f214";
}
.fa-simplybuilt:before {
  content: "\f215";
}
.fa-skyatlas:before {
  content: "\f216";
}
.fa-cart-plus:before {
  content: "\f217";
}
.fa-cart-arrow-down:before {
  content: "\f218";
}
.fa-diamond:before {
  content: "\f219";
}
.fa-ship:before {
  content: "\f21a";
}
.fa-user-secret:before {
  content: "\f21b";
}
.fa-motorcycle:before {
  content: "\f21c";
}
.fa-street-view:before {
  content: "\f21d";
}
.fa-heartbeat:before {
  content: "\f21e";
}
.fa-venus:before {
  content: "\f221";
}
.fa-mars:before {
  content: "\f222";
}
.fa-mercury:before {
  content: "\f223";
}
.fa-intersex:before,
.fa-transgender:before {
  content: "\f224";
}
.fa-transgender-alt:before {
  content: "\f225";
}
.fa-venus-double:before {
  content: "\f226";
}
.fa-mars-double:before {
  content: "\f227";
}
.fa-venus-mars:before {
  content: "\f228";
}
.fa-mars-stroke:before {
  content: "\f229";
}
.fa-mars-stroke-v:before {
  content: "\f22a";
}
.fa-mars-stroke-h:before {
  content: "\f22b";
}
.fa-neuter:before {
  content: "\f22c";
}
.fa-genderless:before {
  content: "\f22d";
}
.fa-facebook-official:before {
  content: "\f230";
}
.fa-pinterest-p:before {
  content: "\f231";
}
.fa-whatsapp:before {
  content: "\f232";
}
.fa-server:before {
  content: "\f233";
}
.fa-user-plus:before {
  content: "\f234";
}
.fa-user-times:before {
  content: "\f235";
}
.fa-hotel:before,
.fa-bed:before {
  content: "\f236";
}
.fa-viacoin:before {
  content: "\f237";
}
.fa-train:before {
  content: "\f238";
}
.fa-subway:before {
  content: "\f239";
}
.fa-medium:before {
  content: "\f23a";
}
.fa-yc:before,
.fa-y-combinator:before {
  content: "\f23b";
}
.fa-optin-monster:before {
  content: "\f23c";
}
.fa-opencart:before {
  content: "\f23d";
}
.fa-expeditedssl:before {
  content: "\f23e";
}
.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: "\f240";
}
.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "\f241";
}
.fa-battery-2:before,
.fa-battery-half:before {
  content: "\f242";
}
.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "\f243";
}
.fa-battery-0:before,
.fa-battery-empty:before {
  content: "\f244";
}
.fa-mouse-pointer:before {
  content: "\f245";
}
.fa-i-cursor:before {
  content: "\f246";
}
.fa-object-group:before {
  content: "\f247";
}
.fa-object-ungroup:before {
  content: "\f248";
}
.fa-sticky-note:before {
  content: "\f249";
}
.fa-sticky-note-o:before {
  content: "\f24a";
}
.fa-cc-jcb:before {
  content: "\f24b";
}
.fa-cc-diners-club:before {
  content: "\f24c";
}
.fa-clone:before {
  content: "\f24d";
}
.fa-balance-scale:before {
  content: "\f24e";
}
.fa-hourglass-o:before {
  content: "\f250";
}
.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "\f251";
}
.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "\f252";
}
.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "\f253";
}
.fa-hourglass:before {
  content: "\f254";
}
.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "\f255";
}
.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "\f256";
}
.fa-hand-scissors-o:before {
  content: "\f257";
}
.fa-hand-lizard-o:before {
  content: "\f258";
}
.fa-hand-spock-o:before {
  content: "\f259";
}
.fa-hand-pointer-o:before {
  content: "\f25a";
}
.fa-hand-peace-o:before {
  content: "\f25b";
}
.fa-trademark:before {
  content: "\f25c";
}
.fa-registered:before {
  content: "\f25d";
}
.fa-creative-commons:before {
  content: "\f25e";
}
.fa-gg:before {
  content: "\f260";
}
.fa-gg-circle:before {
  content: "\f261";
}
.fa-tripadvisor:before {
  content: "\f262";
}
.fa-odnoklassniki:before {
  content: "\f263";
}
.fa-odnoklassniki-square:before {
  content: "\f264";
}
.fa-get-pocket:before {
  content: "\f265";
}
.fa-wikipedia-w:before {
  content: "\f266";
}
.fa-safari:before {
  content: "\f267";
}
.fa-chrome:before {
  content: "\f268";
}
.fa-firefox:before {
  content: "\f269";
}
.fa-opera:before {
  content: "\f26a";
}
.fa-internet-explorer:before {
  content: "\f26b";
}
.fa-tv:before,
.fa-television:before {
  content: "\f26c";
}
.fa-contao:before {
  content: "\f26d";
}
.fa-500px:before {
  content: "\f26e";
}
.fa-amazon:before {
  content: "\f270";
}
.fa-calendar-plus-o:before {
  content: "\f271";
}
.fa-calendar-minus-o:before {
  content: "\f272";
}
.fa-calendar-times-o:before {
  content: "\f273";
}
.fa-calendar-check-o:before {
  content: "\f274";
}
.fa-industry:before {
  content: "\f275";
}
.fa-map-pin:before {
  content: "\f276";
}
.fa-map-signs:before {
  content: "\f277";
}
.fa-map-o:before {
  content: "\f278";
}
.fa-map:before {
  content: "\f279";
}
.fa-commenting:before {
  content: "\f27a";
}
.fa-commenting-o:before {
  content: "\f27b";
}
.fa-houzz:before {
  content: "\f27c";
}
.fa-vimeo:before {
  content: "\f27d";
}
.fa-black-tie:before {
  content: "\f27e";
}
.fa-fonticons:before {
  content: "\f280";
}
.fa-reddit-alien:before {
  content: "\f281";
}
.fa-edge:before {
  content: "\f282";
}
.fa-credit-card-alt:before {
  content: "\f283";
}
.fa-codiepie:before {
  content: "\f284";
}
.fa-modx:before {
  content: "\f285";
}
.fa-fort-awesome:before {
  content: "\f286";
}
.fa-usb:before {
  content: "\f287";
}
.fa-product-hunt:before {
  content: "\f288";
}
.fa-mixcloud:before {
  content: "\f289";
}
.fa-scribd:before {
  content: "\f28a";
}
.fa-pause-circle:before {
  content: "\f28b";
}
.fa-pause-circle-o:before {
  content: "\f28c";
}
.fa-stop-circle:before {
  content: "\f28d";
}
.fa-stop-circle-o:before {
  content: "\f28e";
}
.fa-shopping-bag:before {
  content: "\f290";
}
.fa-shopping-basket:before {
  content: "\f291";
}
.fa-hashtag:before {
  content: "\f292";
}
.fa-bluetooth:before {
  content: "\f293";
}
.fa-bluetooth-b:before {
  content: "\f294";
}
.fa-percent:before {
  content: "\f295";
}
.fa-gitlab:before {
  content: "\f296";
}
.fa-wpbeginner:before {
  content: "\f297";
}
.fa-wpforms:before {
  content: "\f298";
}
.fa-envira:before {
  content: "\f299";
}
.fa-universal-access:before {
  content: "\f29a";
}
.fa-wheelchair-alt:before {
  content: "\f29b";
}
.fa-question-circle-o:before {
  content: "\f29c";
}
.fa-blind:before {
  content: "\f29d";
}
.fa-audio-description:before {
  content: "\f29e";
}
.fa-volume-control-phone:before {
  content: "\f2a0";
}
.fa-braille:before {
  content: "\f2a1";
}
.fa-assistive-listening-systems:before {
  content: "\f2a2";
}
.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}
.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "\f2a4";
}
.fa-glide:before {
  content: "\f2a5";
}
.fa-glide-g:before {
  content: "\f2a6";
}
.fa-signing:before,
.fa-sign-language:before {
  content: "\f2a7";
}
.fa-low-vision:before {
  content: "\f2a8";
}
.fa-viadeo:before {
  content: "\f2a9";
}
.fa-viadeo-square:before {
  content: "\f2aa";
}
.fa-snapchat:before {
  content: "\f2ab";
}
.fa-snapchat-ghost:before {
  content: "\f2ac";
}
.fa-snapchat-square:before {
  content: "\f2ad";
}
.fa-pied-piper:before {
  content: "\f2ae";
}
.fa-first-order:before {
  content: "\f2b0";
}
.fa-yoast:before {
  content: "\f2b1";
}
.fa-themeisle:before {
  content: "\f2b2";
}
.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "\f2b3";
}
.fa-fa:before,
.fa-font-awesome:before {
  content: "\f2b4";
}
.fa-handshake-o:before {
  content: "\f2b5";
}
.fa-envelope-open:before {
  content: "\f2b6";
}
.fa-envelope-open-o:before {
  content: "\f2b7";
}
.fa-linode:before {
  content: "\f2b8";
}
.fa-address-book:before {
  content: "\f2b9";
}
.fa-address-book-o:before {
  content: "\f2ba";
}
.fa-vcard:before,
.fa-address-card:before {
  content: "\f2bb";
}
.fa-vcard-o:before,
.fa-address-card-o:before {
  content: "\f2bc";
}
.fa-user-circle:before {
  content: "\f2bd";
}
.fa-user-circle-o:before {
  content: "\f2be";
}
.fa-user-o:before {
  content: "\f2c0";
}
.fa-id-badge:before {
  content: "\f2c1";
}
.fa-drivers-license:before,
.fa-id-card:before {
  content: "\f2c2";
}
.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: "\f2c3";
}
.fa-quora:before {
  content: "\f2c4";
}
.fa-free-code-camp:before {
  content: "\f2c5";
}
.fa-telegram:before {
  content: "\f2c6";
}
.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: "\f2c7";
}
.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}
.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: "\f2c9";
}
.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: "\f2ca";
}
.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: "\f2cb";
}
.fa-shower:before {
  content: "\f2cc";
}
.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: "\f2cd";
}
.fa-podcast:before {
  content: "\f2ce";
}
.fa-window-maximize:before {
  content: "\f2d0";
}
.fa-window-minimize:before {
  content: "\f2d1";
}
.fa-window-restore:before {
  content: "\f2d2";
}
.fa-times-rectangle:before,
.fa-window-close:before {
  content: "\f2d3";
}
.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: "\f2d4";
}
.fa-bandcamp:before {
  content: "\f2d5";
}
.fa-grav:before {
  content: "\f2d6";
}
.fa-etsy:before {
  content: "\f2d7";
}
.fa-imdb:before {
  content: "\f2d8";
}
.fa-ravelry:before {
  content: "\f2d9";
}
.fa-eercast:before {
  content: "\f2da";
}
.fa-microchip:before {
  content: "\f2db";
}
.fa-snowflake-o:before {
  content: "\f2dc";
}
.fa-superpowers:before {
  content: "\f2dd";
}
.fa-wpexplorer:before {
  content: "\f2de";
}
.fa-meetup:before {
  content: "\f2e0";
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}


    /*
 *  Usage:
 *
      <div class="sk-circle">
        <div class="sk-circle1 sk-child"></div>
        <div class="sk-circle2 sk-child"></div>
        <div class="sk-circle3 sk-child"></div>
        <div class="sk-circle4 sk-child"></div>
        <div class="sk-circle5 sk-child"></div>
        <div class="sk-circle6 sk-child"></div>
        <div class="sk-circle7 sk-child"></div>
        <div class="sk-circle8 sk-child"></div>
        <div class="sk-circle9 sk-child"></div>
        <div class="sk-circle10 sk-child"></div>
        <div class="sk-circle11 sk-child"></div>
        <div class="sk-circle12 sk-child"></div>
      </div>
 *
 */
.sk-circle {
  margin: 40px auto;
  width: 40px !important;
  height: 40px !important;
  position: relative; }
  .sk-circle .sk-child {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0; }
  .sk-circle .sk-child:before {
    content: '';
    display: block;
    margin: 0 auto;
    width: 15%;
    height: 15%;
    background-color: #333 !important;
    border-radius: 100%;
    -webkit-animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
            animation: sk-circleBounceDelay 1.2s infinite ease-in-out both; }
  .sk-circle .sk-circle2 {
    -webkit-transform: rotate(30deg);
        -ms-transform: rotate(30deg);
            transform: rotate(30deg); }
  .sk-circle .sk-circle3 {
    -webkit-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
            transform: rotate(60deg); }
  .sk-circle .sk-circle4 {
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg); }
  .sk-circle .sk-circle5 {
    -webkit-transform: rotate(120deg);
        -ms-transform: rotate(120deg);
            transform: rotate(120deg); }
  .sk-circle .sk-circle6 {
    -webkit-transform: rotate(150deg);
        -ms-transform: rotate(150deg);
            transform: rotate(150deg); }
  .sk-circle .sk-circle7 {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .sk-circle .sk-circle8 {
    -webkit-transform: rotate(210deg);
        -ms-transform: rotate(210deg);
            transform: rotate(210deg); }
  .sk-circle .sk-circle9 {
    -webkit-transform: rotate(240deg);
        -ms-transform: rotate(240deg);
            transform: rotate(240deg); }
  .sk-circle .sk-circle10 {
    -webkit-transform: rotate(270deg);
        -ms-transform: rotate(270deg);
            transform: rotate(270deg); }
  .sk-circle .sk-circle11 {
    -webkit-transform: rotate(300deg);
        -ms-transform: rotate(300deg);
            transform: rotate(300deg); }
  .sk-circle .sk-circle12 {
    -webkit-transform: rotate(330deg);
        -ms-transform: rotate(330deg);
            transform: rotate(330deg); }
  .sk-circle .sk-circle2:before {
    -webkit-animation-delay: -1.1s;
            animation-delay: -1.1s; }
  .sk-circle .sk-circle3:before {
    -webkit-animation-delay: -1s;
            animation-delay: -1s; }
  .sk-circle .sk-circle4:before {
    -webkit-animation-delay: -0.9s;
            animation-delay: -0.9s; }
  .sk-circle .sk-circle5:before {
    -webkit-animation-delay: -0.8s;
            animation-delay: -0.8s; }
  .sk-circle .sk-circle6:before {
    -webkit-animation-delay: -0.7s;
            animation-delay: -0.7s; }
  .sk-circle .sk-circle7:before {
    -webkit-animation-delay: -0.6s;
            animation-delay: -0.6s; }
  .sk-circle .sk-circle8:before {
    -webkit-animation-delay: -0.5s;
            animation-delay: -0.5s; }
  .sk-circle .sk-circle9:before {
    -webkit-animation-delay: -0.4s;
            animation-delay: -0.4s; }
  .sk-circle .sk-circle10:before {
    -webkit-animation-delay: -0.3s;
            animation-delay: -0.3s; }
  .sk-circle .sk-circle11:before {
    -webkit-animation-delay: -0.2s;
            animation-delay: -0.2s; }
  .sk-circle .sk-circle12:before {
    -webkit-animation-delay: -0.1s;
            animation-delay: -0.1s; }

@-webkit-keyframes sk-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
            transform: scale(0); }
  40% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@keyframes sk-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
            transform: scale(0); }
  40% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

/*!
 * Cropper.js v1.4.0
 * https://fengyuanchen.github.io/cropperjs
 *
 * Copyright 2015-present Chen Fengyuan
 * Released under the MIT license
 *
 * Date: 2018-06-01T15:18:09.891Z
 */

.cropper-container {
  direction: ltr;
  font-size: 0;
  line-height: 0;
  position: relative;
  -ms-touch-action: none;
  touch-action: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cropper-container img {/*Avoid margin top issue (Occur only when margin-top <= -height)
 */
  display: block;
  height: 100%;
  image-orientation: 0deg;
  max-height: none !important;
  max-width: none !important;
  min-height: 0 !important;
  min-width: 0 !important;
  width: 100%;
}

.cropper-wrap-box,
.cropper-canvas,
.cropper-drag-box,
.cropper-crop-box,
.cropper-modal {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.cropper-wrap-box,
.cropper-canvas {
  overflow: hidden;
}

.cropper-drag-box {
  background-color: #fff;
  opacity: 0;
}

.cropper-modal {
  background-color: #000;
  opacity: .5;
}

.cropper-view-box {
  display: block;
  height: 100%;
  outline-color: rgba(51, 153, 255, 0.75);
  outline: 1px solid #39f;
  overflow: hidden;
  width: 100%;
}

.cropper-dashed {
  border: 0 dashed #eee;
  display: block;
  opacity: .5;
  position: absolute;
}

.cropper-dashed.dashed-h {
  border-bottom-width: 1px;
  border-top-width: 1px;
  height: 33.33333%;
  left: 0;
  top: 33.33333%;
  width: 100%;
}

.cropper-dashed.dashed-v {
  border-left-width: 1px;
  border-right-width: 1px;
  height: 100%;
  left: 33.33333%;
  top: 0;
  width: 33.33333%;
}

.cropper-center {
  display: block;
  height: 0;
  left: 50%;
  opacity: .75;
  position: absolute;
  top: 50%;
  width: 0;
}

.cropper-center:before,
.cropper-center:after {
  background-color: #eee;
  content: ' ';
  display: block;
  position: absolute;
}

.cropper-center:before {
  height: 1px;
  left: -3px;
  top: 0;
  width: 7px;
}

.cropper-center:after {
  height: 7px;
  left: 0;
  top: -3px;
  width: 1px;
}

.cropper-face,
.cropper-line,
.cropper-point {
  display: block;
  height: 100%;
  opacity: .1;
  position: absolute;
  width: 100%;
}

.cropper-face {
  background-color: #fff;
  left: 0;
  top: 0;
}

.cropper-line {
  background-color: #39f;
}

.cropper-line.line-e {
  cursor: ew-resize;
  right: -3px;
  top: 0;
  width: 5px;
}

.cropper-line.line-n {
  cursor: ns-resize;
  height: 5px;
  left: 0;
  top: -3px;
}

.cropper-line.line-w {
  cursor: ew-resize;
  left: -3px;
  top: 0;
  width: 5px;
}

.cropper-line.line-s {
  bottom: -3px;
  cursor: ns-resize;
  height: 5px;
  left: 0;
}

.cropper-point {
  background-color: #39f;
  height: 5px;
  opacity: .75;
  width: 5px;
}

.cropper-point.point-e {
  cursor: ew-resize;
  margin-top: -3px;
  right: -3px;
  top: 50%;
}

.cropper-point.point-n {
  cursor: ns-resize;
  left: 50%;
  margin-left: -3px;
  top: -3px;
}

.cropper-point.point-w {
  cursor: ew-resize;
  left: -3px;
  margin-top: -3px;
  top: 50%;
}

.cropper-point.point-s {
  bottom: -3px;
  cursor: s-resize;
  left: 50%;
  margin-left: -3px;
}

.cropper-point.point-ne {
  cursor: nesw-resize;
  right: -3px;
  top: -3px;
}

.cropper-point.point-nw {
  cursor: nwse-resize;
  left: -3px;
  top: -3px;
}

.cropper-point.point-sw {
  bottom: -3px;
  cursor: nesw-resize;
  left: -3px;
}

.cropper-point.point-se {
  bottom: -3px;
  cursor: nwse-resize;
  height: 20px;
  opacity: 1;
  right: -3px;
  width: 20px;
}

@media (min-width: 768px) {
  .cropper-point.point-se {
    height: 15px;
    width: 15px;
  }
}

@media (min-width: 992px) {
  .cropper-point.point-se {
    height: 10px;
    width: 10px;
  }
}

@media (min-width: 1200px) {
  .cropper-point.point-se {
    height: 5px;
    opacity: .75;
    width: 5px;
  }
}

.cropper-point.point-se:before {
  background-color: #39f;
  bottom: -50%;
  content: ' ';
  display: block;
  height: 200%;
  opacity: 0;
  position: absolute;
  right: -50%;
  width: 200%;
}

.cropper-invisible {
  opacity: 0;
}

.cropper-bg {
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC');
}

.cropper-hide {
  display: block;
  height: 0;
  position: absolute;
  width: 0;
}

.cropper-hidden {
  display: none !important;
}

.cropper-move {
  cursor: move;
}

.cropper-crop {
  cursor: crosshair;
}

.cropper-disabled .cropper-drag-box,
.cropper-disabled .cropper-face,
.cropper-disabled .cropper-line,
.cropper-disabled .cropper-point {
  cursor: not-allowed;
}

.pell{border:1px solid hsla(0,0%,4%,.1)}.pell,.pell-content{box-sizing:border-box}.pell-content{height:300px;outline:0;overflow-y:auto;padding:10px}.pell-actionbar{background-color:#fff;border-bottom:1px solid hsla(0,0%,4%,.1)}.pell-button{background-color:transparent;border:none;cursor:pointer;height:30px;outline:0;width:30px;vertical-align:bottom}.pell-button-selected{background-color:#f0f0f0}
.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top.shepherd-target-attached-left .shepherd-content:before,
.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top.shepherd-target-attached-right .shepherd-content:before,
.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-target-attached-left .shepherd-content:before,
.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-target-attached-right .shepherd-content:before {
  display: none; }

.shepherd-element, .shepherd-element:after, .shepherd-element:before, .shepherd-element *, .shepherd-element *:after, .shepherd-element *:before {
  box-sizing: border-box; }

.shepherd-element {
  position: absolute;
  display: none; }
  .shepherd-element.shepherd-open {
    display: block; }

.shepherd-element.shepherd-theme-dark {
  max-width: 100%;
  max-height: 100%; }
  .shepherd-element.shepherd-theme-dark .shepherd-content {
    border-radius: 5px;
    position: relative;
    font-family: inherit;
    background: #232323;
    color: #eee;
    padding: 1em;
    font-size: 1.1em;
    line-height: 1.5em; }
    .shepherd-element.shepherd-theme-dark .shepherd-content:before {
      content: "";
      display: block;
      position: absolute;
      width: 0;
      height: 0;
      border-color: transparent;
      border-width: 16px;
      border-style: solid;
      pointer-events: none; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content {
    margin-bottom: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content:before {
      top: 100%;
      left: 50%;
      margin-left: -16px;
      border-top-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content {
    margin-top: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content:before {
      bottom: 100%;
      left: 50%;
      margin-left: -16px;
      border-bottom-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content {
    margin-right: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content:before {
      left: 100%;
      top: 50%;
      margin-top: -16px;
      border-left-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content {
    margin-left: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content:before {
      right: 100%;
      top: 50%;
      margin-top: -16px;
      border-right-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-left.shepherd-target-attached-center .shepherd-content {
    left: -32px; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-right.shepherd-target-attached-center .shepherd-content {
    left: 32px; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-middle .shepherd-content {
    margin-top: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-middle .shepherd-content:before {
      bottom: 100%;
      left: 16px;
      border-bottom-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-middle .shepherd-content {
    margin-top: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-middle .shepherd-content:before {
      bottom: 100%;
      right: 16px;
      border-bottom-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-middle .shepherd-content {
    margin-bottom: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-middle .shepherd-content:before {
      top: 100%;
      left: 16px;
      border-top-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-middle .shepherd-content {
    margin-bottom: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-middle .shepherd-content:before {
      top: 100%;
      right: 16px;
      border-top-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content {
    margin-top: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content:before {
      bottom: 100%;
      left: 16px;
      border-bottom-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content {
    margin-top: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content:before {
      bottom: 100%;
      right: 16px;
      border-bottom-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content {
    margin-bottom: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content:before {
      top: 100%;
      left: 16px;
      border-top-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content {
    margin-bottom: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content:before {
      top: 100%;
      right: 16px;
      border-top-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content {
    margin-right: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before {
      top: 16px;
      left: 100%;
      border-left-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content {
    margin-left: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before {
      top: 16px;
      right: 100%;
      border-right-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content {
    margin-right: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before {
      bottom: 16px;
      left: 100%;
      border-left-color: #232323; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content {
    margin-left: 16px; }
    .shepherd-element.shepherd-theme-dark.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before {
      bottom: 16px;
      right: 100%;
      border-right-color: #232323; }

.shepherd-element.shepherd-theme-dark {
  z-index: 9999;
  max-width: 24em;
  font-size: 1em; }
  .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-dark.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before {
    border-bottom-color: #303030; }
  .shepherd-element.shepherd-theme-dark.shepherd-has-title .shepherd-content header {
    background: #303030;
    padding: 1em; }
    .shepherd-element.shepherd-theme-dark.shepherd-has-title .shepherd-content header a.shepherd-cancel-link {
      padding: 0;
      margin-bottom: 0; }
  .shepherd-element.shepherd-theme-dark.shepherd-has-cancel-link .shepherd-content header h3 {
    float: left; }
  .shepherd-element.shepherd-theme-dark .shepherd-content {
    box-shadow: 0 0 1em rgba(0, 0, 0, 0.2);
    padding: 0; }
    .shepherd-element.shepherd-theme-dark .shepherd-content * {
      font-size: inherit; }
    .shepherd-element.shepherd-theme-dark .shepherd-content header {
      *zoom: 1;
      border-radius: 5px 5px 0 0; }
      .shepherd-element.shepherd-theme-dark .shepherd-content header:after {
        content: "";
        display: table;
        clear: both; }
      .shepherd-element.shepherd-theme-dark .shepherd-content header h3 {
        margin: 0;
        line-height: 1;
        font-weight: normal; }
      .shepherd-element.shepherd-theme-dark .shepherd-content header a.shepherd-cancel-link {
        float: right;
        text-decoration: none;
        font-size: 1.25em;
        line-height: .8em;
        font-weight: normal;
        color: rgba(0, 0, 0, 0.5);
        opacity: 0.25;
        position: relative;
        top: .1em;
        padding: .8em;
        margin-bottom: -.8em; }
        .shepherd-element.shepherd-theme-dark .shepherd-content header a.shepherd-cancel-link:hover {
          opacity: 1; }
    .shepherd-element.shepherd-theme-dark .shepherd-content .shepherd-text {
      padding: 1em; }
      .shepherd-element.shepherd-theme-dark .shepherd-content .shepherd-text p {
        margin: 0 0 .5em 0;
        line-height: 1.3em; }
        .shepherd-element.shepherd-theme-dark .shepherd-content .shepherd-text p:last-child {
          margin-bottom: 0; }
    .shepherd-element.shepherd-theme-dark .shepherd-content footer {
      padding: 0 1em 1em; }
      .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons {
        text-align: right;
        list-style: none;
        padding: 0;
        margin: 0; }
        .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons li {
          display: inline;
          padding: 0;
          margin: 0; }
          .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons li .shepherd-button {
            display: inline-block;
            vertical-align: middle;
            *vertical-align: auto;
            *zoom: 1;
            *display: inline;
            border-radius: 3px;
            cursor: pointer;
            border: 0;
            margin: 0 .5em 0 0;
            font-family: inherit;
            text-transform: uppercase;
            letter-spacing: .1em;
            font-size: .8em;
            line-height: 1em;
            padding: .75em 2em;
            background: #3288e6;
            color: #fff; }
            .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons li .shepherd-button.shepherd-button-secondary {
              background: #eee;
              color: #888; }
          .shepherd-element.shepherd-theme-dark .shepherd-content footer .shepherd-buttons li:last-child .shepherd-button {
            margin-right: 0; }

.shepherd-start-tour-button.shepherd-theme-dark {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  border-radius: 3px;
  cursor: pointer;
  border: 0;
  margin: 0 .5em 0 0;
  font-family: inherit;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: .8em;
  line-height: 1em;
  padding: .75em 2em;
  background: #3288e6;
  color: #fff; }

/***
Spectrum Colorpicker v1.8.0
https://github.com/bgrins/spectrum
Author: Brian Grinstead
License: MIT
***/

.sp-container {
    position:absolute;
    top:0;
    left:0;
    display:inline-block;
    *display: inline;
    *zoom: 1;
    /* https://github.com/bgrins/spectrum/issues/40 */
    z-index: 9999994;
    overflow: hidden;
}
.sp-container.sp-flat {
    position: relative;
}

/* Fix for * { box-sizing: border-box; } */
.sp-container,
.sp-container * {
    -webkit-box-sizing: content-box;
       -moz-box-sizing: content-box;
            box-sizing: content-box;
}

/* http://ansciath.tumblr.com/post/7347495869/css-aspect-ratio */
.sp-top {
  position:relative;
  width: 100%;
  display:inline-block;
}
.sp-top-inner {
   position:absolute;
   top:0;
   left:0;
   bottom:0;
   right:0;
}
.sp-color {
    position: absolute;
    top:0;
    left:0;
    bottom:0;
    right:20%;
}
.sp-hue {
    position: absolute;
    top:0;
    right:0;
    bottom:0;
    left:84%;
    height: 100%;
}

.sp-clear-enabled .sp-hue {
    top:33px;
    height: 77.5%;
}

.sp-fill {
    padding-top: 80%;
}
.sp-sat, .sp-val {
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
}

.sp-alpha-enabled .sp-top {
    margin-bottom: 18px;
}
.sp-alpha-enabled .sp-alpha {
    display: block;
}
.sp-alpha-handle {
    position:absolute;
    top:-4px;
    bottom: -4px;
    width: 6px;
    left: 50%;
    cursor: pointer;
    border: 1px solid black;
    background: white;
    opacity: .8;
}
.sp-alpha {
    display: none;
    position: absolute;
    bottom: -14px;
    right: 0;
    left: 0;
    height: 8px;
}
.sp-alpha-inner {
    border: solid 1px #333;
}

.sp-clear {
    display: none;
}

.sp-clear.sp-clear-display {
    background-position: center;
}

.sp-clear-enabled .sp-clear {
    display: block;
    position:absolute;
    top:0px;
    right:0;
    bottom:0;
    left:84%;
    height: 28px;
}

/* Don't allow text selection */
.sp-container, .sp-replacer, .sp-preview, .sp-dragger, .sp-slider, .sp-alpha, .sp-clear, .sp-alpha-handle, .sp-container.sp-dragging .sp-input, .sp-container button  {
    -webkit-user-select:none;
    -moz-user-select: -moz-none;
    -o-user-select:none;
    user-select: none;
}

.sp-container.sp-input-disabled .sp-input-container {
    display: none;
}
.sp-container.sp-buttons-disabled .sp-button-container {
    display: none;
}
.sp-container.sp-palette-buttons-disabled .sp-palette-button-container {
    display: none;
}
.sp-palette-only .sp-picker-container {
    display: none;
}
.sp-palette-disabled .sp-palette-container {
    display: none;
}

.sp-initial-disabled .sp-initial {
    display: none;
}


/* Gradients for hue, saturation and value instead of images.  Not pretty... but it works */
.sp-sat {
    background-image: -webkit-gradient(linear,  0 0, 100% 0, from(#FFF), to(rgba(204, 154, 129, 0)));
    background-image: -webkit-linear-gradient(left, #FFF, rgba(204, 154, 129, 0));
    background-image: -moz-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
    background-image: -o-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
    background-image: -ms-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
    background-image: linear-gradient(to right, #fff, rgba(204, 154, 129, 0));
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";
    filter : progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr='#FFFFFFFF', endColorstr='#00CC9A81');
}
.sp-val {
    background-image: -webkit-gradient(linear, 0 100%, 0 0, from(#000000), to(rgba(204, 154, 129, 0)));
    background-image: -webkit-linear-gradient(bottom, #000000, rgba(204, 154, 129, 0));
    background-image: -moz-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
    background-image: -o-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
    background-image: -ms-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
    background-image: linear-gradient(to top, #000, rgba(204, 154, 129, 0));
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";
    filter : progid:DXImageTransform.Microsoft.gradient(startColorstr='#00CC9A81', endColorstr='#FF000000');
}

.sp-hue {
    background: -moz-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    background: -ms-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    background: -o-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#ff0000), color-stop(0.17, #ffff00), color-stop(0.33, #00ff00), color-stop(0.5, #00ffff), color-stop(0.67, #0000ff), color-stop(0.83, #ff00ff), to(#ff0000));
    background: -webkit-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    background: linear-gradient(to bottom, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
}

/* IE filters do not support multiple color stops.
   Generate 6 divs, line them up, and do two color gradients for each.
   Yes, really.
 */
.sp-1 {
    height:17%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ffff00');
}
.sp-2 {
    height:16%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00', endColorstr='#00ff00');
}
.sp-3 {
    height:17%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ff00', endColorstr='#00ffff');
}
.sp-4 {
    height:17%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffff', endColorstr='#0000ff');
}
.sp-5 {
    height:16%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000ff', endColorstr='#ff00ff');
}
.sp-6 {
    height:17%;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff', endColorstr='#ff0000');
}

.sp-hidden {
    display: none !important;
}

/* Clearfix hack */
.sp-cf:before, .sp-cf:after { content: ""; display: table; }
.sp-cf:after { clear: both; }
.sp-cf { *zoom: 1; }

/* Mobile devices, make hue slider bigger so it is easier to slide */
@media (max-device-width: 480px) {
    .sp-color { right: 40%; }
    .sp-hue { left: 63%; }
    .sp-fill { padding-top: 60%; }
}
.sp-dragger {
   border-radius: 5px;
   height: 5px;
   width: 5px;
   border: 1px solid #fff;
   background: #000;
   cursor: pointer;
   position:absolute;
   top:0;
   left: 0;
}
.sp-slider {
    position: absolute;
    top:0;
    cursor:pointer;
    height: 3px;
    left: -1px;
    right: -1px;
    border: 1px solid #000;
    background: white;
    opacity: .8;
}

/*
Theme authors:
Here are the basic themeable display options (colors, fonts, global widths).
See http://bgrins.github.io/spectrum/themes/ for instructions.
*/

.sp-container {
    border-radius: 0;
    background-color: #ECECEC;
    border: solid 1px #f0c49B;
    padding: 0;
}
.sp-container, .sp-container button, .sp-container input, .sp-color, .sp-hue, .sp-clear {
    font: normal 12px "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
.sp-top {
    margin-bottom: 3px;
}
.sp-color, .sp-hue, .sp-clear {
    border: solid 1px #666;
}

/* Input */
.sp-input-container {
    float:right;
    width: 100px;
    margin-bottom: 4px;
}
.sp-initial-disabled  .sp-input-container {
    width: 100%;
}
.sp-input {
   font-size: 12px !important;
   border: 1px inset;
   padding: 4px 5px;
   margin: 0;
   width: 100%;
   background:transparent;
   border-radius: 3px;
   color: #222;
}
.sp-input:focus  {
    border: 1px solid orange;
}
.sp-input.sp-validation-error {
    border: 1px solid red;
    background: #fdd;
}
.sp-picker-container , .sp-palette-container {
    float:left;
    position: relative;
    padding: 10px;
    padding-bottom: 300px;
    margin-bottom: -290px;
}
.sp-picker-container {
    width: 172px;
    border-left: solid 1px #fff;
}

/* Palettes */
.sp-palette-container {
    border-right: solid 1px #ccc;
}

.sp-palette-only .sp-palette-container {
    border: 0;
}

.sp-palette .sp-thumb-el {
    display: block;
    position:relative;
    float:left;
    width: 24px;
    height: 15px;
    margin: 3px;
    cursor: pointer;
    border:solid 2px transparent;
}
.sp-palette .sp-thumb-el:hover, .sp-palette .sp-thumb-el.sp-thumb-active {
    border-color: orange;
}
.sp-thumb-el {
    position:relative;
}

/* Initial */
.sp-initial {
    float: left;
    border: solid 1px #333;
}
.sp-initial span {
    width: 30px;
    height: 25px;
    border:none;
    display:block;
    float:left;
    margin:0;
}

.sp-initial .sp-clear-display {
    background-position: center;
}

/* Buttons */
.sp-palette-button-container,
.sp-button-container {
    float: right;
}

/* Replacer (the little preview div that shows up instead of the <input>) */
.sp-replacer {
    margin:0;
    overflow:hidden;
    cursor:pointer;
    padding: 4px;
    display:inline-block;
    *zoom: 1;
    *display: inline;
    border: solid 1px #91765d;
    background: #eee;
    color: #333;
    vertical-align: middle;
}
.sp-replacer:hover, .sp-replacer.sp-active {
    border-color: #F0C49B;
    color: #111;
}
.sp-replacer.sp-disabled {
    cursor:default;
    border-color: silver;
    color: silver;
}
.sp-dd {
    padding: 2px 0;
    height: 16px;
    line-height: 16px;
    float:left;
    font-size:10px;
}
.sp-preview {
    position:relative;
    width:25px;
    height: 20px;
    border: solid 1px #222;
    margin-right: 5px;
    float:left;
    z-index: 0;
}

.sp-palette {
    *width: 220px;
    max-width: 220px;
}
.sp-palette .sp-thumb-el {
    width:16px;
    height: 16px;
    margin:2px 1px;
    border: solid 1px #d0d0d0;
}

.sp-container {
    padding-bottom:0;
}


/* Buttons: http://hellohappy.org/css3-buttons/ */
.sp-container button {
  background-color: #eeeeee;
  background-image: -webkit-linear-gradient(top, #eeeeee, #cccccc);
  background-image: -moz-linear-gradient(top, #eeeeee, #cccccc);
  background-image: -ms-linear-gradient(top, #eeeeee, #cccccc);
  background-image: -o-linear-gradient(top, #eeeeee, #cccccc);
  background-image: linear-gradient(to bottom, #eeeeee, #cccccc);
  border: 1px solid #ccc;
  border-bottom: 1px solid #bbb;
  border-radius: 3px;
  color: #333;
  font-size: 14px;
  line-height: 1;
  padding: 5px 4px;
  text-align: center;
  text-shadow: 0 1px 0 #eee;
  vertical-align: middle;
}
.sp-container button:hover {
    background-color: #dddddd;
    background-image: -webkit-linear-gradient(top, #dddddd, #bbbbbb);
    background-image: -moz-linear-gradient(top, #dddddd, #bbbbbb);
    background-image: -ms-linear-gradient(top, #dddddd, #bbbbbb);
    background-image: -o-linear-gradient(top, #dddddd, #bbbbbb);
    background-image: linear-gradient(to bottom, #dddddd, #bbbbbb);
    border: 1px solid #bbb;
    border-bottom: 1px solid #999;
    cursor: pointer;
    text-shadow: 0 1px 0 #ddd;
}
.sp-container button:active {
    border: 1px solid #aaa;
    border-bottom: 1px solid #888;
    -webkit-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
    -moz-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
    -ms-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
    -o-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
    box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
}
.sp-cancel {
    font-size: 11px;
    color: #d93f3f !important;
    margin:0;
    padding:2px;
    margin-right: 5px;
    vertical-align: middle;
    text-decoration:none;

}
.sp-cancel:hover {
    color: #d93f3f !important;
    text-decoration: underline;
}


.sp-palette span:hover, .sp-palette span.sp-thumb-active {
    border-color: #000;
}

.sp-preview, .sp-alpha, .sp-thumb-el {
    position:relative;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==);
}
.sp-preview-inner, .sp-alpha-inner, .sp-thumb-inner {
    display:block;
    position:absolute;
    top:0;left:0;bottom:0;right:0;
}

.sp-palette .sp-thumb-inner {
    background-position: 50% 50%;
    background-repeat: no-repeat;
}

.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=);
}

.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=);
}

.sp-clear-display {
    background-repeat:no-repeat;
    background-position: center;
    background-image: url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==);
}

.toast-title {
  font-weight: bold;
}
.toast-message {
  -ms-word-wrap: break-word;
  word-wrap: break-word;
}
.toast-message a,
.toast-message label {
  color: #FFFFFF;
}
.toast-message a:hover {
  color: #CCCCCC;
  text-decoration: none;
}
.toast-close-button {
  position: relative;
  right: -0.3em;
  top: -0.3em;
  float: right;
  font-size: 20px;
  font-weight: bold;
  color: #FFFFFF;
  -webkit-text-shadow: 0 1px 0 #ffffff;
  text-shadow: 0 1px 0 #ffffff;
  opacity: 0.8;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  filter: alpha(opacity=80);
  line-height: 1;
}
.toast-close-button:hover,
.toast-close-button:focus {
  color: #000000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.4;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
  filter: alpha(opacity=40);
}
.rtl .toast-close-button {
  left: -0.3em;
  float: left;
  right: 0.3em;
}
/*Additional properties for button version
 iOS requires the button element instead of an anchor tag.
 If you want the anchor version, it requires `href="#"`.*/
button.toast-close-button {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}
.toast-top-center {
  top: 0;
  right: 0;
  width: 100%;
}
.toast-bottom-center {
  bottom: 0;
  right: 0;
  width: 100%;
}
.toast-top-full-width {
  top: 0;
  right: 0;
  width: 100%;
}
.toast-bottom-full-width {
  bottom: 0;
  right: 0;
  width: 100%;
}
.toast-top-left {
  top: 12px;
  left: 12px;
}
.toast-top-right {
  top: 12px;
  right: 12px;
}
.toast-bottom-right {
  right: 12px;
  bottom: 12px;
}
.toast-bottom-left {
  bottom: 12px;
  left: 12px;
}
#toast-container {
  position: fixed;
  z-index: 999999;
  pointer-events: none;
  /*overrides*/
}
#toast-container * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#toast-container > div {
  position: relative;
  pointer-events: auto;
  overflow: hidden;
  margin: 0 0 6px;
  padding: 15px 15px 15px 50px;
  width: 300px;
  -moz-border-radius: 3px 3px 3px 3px;
  -webkit-border-radius: 3px 3px 3px 3px;
  border-radius: 3px 3px 3px 3px;
  background-position: 15px center;
  background-repeat: no-repeat;
  -moz-box-shadow: 0 0 12px #999999;
  -webkit-box-shadow: 0 0 12px #999999;
  box-shadow: 0 0 12px #999999;
  color: #FFFFFF;
  opacity: 0.8;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  filter: alpha(opacity=80);
}
#toast-container > div.rtl {
  direction: rtl;
  padding: 15px 50px 15px 15px;
  background-position: right 15px center;
}
#toast-container > div:hover {
  -moz-box-shadow: 0 0 12px #000000;
  -webkit-box-shadow: 0 0 12px #000000;
  box-shadow: 0 0 12px #000000;
  opacity: 1;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  filter: alpha(opacity=100);
  cursor: pointer;
}
#toast-container > .toast-info {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=") !important;
}
#toast-container > .toast-error {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=") !important;
}
#toast-container > .toast-success {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important;
}
#toast-container > .toast-warning {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=") !important;
}
#toast-container.toast-top-center > div,
#toast-container.toast-bottom-center > div {
  width: 300px;
  margin-left: auto;
  margin-right: auto;
}
#toast-container.toast-top-full-width > div,
#toast-container.toast-bottom-full-width > div {
  width: 96%;
  margin-left: auto;
  margin-right: auto;
}
.toast {
  background-color: #030303;
}
.toast-success {
  background-color: #51A351;
}
.toast-error {
  background-color: #BD362F;
}
.toast-info {
  background-color: #2F96B4;
}
.toast-warning {
  background-color: #F89406;
}
.toast-progress {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 4px;
  background-color: #000000;
  opacity: 0.4;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
  filter: alpha(opacity=40);
}
/*Responsive Design*/
@media all and (max-width: 240px) {
  #toast-container > div {
    padding: 8px 8px 8px 50px;
    width: 11em;
  }
  #toast-container > div.rtl {
    padding: 8px 50px 8px 8px;
  }
  #toast-container .toast-close-button {
    right: -0.2em;
    top: -0.2em;
  }
  #toast-container .rtl .toast-close-button {
    left: -0.2em;
    right: 0.2em;
  }
}
@media all and (min-width: 241px) and (max-width: 480px) {
  #toast-container > div {
    padding: 8px 8px 8px 50px;
    width: 18em;
  }
  #toast-container > div.rtl {
    padding: 8px 50px 8px 8px;
  }
  #toast-container .toast-close-button {
    right: -0.2em;
    top: -0.2em;
  }
  #toast-container .rtl .toast-close-button {
    left: -0.2em;
    right: 0.2em;
  }
}
@media all and (min-width: 481px) and (max-width: 768px) {
  #toast-container > div {
    padding: 15px 15px 15px 50px;
    width: 25em;
  }
  #toast-container > div.rtl {
    padding: 15px 50px 15px 15px;
  }
}

#ember-welcome-page-id-selector {
  padding: 2em;
  box-shadow: 0 0 0px 10px #FFFBF5;
  font-family: "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-size: 16px;
  line-height: 1.35em;
  background: #FFFBF5;
  color: #865931;
  height: 100vh;
}
#ember-welcome-page-id-selector img {
  max-width: 100%;
}
#ember-welcome-page-id-selector p {
  margin: 0 0 .75em;
}
#ember-welcome-page-id-selector h2 {
  color: #dd6a58;
  margin-top: 1em;
  font-size: 1.75em;
  line-height: 1.2
}
#ember-welcome-page-id-selector a:link,
#ember-welcome-page-id-selector a:visited {
  color: #dd6a58;
  text-decoration: none;
}
#ember-welcome-page-id-selector a:hover,
#ember-welcome-page-id-selector a:active {
  color: #c13c27;
}
#ember-welcome-page-id-selector .tomster {
  flex: 2;
}
#ember-welcome-page-id-selector .welcome {
  flex: 3;
}
#ember-welcome-page-id-selector .columns {
  display: flex;
  max-width: 960px;
  margin: 0 auto;
}
#ember-welcome-page-id-selector .welcome ol {
  list-style: disc;
  padding-left: 2em;
  margin-bottom: .75em;
}
#ember-welcome-page-id-selector .welcome > ol > li {
  padding-bottom: .5em;
}
#ember-welcome-page-id-selector .postscript {
  clear: both;
  text-align: center;
  padding-top: 3em;
  font-size: 14px;
  color: #888;
  font-style: italic;
  line-height: 2;
}
#ember-welcome-page-id-selector .postscript code {
  background-color: #F8E7CF;
  border-radius: 3px;
  font-family: Menlo, Courier, monospace;
  font-size: 0.9em;
  padding: 0.2em 0.5em;
  margin: 0 0.1em;
}
@media (max-width: 700px) {
  #ember-welcome-page-id-selector {
    padding: 1em;
  }
  #ember-welcome-page-id-selector .columns {
    flex-direction: column;
  }
  #ember-welcome-page-id-selector .welcome,
  #ember-welcome-page-id-selector .tomster {
  }
  #ember-welcome-page-id-selector .tomster img {
    width: 50%;
    margin: auto;
    display: block;
  }
  #ember-welcome-page-id-selector h2 {
    text-align: center;
  }
}
@media (max-width: 400px) {
  #ember-welcome-page-id-selector .tomster img {
    width: 60%;
  }
  #ember-welcome-page-id-selector .welcome,
  #ember-welcome-page-id-selector .tomster {
    width: 100%;
    float: none;
    margin: auto;
  }
}

/*!
 * Bootstrap v4.0.0-alpha.2 (http://getbootstrap.com)
 * Copyright 2011-2015 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;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active {
  outline: 0;
}

a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  margin: .67em 0;
  font-size: 2em;
}

mark {
  color: #000;
  background: #ff0;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sup {
  top: -.5em;
}

sub {
  bottom: -.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  height: 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font: inherit;
  color: inherit;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  padding: .35em .625em .75em;
  margin: 0 2px;
  border: 1px solid #c0c0c0;
}

legend {
  padding: 0;
  border: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

td,
th {
  padding: 0;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  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;
  }
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

@-moz-viewport {
  width: device-width;
}

@-ms-viewport {
  width: device-width;
}

@-webkit-viewport {
  width: device-width;
}

@viewport {
  width: device-width;
}

html {
  font-size: 16px;

  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  color: #373a3c;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: none !important;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: .5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #818a91;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

a {
  color: #0275d8;
  text-decoration: none;
}

a:focus, a:hover {
  color: #014c8c;
  text-decoration: underline;
}

a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
}

[role="button"] {
  cursor: pointer;
}

a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

table {
  background-color: transparent;
}

caption {
  padding-top: .75rem;
  padding-bottom: .75rem;
  color: #818a91;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: left;
}

label {
  display: inline-block;
  margin-bottom: .5rem;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
textarea {
  margin: 0;
  line-height: inherit;
  border-radius: 0;
}

textarea {
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
}

input[type="search"] {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
  -webkit-appearance: none;
}

output {
  display: inline-block;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: .5rem;
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}

h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.75rem;
}

h4 {
  font-size: 1.5rem;
}

h5 {
  font-size: 1.25rem;
}

h6 {
  font-size: 1rem;
}

.h1 {
  font-size: 2.5rem;
}

.h2 {
  font-size: 2rem;
}

.h3 {
  font-size: 1.75rem;
}

.h4 {
  font-size: 1.5rem;
}

.h5 {
  font-size: 1.25rem;
}

.h6 {
  font-size: 1rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, .1);
}

small,
.small {
  font-size: 80%;
  font-weight: normal;
}

mark,
.mark {
  padding: .2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 5px;
}

.dl-horizontal {
  margin-right: -1.875rem;
  margin-left: -1.875rem;
}

.dl-horizontal::after {
  display: table;
  clear: both;
  content: "";
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  padding: .5rem 1rem;
  margin-bottom: 1rem;
  font-size: 1.25rem;
  border-left: .25rem solid #eceeef;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  line-height: 1.5;
  color: #818a91;
}

.blockquote-footer::before {
  content: "\2014 \00A0";
}

.blockquote-reverse {
  padding-right: 1rem;
  padding-left: 0;
  text-align: right;
  border-right: .25rem solid #eceeef;
  border-left: 0;
}

.blockquote-reverse .blockquote-footer::before {
  content: "";
}

.blockquote-reverse .blockquote-footer::after {
  content: "\00A0 \2014";
}

.img-fluid, .carousel-inner > .carousel-item > img,
.carousel-inner > .carousel-item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}

.img-rounded {
  border-radius: .3rem;
}

.img-thumbnail {
  display: inline-block;
  max-width: 100%;
  height: auto;
  padding: .25rem;
  line-height: 1.5;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: .25rem;
  -webkit-transition: all .2s ease-in-out;
       -o-transition: all .2s ease-in-out;
          transition: all .2s ease-in-out;
}

.img-circle {
  border-radius: 50%;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: .5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #818a91;
}

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}

code {
  padding: .2rem .4rem;
  font-size: 90%;
  color: #bd4147;
  background-color: #f7f7f9;
  border-radius: .25rem;
}

kbd {
  padding: .2rem .4rem;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: .2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 90%;
  line-height: 1.5;
  color: #373a3c;
}

pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
  border-radius: 0;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container {
  padding-right: .9375rem;
  padding-left: .9375rem;
  margin-right: auto;
  margin-left: auto;
}

.container::after {
  display: table;
  clear: both;
  content: "";
}

@media (min-width: 544px) {
  .container {
    max-width: 576px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 940px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

.container-fluid {
  padding-right: .9375rem;
  padding-left: .9375rem;
  margin-right: auto;
  margin-left: auto;
}

.container-fluid::after {
  display: table;
  clear: both;
  content: "";
}

.row {
  margin-right: -.9375rem;
  margin-left: -.9375rem;
}

.row::after {
  display: table;
  clear: both;
  content: "";
}

.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, .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, .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, .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, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
  position: relative;
  min-height: 1px;
  padding-right: .9375rem;
  padding-left: .9375rem;
}

.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-1 {
  width: 8.333333%;
}

.col-xs-2 {
  width: 16.666667%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-4 {
  width: 33.333333%;
}

.col-xs-5 {
  width: 41.666667%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-7 {
  width: 58.333333%;
}

.col-xs-8 {
  width: 66.666667%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-10 {
  width: 83.333333%;
}

.col-xs-11 {
  width: 91.666667%;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-pull-1 {
  right: 8.333333%;
}

.col-xs-pull-2 {
  right: 16.666667%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-pull-4 {
  right: 33.333333%;
}

.col-xs-pull-5 {
  right: 41.666667%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-pull-7 {
  right: 58.333333%;
}

.col-xs-pull-8 {
  right: 66.666667%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-pull-10 {
  right: 83.333333%;
}

.col-xs-pull-11 {
  right: 91.666667%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-push-1 {
  left: 8.333333%;
}

.col-xs-push-2 {
  left: 16.666667%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-push-4 {
  left: 33.333333%;
}

.col-xs-push-5 {
  left: 41.666667%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-push-7 {
  left: 58.333333%;
}

.col-xs-push-8 {
  left: 66.666667%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-push-10 {
  left: 83.333333%;
}

.col-xs-push-11 {
  left: 91.666667%;
}

.col-xs-push-12 {
  left: 100%;
}

.col-xs-offset-0 {
  margin-left: 0;
}

.col-xs-offset-1 {
  margin-left: 8.333333%;
}

.col-xs-offset-2 {
  margin-left: 16.666667%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-4 {
  margin-left: 33.333333%;
}

.col-xs-offset-5 {
  margin-left: 41.666667%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-7 {
  margin-left: 58.333333%;
}

.col-xs-offset-8 {
  margin-left: 66.666667%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-10 {
  margin-left: 83.333333%;
}

.col-xs-offset-11 {
  margin-left: 91.666667%;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

@media (min-width: 544px) {
  .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-1 {
    width: 8.333333%;
  }
  .col-sm-2 {
    width: 16.666667%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-4 {
    width: 33.333333%;
  }
  .col-sm-5 {
    width: 41.666667%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-7 {
    width: 58.333333%;
  }
  .col-sm-8 {
    width: 66.666667%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-10 {
    width: 83.333333%;
  }
  .col-sm-11 {
    width: 91.666667%;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-pull-1 {
    right: 8.333333%;
  }
  .col-sm-pull-2 {
    right: 16.666667%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-4 {
    right: 33.333333%;
  }
  .col-sm-pull-5 {
    right: 41.666667%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-7 {
    right: 58.333333%;
  }
  .col-sm-pull-8 {
    right: 66.666667%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-10 {
    right: 83.333333%;
  }
  .col-sm-pull-11 {
    right: 91.666667%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-push-1 {
    left: 8.333333%;
  }
  .col-sm-push-2 {
    left: 16.666667%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-4 {
    left: 33.333333%;
  }
  .col-sm-push-5 {
    left: 41.666667%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-7 {
    left: 58.333333%;
  }
  .col-sm-push-8 {
    left: 66.666667%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-10 {
    left: 83.333333%;
  }
  .col-sm-push-11 {
    left: 91.666667%;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-offset-0 {
    margin-left: 0;
  }
  .col-sm-offset-1 {
    margin-left: 8.333333%;
  }
  .col-sm-offset-2 {
    margin-left: 16.666667%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-4 {
    margin-left: 33.333333%;
  }
  .col-sm-offset-5 {
    margin-left: 41.666667%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-7 {
    margin-left: 58.333333%;
  }
  .col-sm-offset-8 {
    margin-left: 66.666667%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-10 {
    margin-left: 83.333333%;
  }
  .col-sm-offset-11 {
    margin-left: 91.666667%;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
}

@media (min-width: 768px) {
  .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-1 {
    width: 8.333333%;
  }
  .col-md-2 {
    width: 16.666667%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-4 {
    width: 33.333333%;
  }
  .col-md-5 {
    width: 41.666667%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-7 {
    width: 58.333333%;
  }
  .col-md-8 {
    width: 66.666667%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-10 {
    width: 83.333333%;
  }
  .col-md-11 {
    width: 91.666667%;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-pull-1 {
    right: 8.333333%;
  }
  .col-md-pull-2 {
    right: 16.666667%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-4 {
    right: 33.333333%;
  }
  .col-md-pull-5 {
    right: 41.666667%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-7 {
    right: 58.333333%;
  }
  .col-md-pull-8 {
    right: 66.666667%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-10 {
    right: 83.333333%;
  }
  .col-md-pull-11 {
    right: 91.666667%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-push-1 {
    left: 8.333333%;
  }
  .col-md-push-2 {
    left: 16.666667%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-4 {
    left: 33.333333%;
  }
  .col-md-push-5 {
    left: 41.666667%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-7 {
    left: 58.333333%;
  }
  .col-md-push-8 {
    left: 66.666667%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-10 {
    left: 83.333333%;
  }
  .col-md-push-11 {
    left: 91.666667%;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-offset-0 {
    margin-left: 0;
  }
  .col-md-offset-1 {
    margin-left: 8.333333%;
  }
  .col-md-offset-2 {
    margin-left: 16.666667%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-4 {
    margin-left: 33.333333%;
  }
  .col-md-offset-5 {
    margin-left: 41.666667%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-7 {
    margin-left: 58.333333%;
  }
  .col-md-offset-8 {
    margin-left: 66.666667%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-10 {
    margin-left: 83.333333%;
  }
  .col-md-offset-11 {
    margin-left: 91.666667%;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
}

@media (min-width: 992px) {
  .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-1 {
    width: 8.333333%;
  }
  .col-lg-2 {
    width: 16.666667%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-4 {
    width: 33.333333%;
  }
  .col-lg-5 {
    width: 41.666667%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-7 {
    width: 58.333333%;
  }
  .col-lg-8 {
    width: 66.666667%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-10 {
    width: 83.333333%;
  }
  .col-lg-11 {
    width: 91.666667%;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-pull-1 {
    right: 8.333333%;
  }
  .col-lg-pull-2 {
    right: 16.666667%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-4 {
    right: 33.333333%;
  }
  .col-lg-pull-5 {
    right: 41.666667%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-7 {
    right: 58.333333%;
  }
  .col-lg-pull-8 {
    right: 66.666667%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-10 {
    right: 83.333333%;
  }
  .col-lg-pull-11 {
    right: 91.666667%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-push-1 {
    left: 8.333333%;
  }
  .col-lg-push-2 {
    left: 16.666667%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-4 {
    left: 33.333333%;
  }
  .col-lg-push-5 {
    left: 41.666667%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-7 {
    left: 58.333333%;
  }
  .col-lg-push-8 {
    left: 66.666667%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-10 {
    left: 83.333333%;
  }
  .col-lg-push-11 {
    left: 91.666667%;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-offset-0 {
    margin-left: 0;
  }
  .col-lg-offset-1 {
    margin-left: 8.333333%;
  }
  .col-lg-offset-2 {
    margin-left: 16.666667%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-4 {
    margin-left: 33.333333%;
  }
  .col-lg-offset-5 {
    margin-left: 41.666667%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-7 {
    margin-left: 58.333333%;
  }
  .col-lg-offset-8 {
    margin-left: 66.666667%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-10 {
    margin-left: 83.333333%;
  }
  .col-lg-offset-11 {
    margin-left: 91.666667%;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
}

@media (min-width: 1200px) {
  .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
    float: left;
  }
  .col-xl-1 {
    width: 8.333333%;
  }
  .col-xl-2 {
    width: 16.666667%;
  }
  .col-xl-3 {
    width: 25%;
  }
  .col-xl-4 {
    width: 33.333333%;
  }
  .col-xl-5 {
    width: 41.666667%;
  }
  .col-xl-6 {
    width: 50%;
  }
  .col-xl-7 {
    width: 58.333333%;
  }
  .col-xl-8 {
    width: 66.666667%;
  }
  .col-xl-9 {
    width: 75%;
  }
  .col-xl-10 {
    width: 83.333333%;
  }
  .col-xl-11 {
    width: 91.666667%;
  }
  .col-xl-12 {
    width: 100%;
  }
  .col-xl-pull-0 {
    right: auto;
  }
  .col-xl-pull-1 {
    right: 8.333333%;
  }
  .col-xl-pull-2 {
    right: 16.666667%;
  }
  .col-xl-pull-3 {
    right: 25%;
  }
  .col-xl-pull-4 {
    right: 33.333333%;
  }
  .col-xl-pull-5 {
    right: 41.666667%;
  }
  .col-xl-pull-6 {
    right: 50%;
  }
  .col-xl-pull-7 {
    right: 58.333333%;
  }
  .col-xl-pull-8 {
    right: 66.666667%;
  }
  .col-xl-pull-9 {
    right: 75%;
  }
  .col-xl-pull-10 {
    right: 83.333333%;
  }
  .col-xl-pull-11 {
    right: 91.666667%;
  }
  .col-xl-pull-12 {
    right: 100%;
  }
  .col-xl-push-0 {
    left: auto;
  }
  .col-xl-push-1 {
    left: 8.333333%;
  }
  .col-xl-push-2 {
    left: 16.666667%;
  }
  .col-xl-push-3 {
    left: 25%;
  }
  .col-xl-push-4 {
    left: 33.333333%;
  }
  .col-xl-push-5 {
    left: 41.666667%;
  }
  .col-xl-push-6 {
    left: 50%;
  }
  .col-xl-push-7 {
    left: 58.333333%;
  }
  .col-xl-push-8 {
    left: 66.666667%;
  }
  .col-xl-push-9 {
    left: 75%;
  }
  .col-xl-push-10 {
    left: 83.333333%;
  }
  .col-xl-push-11 {
    left: 91.666667%;
  }
  .col-xl-push-12 {
    left: 100%;
  }
  .col-xl-offset-0 {
    margin-left: 0;
  }
  .col-xl-offset-1 {
    margin-left: 8.333333%;
  }
  .col-xl-offset-2 {
    margin-left: 16.666667%;
  }
  .col-xl-offset-3 {
    margin-left: 25%;
  }
  .col-xl-offset-4 {
    margin-left: 33.333333%;
  }
  .col-xl-offset-5 {
    margin-left: 41.666667%;
  }
  .col-xl-offset-6 {
    margin-left: 50%;
  }
  .col-xl-offset-7 {
    margin-left: 58.333333%;
  }
  .col-xl-offset-8 {
    margin-left: 66.666667%;
  }
  .col-xl-offset-9 {
    margin-left: 75%;
  }
  .col-xl-offset-10 {
    margin-left: 83.333333%;
  }
  .col-xl-offset-11 {
    margin-left: 91.666667%;
  }
  .col-xl-offset-12 {
    margin-left: 100%;
  }
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1rem;
}

.table th,
.table td {
  padding: .75rem;
  line-height: 1.5;
  vertical-align: top;
  border-top: 1px solid #eceeef;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #eceeef;
}

.table tbody + tbody {
  border-top: 2px solid #eceeef;
}

.table .table {
  background-color: #fff;
}

.table-sm th,
.table-sm td {
  padding: .3rem;
}

.table-bordered {
  border: 1px solid #eceeef;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #eceeef;
}

.table-bordered thead th,
.table-bordered thead 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-active,
.table-active > th,
.table-active > td {
  background-color: #f5f5f5;
}

.table-hover .table-active:hover {
  background-color: #e8e8e8;
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: #e8e8e8;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #dff0d8;
}

.table-hover .table-success:hover {
  background-color: #d0e9c6;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #d0e9c6;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #d9edf7;
}

.table-hover .table-info:hover {
  background-color: #c4e3f3;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #c4e3f3;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #fcf8e3;
}

.table-hover .table-warning:hover {
  background-color: #faf2cc;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #faf2cc;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f2dede;
}

.table-hover .table-danger:hover {
  background-color: #ebcccc;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #ebcccc;
}

.table-responsive {
  display: block;
  width: 100%;
  min-height: .01%;
  overflow-x: auto;
}

.thead-inverse th {
  color: #fff;
  background-color: #373a3c;
}

.thead-default th {
  color: #55595c;
  background-color: #eceeef;
}

.table-inverse {
  color: #eceeef;
  background-color: #373a3c;
}

.table-inverse.table-bordered {
  border: 0;
}

.table-inverse th,
.table-inverse td,
.table-inverse thead th {
  border-color: #55595c;
}

.table-reflow thead {
  float: left;
}

.table-reflow tbody {
  display: block;
  white-space: nowrap;
}

.table-reflow th,
.table-reflow td {
  border-top: 1px solid #eceeef;
  border-left: 1px solid #eceeef;
}

.table-reflow th:last-child,
.table-reflow td:last-child {
  border-right: 1px solid #eceeef;
}

.table-reflow thead:last-child tr:last-child th,
.table-reflow thead:last-child tr:last-child td,
.table-reflow tbody:last-child tr:last-child th,
.table-reflow tbody:last-child tr:last-child td,
.table-reflow tfoot:last-child tr:last-child th,
.table-reflow tfoot:last-child tr:last-child td {
  border-bottom: 1px solid #eceeef;
}

.table-reflow tr {
  float: left;
}

.table-reflow tr th,
.table-reflow tr td {
  display: block !important;
  border: 1px solid #eceeef;
}

.form-control {
  display: block;
  width: 100%;
  padding: .375rem .75rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #55595c;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: .25rem;
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:focus {
  border-color: #66afe9;
  outline: none;
}

.form-control::-webkit-input-placeholder {
  color: #999;
  opacity: 1;
}

.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #999;
  opacity: 1;
}

.form-control::placeholder {
  color: #999;
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #eceeef;
  opacity: 1;
}

.form-control:disabled {
  cursor: not-allowed;
}

.form-control-file,
.form-control-range {
  display: block;
}

.form-control-label {
  padding: .375rem .75rem;
  margin-bottom: 0;
}

@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: 2.25rem;
  }
  input[type="date"].input-sm,
  .input-group-sm input[type="date"].form-control,
  input[type="time"].input-sm,
  .input-group-sm
  input[type="time"].form-control,
  input[type="datetime-local"].input-sm,
  .input-group-sm
  input[type="datetime-local"].form-control,
  input[type="month"].input-sm,
  .input-group-sm
  input[type="month"].form-control {
    line-height: 1.8625rem;
  }
  input[type="date"].input-lg,
  .input-group-lg input[type="date"].form-control,
  input[type="time"].input-lg,
  .input-group-lg
  input[type="time"].form-control,
  input[type="datetime-local"].input-lg,
  .input-group-lg
  input[type="datetime-local"].form-control,
  input[type="month"].input-lg,
  .input-group-lg
  input[type="month"].form-control {
    line-height: 3.166667rem;
  }
}

.form-control-static {
  min-height: 2.25rem;
  padding-top: .375rem;
  padding-bottom: .375rem;
  margin-bottom: 0;
}

.form-control-static.form-control-sm, .input-group-sm > .form-control-static.form-control,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn, .form-control-static.form-control-lg, .input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  padding: .275rem .75rem;
  font-size: .875rem;
  line-height: 1.5;
  border-radius: .2rem;
}

.form-control-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  padding: .75rem 1.25rem;
  font-size: 1.25rem;
  line-height: 1.333333;
  border-radius: .3rem;
}

.form-group {
  margin-bottom: 1rem;
}

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-bottom: .75rem;
}

.radio label,
.checkbox label {
  padding-left: 1.25rem;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}

.radio label input:only-child,
.checkbox label input:only-child {
  position: static;
}

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-top: .25rem;
  margin-left: -1.25rem;
}

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -.25rem;
}

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 1.25rem;
  margin-bottom: 0;
  font-weight: normal;
  vertical-align: middle;
  cursor: pointer;
}

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: .75rem;
}

input[type="radio"]:disabled, input[type="radio"].disabled,
input[type="checkbox"]:disabled,
input[type="checkbox"].disabled {
  cursor: not-allowed;
}

.radio-inline.disabled,
.checkbox-inline.disabled {
  cursor: not-allowed;
}

.radio.disabled label,
.checkbox.disabled label {
  cursor: not-allowed;
}

.form-control-success,
.form-control-warning,
.form-control-danger {
  padding-right: 2.25rem;
  background-repeat: no-repeat;
  background-position: center right .5625rem;
  -webkit-background-size: 1.4625rem 1.4625rem;
          background-size: 1.4625rem 1.4625rem;
}

.has-success .text-help,
.has-success .form-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: #5cb85c;
}

.has-success .form-control {
  border-color: #5cb85c;
}

.has-success .input-group-addon {
  color: #5cb85c;
  background-color: #eaf6ea;
  border-color: #5cb85c;
}

.has-success .form-control-feedback {
  color: #5cb85c;
}

.has-success .form-control-success {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2MTIgNzkyIj48cGF0aCBmaWxsPSIjNWNiODVjIiBkPSJNMjMzLjggNjEwYy0xMy4zIDAtMjYtNi0zNC0xNi44TDkwLjUgNDQ4LjhDNzYuMyA0MzAgODAgNDAzLjMgOTguOCAzODljMTguOC0xNC4yIDQ1LjUtMTAuNCA1OS44IDguNGw3MiA5NUw0NTEuMyAyNDJjMTIuNS0yMCAzOC44LTI2LjIgNTguOC0xMy43IDIwIDEyLjQgMjYgMzguNyAxMy43IDU4LjhMMjcwIDU5MGMtNy40IDEyLTIwLjIgMTkuNC0zNC4zIDIwaC0yeiIvPjwvc3ZnPg==");
}

.has-warning .text-help,
.has-warning .form-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: #f0ad4e;
}

.has-warning .form-control {
  border-color: #f0ad4e;
}

.has-warning .input-group-addon {
  color: #f0ad4e;
  background-color: white;
  border-color: #f0ad4e;
}

.has-warning .form-control-feedback {
  color: #f0ad4e;
}

.has-warning .form-control-warning {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2MTIgNzkyIj48cGF0aCBmaWxsPSIjZjBhZDRlIiBkPSJNNjAzIDY0MC4ybC0yNzguNS01MDljLTMuOC02LjYtMTAuOC0xMC42LTE4LjUtMTAuNnMtMTQuNyA0LTE4LjUgMTAuNkw5IDY0MC4yYy0zLjcgNi41LTMuNiAxNC40LjIgMjAuOCAzLjggNi41IDEwLjggMTAuNCAxOC4zIDEwLjRoNTU3YzcuNiAwIDE0LjYtNCAxOC40LTEwLjQgMy41LTYuNCAzLjYtMTQuNCAwLTIwLjh6bS0yNjYuNC0zMGgtNjEuMlY1NDloNjEuMnY2MS4yem0wLTEwN2gtNjEuMlYzMDRoNjEuMnYxOTl6Ii8+PC9zdmc+");
}

.has-danger .text-help,
.has-danger .form-control-label,
.has-danger .radio,
.has-danger .checkbox,
.has-danger .radio-inline,
.has-danger .checkbox-inline,
.has-danger.radio label,
.has-danger.checkbox label,
.has-danger.radio-inline label,
.has-danger.checkbox-inline label {
  color: #d9534f;
}

.has-danger .form-control {
  border-color: #d9534f;
}

.has-danger .input-group-addon {
  color: #d9534f;
  background-color: #fdf7f7;
  border-color: #d9534f;
}

.has-danger .form-control-feedback {
  color: #d9534f;
}

.has-danger .form-control-danger {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2MTIgNzkyIj48cGF0aCBmaWxsPSIjZDk1MzRmIiBkPSJNNDQ3IDU0NC40Yy0xNC40IDE0LjQtMzcuNiAxNC40LTUyIDBsLTg5LTkyLjctODkgOTIuN2MtMTQuNSAxNC40LTM3LjcgMTQuNC01MiAwLTE0LjQtMTQuNC0xNC40LTM3LjYgMC01Mmw5Mi40LTk2LjMtOTIuNC05Ni4zYy0xNC40LTE0LjQtMTQuNC0zNy42IDAtNTJzMzcuNi0xNC4zIDUyIDBsODkgOTIuOCA4OS4yLTkyLjdjMTQuNC0xNC40IDM3LjYtMTQuNCA1MiAwIDE0LjMgMTQuNCAxNC4zIDM3LjYgMCA1MkwzNTQuNiAzOTZsOTIuNCA5Ni40YzE0LjQgMTQuNCAxNC40IDM3LjYgMCA1MnoiLz48L3N2Zz4=");
}

@media (min-width: 544px) {
  .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 .form-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;
  }
}

.btn {
  display: inline-block;
  padding: .375rem 1rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border: 1px solid transparent;
  border-radius: .25rem;
}

.btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.btn:focus, .btn:hover {
  text-decoration: none;
}

.btn.focus {
  text-decoration: none;
}

.btn:active, .btn.active {
  background-image: none;
  outline: 0;
}

.btn.disabled, .btn:disabled {
  cursor: not-allowed;
  opacity: .65;
}

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #0275d8;
  border-color: #0275d8;
}

.btn-primary:hover {
  color: #fff;
  background-color: #025aa5;
  border-color: #01549b;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #025aa5;
  border-color: #01549b;
}

.btn-primary:active, .btn-primary.active,
.open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #025aa5;
  background-image: none;
  border-color: #01549b;
}

.btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
.open > .btn-primary.dropdown-toggle:hover,
.open > .btn-primary.dropdown-toggle:focus,
.open > .btn-primary.dropdown-toggle.focus {
  color: #fff;
  background-color: #014682;
  border-color: #01315a;
}

.btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary:disabled:focus, .btn-primary:disabled.focus {
  background-color: #0275d8;
  border-color: #0275d8;
}

.btn-primary.disabled:hover, .btn-primary:disabled:hover {
  background-color: #0275d8;
  border-color: #0275d8;
}

.btn-secondary {
  color: #373a3c;
  background-color: #fff;
  border-color: #ccc;
}

.btn-secondary:hover {
  color: #373a3c;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-secondary:focus, .btn-secondary.focus {
  color: #373a3c;
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-secondary:active, .btn-secondary.active,
.open > .btn-secondary.dropdown-toggle {
  color: #373a3c;
  background-color: #e6e6e6;
  background-image: none;
  border-color: #adadad;
}

.btn-secondary:active:hover, .btn-secondary:active:focus, .btn-secondary:active.focus, .btn-secondary.active:hover, .btn-secondary.active:focus, .btn-secondary.active.focus,
.open > .btn-secondary.dropdown-toggle:hover,
.open > .btn-secondary.dropdown-toggle:focus,
.open > .btn-secondary.dropdown-toggle.focus {
  color: #373a3c;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}

.btn-secondary.disabled:focus, .btn-secondary.disabled.focus, .btn-secondary:disabled:focus, .btn-secondary:disabled.focus {
  background-color: #fff;
  border-color: #ccc;
}

.btn-secondary.disabled:hover, .btn-secondary:disabled:hover {
  background-color: #fff;
  border-color: #ccc;
}

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #2aabd2;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #2aabd2;
}

.btn-info:active, .btn-info.active,
.open > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #31b0d5;
  background-image: none;
  border-color: #2aabd2;
}

.btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus,
.open > .btn-info.dropdown-toggle:hover,
.open > .btn-info.dropdown-toggle:focus,
.open > .btn-info.dropdown-toggle.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1f7e9a;
}

.btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info:disabled:focus, .btn-info:disabled.focus {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-info.disabled:hover, .btn-info:disabled:hover {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #419641;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #419641;
}

.btn-success:active, .btn-success.active,
.open > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #449d44;
  background-image: none;
  border-color: #419641;
}

.btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus,
.open > .btn-success.dropdown-toggle:hover,
.open > .btn-success.dropdown-toggle:focus,
.open > .btn-success.dropdown-toggle.focus {
  color: #fff;
  background-color: #398439;
  border-color: #2d672d;
}

.btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success:disabled:focus, .btn-success:disabled.focus {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-success.disabled:hover, .btn-success:disabled:hover {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #eb9316;
}

.btn-warning:focus, .btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #eb9316;
}

.btn-warning:active, .btn-warning.active,
.open > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #ec971f;
  background-image: none;
  border-color: #eb9316;
}

.btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus,
.open > .btn-warning.dropdown-toggle:hover,
.open > .btn-warning.dropdown-toggle:focus,
.open > .btn-warning.dropdown-toggle.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #b06d0f;
}

.btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning:disabled:focus, .btn-warning:disabled.focus {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-warning.disabled:hover, .btn-warning:disabled:hover {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #c12e2a;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #c12e2a;
}

.btn-danger:active, .btn-danger.active,
.open > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c9302c;
  background-image: none;
  border-color: #c12e2a;
}

.btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus,
.open > .btn-danger.dropdown-toggle:hover,
.open > .btn-danger.dropdown-toggle:focus,
.open > .btn-danger.dropdown-toggle.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #8b211e;
}

.btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger:disabled:focus, .btn-danger:disabled.focus {
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-danger.disabled:hover, .btn-danger:disabled:hover {
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-primary-outline {
  color: #0275d8;
  background-color: transparent;
  background-image: none;
  border-color: #0275d8;
}

.btn-primary-outline:focus, .btn-primary-outline.focus, .btn-primary-outline:active, .btn-primary-outline.active,
.open > .btn-primary-outline.dropdown-toggle {
  color: #fff;
  background-color: #0275d8;
  border-color: #0275d8;
}

.btn-primary-outline:hover {
  color: #fff;
  background-color: #0275d8;
  border-color: #0275d8;
}

.btn-primary-outline.disabled:focus, .btn-primary-outline.disabled.focus, .btn-primary-outline:disabled:focus, .btn-primary-outline:disabled.focus {
  border-color: #43a7fd;
}

.btn-primary-outline.disabled:hover, .btn-primary-outline:disabled:hover {
  border-color: #43a7fd;
}

.btn-secondary-outline {
  color: #ccc;
  background-color: transparent;
  background-image: none;
  border-color: #ccc;
}

.btn-secondary-outline:focus, .btn-secondary-outline.focus, .btn-secondary-outline:active, .btn-secondary-outline.active,
.open > .btn-secondary-outline.dropdown-toggle {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-secondary-outline:hover {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-secondary-outline.disabled:focus, .btn-secondary-outline.disabled.focus, .btn-secondary-outline:disabled:focus, .btn-secondary-outline:disabled.focus {
  border-color: white;
}

.btn-secondary-outline.disabled:hover, .btn-secondary-outline:disabled:hover {
  border-color: white;
}

.btn-info-outline {
  color: #5bc0de;
  background-color: transparent;
  background-image: none;
  border-color: #5bc0de;
}

.btn-info-outline:focus, .btn-info-outline.focus, .btn-info-outline:active, .btn-info-outline.active,
.open > .btn-info-outline.dropdown-toggle {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-info-outline:hover {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-info-outline.disabled:focus, .btn-info-outline.disabled.focus, .btn-info-outline:disabled:focus, .btn-info-outline:disabled.focus {
  border-color: #b0e1ef;
}

.btn-info-outline.disabled:hover, .btn-info-outline:disabled:hover {
  border-color: #b0e1ef;
}

.btn-success-outline {
  color: #5cb85c;
  background-color: transparent;
  background-image: none;
  border-color: #5cb85c;
}

.btn-success-outline:focus, .btn-success-outline.focus, .btn-success-outline:active, .btn-success-outline.active,
.open > .btn-success-outline.dropdown-toggle {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-success-outline:hover {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-success-outline.disabled:focus, .btn-success-outline.disabled.focus, .btn-success-outline:disabled:focus, .btn-success-outline:disabled.focus {
  border-color: #a3d7a3;
}

.btn-success-outline.disabled:hover, .btn-success-outline:disabled:hover {
  border-color: #a3d7a3;
}

.btn-warning-outline {
  color: #f0ad4e;
  background-color: transparent;
  background-image: none;
  border-color: #f0ad4e;
}

.btn-warning-outline:focus, .btn-warning-outline.focus, .btn-warning-outline:active, .btn-warning-outline.active,
.open > .btn-warning-outline.dropdown-toggle {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-warning-outline:hover {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-warning-outline.disabled:focus, .btn-warning-outline.disabled.focus, .btn-warning-outline:disabled:focus, .btn-warning-outline:disabled.focus {
  border-color: #f8d9ac;
}

.btn-warning-outline.disabled:hover, .btn-warning-outline:disabled:hover {
  border-color: #f8d9ac;
}

.btn-danger-outline {
  color: #d9534f;
  background-color: transparent;
  background-image: none;
  border-color: #d9534f;
}

.btn-danger-outline:focus, .btn-danger-outline.focus, .btn-danger-outline:active, .btn-danger-outline.active,
.open > .btn-danger-outline.dropdown-toggle {
  color: #fff;
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-danger-outline:hover {
  color: #fff;
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-danger-outline.disabled:focus, .btn-danger-outline.disabled.focus, .btn-danger-outline:disabled:focus, .btn-danger-outline:disabled.focus {
  border-color: #eba5a3;
}

.btn-danger-outline.disabled:hover, .btn-danger-outline:disabled:hover {
  border-color: #eba5a3;
}

.btn-link {
  font-weight: normal;
  color: #0275d8;
  border-radius: 0;
}

.btn-link, .btn-link:active, .btn-link.active, .btn-link:disabled {
  background-color: transparent;
}

.btn-link, .btn-link:focus, .btn-link:active {
  border-color: transparent;
}

.btn-link:hover {
  border-color: transparent;
}

.btn-link:focus, .btn-link:hover {
  color: #014c8c;
  text-decoration: underline;
  background-color: transparent;
}

.btn-link:disabled:focus, .btn-link:disabled:hover {
  color: #818a91;
  text-decoration: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: .75rem 1.25rem;
  font-size: 1.25rem;
  line-height: 1.333333;
  border-radius: .3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: .25rem .75rem;
  font-size: .875rem;
  line-height: 1.5;
  border-radius: .2rem;
}

.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 .15s linear;
       -o-transition: opacity .15s linear;
          transition: opacity .15s linear;
}

.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.in {
  display: block;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-timing-function: ease;
       -o-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: .35s;
       -o-transition-duration: .35s;
          transition-duration: .35s;
  -webkit-transition-property: height;
       -o-transition-property: height;
          transition-property: height;
}

.dropup,
.dropdown {
  position: relative;
}

.dropdown-toggle::after {
  display: inline-block;
  width: 0;
  height: 0;
  margin-right: .25rem;
  margin-left: .25rem;
  vertical-align: middle;
  content: "";
  border-top: .3em solid;
  border-right: .3em solid transparent;
  border-left: .3em solid transparent;
}

.dropdown-toggle:focus {
  outline: 0;
}

.dropup .dropdown-toggle::after {
  border-top: 0;
  border-bottom: .3em solid;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  font-size: 1rem;
  color: #373a3c;
  text-align: left;
  list-style: none;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: .25rem;
}

.dropdown-divider {
  height: 1px;
  margin: .5rem 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.5;
  color: #373a3c;
  text-align: inherit;
  white-space: nowrap;
  background: none;
  border: 0;
}

.dropdown-item:focus, .dropdown-item:hover {
  color: #2b2d2f;
  text-decoration: none;
  background-color: #f5f5f5;
}

.dropdown-item.active, .dropdown-item.active:focus, .dropdown-item.active:hover {
  color: #fff;
  text-decoration: none;
  background-color: #0275d8;
  outline: 0;
}

.dropdown-item.disabled, .dropdown-item.disabled:focus, .dropdown-item.disabled:hover {
  color: #818a91;
}

.dropdown-item.disabled:focus, .dropdown-item.disabled:hover {
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
  background-image: none;
  filter: "progid:DXImageTransform.Microsoft.gradient(enabled = false)";
}

.open > .dropdown-menu {
  display: block;
}

.open > a {
  outline: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: .875rem;
  line-height: 1.5;
  color: #818a91;
  white-space: nowrap;
}

.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990;
}

.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  content: "";
  border-top: 0;
  border-bottom: .3em solid;
}

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}

.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:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 2;
}

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}

.btn-toolbar {
  margin-left: -5px;
}

.btn-toolbar::after {
  display: table;
  clear: both;
  content: "";
}

.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}

.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}

.btn-group > .btn:first-child {
  margin-left: 0;
}

.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group > .btn-group {
  float: left;
}

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}

.btn-group > .btn + .dropdown-toggle {
  padding-right: 8px;
  padding-left: 8px;
}

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-right: 12px;
  padding-left: 12px;
}

.btn .caret {
  margin-left: 0;
}

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: .3em .3em 0;
  border-bottom-width: 0;
}

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 .3em .3em;
}

.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::after {
  display: table;
  clear: both;
  content: "";
}

.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: .25rem;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: .25rem;
}

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[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 .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}

.input-group .form-control:focus, .input-group .form-control:active, .input-group .form-control:hover {
  z-index: 3;
}

.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: .375rem .75rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1;
  color: #55595c;
  text-align: center;
  background-color: #eceeef;
  border: 1px solid #ccc;
  border-radius: .25rem;
}

.input-group-addon.form-control-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
  padding: .275rem .75rem;
  font-size: .875rem;
  border-radius: .2rem;
}

.input-group-addon.form-control-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
  padding: .75rem 1.25rem;
  font-size: 1.25rem;
  border-radius: .3rem;
}

.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-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-addon:first-child {
  border-right: 0;
}

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn: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-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-addon:last-child {
  border-left: 0;
}

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}

.input-group-btn > .btn {
  position: relative;
}

.input-group-btn > .btn + .btn {
  margin-left: -1px;
}

.input-group-btn > .btn:focus, .input-group-btn > .btn:active, .input-group-btn > .btn:hover {
  z-index: 3;
}

.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;
}

.input-group-btn:last-child > .btn:focus, .input-group-btn:last-child > .btn:active, .input-group-btn:last-child > .btn:hover,
.input-group-btn:last-child > .btn-group:focus,
.input-group-btn:last-child > .btn-group:active,
.input-group-btn:last-child > .btn-group:hover {
  z-index: 3;
}

.c-input {
  position: relative;
  display: inline;
  padding-left: 1.5rem;
  color: #555;
  cursor: pointer;
}

.c-input > input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.c-input > input:checked ~ .c-indicator {
  color: #fff;
  background-color: #0074d9;
}

.c-input > input:focus ~ .c-indicator {
  -webkit-box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
          box-shadow: 0 0 0 .075rem #fff, 0 0 0 .2rem #0074d9;
}

.c-input > input:active ~ .c-indicator {
  color: #fff;
  background-color: #84c6ff;
}

.c-input + .c-input {
  margin-left: 1rem;
}

.c-indicator {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1rem;
  height: 1rem;
  font-size: 65%;
  line-height: 1rem;
  color: #eee;
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-background-size: 50% 50%;
          background-size: 50% 50%;
}

.c-checkbox .c-indicator {
  border-radius: .25rem;
}

.c-checkbox input:checked ~ .c-indicator {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTYuNCwxTDUuNywxLjdMMi45LDQuNUwyLjEsMy43TDEuNCwzTDAsNC40bDAuNywwLjdsMS41LDEuNWwwLjcsMC43bDAuNy0wLjdsMy41LTMuNWwwLjctMC43TDYuNCwxTDYuNCwxeiINCgkvPg0KPC9zdmc+DQo=);
}

.c-checkbox input:indeterminate ~ .c-indicator {
  background-color: #0074d9;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iOHB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDggOCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgOCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0wLDN2Mmg4VjNIMHoiLz4NCjwvc3ZnPg0K);
}

.c-radio .c-indicator {
  border-radius: 50%;
}

.c-radio input:checked ~ .c-indicator {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTQsMUMyLjMsMSwxLDIuMywxLDRzMS4zLDMsMywzczMtMS4zLDMtM1M1LjcsMSw0LDF6Ii8+DQo8L3N2Zz4NCg==);
}

.c-inputs-stacked .c-input {
  display: inline;
}

.c-inputs-stacked .c-input::after {
  display: block;
  margin-bottom: .25rem;
  content: "";
}

.c-inputs-stacked .c-input + .c-input {
  margin-left: 0;
}

.c-select {
  display: inline-block;
  max-width: 100%;
  -webkit-appearance: none;
  padding: .375rem 1.75rem .375rem .75rem;
  padding-right: .75rem \9;
  color: #55595c;
  vertical-align: middle;
  background: #fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAUCAMAAACzvE1FAAAADFBMVEUzMzMzMzMzMzMzMzMKAG/3AAAAA3RSTlMAf4C/aSLHAAAAPElEQVR42q3NMQ4AIAgEQTn//2cLdRKppSGzBYwzVXvznNWs8C58CiussPJj8h6NwgorrKRdTvuV9v16Afn0AYFOB7aYAAAAAElFTkSuQmCC) no-repeat right .75rem center;
  background-image: none \9;
  -webkit-background-size: 8px 10px;
          background-size: 8px 10px;
  border: 1px solid #ccc;

     -moz-appearance: none;
}

.c-select:focus {
  border-color: #51a7e8;
  outline: none;
}

.c-select::-ms-expand {
  opacity: 0;
}

.c-select-sm {
  padding-top: 3px;
  padding-bottom: 3px;
  font-size: 12px;
}

.c-select-sm:not([multiple]) {
  height: 26px;
  min-height: 26px;
}

.file {
  position: relative;
  display: inline-block;
  height: 2.5rem;
  cursor: pointer;
}

.file input {
  min-width: 14rem;
  margin: 0;
  filter: alpha(opacity=0);
  opacity: 0;
}

.file-custom {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 5;
  height: 2.5rem;
  padding: .5rem 1rem;
  line-height: 1.5;
  color: #555;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: .25rem;
}

.file-custom::after {
  content: "Choose file...";
}

.file-custom::before {
  position: absolute;
  top: -.075rem;
  right: -.075rem;
  bottom: -.075rem;
  z-index: 6;
  display: block;
  height: 2.5rem;
  padding: .5rem 1rem;
  line-height: 1.5;
  color: #555;
  content: "Browse";
  background-color: #eee;
  border: 1px solid #ddd;
  border-radius: 0 .25rem .25rem 0;
}

.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: inline-block;
}

.nav-link:focus, .nav-link:hover {
  text-decoration: none;
}

.nav-link.disabled {
  color: #818a91;
}

.nav-link.disabled, .nav-link.disabled:focus, .nav-link.disabled:hover {
  color: #818a91;
  cursor: not-allowed;
  background-color: transparent;
}

.nav-inline .nav-item {
  display: inline-block;
}

.nav-inline .nav-item + .nav-item,
.nav-inline .nav-link + .nav-link {
  margin-left: 1rem;
}

.nav-tabs {
  border-bottom: 1px solid #ddd;
}

.nav-tabs::after {
  display: table;
  clear: both;
  content: "";
}

.nav-tabs .nav-item {
  float: left;
  margin-bottom: -1px;
}

.nav-tabs .nav-item + .nav-item {
  margin-left: .2rem;
}

.nav-tabs .nav-link {
  display: block;
  padding: .5em 1em;
  border: 1px solid transparent;
  border-radius: .25rem .25rem 0 0;
}

.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover {
  border-color: #eceeef #eceeef #ddd;
}

.nav-tabs .nav-link.disabled, .nav-tabs .nav-link.disabled:focus, .nav-tabs .nav-link.disabled:hover {
  color: #818a91;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active, .nav-tabs .nav-link.active:focus, .nav-tabs .nav-link.active:hover,
.nav-tabs .nav-item.open .nav-link,
.nav-tabs .nav-item.open .nav-link:focus,
.nav-tabs .nav-item.open .nav-link:hover {
  color: #55595c;
  background-color: #fff;
  border-color: #ddd #ddd transparent;
}

.nav-pills::after {
  display: table;
  clear: both;
  content: "";
}

.nav-pills .nav-item {
  float: left;
}

.nav-pills .nav-item + .nav-item {
  margin-left: .2rem;
}

.nav-pills .nav-link {
  display: block;
  padding: .5em 1em;
  border-radius: .25rem;
}

.nav-pills .nav-link.active, .nav-pills .nav-link.active:focus, .nav-pills .nav-link.active:hover,
.nav-pills .nav-item.open .nav-link,
.nav-pills .nav-item.open .nav-link:focus,
.nav-pills .nav-item.open .nav-link:hover {
  color: #fff;
  cursor: default;
  background-color: #0275d8;
}

.nav-stacked .nav-item {
  display: block;
  float: none;
}

.nav-stacked .nav-item + .nav-item {
  margin-top: .2rem;
  margin-left: 0;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.navbar {
  position: relative;
  padding: .5rem 1rem;
}

.navbar::after {
  display: table;
  clear: both;
  content: "";
}

@media (min-width: 544px) {
  .navbar {
    border-radius: .25rem;
  }
}

.navbar-full {
  z-index: 1000;
}

@media (min-width: 544px) {
  .navbar-full {
    border-radius: 0;
  }
}

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}

@media (min-width: 544px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}

.navbar-fixed-top {
  top: 0;
}

.navbar-fixed-bottom {
  bottom: 0;
}

.navbar-sticky-top {
  position: -webkit-sticky;
  position:         sticky;
  top: 0;
  z-index: 1030;
  width: 100%;
}

@media (min-width: 544px) {
  .navbar-sticky-top {
    border-radius: 0;
  }
}

.navbar-brand {
  float: left;
  padding-top: .25rem;
  padding-bottom: .25rem;
  margin-right: 1rem;
  font-size: 1.25rem;
}

.navbar-brand:focus, .navbar-brand:hover {
  text-decoration: none;
}

.navbar-brand > img {
  display: block;
}

.navbar-divider {
  float: left;
  width: 1px;
  padding-top: .425rem;
  padding-bottom: .425rem;
  margin-right: 1rem;
  margin-left: 1rem;
  overflow: hidden;
}

.navbar-divider::before {
  content: "\00a0";
}

.navbar-toggler {
  padding: .5rem .75rem;
  font-size: 1.25rem;
  line-height: 1;
  background: none;
  border: 1px solid transparent;
  border-radius: .25rem;
}

.navbar-toggler:focus, .navbar-toggler:hover {
  text-decoration: none;
}

@media (min-width: 544px) {
  .navbar-toggleable-xs {
    display: block !important;
  }
}

@media (min-width: 768px) {
  .navbar-toggleable-sm {
    display: block !important;
  }
}

@media (min-width: 992px) {
  .navbar-toggleable-md {
    display: block !important;
  }
}

.navbar-nav .nav-item {
  float: left;
}

.navbar-nav .nav-link {
  display: block;
  padding-top: .425rem;
  padding-bottom: .425rem;
}

.navbar-nav .nav-link + .nav-link {
  margin-left: 1rem;
}

.navbar-nav .nav-item + .nav-item {
  margin-left: 1rem;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, .8);
}

.navbar-light .navbar-brand:focus, .navbar-light .navbar-brand:hover {
  color: rgba(0, 0, 0, .8);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, .3);
}

.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
  color: rgba(0, 0, 0, .6);
}

.navbar-light .navbar-nav .open > .nav-link, .navbar-light .navbar-nav .open > .nav-link:focus, .navbar-light .navbar-nav .open > .nav-link:hover,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .active > .nav-link:focus,
.navbar-light .navbar-nav .active > .nav-link:hover,
.navbar-light .navbar-nav .nav-link.open,
.navbar-light .navbar-nav .nav-link.open:focus,
.navbar-light .navbar-nav .nav-link.open:hover,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.active:focus,
.navbar-light .navbar-nav .nav-link.active:hover {
  color: rgba(0, 0, 0, .8);
}

.navbar-light .navbar-divider {
  background-color: rgba(0, 0, 0, .075);
}

.navbar-dark .navbar-brand {
  color: white;
}

.navbar-dark .navbar-brand:focus, .navbar-dark .navbar-brand:hover {
  color: white;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, .5);
}

.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover {
  color: rgba(255, 255, 255, .75);
}

.navbar-dark .navbar-nav .open > .nav-link, .navbar-dark .navbar-nav .open > .nav-link:focus, .navbar-dark .navbar-nav .open > .nav-link:hover,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link:focus,
.navbar-dark .navbar-nav .active > .nav-link:hover,
.navbar-dark .navbar-nav .nav-link.open,
.navbar-dark .navbar-nav .nav-link.open:focus,
.navbar-dark .navbar-nav .nav-link.open:hover,
.navbar-dark .navbar-nav .nav-link.active,
.navbar-dark .navbar-nav .nav-link.active:focus,
.navbar-dark .navbar-nav .nav-link.active:hover {
  color: white;
}

.navbar-dark .navbar-divider {
  background-color: rgba(255, 255, 255, .075);
}

.card {
  position: relative;
  display: block;
  margin-bottom: .75rem;
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: .25rem;
}

.card-block {
  padding: 1.25rem;
}

.card-title {
  margin-bottom: .75rem;
}

.card-subtitle {
  margin-top: -.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card > .list-group:first-child .list-group-item:first-child {
  border-radius: .25rem .25rem 0 0;
}

.card > .list-group:last-child .list-group-item:last-child {
  border-radius: 0 0 .25rem .25rem;
}

.card-header {
  padding: .75rem 1.25rem;
  background-color: #f5f5f5;
  border-bottom: 1px solid #e5e5e5;
}

.card-header:first-child {
  border-radius: .25rem .25rem 0 0;
}

.card-footer {
  padding: .75rem 1.25rem;
  background-color: #f5f5f5;
  border-top: 1px solid #e5e5e5;
}

.card-footer:last-child {
  border-radius: 0 0 .25rem .25rem;
}

.card-primary {
  background-color: #0275d8;
  border-color: #0275d8;
}

.card-success {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.card-info {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.card-warning {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.card-danger {
  background-color: #d9534f;
  border-color: #d9534f;
}

.card-primary-outline {
  background-color: transparent;
  border-color: #0275d8;
}

.card-secondary-outline {
  background-color: transparent;
  border-color: #ccc;
}

.card-info-outline {
  background-color: transparent;
  border-color: #5bc0de;
}

.card-success-outline {
  background-color: transparent;
  border-color: #5cb85c;
}

.card-warning-outline {
  background-color: transparent;
  border-color: #f0ad4e;
}

.card-danger-outline {
  background-color: transparent;
  border-color: #d9534f;
}

.card-inverse .card-header,
.card-inverse .card-footer {
  border-bottom: 1px solid rgba(255, 255, 255, .2);
}

.card-inverse .card-header,
.card-inverse .card-footer,
.card-inverse .card-title,
.card-inverse .card-blockquote {
  color: #fff;
}

.card-inverse .card-link,
.card-inverse .card-text,
.card-inverse .card-blockquote > footer {
  color: rgba(255, 255, 255, .65);
}

.card-inverse .card-link:focus, .card-inverse .card-link:hover {
  color: #fff;
}

.card-blockquote {
  padding: 0;
  margin-bottom: 0;
  border-left: 0;
}

.card-img {
  border-radius: .25rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card-img-top {
  border-radius: .25rem .25rem 0 0;
}

.card-img-bottom {
  border-radius: 0 0 .25rem .25rem;
}

@media (min-width: 544px) {
  .card-deck {
    display: table;
    table-layout: fixed;
    border-spacing: 1.25rem 0;
  }
  .card-deck .card {
    display: table-cell;
    width: 1%;
    vertical-align: top;
  }
  .card-deck-wrapper {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
}

@media (min-width: 544px) {
  .card-group {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .card-group .card {
    display: table-cell;
    vertical-align: top;
  }
  .card-group .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group .card:first-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group .card:first-child .card-img-top {
    border-top-right-radius: 0;
  }
  .card-group .card:first-child .card-img-bottom {
    border-bottom-right-radius: 0;
  }
  .card-group .card:last-child {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group .card:last-child .card-img-top {
    border-top-left-radius: 0;
  }
  .card-group .card:last-child .card-img-bottom {
    border-bottom-left-radius: 0;
  }
  .card-group .card:not(:first-child):not(:last-child) {
    border-radius: 0;
  }
  .card-group .card:not(:first-child):not(:last-child) .card-img-top,
  .card-group .card:not(:first-child):not(:last-child) .card-img-bottom {
    border-radius: 0;
  }
}

@media (min-width: 544px) {
  .card-columns {
    -webkit-column-count: 3;
       -moz-column-count: 3;
            column-count: 3;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.breadcrumb {
  padding: .75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #eceeef;
  border-radius: .25rem;
}

.breadcrumb::after {
  display: table;
  clear: both;
  content: "";
}

.breadcrumb > li {
  float: left;
}

.breadcrumb > li + li::before {
  padding-right: .5rem;
  padding-left: .5rem;
  color: #818a91;
  content: "/";
}

.breadcrumb > .active {
  color: #818a91;
}

.pagination {
  display: inline-block;
  padding-left: 0;
  margin-top: 1rem;
  margin-bottom: 1rem;
  border-radius: .25rem;
}

.page-item {
  display: inline;
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: .25rem;
  border-bottom-left-radius: .25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: .25rem;
  border-bottom-right-radius: .25rem;
}

.page-item.active .page-link, .page-item.active .page-link:focus, .page-item.active .page-link:hover {
  z-index: 2;
  color: #fff;
  cursor: default;
  background-color: #0275d8;
  border-color: #0275d8;
}

.page-item.disabled .page-link, .page-item.disabled .page-link:focus, .page-item.disabled .page-link:hover {
  color: #818a91;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #ddd;
}

.page-link {
  position: relative;
  float: left;
  padding: .5rem .75rem;
  margin-left: -1px;
  line-height: 1.5;
  color: #0275d8;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #ddd;
}

.page-link:focus, .page-link:hover {
  color: #014c8c;
  background-color: #eceeef;
  border-color: #ddd;
}

.pagination-lg .page-link {
  padding: .75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.333333;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: .3rem;
  border-bottom-left-radius: .3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: .3rem;
  border-bottom-right-radius: .3rem;
}

.pagination-sm .page-link {
  padding: .275rem .75rem;
  font-size: .875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: .2rem;
  border-bottom-left-radius: .2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: .2rem;
  border-bottom-right-radius: .2rem;
}

.pager {
  padding-left: 0;
  margin-top: 1rem;
  margin-bottom: 1rem;
  text-align: center;
  list-style: none;
}

.pager::after {
  display: table;
  clear: both;
  content: "";
}

.pager li {
  display: inline;
}

.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}

.pager li > a:focus, .pager li > a:hover {
  text-decoration: none;
  background-color: #eceeef;
}

.pager .disabled > a, .pager .disabled > a:focus, .pager .disabled > a:hover {
  color: #818a91;
  cursor: not-allowed;
  background-color: #fff;
}

.pager .disabled > span {
  color: #818a91;
  cursor: not-allowed;
  background-color: #fff;
}

.pager-next > a,
.pager-next > span {
  float: right;
}

.pager-prev > a,
.pager-prev > span {
  float: left;
}

.label {
  display: inline-block;
  padding: .25em .4em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25rem;
}

.label:empty {
  display: none;
}

.btn .label {
  position: relative;
  top: -1px;
}

a.label:focus, a.label:hover {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}

.label-pill {
  padding-right: .6em;
  padding-left: .6em;
  border-radius: 10rem;
}

.label-default {
  background-color: #818a91;
}

.label-default[href]:focus, .label-default[href]:hover {
  background-color: #687077;
}

.label-primary {
  background-color: #0275d8;
}

.label-primary[href]:focus, .label-primary[href]:hover {
  background-color: #025aa5;
}

.label-success {
  background-color: #5cb85c;
}

.label-success[href]:focus, .label-success[href]:hover {
  background-color: #449d44;
}

.label-info {
  background-color: #5bc0de;
}

.label-info[href]:focus, .label-info[href]:hover {
  background-color: #31b0d5;
}

.label-warning {
  background-color: #f0ad4e;
}

.label-warning[href]:focus, .label-warning[href]:hover {
  background-color: #ec971f;
}

.label-danger {
  background-color: #d9534f;
}

.label-danger[href]:focus, .label-danger[href]:hover {
  background-color: #c9302c;
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #eceeef;
  border-radius: .3rem;
}

@media (min-width: 544px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-hr {
  border-top-color: #d0d5d8;
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  padding: 15px;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: .25rem;
}

.alert > p,
.alert > ul {
  margin-bottom: 0;
}

.alert > p + p {
  margin-top: 5px;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: bold;
}

.alert-dismissible {
  padding-right: 35px;
}

.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}

.alert-success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d0e9c6;
}

.alert-success hr {
  border-top-color: #c1e2b3;
}

.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bcdff1;
}

.alert-info hr {
  border-top-color: #a6d5ec;
}

.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faf2cc;
}

.alert-warning hr {
  border-top-color: #f7ecb5;
}

.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebcccc;
}

.alert-danger hr {
  border-top-color: #e4b9b9;
}

.alert-danger .alert-link {
  color: #843534;
}

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

@-o-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

.progress {
  display: block;
  width: 100%;
  height: 1rem;
  margin-bottom: 1rem;
}

.progress[value] {
  -webkit-appearance: none;
  color: #0074d9;
  border: 0;

     -moz-appearance: none;
          appearance: none;
}

.progress[value]::-webkit-progress-bar {
  background-color: #eee;
  border-radius: .25rem;
}

.progress[value]::-webkit-progress-value::before {
  content: attr(value);
}

.progress[value]::-webkit-progress-value {
  background-color: #0074d9;
  border-top-left-radius: .25rem;
  border-bottom-left-radius: .25rem;
}

.progress[value="100"]::-webkit-progress-value {
  border-top-right-radius: .25rem;
  border-bottom-right-radius: .25rem;
}

@media screen and (min-width: 0\0) {
  .progress {
    background-color: #eee;
    border-radius: .25rem;
  }
  .progress-bar {
    display: inline-block;
    height: 1rem;
    text-indent: -999rem;
    background-color: #0074d9;
    border-top-left-radius: .25rem;
    border-bottom-left-radius: .25rem;
  }
  .progress[width^="0"] {
    min-width: 2rem;
    color: #818a91;
    background-color: transparent;
    background-image: none;
  }
  .progress[width="100%"] {
    border-top-right-radius: .25rem;
    border-bottom-right-radius: .25rem;
  }
}

.progress-striped[value]::-webkit-progress-value {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  -webkit-background-size: 1rem 1rem;
          background-size: 1rem 1rem;
}

.progress-striped[value]::-moz-progress-bar {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

@media screen and (min-width: 0\0) {
  .progress-bar-striped {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
    background-image:      -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
    background-image:         linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
    -webkit-background-size: 1rem 1rem;
            background-size: 1rem 1rem;
  }
}

.progress-animated[value]::-webkit-progress-value {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
          animation: progress-bar-stripes 2s linear infinite;
}

.progress-animated[value]::-moz-progress-bar {
  animation: progress-bar-stripes 2s linear infinite;
}

@media screen and (min-width: 0\0) {
  .progress-animated .progress-bar-striped {
    -webkit-animation: progress-bar-stripes 2s linear infinite;
         -o-animation: progress-bar-stripes 2s linear infinite;
            animation: progress-bar-stripes 2s linear infinite;
  }
}

.progress-success[value]::-webkit-progress-value {
  background-color: #5cb85c;
}

.progress-success[value]::-moz-progress-bar {
  background-color: #5cb85c;
}

@media screen and (min-width: 0\0) {
  .progress-success .progress-bar {
    background-color: #5cb85c;
  }
}

.progress-info[value]::-webkit-progress-value {
  background-color: #5bc0de;
}

.progress-info[value]::-moz-progress-bar {
  background-color: #5bc0de;
}

@media screen and (min-width: 0\0) {
  .progress-info .progress-bar {
    background-color: #5bc0de;
  }
}

.progress-warning[value]::-webkit-progress-value {
  background-color: #f0ad4e;
}

.progress-warning[value]::-moz-progress-bar {
  background-color: #f0ad4e;
}

@media screen and (min-width: 0\0) {
  .progress-warning .progress-bar {
    background-color: #f0ad4e;
  }
}

.progress-danger[value]::-webkit-progress-value {
  background-color: #d9534f;
}

.progress-danger[value]::-moz-progress-bar {
  background-color: #d9534f;
}

@media screen and (min-width: 0\0) {
  .progress-danger .progress-bar {
    background-color: #d9534f;
  }
}

.media {
  margin-top: 15px;
}

.media:first-child {
  margin-top: 0;
}

.media,
.media-body {
  overflow: hidden;
  zoom: 1;
}

.media-body {
  width: 10000px;
}

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}

.media-middle {
  vertical-align: middle;
}

.media-bottom {
  vertical-align: bottom;
}

.media-object {
  display: block;
}

.media-object.img-thumbnail {
  max-width: none;
}

.media-right {
  padding-left: 10px;
}

.media-left {
  padding-right: 10px;
}

.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}

.media-list {
  padding-left: 0;
  list-style: none;
}

.list-group {
  padding-left: 0;
  margin-bottom: 0;
}

.list-group-item {
  position: relative;
  display: block;
  padding: .75rem 1.25rem;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}

.list-group-item:first-child {
  border-top-left-radius: .25rem;
  border-top-right-radius: .25rem;
}

.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: .25rem;
  border-bottom-left-radius: .25rem;
}

.list-group-flush .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}

.list-group-flush:first-child .list-group-item:first-child {
  border-top: 0;
}

.list-group-flush:last-child .list-group-item:last-child {
  border-bottom: 0;
}

a.list-group-item,
button.list-group-item {
  width: 100%;
  color: #555;
  text-align: inherit;
}

a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}

a.list-group-item:focus, a.list-group-item:hover,
button.list-group-item:focus,
button.list-group-item:hover {
  color: #555;
  text-decoration: none;
  background-color: #f5f5f5;
}

.list-group-item.disabled, .list-group-item.disabled:focus, .list-group-item.disabled:hover {
  color: #818a91;
  cursor: not-allowed;
  background-color: #eceeef;
}

.list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading {
  color: inherit;
}

.list-group-item.disabled .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text {
  color: #818a91;
}

.list-group-item.active, .list-group-item.active:focus, .list-group-item.active:hover {
  z-index: 2;
  color: #fff;
  background-color: #0275d8;
  border-color: #0275d8;
}

.list-group-item.active .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > .small {
  color: inherit;
}

.list-group-item.active .list-group-item-text, .list-group-item.active:focus .list-group-item-text, .list-group-item.active:hover .list-group-item-text {
  color: #a8d6fe;
}

.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:focus, a.list-group-item-success:hover,
button.list-group-item-success:focus,
button.list-group-item-success:hover {
  color: #3c763d;
  background-color: #d0e9c6;
}

a.list-group-item-success.active, a.list-group-item-success.active:focus, a.list-group-item-success.active:hover,
button.list-group-item-success.active,
button.list-group-item-success.active:focus,
button.list-group-item-success.active:hover {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}

a.list-group-item-info,
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:focus, a.list-group-item-info:hover,
button.list-group-item-info:focus,
button.list-group-item-info:hover {
  color: #31708f;
  background-color: #c4e3f3;
}

a.list-group-item-info.active, a.list-group-item-info.active:focus, a.list-group-item-info.active:hover,
button.list-group-item-info.active,
button.list-group-item-info.active:focus,
button.list-group-item-info.active:hover {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}

a.list-group-item-warning,
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:focus, a.list-group-item-warning:hover,
button.list-group-item-warning:focus,
button.list-group-item-warning:hover {
  color: #8a6d3b;
  background-color: #faf2cc;
}

a.list-group-item-warning.active, a.list-group-item-warning.active:focus, a.list-group-item-warning.active:hover,
button.list-group-item-warning.active,
button.list-group-item-warning.active:focus,
button.list-group-item-warning.active:hover {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}

.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}

a.list-group-item-danger,
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:focus, a.list-group-item-danger:hover,
button.list-group-item-danger:focus,
button.list-group-item-danger:hover {
  color: #a94442;
  background-color: #ebcccc;
}

a.list-group-item-danger.active, a.list-group-item-danger.active:focus, a.list-group-item-danger.active:hover,
button.list-group-item-danger.active,
button.list-group-item-danger.active:focus,
button.list-group-item-danger.active:hover {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}

.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}

.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}

.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;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9 {
  padding-bottom: 42.857143%;
}

.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}

.embed-responsive-4by3 {
  padding-bottom: 75%;
}

.embed-responsive-1by1 {
  padding-bottom: 100%;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .2;
}

.close:focus, .close:hover {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: .5;
}

button.close {
  -webkit-appearance: none;
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
}

.modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}

.modal.fade .modal-dialog {
  -webkit-transition: -webkit-transform .3s ease-out;
       -o-transition:         transform .3s ease-out, -o-transform .3s ease-out;
          transition: -webkit-transform .3s ease-out;
          transition:         transform .3s ease-out;
          transition:         transform .3s ease-out, -webkit-transform .3s ease-out, -o-transform .3s ease-out;
  -webkit-transform: translate(0, -25%);
      -ms-transform: translate(0, -25%);
       -o-transform: translate(0, -25%);
          transform: translate(0, -25%);
}

.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
       -o-transform: translate(0, 0);
          transform: translate(0, 0);
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: .3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.in {
  opacity: .5;
}

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}

.modal-header::after {
  display: table;
  clear: both;
  content: "";
}

.modal-header .close {
  margin-top: -2px;
}

.modal-title {
  margin: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  padding: 15px;
}

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}

.modal-footer::after {
  display: table;
  clear: both;
  content: "";
}

.modal-footer .btn + .btn {
  margin-bottom: 0;
  margin-left: 5px;
}

.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}

.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 544px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-sm {
    width: 300px;
  }
}

@media (min-width: 768px) {
  .modal-lg {
    width: 900px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: .875rem;
  font-style: normal;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  opacity: 0;

  line-break: auto;
}

.tooltip.in {
  opacity: .9;
}

.tooltip.tooltip-top, .tooltip.bs-tether-element-attached-bottom {
  padding: 5px 0;
  margin-top: -3px;
}

.tooltip.tooltip-top .tooltip-arrow, .tooltip.bs-tether-element-attached-bottom .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}

.tooltip.tooltip-right, .tooltip.bs-tether-element-attached-left {
  padding: 0 5px;
  margin-left: 3px;
}

.tooltip.tooltip-right .tooltip-arrow, .tooltip.bs-tether-element-attached-left .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}

.tooltip.tooltip-bottom, .tooltip.bs-tether-element-attached-top {
  padding: 5px 0;
  margin-top: 3px;
}

.tooltip.tooltip-bottom .tooltip-arrow, .tooltip.bs-tether-element-attached-top .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.tooltip.tooltip-left, .tooltip.bs-tether-element-attached-right {
  padding: 0 5px;
  margin-left: -3px;
}

.tooltip.tooltip-left .tooltip-arrow, .tooltip.bs-tether-element-attached-right .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: .25rem;
}

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: .875rem;
  font-style: normal;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: .3rem;

  line-break: auto;
}

.popover.popover-top, .popover.bs-tether-element-attached-bottom {
  margin-top: -10px;
}

.popover.popover-top .popover-arrow, .popover.bs-tether-element-attached-bottom .popover-arrow {
  bottom: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-color: rgba(0, 0, 0, .25);
  border-bottom-width: 0;
}

.popover.popover-top .popover-arrow::after, .popover.bs-tether-element-attached-bottom .popover-arrow::after {
  bottom: 1px;
  margin-left: -10px;
  content: "";
  border-top-color: #fff;
  border-bottom-width: 0;
}

.popover.popover-right, .popover.bs-tether-element-attached-left {
  margin-left: 10px;
}

.popover.popover-right .popover-arrow, .popover.bs-tether-element-attached-left .popover-arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-right-color: rgba(0, 0, 0, .25);
  border-left-width: 0;
}

.popover.popover-right .popover-arrow::after, .popover.bs-tether-element-attached-left .popover-arrow::after {
  bottom: -10px;
  left: 1px;
  content: "";
  border-right-color: #fff;
  border-left-width: 0;
}

.popover.popover-bottom, .popover.bs-tether-element-attached-top {
  margin-top: 10px;
}

.popover.popover-bottom .popover-arrow, .popover.bs-tether-element-attached-top .popover-arrow {
  top: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: rgba(0, 0, 0, .25);
}

.popover.popover-bottom .popover-arrow::after, .popover.bs-tether-element-attached-top .popover-arrow::after {
  top: 1px;
  margin-left: -10px;
  content: "";
  border-top-width: 0;
  border-bottom-color: #fff;
}

.popover.popover-left, .popover.bs-tether-element-attached-right {
  margin-left: -10px;
}

.popover.popover-left .popover-arrow, .popover.bs-tether-element-attached-right .popover-arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: rgba(0, 0, 0, .25);
}

.popover.popover-left .popover-arrow::after, .popover.bs-tether-element-attached-right .popover-arrow::after {
  right: 1px;
  bottom: -10px;
  content: "";
  border-right-width: 0;
  border-left-color: #fff;
}

.popover-title {
  padding: 8px 14px;
  margin: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: -.7rem -.7rem 0 0;
}

.popover-content {
  padding: 9px 14px;
}

.popover-arrow, .popover-arrow::after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.popover-arrow {
  border-width: 11px;
}

.popover-arrow::after {
  content: "";
  border-width: 10px;
}

.carousel {
  position: relative;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner > .carousel-item {
  position: relative;
  display: none;
  -webkit-transition: .6s ease-in-out left;
       -o-transition: .6s ease-in-out left;
          transition: .6s ease-in-out left;
}

.carousel-inner > .carousel-item > img,
.carousel-inner > .carousel-item > a > img {
  line-height: 1;
}

@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .carousel-item {
    -webkit-transition: -webkit-transform .6s ease-in-out;
         -o-transition:         transform .6s ease-in-out, -o-transform .6s ease-in-out;
            transition: -webkit-transform .6s ease-in-out;
            transition:         transform .6s ease-in-out;
            transition:         transform .6s ease-in-out, -webkit-transform .6s ease-in-out, -o-transform .6s ease-in-out;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-perspective: 1000px;
            perspective: 1000px;
  }
  .carousel-inner > .carousel-item.next, .carousel-inner > .carousel-item.active.right {
    left: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
  .carousel-inner > .carousel-item.prev, .carousel-inner > .carousel-item.active.left {
    left: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
  .carousel-inner > .carousel-item.next.left, .carousel-inner > .carousel-item.prev.right, .carousel-inner > .carousel-item.active {
    left: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 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;
  bottom: 0;
  left: 0;
  width: 15%;
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
  opacity: .5;
}

.carousel-control.left {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001)));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  background-image:      -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  background-image:         linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
  background-repeat: repeat-x;
}

.carousel-control.right {
  right: 0;
  left: auto;
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5)));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  background-image:      -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  background-image:         linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
  background-repeat: repeat-x;
}

.carousel-control:focus, .carousel-control:hover {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: .9;
}

.carousel-control .icon-prev,
.carousel-control .icon-next {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  font-family: serif;
  line-height: 1;
}

.carousel-control .icon-prev {
  left: 50%;
  margin-left: -10px;
}

.carousel-control .icon-next {
  right: 50%;
  margin-right: -10px;
}

.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%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none;
}

.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  cursor: pointer;
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 10px;
}

.carousel-indicators .active {
  width: 12px;
  height: 12px;
  margin: 0;
  background-color: #fff;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
}

.carousel-caption .btn {
  text-shadow: none;
}

@media (min-width: 544px) {
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px;
  }
  .carousel-control .icon-prev {
    margin-left: -15px;
  }
  .carousel-control .icon-next {
    margin-right: -15px;
  }
  .carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}

.clearfix::after {
  display: table;
  clear: both;
  content: "";
}

.center-block {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.pull-xs-left {
  float: left !important;
}

.pull-xs-right {
  float: right !important;
}

.pull-xs-none {
  float: none !important;
}

@media (min-width: 544px) {
  .pull-sm-left {
    float: left !important;
  }
  .pull-sm-right {
    float: right !important;
  }
  .pull-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .pull-md-left {
    float: left !important;
  }
  .pull-md-right {
    float: right !important;
  }
  .pull-md-none {
    float: none !important;
  }
}

@media (min-width: 992px) {
  .pull-lg-left {
    float: left !important;
  }
  .pull-lg-right {
    float: right !important;
  }
  .pull-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .pull-xl-left {
    float: left !important;
  }
  .pull-xl-right {
    float: right !important;
  }
  .pull-xl-none {
    float: none !important;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

.invisible {
  visibility: hidden !important;
}

.text-hide {
  font: "0/0" a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-justify {
  text-align: justify !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-xs-left {
  text-align: left !important;
}

.text-xs-right {
  text-align: right !important;
}

.text-xs-center {
  text-align: center !important;
}

@media (min-width: 544px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-normal {
  font-weight: normal;
}

.font-weight-bold {
  font-weight: bold;
}

.font-italic {
  font-style: italic;
}

.text-muted {
  color: #818a91;
}

.text-primary {
  color: #0275d8 !important;
}

a.text-primary:focus, a.text-primary:hover {
  color: #025aa5;
}

.text-success {
  color: #5cb85c !important;
}

a.text-success:focus, a.text-success:hover {
  color: #449d44;
}

.text-info {
  color: #5bc0de !important;
}

a.text-info:focus, a.text-info:hover {
  color: #31b0d5;
}

.text-warning {
  color: #f0ad4e !important;
}

a.text-warning:focus, a.text-warning:hover {
  color: #ec971f;
}

.text-danger {
  color: #d9534f !important;
}

a.text-danger:focus, a.text-danger:hover {
  color: #c9302c;
}

.bg-inverse {
  color: #eceeef;
  background-color: #373a3c;
}

.bg-faded {
  background-color: #f7f7f9;
}

.bg-primary {
  color: #fff !important;
  background-color: #0275d8 !important;
}

a.bg-primary:focus, a.bg-primary:hover {
  background-color: #025aa5;
}

.bg-success {
  color: #fff !important;
  background-color: #5cb85c !important;
}

a.bg-success:focus, a.bg-success:hover {
  background-color: #449d44;
}

.bg-info {
  color: #fff !important;
  background-color: #5bc0de !important;
}

a.bg-info:focus, a.bg-info:hover {
  background-color: #31b0d5;
}

.bg-warning {
  color: #fff !important;
  background-color: #f0ad4e !important;
}

a.bg-warning:focus, a.bg-warning:hover {
  background-color: #ec971f;
}

.bg-danger {
  color: #fff !important;
  background-color: #d9534f !important;
}

a.bg-danger:focus, a.bg-danger:hover {
  background-color: #c9302c;
}

.m-x-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.m-a-0 {
  margin: 0 0 !important;
}

.m-t-0 {
  margin-top: 0 !important;
}

.m-r-0 {
  margin-right: 0 !important;
}

.m-b-0 {
  margin-bottom: 0 !important;
}

.m-l-0 {
  margin-left: 0 !important;
}

.m-x-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.m-y-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m-a-1 {
  margin: 1rem 1rem !important;
}

.m-t-1 {
  margin-top: 1rem !important;
}

.m-r-1 {
  margin-right: 1rem !important;
}

.m-b-1 {
  margin-bottom: 1rem !important;
}

.m-l-1 {
  margin-left: 1rem !important;
}

.m-x-1 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.m-y-1 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.m-a-2 {
  margin: 1.5rem 1.5rem !important;
}

.m-t-2 {
  margin-top: 1.5rem !important;
}

.m-r-2 {
  margin-right: 1.5rem !important;
}

.m-b-2 {
  margin-bottom: 1.5rem !important;
}

.m-l-2 {
  margin-left: 1.5rem !important;
}

.m-x-2 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.m-y-2 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.m-a-3 {
  margin: 3rem 3rem !important;
}

.m-t-3 {
  margin-top: 3rem !important;
}

.m-r-3 {
  margin-right: 3rem !important;
}

.m-b-3 {
  margin-bottom: 3rem !important;
}

.m-l-3 {
  margin-left: 3rem !important;
}

.m-x-3 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.m-y-3 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.p-a-0 {
  padding: 0 0 !important;
}

.p-t-0 {
  padding-top: 0 !important;
}

.p-r-0 {
  padding-right: 0 !important;
}

.p-b-0 {
  padding-bottom: 0 !important;
}

.p-l-0 {
  padding-left: 0 !important;
}

.p-x-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.p-y-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p-a-1 {
  padding: 1rem 1rem !important;
}

.p-t-1 {
  padding-top: 1rem !important;
}

.p-r-1 {
  padding-right: 1rem !important;
}

.p-b-1 {
  padding-bottom: 1rem !important;
}

.p-l-1 {
  padding-left: 1rem !important;
}

.p-x-1 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.p-y-1 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.p-a-2 {
  padding: 1.5rem 1.5rem !important;
}

.p-t-2 {
  padding-top: 1.5rem !important;
}

.p-r-2 {
  padding-right: 1.5rem !important;
}

.p-b-2 {
  padding-bottom: 1.5rem !important;
}

.p-l-2 {
  padding-left: 1.5rem !important;
}

.p-x-2 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.p-y-2 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.p-a-3 {
  padding: 3rem 3rem !important;
}

.p-t-3 {
  padding-top: 3rem !important;
}

.p-r-3 {
  padding-right: 3rem !important;
}

.p-b-3 {
  padding-bottom: 3rem !important;
}

.p-l-3 {
  padding-left: 3rem !important;
}

.p-x-3 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.p-y-3 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pos-f-t {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.hidden-xs-up {
  display: none !important;
}

@media (max-width: 543px) {
  .hidden-xs-down {
    display: none !important;
  }
}

@media (min-width: 544px) {
  .hidden-sm-up {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .hidden-sm-down {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .hidden-md-up {
    display: none !important;
  }
}

@media (max-width: 991px) {
  .hidden-md-down {
    display: none !important;
  }
}

@media (min-width: 992px) {
  .hidden-lg-up {
    display: none !important;
  }
}

@media (max-width: 1199px) {
  .hidden-lg-down {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-xl-up {
    display: none !important;
  }
}

.hidden-xl-down {
  display: none !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;
  }
}
/*# sourceMappingURL=bootstrap.css.map */

/* This is a compiled file, you should be editing the file in the templates directory */
.pace {
  -webkit-pointer-events: none;
  pointer-events: none;

  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;

  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2000;
  width: 100%;
  height: 12px;
  background: #fff;
}

.pace-inactive {
  display: none;
}

.pace .pace-progress {
  background-color: #2299dd;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 100%;
  width: 100%;
  overflow: hidden;
  height: 12px;
}

.pace .pace-activity {
  position: fixed;
  top: 0;
  right: -32px;
  bottom: 0;
  left: 0;
  height: 12px;

  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);

  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  -webkit-background-size: 32px 32px;
  -moz-background-size: 32px 32px;
  -o-background-size: 32px 32px;
  background-size: 32px 32px;

  -webkit-animation: pace-theme-barber-shop-motion 500ms linear infinite;
  -moz-animation: pace-theme-barber-shop-motion 500ms linear infinite;
  -ms-animation: pace-theme-barber-shop-motion 500ms linear infinite;
  -o-animation: pace-theme-barber-shop-motion 500ms linear infinite;
  animation: pace-theme-barber-shop-motion 500ms linear infinite;
}

@-webkit-keyframes pace-theme-barber-shop-motion {
  0% { -webkit-transform: none; transform: none; }
  100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
}
@-moz-keyframes pace-theme-barber-shop-motion {
  0% { -moz-transform: none; transform: none; }
  100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
}
@-o-keyframes pace-theme-barber-shop-motion {
  0% { -o-transform: none; transform: none; }
  100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
}
@-ms-keyframes pace-theme-barber-shop-motion {
  0% { -ms-transform: none; transform: none; }
  100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
}
@keyframes pace-theme-barber-shop-motion {
  0% { transform: none; transform: none; }
  100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
}

/*!
 *  Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.6.3');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.6.3') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.6.3') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.6.3') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714286em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em;
}
.fa-pull-left {
  float: left;
}
.fa-pull-right {
  float: right;
}
.fa.fa-pull-left {
  margin-right: .3em;
}
.fa.fa-pull-right {
  margin-left: .3em;
}
/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-feed:before,
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before,
.fa-gratipay:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-slack:before {
  content: "\f198";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-pied-piper-pp:before {
  content: "\f1a7";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-spoon:before {
  content: "\f1b1";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-file-pdf-o:before {
  content: "\f1c1";
}
.fa-file-word-o:before {
  content: "\f1c2";
}
.fa-file-excel-o:before {
  content: "\f1c3";
}
.fa-file-powerpoint-o:before {
  content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}
.fa-file-code-o:before {
  content: "\f1c9";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}
.fa-history:before {
  content: "\f1da";
}
.fa-circle-thin:before {
  content: "\f1db";
}
.fa-header:before {
  content: "\f1dc";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-sliders:before {
  content: "\f1de";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-newspaper-o:before {
  content: "\f1ea";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bell-slash-o:before {
  content: "\f1f7";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-eyedropper:before {
  content: "\f1fb";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-area-chart:before {
  content: "\f1fe";
}
.fa-pie-chart:before {
  content: "\f200";
}
.fa-line-chart:before {
  content: "\f201";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-bus:before {
  content: "\f207";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-cc:before {
  content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}
.fa-meanpath:before {
  content: "\f20c";
}
.fa-buysellads:before {
  content: "\f20d";
}
.fa-connectdevelop:before {
  content: "\f20e";
}
.fa-dashcube:before {
  content: "\f210";
}
.fa-forumbee:before {
  content: "\f211";
}
.fa-leanpub:before {
  content: "\f212";
}
.fa-sellsy:before {
  content: "\f213";
}
.fa-shirtsinbulk:before {
  content: "\f214";
}
.fa-simplybuilt:before {
  content: "\f215";
}
.fa-skyatlas:before {
  content: "\f216";
}
.fa-cart-plus:before {
  content: "\f217";
}
.fa-cart-arrow-down:before {
  content: "\f218";
}
.fa-diamond:before {
  content: "\f219";
}
.fa-ship:before {
  content: "\f21a";
}
.fa-user-secret:before {
  content: "\f21b";
}
.fa-motorcycle:before {
  content: "\f21c";
}
.fa-street-view:before {
  content: "\f21d";
}
.fa-heartbeat:before {
  content: "\f21e";
}
.fa-venus:before {
  content: "\f221";
}
.fa-mars:before {
  content: "\f222";
}
.fa-mercury:before {
  content: "\f223";
}
.fa-intersex:before,
.fa-transgender:before {
  content: "\f224";
}
.fa-transgender-alt:before {
  content: "\f225";
}
.fa-venus-double:before {
  content: "\f226";
}
.fa-mars-double:before {
  content: "\f227";
}
.fa-venus-mars:before {
  content: "\f228";
}
.fa-mars-stroke:before {
  content: "\f229";
}
.fa-mars-stroke-v:before {
  content: "\f22a";
}
.fa-mars-stroke-h:before {
  content: "\f22b";
}
.fa-neuter:before {
  content: "\f22c";
}
.fa-genderless:before {
  content: "\f22d";
}
.fa-facebook-official:before {
  content: "\f230";
}
.fa-pinterest-p:before {
  content: "\f231";
}
.fa-whatsapp:before {
  content: "\f232";
}
.fa-server:before {
  content: "\f233";
}
.fa-user-plus:before {
  content: "\f234";
}
.fa-user-times:before {
  content: "\f235";
}
.fa-hotel:before,
.fa-bed:before {
  content: "\f236";
}
.fa-viacoin:before {
  content: "\f237";
}
.fa-train:before {
  content: "\f238";
}
.fa-subway:before {
  content: "\f239";
}
.fa-medium:before {
  content: "\f23a";
}
.fa-yc:before,
.fa-y-combinator:before {
  content: "\f23b";
}
.fa-optin-monster:before {
  content: "\f23c";
}
.fa-opencart:before {
  content: "\f23d";
}
.fa-expeditedssl:before {
  content: "\f23e";
}
.fa-battery-4:before,
.fa-battery-full:before {
  content: "\f240";
}
.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "\f241";
}
.fa-battery-2:before,
.fa-battery-half:before {
  content: "\f242";
}
.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "\f243";
}
.fa-battery-0:before,
.fa-battery-empty:before {
  content: "\f244";
}
.fa-mouse-pointer:before {
  content: "\f245";
}
.fa-i-cursor:before {
  content: "\f246";
}
.fa-object-group:before {
  content: "\f247";
}
.fa-object-ungroup:before {
  content: "\f248";
}
.fa-sticky-note:before {
  content: "\f249";
}
.fa-sticky-note-o:before {
  content: "\f24a";
}
.fa-cc-jcb:before {
  content: "\f24b";
}
.fa-cc-diners-club:before {
  content: "\f24c";
}
.fa-clone:before {
  content: "\f24d";
}
.fa-balance-scale:before {
  content: "\f24e";
}
.fa-hourglass-o:before {
  content: "\f250";
}
.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "\f251";
}
.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "\f252";
}
.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "\f253";
}
.fa-hourglass:before {
  content: "\f254";
}
.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "\f255";
}
.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "\f256";
}
.fa-hand-scissors-o:before {
  content: "\f257";
}
.fa-hand-lizard-o:before {
  content: "\f258";
}
.fa-hand-spock-o:before {
  content: "\f259";
}
.fa-hand-pointer-o:before {
  content: "\f25a";
}
.fa-hand-peace-o:before {
  content: "\f25b";
}
.fa-trademark:before {
  content: "\f25c";
}
.fa-registered:before {
  content: "\f25d";
}
.fa-creative-commons:before {
  content: "\f25e";
}
.fa-gg:before {
  content: "\f260";
}
.fa-gg-circle:before {
  content: "\f261";
}
.fa-tripadvisor:before {
  content: "\f262";
}
.fa-odnoklassniki:before {
  content: "\f263";
}
.fa-odnoklassniki-square:before {
  content: "\f264";
}
.fa-get-pocket:before {
  content: "\f265";
}
.fa-wikipedia-w:before {
  content: "\f266";
}
.fa-safari:before {
  content: "\f267";
}
.fa-chrome:before {
  content: "\f268";
}
.fa-firefox:before {
  content: "\f269";
}
.fa-opera:before {
  content: "\f26a";
}
.fa-internet-explorer:before {
  content: "\f26b";
}
.fa-tv:before,
.fa-television:before {
  content: "\f26c";
}
.fa-contao:before {
  content: "\f26d";
}
.fa-500px:before {
  content: "\f26e";
}
.fa-amazon:before {
  content: "\f270";
}
.fa-calendar-plus-o:before {
  content: "\f271";
}
.fa-calendar-minus-o:before {
  content: "\f272";
}
.fa-calendar-times-o:before {
  content: "\f273";
}
.fa-calendar-check-o:before {
  content: "\f274";
}
.fa-industry:before {
  content: "\f275";
}
.fa-map-pin:before {
  content: "\f276";
}
.fa-map-signs:before {
  content: "\f277";
}
.fa-map-o:before {
  content: "\f278";
}
.fa-map:before {
  content: "\f279";
}
.fa-commenting:before {
  content: "\f27a";
}
.fa-commenting-o:before {
  content: "\f27b";
}
.fa-houzz:before {
  content: "\f27c";
}
.fa-vimeo:before {
  content: "\f27d";
}
.fa-black-tie:before {
  content: "\f27e";
}
.fa-fonticons:before {
  content: "\f280";
}
.fa-reddit-alien:before {
  content: "\f281";
}
.fa-edge:before {
  content: "\f282";
}
.fa-credit-card-alt:before {
  content: "\f283";
}
.fa-codiepie:before {
  content: "\f284";
}
.fa-modx:before {
  content: "\f285";
}
.fa-fort-awesome:before {
  content: "\f286";
}
.fa-usb:before {
  content: "\f287";
}
.fa-product-hunt:before {
  content: "\f288";
}
.fa-mixcloud:before {
  content: "\f289";
}
.fa-scribd:before {
  content: "\f28a";
}
.fa-pause-circle:before {
  content: "\f28b";
}
.fa-pause-circle-o:before {
  content: "\f28c";
}
.fa-stop-circle:before {
  content: "\f28d";
}
.fa-stop-circle-o:before {
  content: "\f28e";
}
.fa-shopping-bag:before {
  content: "\f290";
}
.fa-shopping-basket:before {
  content: "\f291";
}
.fa-hashtag:before {
  content: "\f292";
}
.fa-bluetooth:before {
  content: "\f293";
}
.fa-bluetooth-b:before {
  content: "\f294";
}
.fa-percent:before {
  content: "\f295";
}
.fa-gitlab:before {
  content: "\f296";
}
.fa-wpbeginner:before {
  content: "\f297";
}
.fa-wpforms:before {
  content: "\f298";
}
.fa-envira:before {
  content: "\f299";
}
.fa-universal-access:before {
  content: "\f29a";
}
.fa-wheelchair-alt:before {
  content: "\f29b";
}
.fa-question-circle-o:before {
  content: "\f29c";
}
.fa-blind:before {
  content: "\f29d";
}
.fa-audio-description:before {
  content: "\f29e";
}
.fa-volume-control-phone:before {
  content: "\f2a0";
}
.fa-braille:before {
  content: "\f2a1";
}
.fa-assistive-listening-systems:before {
  content: "\f2a2";
}
.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}
.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "\f2a4";
}
.fa-glide:before {
  content: "\f2a5";
}
.fa-glide-g:before {
  content: "\f2a6";
}
.fa-signing:before,
.fa-sign-language:before {
  content: "\f2a7";
}
.fa-low-vision:before {
  content: "\f2a8";
}
.fa-viadeo:before {
  content: "\f2a9";
}
.fa-viadeo-square:before {
  content: "\f2aa";
}
.fa-snapchat:before {
  content: "\f2ab";
}
.fa-snapchat-ghost:before {
  content: "\f2ac";
}
.fa-snapchat-square:before {
  content: "\f2ad";
}
.fa-pied-piper:before {
  content: "\f2ae";
}
.fa-first-order:before {
  content: "\f2b0";
}
.fa-yoast:before {
  content: "\f2b1";
}
.fa-themeisle:before {
  content: "\f2b2";
}
.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "\f2b3";
}
.fa-fa:before,
.fa-font-awesome:before {
  content: "\f2b4";
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

@charset "UTF-8";

/*!
 * animate.css -https://daneden.github.io/animate.css/
 * Version - 3.7.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2019 Daniel Eden
 */

@-webkit-keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

@keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }

  25%,
  75% {
    opacity: 0;
  }
}

@keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }

  25%,
  75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

@keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.heartBeat {
  -webkit-animation-name: heartBeat;
  animation-name: heartBeat;
  -webkit-animation-duration: 1.3s;
  animation-duration: 1.3s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

@-webkit-keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.jackInTheBox {
  -webkit-animation-name: jackInTheBox;
  animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

@keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  to {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.animated.delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.animated.delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.animated.delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}

.animated.delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.animated.fast {
  -webkit-animation-duration: 800ms;
  animation-duration: 800ms;
}

.animated.faster {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
}

.animated.slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
}

@media (print), (prefers-reduced-motion: reduce) {
  .animated {
    -webkit-animation-duration: 1ms !important;
    animation-duration: 1ms !important;
    -webkit-transition-duration: 1ms !important;
    transition-duration: 1ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
  }
}

@charset "UTF-8";

/*
*   Template name: ML JR
*   Demo URL:
*/


/* Table of Contents
    Use (CMD/CTRL + F $[SECTION]) to quickly find what you are looking for
    [SECTION]
	1.	scaffolding
	2.	typography
	3.	avatar
	4.	sidebar-panel
	5.	header
	6.	brand
	7.	main-panel
	8.	footer
	9.	chat-panel
	10.	offscreen-menu
	11.	widget
	12.	layout-options
	13.	modal-panel
	14.	alerts
	15.	breadcrumbs
	16.	buttons
	17.	cards
	18.	dropdown
	19.	forms
	20.	input-groups
	21.	labels
	22.	listgroup
	23.	modal
	24.	navbar
	25.	navs
	26.	pills
	27.	tabs
	28.	pagination
	29.	popover
	30.	progress-bar
	31.	tables
	32.	tooltip
	33.	colors
	34.	bootstrap.ui
	35.	session
	36.	lockscreen
	37.	error-pages
	38.	calendar
	39.	gallery
	40.	invoice
	41.	messages
	42.	social
	43.	timeline
	44.	charts
	45.	jquery.ui
	46.	bootstrap-tags
	47.	bootstap-timepicker
	48.	c3-charts
	49.	chartjs
	50.	clock-picker
	51.	color-picker
	52.	datepicker
	53.	daterangepicker
	54.	easypie
	55.	flot-chart
	56.	google-map
	57.	input-select
	58.	intl-tel-input
	59.	jvectormap
	60.	labelauty
	61.	multiselect
	62.	nestable
	63.	noty
	64.	nvd
	65.	jquery-validation
	66.	portlets
	67.	rickshaw
	68.	social-button
	69.	sortable
	70.	summernote
	71.	sweet-alert
	72.	touch-spin
	73.	utilities
*/


/* $scaffolding
 ------------------------------------------*/

@font-face {
    font-family: 'Material Icons';
    font-weight: 400;
    font-style: normal;
    src: local("Material Icons"), local("MaterialIcons-Regular"), url('/fonts/material/MaterialIcons-Regular.woff2') format("woff2"), url('/fonts/material/MaterialIcons-Regular.woff') format("woff"), url('/fonts/material/MaterialIcons-Regular.ttf') format("truetype");
}

.material-icons {
    font-family: 'Material Icons';
    font-size: 24px;
    width: 24px;
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    /* Preferred icon size */
    display: inline-block;
    vertical-align: bottom;
    white-space: nowrap;
    letter-spacing: normal;
    text-transform: none;
    word-wrap: normal;
    direction: ltr;
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;
    /* Support for IE. */
    -webkit-font-feature-settings: 'liga';
    font-feature-settings: 'liga';
}

.btn-sm:not(.btn-icon)>.material-icons {
    line-height: 21px !important;
}

::-moz-selection {
    color: white;
    background: #4c7ff0;
    text-shadow: none;
}

::selection {
    color: white;
    background: #4c7ff0;
    text-shadow: none;
}

.pace {
    height: 2px;
    background-color: transparent;
}

.pace .pace-progress {
    height: 2px;
}

.pace .pace-progress {
    background-color: #7fc35c;
}

.pace .pace-activity {
    background-image: none;
}

body,
html {
    width: 100%;
    height: 100%;
    min-height: 100%;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif, sans-serif;
    font-size: 0.8525rem;
    color: rgba(0, 0, 0, 0.7);
    background-color: #D1D1D2;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}


/* ##### ML ##### */

.defaultc {
    color: #12a6a1!important;
}

.job-title-job {
    color: #a382ae!important;
    font-size: 26px;
}

.contacts-view {
    background-color: #ffffff!important;
}

form,
label {
    font-size: 16px!important;
}

.gsi-style-8 li.visited>*,
.gsi-style-8 li.current>* {
    background-color: #12a6a1!important;
    color: #fff;
}

.gsi-style-8 li>* .desc {
    padding-left: 20px;
    padding-right: 50px!important;
}

.gsi-style-8 li {
    position: relative;
    margin-left: 0rem!important;
    margin-right: 2rem!important;
    display: inline-block;
}

form .text-muted {
    color: #12a6a1 !important;
    line-height: 32px!important;
}

form,
small,
.small {
    font-size: .9rem!important;
}


/* ##### ML ##### */

.app {
    position: relative;
    width: 100%;
    max-width: 100%;
    min-height: 100%;
    background: #f7f0f0;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

.app:not(.layout-static) {
    max-height: 100%;
    height: 100%;
}

a {
    text-decoration: none;
    color: inherit;
}

a:focus,
a:hover {
    cursor: pointer;
    text-decoration: none;
    outline: 0;
}

.touch li:hover,
.touch li:focus,
.touch a:hover,
.touch a:focus {
    background-color: transparent !important;
}


/* $typography
 ------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    font-weight: 400;
}

dt,
.bold {
    font-weight: 600;
}

small,
.small {
    font-size: .6875rem;
}

b,
strong {
    font-weight: 500;
}

.pullquote {
    font-size: 1.6rem;
    font-style: italic;
    display: block;
    width: 55%;
    float: left;
}

.pullquote::before {
    font-family: Georgia, serif;
    font-size: 2.5rem;
    font-style: normal;
    float: left;
    content: '“';
    color: #e2e4e9;
}

hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

ol.list-style-none,
ul.list-style-none {
    padding: 0;
    list-style: none;
}

code {
    color: rgba(0, 0, 0, 0.7);
    background-color: #e8e8e8;
}


/* $avatar
 ------------------------------------------*/

.avatar {
    position: relative;
    display: inline-block;
}

.img-thumbnail {
    border-color: rgba(0, 0, 0, 0.1);
}

.img-rounded {
    border-radius: 0.125rem;
}


/* sizes */

.avatar-xlg {
    width: 32rem;
}

.avatar-xlg {
    width: 16rem;
}

.avatar-lg {
    width: 8rem;
}

.avatar-md {
    width: 4rem;
}

.avatar-sm {
    width: 3rem;
}

.avatar-xs {
    width: 2.125rem;
}

.avatar-xxs {
    width: 1.375rem;
}


/* $sidebar-panel
 ------------------------------------------*/

.sidebar-panel {
    position: static;
    z-index: 60;
    top: 0;
    bottom: 0;
    overflow: hidden;
    box-sizing: border-box;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    left: 0;
    -webkit-transition: width 300ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: width 300ms cubic-bezier(0.7, 0, 0.3, 1);
}

.sidebar-panel .brand {
    z-index: 1;
}

.sidebar-panel .expanding-visible {
    display: none !important;
    visibility: hidden;
}

.sidebar-panel .nav-title {
    font-size: 11px;
    position: relative;
    display: table;
    clear: both;
    overflow: hidden;
    width: 100%;
    margin: 0;
    padding: 0.5125rem 1.5rem;
    white-space: nowrap;
    letter-spacing: .01rem;
}

.sidebar-panel .nav-profile {
    position: relative;
    display: block;
    margin-top: 5px;
    margin-bottom: 5px;
}

.sidebar-panel .nav-profile .uib-dropdown-menu,
.sidebar-panel .nav-profile .dropdown-menu {
    left: 50%;
    width: 90%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    background: #f1f1f1;
    box-shadow: 0 0.375rem 0.75rem rgba(0, 0, 0, 0.1);
}

.sidebar-panel .nav-profile .uib-dropdown-menu a,
.sidebar-panel .nav-profile .dropdown-menu a {
    padding-top: 3px;
    padding-right: 1.25rem;
    padding-bottom: 3px;
    padding-left: 1.25rem;
}

.sidebar-panel .nav-profile>a:focus {
    background-color: transparent;
}

.sidebar-panel .nav-profile a.dropdown-toggle {
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 0.5125rem 1.5rem;
}

.sidebar-panel .nav-profile a.dropdown-toggle::after {
    font-family: 'Material Icons';
    font-size: 24px;
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    position: absolute;
    top: 50%;
    display: block;
    width: auto;
    height: auto;
    margin-top: -12px;
    margin-right: 0;
    margin-left: 0;
    content: 'arrow_drop_down';
    vertical-align: bottom;
    white-space: nowrap;
    letter-spacing: normal;
    text-transform: none;
    word-wrap: normal;
    border: 0;
    right: 1.5rem;
    direction: ltr;
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;
    /* Support for IE. */
    -webkit-font-feature-settings: 'liga';
    font-feature-settings: 'liga';
}

.sidebar-panel .nav-profile a.dropdown-toggle .user-image {
    padding-right: 0.5rem;
}
.sidebar-panel .nav-profile a.dropdown-toggle .user-image .avatar {
    width: 2.8rem;
}
.sidebar-panel .nav-profile .dropdown-toggle .user-image .feed-icon.image,
.sidebar-panel .nav-profile .dropdown-toggle .user-image .feed-icon.initials{
    border: 1px solid #d4d4d4;
}
.sidebar-panel .nav-profile .dropdown-toggle .user-image .feed-icon.image{
    padding: 3px;
    border-radius: 15%;
}
.sidebar-panel .nav-profile .dropdown-toggle .user-image .feed-icon.initials{
    border-radius: 15%;
}
.sidebar-panel .nav-profile .dropdown-toggle .user-image .feed-icon.initials .circle-icon{
    border: 3px solid #fff;
    width: 44px;
    height: 44px;
    line-height: 38px;
    float: none;
    display: block;
}

.sidebar-panel .nav-profile .dropdown-toggle .user-image .feed-icon.image img{
    margin-right:0 !important;
    float: none !important;
    border-radius: 15% !important;
}

.sidebar-panel .nav-profile a.dropdown-toggle .user-info,
.sidebar-panel .nav-profile a.dropdown-toggle .user-image {
    display: inline-block;
}

.sidebar-panel .nav-profile a.dropdown-toggle .user-info small {
    display: block;
}

.sidebar-panel .nav-profile a.dropdown-toggle .user-info {
    float: none !important;
    overflow: hidden;
    /* white-space: nowrap; */
    overflow-wrap: break-word;
    width: 60%;
}

.sidebar-panel .nav-profile a.dropdown-toggle>* {
    display: table-cell;
    vertical-align: middle;
}

.sidebar-panel>nav {
    position: relative;
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    overflow-y: overlay;
    box-sizing: border-box;
    -webkit-box-flex: 1;
    -moz-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-overflow-scrolling: touch;
    margin-right: -35px;
    padding-right: 35px;
}

.sidebar-panel>nav ul {
    margin-bottom: 5px;
    padding: 0;
    list-style: none;
}

.sidebar-panel>nav ul>li>a,
.sidebar-panel>nav .menu-link {
    display: block;
    clear: both;
    overflow: hidden;
    white-space: nowrap;
    -webkit-transition: background 200ms, color 200ms;
    transition: background 200ms, color 200ms;
}

.sidebar-panel>nav ul>li>a>span,
.sidebar-panel>nav .menu-link>span {
    display: inline-block;
}

.sidebar-panel>nav ul>li>a>.material-icons,
.sidebar-panel>nav .menu-link>.material-icons {
    line-height: 1;
    text-align: center;
    margin-right: 0.5em;
}

.sidebar-panel>nav .user-image,
.sidebar-panel>nav .user-info,
.sidebar-panel>nav .nav-profile .dropdown-toggle::after {
    display: inline-block;
    vertical-align: middle;
}

.sidebar-panel>nav .user-info {
    padding-left: 1rem;
}

.sidebar-panel>nav .user-info small {
    display: block;
}

.sidebar-panel>nav .badge {
    font-size: 10px;
    padding: 0 .3rem;
    color: #fff;
    background-color: #f0c54c;
    border-radius: 0.5125rem;
}

.sidebar-panel>nav li ul.sub-menu li a {
    padding: 0.5125rem 1.5rem 0.5125rem 4.01rem;
}

.sidebar-panel>nav .menu-caret {
    display: inline-block;
    -webkit-transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1), -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    float: right;
    margin-left: 0.3125rem;
}

.sidebar-panel>nav ul.nav>li {
    position: relative;
    display: block;
}

.sidebar-panel>nav ul.nav>li>a:focus {
    background-color: transparent;
}

.sidebar-panel>nav ul.nav>li a {
    position: relative;
    display: block;
    clear: both;
    padding: 1rem 1.5rem;
}

.sidebar-panel>nav ul.nav>li a>* {
    vertical-align: middle;
}

.sidebar-panel>nav ul.nav>li>ul {
    margin: 0;
    padding: 0;
}

.sidebar-panel>nav ul.nav>li ul {
    overflow: hidden;
    max-height: 0;
    -webkit-transition: 0.5s cubic-bezier(0.35, 0, 0.25, 1);
    transition: 0.5s cubic-bezier(0.35, 0, 0.25, 1);
    -webkit-transition-property: max-height;
    transition-property: max-height;
}

.sidebar-panel>nav ul.nav>li.open>a>.menu-caret,
.sidebar-panel>nav ul.nav>li li.open>a>.menu-caret {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
}

.sidebar-panel>nav ul.nav>li.open>ul,
.sidebar-panel>nav ul.nav>li li.open>ul {
    max-height: 1000px;
}

.sidebar-panel>nav ul.nav>li.open {
    background-color: rgba(0, 0, 0, 0.05);
}

.sidebar-panel>nav ul.nav>li .sub-menu {
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.sidebar-panel>nav ul.nav>li>.sub-menu .sub-menu {
    padding-left: 1.5rem;
}

@media (min-width: 992px) {
    .sidebar-panel {
        z-index: 1030;
        width: 18rem;
    }
    .sidebar-panel>.brand,
    .sidebar-panel>.nav-profile,
    .sidebar-panel>nav {
        min-width: 18rem;
    }
    /* Collapsed sidebar */
    .expanding .sidebar-panel {
        position: fixed;
    }
    .expanding .main-panel {
        margin-left: 4rem;
    }
    .expanding .sidebar-panel:not(:hover) {
        width: 4rem;
    }
    .expanding .sidebar-panel:not(:hover)>.brand,
    .expanding .sidebar-panel:not(:hover)>.nav-profile,
    .expanding .sidebar-panel:not(:hover)>nav {
        min-width: 4rem;
    }
    .expanding .sidebar-panel:not(:hover)>.brand {
        padding-left: 0;
        padding-right: 0;
        text-align: center;
    }
    .expanding .sidebar-panel:not(:hover)>.brand .brand-logo {
        padding-top: 8px;
        padding-bottom: 8px;
    }
    .expanding .sidebar-panel:not(:hover)>.brand .brand-logo img {
        max-height: 40px;
    }
    .expanding .sidebar-panel:not(:hover) .nav-profile>a {
        padding-right: 0;
        padding-left: 0;
    }
    .expanding .sidebar-panel:not(:hover) .nav-profile>a.dropdown-toggle::after {
        display: none;
        visibility: hidden;
    }
    .expanding .sidebar-panel:not(:hover) .nav-profile .user-image {
        display: block !important;
        padding-right: 0 !important;
        padding-left: 0;
        text-align: center;
    }
    .expanding .sidebar-panel:not(:hover) .nav-profile .dropdown-menu {
        display: none;
    }
    .expanding .sidebar-panel:not(:hover) .small-menu-hidden,
    .expanding .sidebar-panel:not(:hover) .nav-title {
        opacity: 0;
    }
    .expanding .sidebar-panel:not(:hover) .expanding-visible {
        display: block !important;
        visibility: visible;
    }
    .expanding .sidebar-panel:not(:hover) .expanding-hidden,
    .expanding .sidebar-panel:not(:hover) .sub-menu {
        display: none !important;
        visibility: hidden;
    }
    .expanding .sidebar-panel:not(:hover)>nav>ul>li>a {
        padding-right: 0;
        padding-left: 0;
    }
    .expanding .sidebar-panel:not(:hover)>nav>ul>li>a>span {
        display: none;
    }
    .expanding .sidebar-panel:not(:hover)>nav>ul>li .material-icons {
        width: 100%;
        padding: 0;
    }
}

@media (max-width: 991px) {
    .sidebar-panel {
        position: absolute;
    }
}


/* default sidebar skin */

.sidebar-panel {
    background-color: white;
}

.sidebar-panel>.brand {
    background-color: white;
}

.sidebar-panel>.brand>a {
    color: rgba(0, 0, 0, 0.7);
}

.sidebar-panel>.brand>a:focus,
.sidebar-panel>.brand>a:hover {
    color: rgba(13, 13, 13, 0.7);
}

.sidebar-panel .nav-profile>.dropdown-toggle,
.sidebar-panel .nav-title {
    color: rgba(0, 0, 0, 0.7);
}

.sidebar-panel>nav>ul>li>a:hover,
.sidebar-panel>nav>ul>li.open>a:hover {
    background-color: #f7f7f7;
}

.sidebar-panel>nav li.open>a,
.sidebar-panel>nav li.active>a {
    color: black;
}

.sidebar-panel>nav>ul>li.open:before {
    position: absolute;
    z-index: 99;
    top: 0;
    width: 4px;
    height: 100%;
    content: '';
    background: #4c7ff0;
    left: 0;
}

.sidebar-panel>nav a {
    color: rgba(0, 0, 0, 0.7);
}

.sidebar-panel>nav a:focus,
.sidebar-panel>nav a:hover {
    color: black !important;
}


/* $header
 ------------------------------------------*/

.main-panel>.header-secondary,
.main-panel>.header {
    background-color: #555 !important;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
    padding-top: 0;
    padding-right: 1.5rem;
    padding-bottom: 0;
    padding-left: 1.5rem;
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.1);
    border-radius: 0;
    /* Element alignments */
}

.main-panel>.header-secondary .header-inner,
.main-panel>.header .header-inner {
    box-sizing: border-box;
    width: 100%;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
}

.main-panel>.header-secondary .navbar-item,
.main-panel>.header .navbar-item {
    display: inline-block;
    -webkit-box-flex: 0;
    -moz-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
}

.main-panel>.header-secondary .navbar-spacer-right,
.main-panel>.header .navbar-spacer-right {
    -webkit-box-flex: 1;
    -moz-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-transition: width 200ms, -webkit-box-flex 200ms;
    transition: width 200ms, -webkit-box-flex 200ms;
    transition: flex 200ms, width 200ms;
    transition: flex 200ms, width 200ms, -webkit-box-flex 200ms, -ms-flex 200ms;
}

.main-panel>.header-secondary .navbar-nav .nav-link,
.main-panel>.header .navbar-nav .nav-link {
    line-height: 3.438rem;
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
}

.main-panel>.header-secondary .navbar-nav .nav-link.dropdown>a,
.main-panel>.header .navbar-nav .nav-link.dropdown>a {
    line-height: 3.438rem;
    display: inline-block;
}

.main-panel>.header-secondary .navbar-brand,
.main-panel>.header .navbar-brand {
    padding-top: 0.7815rem;
    padding-bottom: 0.7815rem;
}

.main-panel>.header-secondary .navbar-text,
.main-panel>.header .navbar-text {
    margin-right: 1rem;
    margin-left: 1rem;
    margin-top: 1.125rem;
    margin-bottom: 1.125rem;
}

.main-panel>.header-secondary .navbar-heading,
.main-panel>.header .navbar-heading {
    font-size: 1rem;
    font-weight: 500;
    display: inline-block;
    margin-top: 0.9065rem;
    margin-bottom: 0.9065rem;
    margin-right: 1rem;
}

.main-panel>.header-secondary .navbar-btn,
.main-panel>.header .navbar-btn {
    margin-top: 0.6565rem;
    margin-bottom: 0.6565rem;
}

.main-panel>.header-secondary .btn-lg.navbar-btn,
.main-panel>.header .btn-lg.navbar-btn {
    margin-top: 0.3125rem;
    margin-bottom: 0.3125rem;
}

.main-panel>.header-secondary .btn-sm.navbar-btn,
.main-panel>.header .btn-sm.navbar-btn {
    margin-top: 0.7815rem;
    margin-bottom: 0.7815rem;
}

.main-panel>.header-secondary .btn-xs.navbar-btn,
.main-panel>.header .btn-xs.navbar-btn {
    margin-top: 1.0315rem;
    margin-bottom: 1.0315rem;
}

.main-panel>.header-secondary .material-icons,
.main-panel>.header .material-icons {
    line-height: 24px;
    vertical-align: middle;
}

.main-panel>.header-secondary .navbar-nav,
.main-panel>.header .navbar-nav {
    margin: 0;
}

.main-panel>.header-secondary .navbar-nav>li>a,
.main-panel>.header .navbar-nav>li>a {
    padding-top: 1.125rem;
    padding-bottom: 1.125rem;
}

.main-panel>.header-secondary .navbar-nav .dropdown-toggle,
.main-panel>.header .navbar-nav .dropdown-toggle {
    position: relative;
}

.main-panel>.header-secondary .navbar-nav .dropdown-toggle>*,
.main-panel>.header .navbar-nav .dropdown-toggle>* {
    vertical-align: middle;
}

.main-panel>.header-secondary .navbar-nav .dropdown-toggle>.label,
.main-panel>.header .navbar-nav .dropdown-toggle>.label {
    border-radius: 50%;
}

.main-panel>.header-secondary .navbar-nav .dropdown-menu,
.main-panel>.header .navbar-nav .dropdown-menu {
    min-width: auto;
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
    box-shadow: 0 0.375rem 0.75rem rgba(0, 0, 0, 0.1);
}

.main-panel>.header-secondary .navbar-nav .dropdown-menu.notifications,
.main-panel>.header .navbar-nav .dropdown-menu.notifications {
    min-width: 360px;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
}

.main-panel>.header-secondary .navbar-nav .dropdown-menu.notifications .notification-footer,
.main-panel>.header .navbar-nav .dropdown-menu.notifications .notification-footer {
    background-color: #e8e8e8;
}

.main-panel>.header-secondary .navbar-nav .dropdown-menu.notifications .dropdown-item:hover,
.main-panel>.header .navbar-nav .dropdown-menu.notifications .dropdown-item:hover {
    background-color: transparent;
}

.main-panel>.header-secondary .navbar-search,
.main-panel>.header .navbar-search {
    -webkit-transition: width 200ms, -webkit-box-flex 200ms;
    transition: width 200ms, -webkit-box-flex 200ms;
    transition: flex 200ms, width 200ms;
    transition: flex 200ms, width 200ms, -webkit-box-flex 200ms, -ms-flex 200ms;
}

.main-panel>.header-secondary .navbar-search .search-form,
.main-panel>.header .navbar-search .search-form {
    background: rgba(0, 0, 0, 0.1);
    position: relative;
    margin-top: 0.594rem;
    margin-bottom: 0.594rem;
    border-radius: 2px;
    margin-left: 1rem;
    margin-right: 1rem;
    display: block;
}

.main-panel>.header-secondary .navbar-search .search-form .form-control,
.main-panel>.header .navbar-search .search-form .form-control {
    font-size: 0.8125rem;
    padding: .535rem .75rem;
    z-index: 2;
    cursor: text;
    color: #fff;
    text-indent: 30px;
    border: none;
    background: transparent;
}

.main-panel>.header-secondary .navbar-search .search-form .material-icons,
.main-panel>.header .navbar-search .search-form .material-icons {
    position: absolute;
    top: 50%;
    left: 10px;
    margin-top: -12px;
}

.main-panel>.header .dropdown-toggle::after {
    display: none;
}

.main-panel>.header-secondary .nav>li>a:hover,
.main-panel>.header-secondary .nav>li>a:focus {
    color: inherit;
    background-color: transparent;
}

@media (min-width: 544px) {
    .main-panel>.header-secondary .search-focus .navbar-spacer-right,
    .main-panel>.header-secondary .search-focus-active .navbar-spacer-right,
    .main-panel>.header .search-focus .navbar-spacer-right,
    .main-panel>.header .search-focus-active .navbar-spacer-right {
        -webkit-box-flex: 0;
        -moz-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
    .main-panel>.header-secondary .search-focus .navbar-search,
    .main-panel>.header-secondary .search-focus-active .navbar-search,
    .main-panel>.header .search-focus .navbar-search,
    .main-panel>.header .search-focus-active .navbar-search {
        -webkit-box-flex: 1;
        -moz-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        -ms-flex-negative: 1;
        flex-shrink: 1;
        -ms-flex-preferred-size: 1;
        flex-basis: 1;
    }
    .main-panel>.header-secondary .search-focus .navbar-search .search-form,
    .main-panel>.header-secondary .search-focus-active .navbar-search .search-form,
    .main-panel>.header .search-focus .navbar-search .search-form,
    .main-panel>.header .search-focus-active .navbar-search .search-form {
        background: white;
        box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
    }
    .main-panel>.header-secondary .search-focus .navbar-search .form-control,
    .main-panel>.header-secondary .search-focus-active .navbar-search .form-control,
    .main-panel>.header .search-focus .navbar-search .form-control,
    .main-panel>.header .search-focus-active .navbar-search .form-control {
        color: rgba(0, 0, 0, 0.7);
        background: transparent !important;
    }
    .main-panel>.header-secondary .search-focus .navbar-search .form-control:-moz-placeholder,
    .main-panel>.header-secondary .search-focus-active .navbar-search .form-control:-moz-placeholder,
    .main-panel>.header .search-focus .navbar-search .form-control:-moz-placeholder,
    .main-panel>.header .search-focus-active .navbar-search .form-control:-moz-placeholder {
        color: rgba(0, 0, 0, 0.7);
    }
    .main-panel>.header-secondary .search-focus .navbar-search .form-control::-moz-placeholder,
    .main-panel>.header-secondary .search-focus-active .navbar-search .form-control::-moz-placeholder,
    .main-panel>.header .search-focus .navbar-search .form-control::-moz-placeholder,
    .main-panel>.header .search-focus-active .navbar-search .form-control::-moz-placeholder {
        color: rgba(0, 0, 0, 0.7);
    }
    .main-panel>.header-secondary .search-focus .navbar-search .form-control:-ms-input-placeholder,
    .main-panel>.header-secondary .search-focus-active .navbar-search .form-control:-ms-input-placeholder,
    .main-panel>.header .search-focus .navbar-search .form-control:-ms-input-placeholder,
    .main-panel>.header .search-focus-active .navbar-search .form-control:-ms-input-placeholder {
        color: rgba(0, 0, 0, 0.7);
    }
    .main-panel>.header-secondary .search-focus .navbar-search .form-control::-webkit-input-placeholder,
    .main-panel>.header-secondary .search-focus-active .navbar-search .form-control::-webkit-input-placeholder,
    .main-panel>.header .search-focus .navbar-search .form-control::-webkit-input-placeholder,
    .main-panel>.header .search-focus-active .navbar-search .form-control::-webkit-input-placeholder {
        color: rgba(0, 0, 0, 0.7);
    }
    .main-panel>.header-secondary .search-focus .navbar-search .material-icons,
    .main-panel>.header-secondary .search-focus-active .navbar-search .material-icons,
    .main-panel>.header .search-focus .navbar-search .material-icons,
    .main-panel>.header .search-focus-active .navbar-search .material-icons {
        color: rgba(0, 0, 0, 0.7);
    }
}

@media (max-width: 543px) {
    .main-panel>.header-secondary .navbar-search,
    .main-panel>.header .navbar-search {
        display: none;
    }
}

@media (max-width: 991px) {
    .navbar-collapse {
        overflow: hidden;
        max-height: 0;
        -webkit-transition: 0.5s cubic-bezier(0.35, 0, 0.25, 1);
        transition: 0.5s cubic-bezier(0.35, 0, 0.25, 1);
        -webkit-transition-property: max-height;
        transition-property: max-height;
    }
    .navbar-collapse .navbar-nav {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
    .offscreen .navbar-collapse {
        max-height: 2000px;
    }
    .main-panel>.header-secondary .navbar-nav {
        display: block;
        float: none !important;
    }
    .main-panel>.header-secondary .navbar-nav .nav-item {
        display: block;
        float: none;
    }
    .main-panel>.header-secondary .navbar-nav .nav-item .nav-link,
    .main-panel>.header-secondary .navbar-nav .nav-item .nav-link.dropdown>a {
        line-height: 2rem !important;
    }
    .main-panel>.header-secondary .navbar-nav .nav-item+.nav-item {
        margin-left: 0;
    }
    .main-panel>.header-secondary .dropdown-menu {
        position: static;
        float: none;
        border: 0;
        border-top-left-radius: 2px !important;
        border-top-right-radius: 2px !important;
    }
}

@media (max-width: 543px) {
    .main-panel>.header .dropdown {
        position: static !important;
    }
    .main-panel>.header .dropdown .dropdown-menu {
        width: 100%;
        padding: 0 0 1rem;
    }
    .main-panel>.header .dropdown .dropdown-menu.notifications {
        min-width: auto;
    }
    .main-panel>.header .dropdown .dropdown-menu .dropdown-header {
        margin-top: 1rem;
        margin-bottom: 0;
    }
    .main-panel>.header .dropdown .dropdown-menu .dropdown-item {
        border-radius: 2px;
    }
}


/* default header skin */

.main-panel>.header {
    color: rgba(255, 255, 255, 0.7);
    background-color: #4c7ff0;
}

.main-panel>.header .navbar-nav .nav-link.dropdown>a,
.main-panel>.header .nav>li>a,
.main-panel>.header .navbar-heading,
.main-panel>.header .material-icons {
    color: rgba(255, 255, 255, 0.7);
}

.main-panel>.header .navbar-nav .dropdown-menu {
    border-color: #4c7ff0;
}

.main-panel>.header .search-form>input:-moz-placeholder {
    color: rgba(255, 255, 255, 0.7);
}

.main-panel>.header .search-form>input::-moz-placeholder {
    color: rgba(255, 255, 255, 0.7);
}

.main-panel>.header .search-form>input:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7);
}

.main-panel>.header .search-form>input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.7);
}

.main-panel>.header .search-form .form-control:focus {
    background: #4c7ff0;
}

.main-panel>.header .nav>li>a:hover,
.main-panel>.header .nav>li>a:focus,
.main-panel>.header .nav .open>a,
.main-panel>.header .nav .open>a:hover,
.main-panel>.header .nav .open>a:focus {
    color: white;
}


/* $brand
 ------------------------------------------*/

.brand {
    position: relative;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
}

.brand .toggle-offscreen {
    padding-top: 16px;
    padding-bottom: 16px;
    float: left;
    margin-right: 1rem;
}

.brand .toggle-offscreen .material-icons {
    vertical-align: middle;
}

.brand .brand-logo {
    display: inline-block;
    padding-top: 20px;
    padding-bottom: 20px;
    line-height: 13px;
}

.brand .brand-logo img {
    max-height: 20px;
}

.sidebar-panel .brand {
    min-height: 56px;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}


/* $main-panel
 ------------------------------------------*/

.main-panel {
    background: #f1f1f1;
    min-height: 100%;
    box-sizing: border-box;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -moz-flex: 1;
    -ms-flex: 1;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
}

.main-panel>.main-content {
    box-sizing: border-box;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -moz-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.main-panel>.main-content>.content-view {
    position: relative;
    box-sizing: border-box;
    padding: 1.5rem;
    -webkit-box-flex: 1;
    -moz-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

.no-padding .content-view {
    padding: 0 !important;
}


/*Margins*/

.row {
    margin-right: -0.75rem;
    margin-left: -0.75rem;
}

.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: 0.75rem;
    padding-right: 0.75rem;
}


/* $footer
 ------------------------------------------*/

.content-footer {
    position: relative;
    z-index: 1000;
    width: 100%;
    min-height: 3rem;
    padding: 0 1.5rem;
}

.content-footer::after {
    content: "";
    display: table;
    clear: both;
}

.content-footer .footer-text {
    display: inline-block;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-top: 0.906rem;
    margin-bottom: 0.906rem;
    float: left;
}

.content-footer .footer-text.small {
    margin-top: 1.03125rem;
    margin-bottom: 1.03125rem;
}

.content-footer .footer-right {
    float: right;
    margin-right: 0;
}

.content-footer nav {
    margin-right: 1rem;
}

.content-footer nav ul {
    font-weight: normal;
    line-height: 1;
    margin: 0;
    list-style: none;
}

.content-footer nav ul li {
    display: inline-block;
    vertical-align: -webkit-baseline-middle;
}

.content-footer nav ul li a {
    line-height: 1.25rem;
    display: block;
    max-height: 3rem;
    padding-right: .625rem;
    padding-left: .625rem;
    color: rgba(0, 0, 0, 0.7);
    padding-top: 0.906rem;
    padding-bottom: 0.906rem;
}

.content-footer nav ul li a:hover,
.content-footer nav ul li a:focus {
    color: rgba(0, 0, 0, 0.7);
    background-color: transparent;
}

.content-footer nav ul li:first-child {
    margin-left: 0;
}

.content-footer nav ul li:first-child a {
    padding-left: 0;
}

.content-footer li:hover,
.content-footer li a:hover,
.content-footer li a:active {
    background: transparent;
}

.session-footer {
    padding: 0 4rem;
}

.no-footer .content-footer,
.no-footer .session-footer {
    display: none;
    visibility: hidden;
}


/* $chat-panel
 ------------------------------------------*/

.chat-panel .modal-dialog {
    width: 18rem !important;
    background: white !important;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.075);
}

.chat-panel .modal-body {
    overflow-y: auto;
    height: 100%;
    max-height: calc(100vh - 56px);
}

.chat-panel .modal-body,
.chat-message .modal-body {
    padding: 0.75rem 0;
}

.chat-panel .chat-inner,
.chat-message .chat-inner {
    width: 100%;
    height: 100%;
}

.chat-panel .chat-header,
.chat-message .chat-header {
    min-height: 56px;
    padding: 0 1.5rem;
    background-color: rgba(0, 0, 0, 0.05);
}

.chat-panel .chat-header::after,
.chat-message .chat-header::after {
    content: "";
    display: table;
    clear: both;
}

.chat-panel .chat-header .chat-header-title,
.chat-message .chat-header .chat-header-title {
    display: inline-block;
    margin: 0;
    padding-top: 1.1875rem;
    padding-bottom: 1.1875rem;
}

.chat-panel .chat-header .chat-conversation-title,
.chat-message .chat-header .chat-conversation-title {
    display: inline-block;
    margin: 0;
    padding-top: 0.5315rem;
    padding-bottom: 0.5315rem;
}

.chat-panel .chat-header .chat-conversation-title span,
.chat-message .chat-header .chat-conversation-title span {
    display: block;
    line-height: 2.3em;
}

.chat-message .chat-header .chat-conversation-title .image {
  position: relative;
  top: -2px;
}

.chat-message .chat-header .chat-conversation-title .image .avatar {
  width: 2rem;
  height: 2rem;
  top: 4px;
}

.chat-message .chat-header .chat-conversation-title .initials .circle-icon {
  margin-top: 2px;
}

.chat-panel .chat-header>a,
.chat-panel .chat-header>.dropdown,
.chat-message .chat-header>a,
.chat-message .chat-header>.dropdown {
    padding-top: 0.875rem;
    padding-bottom: 0.875rem;
}

.chat-panel .chat-header>.dropdown>a::after,
.chat-message .chat-header>.dropdown>a::after {
    display: none;
}

.chat-panel .chat-header .chat-right,
.chat-panel .chat-header .chat-back,
.chat-message .chat-header .chat-right,
.chat-message .chat-header .chat-back {
    cursor: pointer;
    border: .0625rem solid transparent;
    background-color: transparent;
    background-image: none;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.chat-panel .chat-header .chat-right,
.chat-message .chat-header .chat-right {
    position: absolute;
    top: 0;
    right: 0;
}

.chat-panel .chat-header .chat-back,
.chat-message .chat-header .chat-back {
    font-size: 1rem;
    line-height: 1;
    position: absolute;
    top: 0;
    color: black;
    text-shadow: 0 .0625rem 0 white;
    left: 0;
    opacity: 0.4;
}

.chat-panel .chat-header .chat-back:hover,
.chat-message .chat-header .chat-back:hover {
    opacity: 0.5;
}

.chat-message .modal-body {
    overflow-y: auto;
    height: 100%;
    min-height: 80px;
    max-height: calc(100vh - 200px);
    padding: 0.75rem;
}

.chat-message .modal-content {
    display: inline-block;
}

.chat-backdrop {
    background-color: transparent;
}

.chat-message {
    background-color: rgba(0, 0, 0, 0.5);
}

.chat-group {
    margin-bottom: 1rem;
}

.chat-group .chat-group-header {
    font-weight: 500;
    text-transform: uppercase;
}

.chat-group .chat-group-header,
.chat-group a {
    position: relative;
    display: block;
    padding: 0.6125rem 1.5rem;
}

.chat-group .chat-group-header:hover,
.chat-group a:hover {
    color: rgba(0, 0, 0, 0.7);
}

.chat-group .status-online,
.chat-group .status-away,
.chat-group .status-no-disturb,
.chat-group .status-invisible,
.chat-group .status-offline {
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: #e8e8e8;
    margin-right: 0.3125rem;
    border-radius: 5px;
}

.chat-group .status-online {
    background-color: #7fc35c;
}

.chat-group .status-away {
    background-color: #f0c54c;
}

.chat-group .status-no-disturb {
    background-color: #d26d54;
}

.chat-group .status-invisible,
.chat-group .status-offline {
    background-color: #e8e8e8;
}

.chat-conversation-content {
    position: absolute;
    top: 3.438rem;
    right: 0;
    bottom: 3.438rem;
    left: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 1rem;
}

.chat-conversation-footer {
    position: relative;
    width: 100%;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.chat-conversation-user {
    overflow: hidden;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 1.5rem;
    padding: 0 4rem;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
}

.me {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -moz-justify-content: flex-end;
    justify-content: flex-end;
}

.me .chat-conversation-avatar {
    margin-left: 1rem;
    -webkit-box-ordinal-group: 3;
    -moz-order: 2;
    -ms-flex-order: 2;
    order: 2;
}

.me .chat-conversation-message {
    -webkit-box-ordinal-group: 2;
    -moz-order: 1;
    -ms-flex-order: 1;
    order: 1;
}

.me .chat-conversation-message::after {
    position: absolute;
    bottom: 0;
    width: 0;
    height: 0;
    content: '';
    border: 5px solid #4cc3f0;
    border-top-color: transparent;
    border-right-color: transparent;
    right: -7px;
}

.them .chat-conversation-avatar {
    margin-right: 1rem;
}

.them .chat-conversation-message::after {
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    content: '';
    border: 5px solid #e8e8e8;
    border-bottom-color: transparent;
    left: -7px;
    border-left-color: transparent;
}

.chat-conversation-avatar {
    position: relative;
    width: 36px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -moz-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
}

.chat-conversation-avatar img {
    max-width: 100%;
    border-radius: 15%;
}

.chat-conversation-message {
    position: relative;
    padding: 0.625rem 1rem;
    background-color: #e8e8e8;
    border-radius: 4px;
}

.chat-conversation-message p {
    margin: 0;
}

.chat-conversation-user.me .chat-conversation-message {
    position: relative;
    background-color: #4cc3f0;
    float: right;
}

.chat-conversation-user.me .chat-conversation-message p {
    color: white;
}

.chat-input {
    position: absolute;
    top: 0;
    right: 3rem;
    left: 3rem;
    display: block;
    overflow: hidden;
    overflow-y: auto;
    max-height: 3.438rem;
    resize: none;
    border: 0;
    outline: none;
    padding-top: 1rem;
    padding-bottom: 1rem;
    border-radius: 0;
    box-shadow: none;
}

.chat-input:empty::before {
    content: 'Send a message';
}

.chat-input:focus::before {
    content: '';
}

.chat-left {
    padding: 0.625rem 1rem;
    color: inherit;
    border: none;
    outline: none;
    background: transparent;
    margin-top: 0.2185rem;
    margin-bottom: 0.2185rem;
    float: left;
}

.chat-right {
    position: relative;
    overflow: hidden;
    padding: 0.625rem 1rem;
    border: none;
    outline: none;
    background: transparent;
    margin-top: 0.2185rem;
    margin-bottom: 0.2185rem;
    float: right;
}

.chat-send>i {
    position: relative;
}


/* $offscreen-menu
 ------------------------------------------*/

.off-canvas-overlay {
    position: fixed;
    z-index: 9999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    visibility: hidden;
    background-color: rgba(0, 0, 0, 0.5);
}

.offcanvas .off-canvas-overlay {
    background-color: transparent;
}

.offcanvas .sidebar-panel {
    position: absolute;
    z-index: 9999;
    width: 18rem;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
}

.offcanvas .sidebar-panel.offscreen-right {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
}

.offcanvas .main-panel {
    position: relative;
    width: 100%;
    min-height: 100%;
}

.offcanvas .main-panel,
.offcanvas .sidebar-panel {
    -webkit-transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1), -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
}

.offcanvas .header .brand,
.offcanvas .toggle-offscreen {
    display: inline-block !important;
    visibility: visible !important;
}

.offcanvas .navbar-heading {
    display: none;
    visibility: hidden;
}

.offcanvas.offscreen .off-canvas-overlay {
    display: block;
    visibility: visible;
}

.offcanvas.offscreen .sidebar-panel {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.offcanvas.move-right .sidebar-panel>nav {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.offcanvas.full-width .main-panel>.main-content>.content-view,
.full-width .header-secondary+.main-content>.content-view {
    width: 100% !important;
}

@media (min-width: 992px) {
    .off-canvas-overlay {
        background-color: rgba(0, 0, 0, 0.5) !important;
    }
    .offcanvas .main-panel>.main-content>.content-view,
    .header-secondary+.main-content>.content-view {
        width: 90%;
        margin-right: auto;
        margin-left: auto;
    }
}

@media (max-width: 991px) {
    .off-canvas-overlay {
        background-color: rgba(0, 0, 0, 0.5) !important;
    }
}

@media (max-width: 991px) {
    * {
        -webkit-overflow-scrolling: touch;
    }
    .sidebar-panel {
        z-index: 9999;
        width: 18rem;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
    .sidebar-panel.offscreen-right {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
    .main-panel {
        position: relative;
        min-height: 100%;
    }
    .main-panel,
    .sidebar-panel .brand {
        width: 100%;
    }
    .sidebar-panel .brand {
        float: none;
        padding-right: 1rem;
        padding-left: 1rem;
    }
    .main-panel,
    .sidebar-panel {
        -webkit-transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
        transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
        transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
        transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1), -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    }
    .offscreen .off-canvas-overlay {
        display: block;
        visibility: visible;
    }
    .offscreen .sidebar-panel {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .move-right .sidebar-panel>nav {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}


/* $Widget
 ------------------------------------------*/


/*Notifications*/

.notification-bar-icon,
.notification-bar-details {
    display: table-cell;
    float: none;
    vertical-align: middle;
}

.notification-bar-icon {
    width: 3rem;
    height: 3rem;
}

.notification-bar-icon div {
    position: relative;
    width: 3rem;
    height: 3rem;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    background-color: #fff;
}

.notification-bar-icon i {
    position: absolute;
    top: 50%;
    width: 1.875rem;
    height: 1.875rem;
    border-radius: 50%;
    background-color: #7fc35c;
    left: 50%;
    margin: -0.9375rem 0 0 -0.9375rem;
}

.notification-bar-details {
    padding-left: 0.9rem;
}

.notification-bar-details .notification-bar-title {
    font-size: .85rem;
    display: block;
}

.notification-bar-success .notification-bar-icon i {
    background-color: #7fc35c;
}

.notification-bar-fail .notification-bar-icon i {
    background-color: #d26d54;
}

.notification-bar-info .notification-bar-icon i {
    background-color: #4cc3f0;
}

.dropdown-menu.notifications .dropdown-item {
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
}

.dropdown-menu.notifications .notification-icon {
    width: 2rem;
}

.dropdown-menu.notifications .notification-message {
    padding-left: 0.625rem;
}

.dropdown-menu.notifications .notifications-header {
    padding: 0 1rem;
}

.dropdown-menu.notifications .notifications-header {
    padding-top: .625rem;
    padding-right: 1.25rem;
    padding-bottom: .625rem;
    padding-left: 1.25rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.dropdown-menu.notifications .notifications-header p {
    margin: 0;
}

.dropdown-menu.notifications li a {
    line-height: 1.563rem;
    display: table;
    overflow: hidden;
    width: 100%;
    height: 100%;
    border-spacing: 0;
}

.dropdown-menu.notifications .notification-icon,
.dropdown-menu.notifications .notification-message {
    position: relative;
    display: table-cell;
    float: none;
    height: 100%;
    vertical-align: middle;
}

.dropdown-menu.notifications .time {
    font-size: .75rem;
    line-height: 1;
    display: block;
    color: rgba(0, 0, 0, 0.5);
}

.dropdown-menu.notifications .avatar {
    width: 100%;
}

.dropdown-menu.notifications a:hover,
.dropdown-menu.notifications a:active {
    color: rgba(0, 0, 0, 0.7);
    background-color: transparent;
}

.dropdown-menu.notifications .notifications-wrapper {
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 250px;
}

.dropdown-menu.notifications .notifications-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.dropdown-menu.notifications .notifications-list li {
    margin: 0 1.5rem;
}

.dropdown-menu.notifications .notifications-list li a {
    position: relative;
    padding: 1rem 0;
    border-bottom: .0625rem solid #f1f1f1;
}

.dropdown-menu.notifications .notifications-list li:last-child a {
    border-bottom: 0;
}

.dropdown-menu.notifications .notification-footer {
    padding: 1rem 1.5rem;
}

.circle-icon {
    line-height: 2rem;
    position: relative;
    display: table;
    width: 2rem;
    height: 2rem;
    margin: 0;
    text-align: center;
    float: left;
    border-radius: 15%;
}

.circle-icon>i {
    font-size: 1rem;
    display: table-cell;
    float: none;
    width: 100%;
    height: 100%;
    vertical-align: middle;
}


/* $layout-options
 ------------------------------------------*/


/*Flex Layout*/

.layout,
.layout-row {
    box-sizing: border-box;
    width: 100%;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
}

.layout-column {
    -webkit-box-flex: 1;
    -moz-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

.layout-row {
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

.layout-row>* {
    max-width: 100%;
}

.flexbox {
    box-sizing: border-box;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
}

.flex {
    box-sizing: border-box;
    -webkit-box-flex: 1;
    -moz-flex: 1;
    -ms-flex: 1;
    flex: 1;
}


/*Heights*/

.full-height {
    height: 100%;
}

.fill-container,
.page-height {
    height: calc(100vh - 3.438rem);
}

.header-secondary+.main-content>.content-view .fill-container,
.header-secondary+.main-content>.content-view .page-height {
    height: calc(100vh - 9.876rem);
}


/*Table equal columns*/

.column-equal {
    display: table;
    width: 100%;
    table-layout: fixed;
}

.column-equal .col {
    display: table-cell;
    float: none;
    vertical-align: top;
}


/*Scroll*/

.scroll-y {
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}


/* Fixed header layout*/

.fixed-header .main-panel {
    overflow-x: initial;
    overflow-y: initial;
}

.fixed-header .main-content {
    overflow-x: hidden;
    overflow-y: auto;
}


/* Static sidebar layout*/

.app.layout-static {
    max-height: initial !important;
    max-height: auto !important;
    height: initial !important;
    height: auto !important;
}

.app.static {
    max-height: initial;
    height: initial;
}

.app.static .main-panel {
    overflow-x: initial;
    overflow-y: initial;
}

.app.static .main-content {
    overflow-x: visible;
    overflow-y: visible;
}

.app.static .contacts-container {
    height: initial !important;
}

.app.static .full-height {
    height: initial;
}

.app.static .fill-container {
    width: 100%;
    height: initial;
}

.app.static #google-container {
    position: absolute !important;
}


/* Boxed layout*/

.app.boxed {
    overflow: hidden;
    margin-right: auto;
    margin-left: auto;
}

.app.boxed.expanding .sidebar-panel {
    position: absolute;
}

@media (min-width: 48em) {
    .app.boxed {
        max-width: 46.88rem;
    }
}

@media (min-width: 62rem) {
    .app.boxed {
        max-width: 60.63rem;
    }
}

@media (min-width: 75rem) {
    .app.boxed {
        max-width: 73.13rem;
    }
}


/* $modal-panel
 ------------------------------------------*/

.sidebar-modal.modal.fade .modal-dialog {
    -webkit-transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1), -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
}

.sidebar-modal.modal.in .modal-dialog {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.sidebar-modal .modal-dialog {
    position: absolute;
    z-index: 1100;
    top: 0;
    bottom: 0;
    overflow-x: hidden;
    overflow-y: auto;
    width: 20rem;
    margin: 0;
    border-radius: 0;
    background-color: #e8e8e8;
    right: 0;
}

.sidebar-modal .modal-dialog .modal-header {
    border-color: rgba(0, 0, 0, 0.1);
}

.sidebar-modal .modal-dialog .modal-content {
    border: 0;
    background: transparent;
}


/* $alerts
 ------------------------------------------*/

.alert {
    border-radius: 2px;
}

.alert-success {
    background-color: #d7eccc;
    border-color: #cee8c1;
    color: #4f8732;
}

.alert-success hr {
    border-top-color: #bfe1ae;
}

.alert-success .alert-link {
    color: #396224;
}

.alert-info {
    background-color: #d9f2fc;
    border-color: #cbeefb;
    color: #1194c5;
}

.alert-info hr {
    border-top-color: #b4e6f9;
}

.alert-info .alert-link {
    color: #0d7196;
}

.alert-warning {
    background-color: #faebc2;
    border-color: #f9e7b4;
    color: #dda813;
}

.alert-warning hr {
    border-top-color: #f7df9c;
}

.alert-warning .alert-link {
    color: #ae840f;
}

.alert-danger {
    background-color: #f2d4cd;
    border-color: #efcac1;
    color: #983e28;
}

.alert-danger hr {
    border-top-color: #e9b9ad;
}

.alert-danger .alert-link {
    color: #702e1d;
}


/* $breadcrumbs
 ------------------------------------------*/

.breadcrumb {
    border-radius: 2px;
}

.breadcrumb>li+li::before {
    font-family: FontAwesome;
    content: "";
}


/* $buttons
 ------------------------------------------*/

.btn {
    border-radius: 2px;
    -webkit-transition: all 200ms linear;
    transition: all 200ms linear;
}

.btn:focus,
.btn.focus,
.btn:active:focus,
.btn:active.focus,
.btn.active:focus,
.btn.active.focus {
    outline: 0;
}


/* Rounded button styles */

.btn-round,
.btn-round a,
.btn-round .btn,
.input-round {
    border-radius: 2.5rem;
}

.btn-round::before,
.btn-round a::before,
.btn-round .btn::before,
.input-round::before {
    border-radius: 2.5rem;
}

.btn-default {
    color: rgba(0, 0, 0, 0.7);
    background-color: #e8e8e8;
    border-color: #e2e1e1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-default:hover {
    color: rgba(0, 0, 0, 0.7);
    background-color: #cfcfcf;
    border-color: #c4c2c2;
}

.btn-default:focus,
.btn-default.focus {
    color: rgba(0, 0, 0, 0.7);
    background-color: #cfcfcf;
    border-color: #c4c2c2;
}

.btn-default:active,
.btn-default.active,
.open>.btn-default.dropdown-toggle {
    color: rgba(0, 0, 0, 0.7);
    background-color: #cfcfcf;
    border-color: #c4c2c2;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-default:active:hover,
.btn-default:active:focus,
.btn-default:active.focus,
.btn-default.active:hover,
.btn-default.active:focus,
.btn-default.active.focus,
.open>.btn-default.dropdown-toggle:hover,
.open>.btn-default.dropdown-toggle:focus,
.open>.btn-default.dropdown-toggle.focus {
    color: rgba(0, 0, 0, 0.7);
    background-color: #bdbdbd;
    border-color: #a3a0a0;
}

.btn-default.disabled:focus,
.btn-default.disabled.focus,
.btn-default:disabled:focus,
.btn-default:disabled.focus {
    background-color: #e8e8e8;
    border-color: #e2e1e1;
}

.btn-default.disabled:hover,
.btn-default:disabled:hover {
    background-color: #e8e8e8;
    border-color: #e2e1e1;
}

.btn-primary {
    color: white;
    background-color: #12a6a1;
    border-color: #12a6a1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-edit {
  background-color: #f0c54c;
  border-color: #f0c54c;
  color: white;
}

.btn-edit:hover {
  background-color: #D4A21A;
  border-color: #D4A21A;
  color: white;
}

.btn-primary:hover {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}

.btn-primary:focus,
.btn-primary.focus {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}

.btn-primary:active,
.btn-primary.active,
.open>.btn-primary.dropdown-toggle {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-primary:active:hover,
.btn-primary:active:focus,
.btn-primary:active.focus,
.btn-primary.active:hover,
.btn-primary.active:focus,
.btn-primary.active.focus,
.open>.btn-primary.dropdown-toggle:hover,
.open>.btn-primary.dropdown-toggle:focus,
.open>.btn-primary.dropdown-toggle.focus {
    color: white;
    background-color: #124ed4;
    border-color: #0f40ae;
}

.btn-primary.disabled:focus,
.btn-primary.disabled.focus,
.btn-primary:disabled:focus,
.btn-primary:disabled.focus {
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.btn-primary.disabled:hover,
.btn-primary:disabled:hover {
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.btn-alt01 {
    color: white;
    background-color: #1aacf0;
    border-color: #1aacf0;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-alt01:hover {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}

.btn-alt01:focus,
.btn-primary.focus {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}

.btn-alt01:active,
.btn-alt01.active,
.open>.btn-alt01.dropdown-toggle {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-alt01:active:hover,
.btn-alt01:active:focus,
.btn-alt01:active.focus,
.btn-alt01.active:hover,
.btn-alt01.active:focus,
.btn-alt01.active.focus,
.open>.btn-alt01.dropdown-toggle:hover,
.open>.btn-alt01.dropdown-toggle:focus,
.open>.btn-alt01.dropdown-toggle.focus {
    color: white;
    background-color: #124ed4;
    border-color: #0f40ae;
}

.btn-alt01.disabled:focus,
.btn-alt01.disabled.focus,
.btn-alt01:disabled:focus,
.btn-alt01:disabled.focus {
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.btn-alt01.disabled:hover,
.btn-alt01:disabled:hover {
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.btn-secondary {
    color: rgba(0, 0, 0, 0.7);
    background-color: #fff;
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-secondary:hover {
    color: rgba(0, 0, 0, 0.7);
    background-color: #e6e6e6;
    border-color: rgba(0, 0, 0, 0.1);
}

.btn-secondary:focus,
.btn-secondary.focus {
    color: rgba(0, 0, 0, 0.7);
    background-color: #e6e6e6;
    border-color: rgba(0, 0, 0, 0.1);
}

.btn-secondary:active,
.btn-secondary.active,
.open>.btn-secondary.dropdown-toggle {
    color: rgba(0, 0, 0, 0.7);
    background-color: #e6e6e6;
    border-color: rgba(0, 0, 0, 0.1);
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-secondary:active:hover,
.btn-secondary:active:focus,
.btn-secondary:active.focus,
.btn-secondary.active:hover,
.btn-secondary.active:focus,
.btn-secondary.active.focus,
.open>.btn-secondary.dropdown-toggle:hover,
.open>.btn-secondary.dropdown-toggle:focus,
.open>.btn-secondary.dropdown-toggle.focus {
    color: rgba(0, 0, 0, 0.7);
    background-color: #d4d4d4;
    border-color: rgba(0, 0, 0, 0.1);
}

.btn-secondary.disabled:focus,
.btn-secondary.disabled.focus,
.btn-secondary:disabled:focus,
.btn-secondary:disabled.focus {
    background-color: #fff;
    border-color: rgba(0, 0, 0, 0.1);
}

.btn-secondary.disabled:hover,
.btn-secondary:disabled:hover {
    background-color: #fff;
    border-color: rgba(0, 0, 0, 0.1);
}

.btn-info {
    color: white;
    background-color: #999999;
    border-color: #929292;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-info:hover {
    color: white;
    background-color: #929292;
    border-color: #999999;
}

.btn-info:focus,
.btn-info.focus {
    color: white;
    background-color: #929292;
    border-color: #999999;
}

.btn-info:active,
.btn-info.active,
.open>.btn-info.dropdown-toggle {
    color: white;
    background-color: #929292;
    border-color: #999999;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-info:active:hover,
.btn-info:active:focus,
.btn-info:active.focus,
.btn-info.active:hover,
.btn-info.active:focus,
.btn-info.active.focus,
.open>.btn-info.dropdown-toggle:hover,
.open>.btn-info.dropdown-toggle:focus,
.open>.btn-info.dropdown-toggle.focus {
    color: white;
    background-color: #929292;
    border-color: #999999;
}

.btn-info.disabled:focus,
.btn-info.disabled.focus,
.btn-info:disabled:focus,
.btn-info:disabled.focus {
    background-color: #4cc3f0;
    border-color: #4cc3f0;
}

.btn-info.disabled:hover,
.btn-info:disabled:hover {
    background-color: #4cc3f0;
    border-color: #4cc3f0;
}

.btn-success {
    color: white;
    background-color: #a382ae;
    border-color: #a382ae;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-success:hover {
    color: white;
    background-color: #65ad3f;
    border-color: #60a53d;
}

.btn-success:focus,
.btn-success.focus {
    color: white;
    background-color: #65ad3f;
    border-color: #60a53d;
}

.btn-success:active,
.btn-success.active,
.open>.btn-success.dropdown-toggle {
    color: white;
    background-color: #65ad3f;
    border-color: #60a53d;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-success:active:hover,
.btn-success:active:focus,
.btn-success:active.focus,
.btn-success.active:hover,
.btn-success.active:focus,
.btn-success.active.focus,
.open>.btn-success.dropdown-toggle:hover,
.open>.btn-success.dropdown-toggle:focus,
.open>.btn-success.dropdown-toggle.focus {
    color: white;
    background-color: #559236;
    border-color: #44752b;
}

.btn-success.disabled:focus,
.btn-success.disabled.focus,
.btn-success:disabled:focus,
.btn-success:disabled.focus {
    background-color: #7fc35c;
    border-color: #7fc35c;
}

.btn-success.disabled:hover,
.btn-success:disabled:hover {
    background-color: #7fc35c;
    border-color: #7fc35c;
}

.btn-warning {
    color: white;
    background-color: #12a6a1;
    border-color: #12a6a1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-warning:hover {
    color: white;
    background-color: #a382ae;
    border-color: #a382ae;
}

.btn-warning:focus,
.btn-warning.focus {
    color: white;
    background-color: #a382ae;
    border-color: #a382ae;
}

.btn-warning:active,
.btn-warning.active,
.open>.btn-warning.dropdown-toggle {
    color: white;
    background-color: #a382ae;
    border-color: #a382ae;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-warning:active:hover,
.btn-warning:active:focus,
.btn-warning:active.focus,
.btn-warning.active:hover,
.btn-warning.active:focus,
.btn-warning.active.focus,
.open>.btn-warning.dropdown-toggle:hover,
.open>.btn-warning.dropdown-toggle:focus,
.open>.btn-warning.dropdown-toggle.focus {
    color: white;
    background-color: #a382ae;
    border-color: #a382ae;
}

.btn-warning.disabled:focus,
.btn-warning.disabled.focus,
.btn-warning:disabled:focus,
.btn-warning:disabled.focus {
    background-color: #f0c54c;
    border-color: #f0c54c;
}

.btn-warning.disabled:hover,
.btn-warning:disabled:hover {
    background-color: #f0c54c;
    border-color: #f0c54c;
}

.btn-danger {
    color: white;
    background-color: #fa6160;
    border-color: #fa6160;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-danger:hover {
    color: white;
    background-color: #c04f33;
    border-color: #b84b31;
}

.btn-danger:focus,
.btn-danger.focus {
    color: white;
    background-color: #c04f33;
    border-color: #b84b31;
}

.btn-danger:active,
.btn-danger.active,
.open>.btn-danger.dropdown-toggle {
    color: white;
    background-color: #c04f33;
    border-color: #b84b31;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-danger:active:hover,
.btn-danger:active:focus,
.btn-danger:active.focus,
.btn-danger.active:hover,
.btn-danger.active:focus,
.btn-danger.active.focus,
.open>.btn-danger.dropdown-toggle:hover,
.open>.btn-danger.dropdown-toggle:focus,
.open>.btn-danger.dropdown-toggle.focus {
    color: white;
    background-color: #a4432b;
    border-color: #843623;
}

.btn-danger.disabled:focus,
.btn-danger.disabled.focus,
.btn-danger:disabled:focus,
.btn-danger:disabled.focus {
    background-color: #d26d54;
    border-color: #d26d54;
}

.btn-danger.disabled:hover,
.btn-danger:disabled:hover {
    background-color: #d26d54;
    border-color: #d26d54;
}

.btn-default-outline {
    color: #e8e8e8;
    background-image: none;
    background-color: transparent;
    border-color: #e8e8e8;
}

.btn-default-outline:focus,
.btn-default-outline.focus,
.btn-default-outline:active,
.btn-default-outline.active,
.open>.btn-default-outline.dropdown-toggle {
    color: #fff;
    background-color: #e8e8e8;
    border-color: #e8e8e8;
}

.btn-default-outline:hover {
    color: #fff;
    background-color: #e8e8e8;
    border-color: #e8e8e8;
}

.btn-default-outline.disabled:focus,
.btn-default-outline.disabled.focus,
.btn-default-outline:disabled:focus,
.btn-default-outline:disabled.focus {
    border-color: white;
}

.btn-default-outline.disabled:hover,
.btn-default-outline:disabled:hover {
    border-color: white;
}

.btn-primary-outline {
    color: #4c7ff0;
    background-image: none;
    background-color: transparent;
    border-color: #4c7ff0;
}

.btn-primary-outline:focus,
.btn-primary-outline.focus,
.btn-primary-outline:active,
.btn-primary-outline.active,
.open>.btn-primary-outline.dropdown-toggle {
    color: #fff;
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.btn-primary-outline:hover {
    color: #fff;
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.btn-bio {
    color: #fff;
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.btn-bio:hover {
    color: #fff;
    background-color: #4cc3f0;
    border-color: #4cc3f0;
}

.btn-primary-outline.disabled:focus,
.btn-primary-outline.disabled.focus,
.btn-primary-outline:disabled:focus,
.btn-primary-outline:disabled.focus {
    border-color: #aac2f8;
}

.btn-primary-outline.disabled:hover,
.btn-primary-outline:disabled:hover {
    border-color: #aac2f8;
}

.btn-secondary-outline {
    color: rgba(0, 0, 0, 0.1);
    background-image: none;
    background-color: transparent;
    border-color: rgba(0, 0, 0, 0.1);
}

.btn-secondary-outline:focus,
.btn-secondary-outline.focus,
.btn-secondary-outline:active,
.btn-secondary-outline.active,
.open>.btn-secondary-outline.dropdown-toggle {
    color: #fff;
    background-color: rgba(0, 0, 0, 0.1);
    border-color: rgba(0, 0, 0, 0.1);
}

.btn-secondary-outline:hover {
    color: #fff;
    background-color: rgba(0, 0, 0, 0.1);
    border-color: rgba(0, 0, 0, 0.1);
}

.btn-secondary-outline.disabled:focus,
.btn-secondary-outline.disabled.focus,
.btn-secondary-outline:disabled:focus,
.btn-secondary-outline:disabled.focus {
    border-color: rgba(51, 51, 51, 0.1);
}

.btn-secondary-outline.disabled:hover,
.btn-secondary-outline:disabled:hover {
    border-color: rgba(51, 51, 51, 0.1);
}

.btn-info-outline {
    color: #999999;
    background-image: none;
    background-color: transparent;
    border-color: #999999;
}

.btn-info-outline:focus,
.btn-info-outline.focus,
.btn-info-outline:active,
.btn-info-outline.active,
.open>.btn-info-outline.dropdown-toggle {
    color: #fff;
    background-color: #999999;
    border-color: #929292;
}

.btn-info-outline:hover {
    color: #fff;
    background-color: #999999;
    border-color: #929292;
}

.btn-info-outline.disabled:focus,
.btn-info-outline.disabled.focus,
.btn-info-outline:disabled:focus,
.btn-info-outline:disabled.focus {
    border-color: #aae3f8;
}

.btn-info-outline.disabled:hover,
.btn-info-outline:disabled:hover {
    border-color: #aae3f8;
}

.btn-success-outline {
    color: #7fc35c;
    background-image: none;
    background-color: transparent;
    border-color: #7fc35c;
}

.btn-success-outline:focus,
.btn-success-outline.focus,
.btn-success-outline:active,
.btn-success-outline.active,
.open>.btn-success-outline.dropdown-toggle {
    color: #fff;
    background-color: #7fc35c;
    border-color: #7fc35c;
}

.btn-success-outline:hover {
    color: #fff;
    background-color: #7fc35c;
    border-color: #7fc35c;
}

.btn-success-outline.disabled:focus,
.btn-success-outline.disabled.focus,
.btn-success-outline:disabled:focus,
.btn-success-outline:disabled.focus {
    border-color: #badea7;
}

.btn-success-outline.disabled:hover,
.btn-success-outline:disabled:hover {
    border-color: #badea7;
}

.btn-warning-outline {
    color: #f0c54c;
    background-image: none;
    background-color: transparent;
    border-color: #f0c54c;
}

.btn-warning-outline:focus,
.btn-warning-outline.focus,
.btn-warning-outline:active,
.btn-warning-outline.active,
.open>.btn-warning-outline.dropdown-toggle {
    color: #fff;
    background-color: #f0c54c;
    border-color: #f0c54c;
}

.btn-warning-outline:hover {
    color: #fff;
    background-color: #f0c54c;
    border-color: #f0c54c;
}

.btn-warning-outline.disabled:focus,
.btn-warning-outline.disabled.focus,
.btn-warning-outline:disabled:focus,
.btn-warning-outline:disabled.focus {
    border-color: #f8e3aa;
}

.btn-warning-outline.disabled:hover,
.btn-warning-outline:disabled:hover {
    border-color: #f8e3aa;
}

.btn-danger-outline {
    color: #d26d54;
    background-image: none;
    background-color: transparent;
    border-color: #d26d54;
}

.btn-danger-outline:focus,
.btn-danger-outline.focus,
.btn-danger-outline:active,
.btn-danger-outline.active,
.open>.btn-danger-outline.dropdown-toggle {
    color: #fff;
    background-color: #d26d54;
    border-color: #d26d54;
}

.btn-danger-outline:hover {
    color: #fff;
    background-color: #d26d54;
    border-color: #d26d54;
}

.btn-danger-outline.disabled:focus,
.btn-danger-outline.disabled.focus,
.btn-danger-outline:disabled:focus,
.btn-danger-outline:disabled.focus {
    border-color: #e7b2a5;
}

.btn-danger-outline.disabled:hover,
.btn-danger-outline:disabled:hover {
    border-color: #e7b2a5;
}

.btn-link {
    color: #4c7ff0;
}


/* Floatin Button */

.btn-float {
    line-height: 50px;
    position: fixed;
    z-index: 2;
    bottom: 4.5rem;
    width: 50px;
    height: 50px;
    padding-right: 0;
    padding-left: 0;
    text-align: center;
    vertical-align: middle;
    border-radius: 50%;
    right: 1.5rem;
}

.btn-float>.material-icons {
    vertical-align: baseline;
}


/* $cards
 ------------------------------------------*/

.card {
    margin-bottom: 1.5rem;
    border: 0;
    border-radius: 2px;
}

.card-block {
    padding: 0.75rem 1rem;
    word-break: break-word;
}

.card-title {
    margin-bottom: 0.75rem;
}

.card-subtitle {
    margin-top: -0.375rem;
    margin-bottom: 0;
}

.card-link+.card-link {
    margin-left: 1rem;
}

.card>.list-group:first-child .list-group-item:first-child {
    border-radius: 2px 2px 0 0;
}

.card>.list-group:last-child .list-group-item:last-child {
    border-radius: 0 0 2px 2px;
}

.card-header {
    font-size: .86rem;
    position: relative;
    padding: 0.75rem 1rem;
    background-color: #c0c0c0;
    border-bottom: 0px;
}

.card-header:first-child {
    border-radius: 2px 2px 0 0;
}

.card-header.no-bg+.card-block {
    padding-top: 0;
}

.card-footer {
    padding: 0.75rem 1rem;
}

.card-footer:last-child {
    border-radius: 0 0 2px 2px;
}

.card-img-top {
    border-radius: 2px 2px 0 0;
}

.card-img-bottom {
    border-radius: 0 0 2px 2px;
}


/*Background variations*/

.card-primary {
    background-color: #a382ae;
    border-color: #a382ae;
}

.card-bic {
    background-color: #12a6a1;
    border-color: #12a6a1;
}

.card-main {
    background-color: #999999;
    border-color: #999999;
}

.card-success {
    background-color: #37b5e4;
    border-color: #37b5e4;
}

.card-info {
    background-color: #4cc3f0;
    border-color: #4cc3f0;
}

.card-warning {
    background-color: #fa6160;
    border-color: #fa6160;
}

.card-danger {
    background-color: #d26d54;
    border-color: #d26d54;
}

.card-yellow {
    background-color: #f0c54c;
    border-color: #f0c54c;
}


/*Remove all backgrounds*/

.card-primary-outline {
    background-color: transparent;
    border-color: #4c7ff0;
}

.card-secondary-outline {
    background-color: transparent;
    border-color: #fff;
}

.card-info-outline {
    background-color: transparent;
    border-color: #4cc3f0;
}

.card-success-outline {
    background-color: transparent;
    border-color: #7fc35c;
}

.card-warning-outline {
    background-color: transparent;
    border-color: #f0c54c;
}

.card-danger-outline {
    background-color: transparent;
    border-color: #d26d54;
}

.card-inverse .card-header {
    background-color: transparent;
}


/*Card controls*/

.card-controls {
    line-height: 1;
    position: absolute;
    top: 10px;
    right: 1rem;
}

.card-controls a {
    position: relative;
    font-size: 1rem;
    display: inline-block;
    margin-left: 0.625rem;
    background: rgba(0, 0, 0, 0.08);
    border-radius: 2px;
}

.card-controls .card-collapse::after,
.card-controls .card-refresh::after,
.card-controls .card-remove::after,
.card-controls .card-edit::after {
    font-family: 'Material Icons';
    font-size: 24px;
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    display: block;
    width: auto;
    height: auto;
    margin-right: 0;
    margin-left: 0;
    vertical-align: bottom;
    white-space: nowrap;
    letter-spacing: normal;
    text-transform: none;
    word-wrap: normal;
    border: 0;
    right: 1.5rem;
    direction: ltr;
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;
    /* Support for IE. */
    -webkit-font-feature-settings: 'liga';
    font-feature-settings: 'liga';
}

.card-controls .card-collapse::after {
    content: 'arrow_drop_down';
}

.card-controls .card-refresh::after {
    content: 'refresh';
}

.card-controls .card-remove::after {
    content: 'close';
}

.card-controls .card-edit::after {
    content: 'edit';
}

.card-controls .card-edit.v1::after {
    font-size: 16px;
    padding: 4px;
}

.card-controls a.card-edit.v1 {
    top: -4px;
}

.card-controls .card-edit::after .card-collapsed>.card-block {
    display: none;
}

.card-collapsed>.card-header .card-collapse::after {
    content: 'arrow_drop_up';
}

.card-refreshing::before {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    background-color: rgba(255, 255, 255, 0.6);
}

.card-refreshing::after {
    position: absolute;
    z-index: 9;
    top: 50%;
    width: 20px;
    height: 20px;
    content: '';
    -webkit-animation: sk-pulseScaleOut 1s infinite ease-in-out;
    animation: sk-pulseScaleOut 1s infinite ease-in-out;
    background-color: #4c7ff0;
    left: 50%;
    margin: -10px 0 0 -10px;
}


/* $dropdown
 ------------------------------------------*/

.dropdown-toggle::after {
    font-size: 14px;
}

.dropdown-menu {
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: rgba(0, 0, 0, 0.07) 0 2px 5px 0, rgba(0, 0, 0, 0.08) 0 2px 10px 0;
    border-radius: 2px;
    -webkit-transition: opacity 200ms ease-in-out, visibility 200ms ease-in-out;
    transition: opacity 200ms ease-in-out, visibility 200ms ease-in-out;
}

.dropdown-item {
    font-size: 0.8125rem;
    padding-right: 1rem;
    padding-left: 1rem;
    color: rgba(0, 0, 0, 0.7);
}

.dropdown-item:focus,
.dropdown-item:hover {
    background-color: rgba(20, 20, 20, 0.1);
}

.dropdown-item.active,
.dropdown-item.active:focus,
.dropdown-item.active:hover {
    color: rgba(0, 0, 0, 0.7);
    background-color: rgba(20, 20, 20, 0.1);
}

.dropdown-header {
    padding-right: 1rem;
    padding-left: 1rem;
}

.mega-dropdown {
    position: static !important;
}

.mega-dropdown .dropdown-menu {
    width: 100%;
    padding: 0 0 1rem;
}

.mega-dropdown .dropdown-menu .dropdown-header {
    margin-top: 1rem;
    margin-bottom: 0;
}

.mega-dropdown .dropdown-menu .dropdown-item {
    border-radius: 2px;
}

@media (max-width: 768px) {
    .mega-dropdown .dropdown-menu {
        margin-right: 0;
        margin-left: 0;
    }
}

.dropdown-submenu {
    position: relative;
}

.dropdown-submenu a::after {
    transform: rotate(-90deg);
    position: absolute;
    right: 6px;
    top: .8em;
}

.dropdown-submenu .dropdown-menu {
    top: 0;
    left: 100%;
    margin-left: .1rem;
    margin-right: .1rem;
}

.dropdown-submenu:hover > .dropdown-menu {
    display: block;
}

/* $c-forms
 ------------------------------------------*/

.c-input {
    color: rgba(0, 0, 0, 0.7);
}

.c-input>input:checked~.c-indicator {
    background-color: #4c7ff0;
    box-shadow: none;
}

.c-input>input:focus~.c-indicator {
    box-shadow: 0 0 0 0.075rem #fff, 0 0 0 0.15rem #4c7ff0;
}

.c-input>input:active~.c-indicator {
    background-color: #4c7ff0;
    box-shadow: none;
}


/*Indicator*/

.c-indicator {
    top: 1px;
    color: rgba(0, 0, 0, 0.7);
    background-color: #e8e8e8;
    box-shadow: 0 0 0 0.05rem rgba(0, 0, 0, 0.25);
}


/*Checkboxes*/

.c-checkbox .c-indicator {
    border-radius: 2px;
}


/*Select*/

.c-select {
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    padding: 0.534rem 1.75rem 0.534rem 0.75rem;
    border-radius: 2px;
}

.c-select:focus {
    border-color: #4c7ff0;
    box-shadow: none;
}


/*File*/

.file-custom {
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 2px;
    box-shadow: none;
}

.file-custom::before {
    content: 'Browse';
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 0 2px 2px 0;
    background-color: #e8e8e8;
}

.file input:focus~.file-custom {
    box-shadow: 0 0 0 0.075rem #fff, 0 0 0 0.15rem #4c7ff0;
}

.spinner .form-control {
    text-align: center;
}


/* $forms
 ------------------------------------------*/

label {
    font-weight: 500;
}

textarea {
    resize: vertical;
}

.form-control {
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 2px;
    box-shadow: none;
}

.form-control::-webkit-input-placeholder {
    color: rgba(38, 38, 38, 0.7);
}

.form-control::-moz-placeholder {
    color: rgba(38, 38, 38, 0.7);
}

.form-control:-ms-input-placeholder {
    color: rgba(38, 38, 38, 0.7);
}

.form-control::placeholder {
    color: rgba(38, 38, 38, 0.7);
}

.form-control:disabled,
.form-control[readonly] {
    background-color: #e8e8e8;
}

.form-control:focus {
    border-color: #84a7f5;
    box-shadow: none;
}


/*Form validation states*/

.has-success .text-help,
.has-success .form-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: #7fc35c;
}

.has-success .form-control {
    border-color: #7fc35c;
}

.has-success .input-group-addon {
    color: #7fc35c;
    border-color: #7fc35c;
    background-color: #f4faf1;
}

.has-success .form-control-feedback {
    color: #7fc35c;
}

.has-warning .text-help,
.has-warning .form-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: #f0c54c;
}

.has-warning .form-control {
    border-color: #f0c54c;
}

.has-warning .input-group-addon {
    color: #f0c54c;
    border-color: #f0c54c;
    background-color: white;
}

.has-warning .form-control-feedback {
    color: #f0c54c;
}

.has-danger .text-help,
.has-danger .form-control-label,
.has-danger .radio,
.has-danger .checkbox,
.has-danger .radio-inline,
.has-danger .checkbox-inline,
.has-danger.radio label,
.has-danger.checkbox label,
.has-danger.radio-inline label,
.has-danger.checkbox-inline label {
    color: #d26d54;
}

.has-danger .form-control {
    border-color: #d26d54;
}

.has-danger .input-group-addon {
    color: #d26d54;
    border-color: #d26d54;
    background-color: #fdf7f6;
}

.has-danger .form-control-feedback {
    color: #d26d54;
}


/* $input-groups
 ------------------------------------------*/

.input-group-btn>.btn {
    z-index: 2;
}

.btn-group-vertical>.btn:first-child:not(:last-child) {
    border-top-right-radius: 2px;
}

.btn-group-vertical>.btn:last-child:not(:first-child) {
    border-bottom-left-radius: 2px;
}

.input-group-btn:first-child>.btn,
.input-group-btn:first-child>.btn-group {
    margin-right: -.125rem;
}

.input-group-addon {
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    background-color: rgba(3, 3, 3, 0.1);
    border-radius: 2px;
}


/* $labels
 ------------------------------------------*/

.labeltag {
    padding: 0.5rem 0.7rem 0.4rem 0.7rem!important;
    margin: 0.3rem 0rem 0.3rem 0.8rem!important;
    width: 184px!important;
    font-size: 100%!important;
    text-align: left!important;
    color: #777777!important;
}

.label {
    font-weight: 600;
    border-radius: 2px;
}

.label-default {
    color: rgba(0, 0, 0, 0.7);
    background-color: #dddddd;
}

.label-default[href]:focus,
.label-default[href]:hover {
    background-color: #cfcfcf;
}

.label-primary {
    background-color: #12a6a1;
}

.label-primary[href]:focus,
.label-primary[href]:hover {
    background-color: #12a6a1;
}

.label-success {
    background-color: #7fc35c;
}

.label-success[href]:focus,
.label-success[href]:hover {
    background-color: #65ad3f;
}

.label-info {
    background-color: #4cc3f0;
}

.label-info[href]:focus,
.label-info[href]:hover {
    background-color: #1db3ec;
}

.label-warning {
    background-color: #f0c54c;
    color: #ffffff!important;
}

.label-warning[href]:focus,
.label-warning[href]:hover {
    background-color: #ecb61d;
}

.label-danger {
    background-color: #d26d54;
}

.label-danger[href]:focus,
.label-danger[href]:hover {
    background-color: #c04f33;
}


/* $listgroup
 ------------------------------------------*/

.list-group-item {
    border: 0;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
}

.list-group-item:first-child {
    border-top-right-radius: 2px;
    border-top-left-radius: 2px;
}

.list-group-item:last-child {
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
}

a.list-group-item:hover,
a.list-group-item:focus {
    background-color: whitesmoke;
}

.list-group-item-success {
    color: #4f8732;
    background-color: #d7eccc;
}

a.list-group-item-success,
button.list-group-item-success {
    color: #4f8732;
}

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:focus,
a.list-group-item-success:hover,
button.list-group-item-success:focus,
button.list-group-item-success:hover {
    color: #4f8732;
    background-color: #c8e5b9;
}

a.list-group-item-success.active,
a.list-group-item-success.active:focus,
a.list-group-item-success.active:hover,
button.list-group-item-success.active,
button.list-group-item-success.active:focus,
button.list-group-item-success.active:hover {
    color: #fff;
    background-color: #4f8732;
    border-color: #4f8732;
}

.list-group-item-info {
    color: #1194c5;
    background-color: #d9f2fc;
}

a.list-group-item-info,
button.list-group-item-info {
    color: #1194c5;
}

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:focus,
a.list-group-item-info:hover,
button.list-group-item-info:focus,
button.list-group-item-info:hover {
    color: #1194c5;
    background-color: #c2eafa;
}

a.list-group-item-info.active,
a.list-group-item-info.active:focus,
a.list-group-item-info.active:hover,
button.list-group-item-info.active,
button.list-group-item-info.active:focus,
button.list-group-item-info.active:hover {
    color: #fff;
    background-color: #1194c5;
    border-color: #1194c5;
}

.list-group-item-warning {
    color: #c59611;
    background-color: #fcf3d9;
}

a.list-group-item-warning,
button.list-group-item-warning {
    color: #c59611;
}

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:focus,
a.list-group-item-warning:hover,
button.list-group-item-warning:focus,
button.list-group-item-warning:hover {
    color: #c59611;
    background-color: #faebc2;
}

a.list-group-item-warning.active,
a.list-group-item-warning.active:focus,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active,
button.list-group-item-warning.active:focus,
button.list-group-item-warning.active:hover {
    color: #fff;
    background-color: #c59611;
    border-color: #c59611;
}

.list-group-item-danger {
    color: #983e28;
    background-color: #f2d4cd;
}

a.list-group-item-danger,
button.list-group-item-danger {
    color: #983e28;
}

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:focus,
a.list-group-item-danger:hover,
button.list-group-item-danger:focus,
button.list-group-item-danger:hover {
    color: #983e28;
    background-color: #edc3b9;
}

a.list-group-item-danger.active,
a.list-group-item-danger.active:focus,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active,
button.list-group-item-danger.active:focus,
button.list-group-item-danger.active:hover {
    color: #fff;
    background-color: #983e28;
    border-color: #983e28;
}


/* $modal
 ------------------------------------------*/

.modal-content {
    box-shadow: none;
    border-radius: 4px;
}


/* $navbar
 ------------------------------------------*/


/* $navs
 ------------------------------------------*/


/* Navs */

.nav>li>a:hover,
.nav>li>a:focus {
    color: #fff;
    background-color: #c1c1c1;
}


/* Pills */

.nav-pills .nav-link {
    border-radius: 2px;
}

.nav-pills .nav-link.active,
.nav-pills .nav-link.active:focus,
.nav-pills .nav-link.active:hover,
.nav-pills .nav-item.open .nav-link,
.nav-pills .nav-item.open .nav-link:focus,
.nav-pills .nav-item.open .nav-link:hover {
    color: white;
    background-color: #4c7ff0;
}


/* Tabs */

.nav-tabs {
    margin-right: -1px;
    margin-left: -1px;
    border: 0;
}

.nav-tabs .nav-item {
    position: relative;
    display: block;
    margin: 0;
    text-align: center;
    text-decoration: none;
}

.nav-tabs .nav-item .nav-link {
    font-weight: 500;
    padding: 0.75rem 0.987rem;
    border-color: transparent;
    border-bottom: 0;
    border-radius: 3px 3px 0 0;
}

.nav-tabs .nav-item .nav-link:hover,
.nav-tabs .nav-item .nav-link:hover,
.nav-tabs .nav-item .nav-link:focus {
    color: white;
    background-color: #4c7ff0;
}

.nav-tabs .nav-item .nav-link.active {
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    background-color: white;
}

.tab-content {
    padding: 1rem;
    border-radius: 0 0 2px 2px;
    background-color: white;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
}

#stages .text-muted,
#edit_channel .text-muted,
#data-settings .text-muted {
    color: #12a6a1 !important;
}


/* $pagination
 ------------------------------------------*/

.pagination {
    border-radius: 2px;
}

.page-item:first-child .page-link {
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}

.page-item:last-child .page-link {
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

.page-item.active .page-link,
.page-item.active .page-link:focus,
.page-item.active .page-link:hover {
    color: white;
    border-color: #4c7ff0;
    background-color: #4c7ff0;
}

.page-item.disabled .page-link,
.page-item.disabled .page-link:focus,
.page-item.disabled .page-link:hover {
    color: rgba(0, 0, 0, 0.7);
    background-color: #e8e8e8;
}

.page-link {
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
}

.page-link:focus,
.page-link:hover {
    color: white;
    background-color: #4c7ff0;
}

.ng-table-pagination {
    margin: 0;
}


/* $popover
 ------------------------------------------*/

.popover {
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: 0 0.0625rem 0.0625rem rgba(0, 0, 0, 0.05);
    border-radius: 2px;
}

.popover-title {
    border-bottom-color: rgba(0, 0, 0, 0.1);
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
    background-color: #FAFBFD;
}

.popover-content:last-child {
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
}


/* $progress-bar
 ------------------------------------------*/

.progress {
    height: 10px;
    margin-bottom: 1.5rem;
}

.progress-success[value]::-webkit-progress-value {
    background-color: #7fc35c;
}

.progress-success[value]::-moz-progress-bar {
    background-color: #7fc35c;
}

@media screen and (min-width: 0\0) {
    .progress-success .progress-bar {
        background-color: #7fc35c;
    }
}

.progress-info[value]::-webkit-progress-value {
    background-color: #4cc3f0;
}

.progress-info[value]::-moz-progress-bar {
    background-color: #4cc3f0;
}

@media screen and (min-width: 0\0) {
    .progress-info .progress-bar {
        background-color: #4cc3f0;
    }
}

.progress-warning[value]::-webkit-progress-value {
    background-color: #f0c54c;
}

.progress-warning[value]::-moz-progress-bar {
    background-color: #f0c54c;
}

@media screen and (min-width: 0\0) {
    .progress-warning .progress-bar {
        background-color: #f0c54c;
    }
}

.progress-danger[value]::-webkit-progress-value {
    background-color: #d26d54;
}

.progress-danger[value]::-moz-progress-bar {
    background-color: #d26d54;
}

@media screen and (min-width: 0\0) {
    .progress-danger .progress-bar {
        background-color: #d26d54;
    }
}


/* $tables
 ------------------------------------------*/

.table {
    border-radius: 2px;
    border-collapse: separate;
}

.table th,
.table td {
    padding-left: 1rem;
    padding-right: 1rem;
    border-color: rgba(0, 0, 0, 0.1);
}

.table thead th,
.table tfoot th {
    border-bottom-width: 0;
    border-color: rgba(0, 0, 0, 0.1);
}

.table-hover>tbody>tr:hover {
    background-color: rgba(15, 15, 15, 0.1);
}

.table-striped>tbody>tr:nth-child(even) {
    background-color: rgba(15, 15, 15, 0.1);
}

.table-bordered {
    border-color: rgba(0, 0, 0, 0.1);
}

.table-bordered th,
.table-bordered td {
    border-color: rgba(0, 0, 0, 0.1);
    border-top: 0;
    border-left: 0;
}

.table-bordered th:first-child,
.table-bordered td:first-child {
    border-left: 0;
}

.table-bordered th:last-child,
.table-bordered td:last-child {
    border-right: 0;
}

.table-bordered thead th,
.table-bordered thead td {
    border-bottom-width: 1px;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: transparent;
}

.table-responsive {
    overflow-x: visible;
}

@media (max-width: 991px) {
    .table-responsive {
        overflow-x: auto;
        border-color: rgba(0, 0, 0, 0.1);
        border-radius: 2px;
        margin-bottom: 0;
    }
}

.table-active,
.table-active>th,
.table-active>td {
    background-color: #e8e8e8;
}

.table-hover .table-active:hover {
    background-color: #dbdbdb;
}

.table-hover .table-active:hover>td,
.table-hover .table-active:hover>th {
    background-color: #dbdbdb;
}

.table-success,
.table-success>th,
.table-success>td {
    background-color: #7fc35c;
}

.table-hover .table-success:hover {
    background-color: #70bc49;
}

.table-hover .table-success:hover>td,
.table-hover .table-success:hover>th {
    background-color: #70bc49;
}

.table-info,
.table-info>th,
.table-info>td {
    background-color: #4cc3f0;
}

.table-hover .table-info:hover {
    background-color: #34bbee;
}

.table-hover .table-info:hover>td,
.table-hover .table-info:hover>th {
    background-color: #34bbee;
}

.table-warning,
.table-warning>th,
.table-warning>td {
    background-color: #f0c54c;
}

.table-hover .table-warning:hover {
    background-color: #eebd34;
}

.table-hover .table-warning:hover>td,
.table-hover .table-warning:hover>th {
    background-color: #eebd34;
}

.table-danger,
.table-danger>th,
.table-danger>td {
    background-color: #d26d54;
}

.table-hover .table-danger:hover {
    background-color: #cd5c40;
}

.table-hover .table-danger:hover>td,
.table-hover .table-danger:hover>th {
    background-color: #cd5c40;
}


/* No More tables */

@media (max-width: 991px) {
    /* Source:: http://elvery.net/demo/responsive-tables/#no-more-tables */
    /* Force table to not be like tables anymore */
    .no-more-tables table,
    .no-more-tables thead,
    .no-more-tables tbody,
    .no-more-tables th,
    .no-more-tables td,
    .no-more-tables tr {
        display: block;
    }
    /* Hide table headers (but not display: none;, for accessibility) */
    .no-more-tables thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .no-more-tables tr {
        border: 0.0625rem solid rgba(0, 0, 0, 0.1);
    }
    .no-more-tables td {
        position: relative;
        padding-left: 50% !important;
        /* Behave  like a "row" */
        border-top: 0 !important;
        border-bottom: 0.0625rem solid rgba(0, 0, 0, 0.1);
        text-align: left;
        white-space: normal;
    }
    .no-more-tables td:before {
        /* Now like a table header */
        position: absolute;
        /* Top/left values mimic padding */
        top: 0.375rem;
        left: 0.375rem;
        padding-right: 0.625rem;
        width: 45%;
        text-align: left;
        white-space: nowrap;
        font-weight: 600;
    }
    /* Label the data */
    .no-more-tables td:before {
        content: attr(data-title);
    }
}


/* $tooltip
 ------------------------------------------*/


/* $colors
 ------------------------------------------*/


/* Color Variant: Dark */

.bg-dark {
    color: #fff !important;
    background-color: #535a6c !important;
}

a.bg-dark:focus,
a.bg-dark:hover {
    background-color: #3d424f;
}

.bg-dark-dark {
    color: #fff !important;
    background-color: #484e5e !important;
}

a.bg-dark-dark:focus,
a.bg-dark-dark:hover {
    background-color: #323641;
}

.bg-dark-darker {
    color: #fff !important;
    background-color: #3d424f !important;
}

a.bg-dark-darker:focus,
a.bg-dark-darker:hover {
    background-color: #272a32;
}

.bg-dark-light {
    color: #fff !important;
    background-color: #5e667a !important;
}

a.bg-dark-light:focus,
a.bg-dark-light:hover {
    background-color: #484e5e;
}

.bg-dark-lighter {
    color: #fff !important;
    background-color: #697289 !important;
}

a.bg-dark-lighter:focus,
a.bg-dark-lighter:hover {
    background-color: #535a6c;
}


/* Color Variant: Primary */

.bg-primary {
    color: #fff !important;
    background-color: #12a6a1 !important;
}

a.bg-primary:focus,
a.bg-primary:hover {
    background-color: #1d5dec;
}

.bg-primary-dark {
    color: #fff !important;
    background-color: #346eee !important;
}

a.bg-primary-dark:focus,
a.bg-primary-dark:hover {
    background-color: #1351dd;
}

.bg-primary-darker {
    color: #fff !important;
    background-color: #1d5dec !important;
}

a.bg-primary-darker:focus,
a.bg-primary-darker:hover {
    background-color: #1149c5;
}

.bg-primary-light {
    color: #fff !important;
    background-color: #6490f2 !important;
}

a.bg-primary-light:focus,
a.bg-primary-light:hover {
    background-color: #346eee;
}

.bg-primary-lighter {
    color: #fff !important;
    background-color: #7ba1f4 !important;
}

a.bg-primary-lighter:focus,
a.bg-primary-lighter:hover {
    background-color: #4c7ff0;
}


/* Color Variant: Default */

.bg-default {
    color: #fff !important;
    background-color: #c9c9c9 !important;
}

a.bg-default:focus,
a.bg-default:hover {
    background-color: #cfcfcf;
}

.bg-default-dark {
    color: #fff !important;
    background-color: #dbdbdb !important;
}

a.bg-default-dark:focus,
a.bg-default-dark:hover {
    background-color: #c2c2c2;
}

.bg-default-darker {
    color: #fff !important;
    background-color: #cfcfcf !important;
}

a.bg-default-darker:focus,
a.bg-default-darker:hover {
    background-color: #b5b5b5;
}

.bg-default-light {
    color: #fff !important;
    background-color: whitesmoke !important;
}

a.bg-default-light:focus,
a.bg-default-light:hover {
    background-color: #dbdbdb;
}

.bg-default-lighter {
    color: #fff !important;
    background-color: white !important;
}

a.bg-default-lighter:focus,
a.bg-default-lighter:hover {
    background-color: #e6e6e6;
}


/* Color Variant: Warning */

.bg-warning {
    color: #fff !important;
    background-color: #deb43d !important;
}

a.bg-warning:focus,
a.bg-warning:hover {
    background-color: #ecb61d;
}

.bg-warning-dark {
    color: #fff !important;
    background-color: #eebd34 !important;
}

a.bg-warning-dark:focus,
a.bg-warning-dark:hover {
    background-color: #dda813;
}

.bg-warning-darker {
    color: #fff !important;
    background-color: #ecb61d !important;
}

a.bg-warning-darker:focus,
a.bg-warning-darker:hover {
    background-color: #c59611;
}

.bg-warning-light {
    color: #fff !important;
    background-color: #f2cd64 !important;
}

a.bg-warning-light:focus,
a.bg-warning-light:hover {
    background-color: #eebd34;
}

.bg-warning-lighter {
    color: #fff !important;
    background-color: #f4d47b !important;
}

a.bg-warning-lighter:focus,
a.bg-warning-lighter:hover {
    background-color: #f0c54c;
}


/* Color Variant: Success */

.bg-success {
    color: #fff !important;
    background-color: #a382ae !important;
}

a.bg-success:focus,
a.bg-success:hover {
    background-color: #65ad3f;
}

.bg-success-dark {
    color: #fff !important;
    background-color: #70bc49 !important;
}

a.bg-success-dark:focus,
a.bg-success-dark:hover {
    background-color: #5a9a39;
}

.bg-success-darker {
    color: #fff !important;
    background-color: #65ad3f !important;
}

a.bg-success-darker:focus,
a.bg-success-darker:hover {
    background-color: #4f8732;
}

.bg-success-light {
    color: #fff !important;
    background-color: #8eca6f !important;
}

a.bg-success-light:focus,
a.bg-success-light:hover {
    background-color: #70bc49;
}

.bg-success-lighter {
    color: #fff !important;
    background-color: #9cd181 !important;
}

a.bg-success-lighter:focus,
a.bg-success-lighter:hover {
    background-color: #7fc35c;
}


/* Color Variant: Info */

.bg-info {
    color: #fff !important;
    background-color: #4cc3f0 !important;
}

a.bg-info:focus,
a.bg-info:hover {
    background-color: #1db3ec;
}

.bg-info-dark {
    color: #fff !important;
    background-color: #34bbee !important;
}

a.bg-info-dark:focus,
a.bg-info-dark:hover {
    background-color: #13a5dd;
}

.bg-info-darker {
    color: #fff !important;
    background-color: #1db3ec !important;
}

a.bg-info-darker:focus,
a.bg-info-darker:hover {
    background-color: #1194c5;
}

.bg-info-light {
    color: #fff !important;
    background-color: #64cbf2 !important;
}

a.bg-info-light:focus,
a.bg-info-light:hover {
    background-color: #34bbee;
}

.bg-info-lighter {
    color: #fff !important;
    background-color: #7bd3f4 !important;
}

a.bg-info-lighter:focus,
a.bg-info-lighter:hover {
    background-color: #4cc3f0;
}


/* Color Variant: Danger */

.bg-danger {
    color: #fff !important;
    background-color: #fa6160 !important;
}

a.bg-danger:focus,
a.bg-danger:hover {
    background-color: #c04f33;
}

.bg-danger-dark {
    color: #fff !important;
    background-color: #cd5c40 !important;
}

a.bg-danger-dark:focus,
a.bg-danger-dark:hover {
    background-color: #ac462d;
}

.bg-danger-darker {
    color: #fff !important;
    background-color: #c04f33 !important;
}

a.bg-danger-darker:focus,
a.bg-danger-darker:hover {
    background-color: #983e28;
}

.bg-danger-light {
    color: #fff !important;
    background-color: #d77e68 !important;
}

a.bg-danger-light:focus,
a.bg-danger-light:hover {
    background-color: #cd5c40;
}

.bg-danger-lighter {
    color: #fff !important;
    background-color: #dd8f7c !important;
}

a.bg-danger-lighter:focus,
a.bg-danger-lighter:hover {
    background-color: #d26d54;
}


/* Color Variant: White */

.bg-white {
    color: rgba(0, 0, 0, 0.7) !important;
    background-color: white !important;
}


/* Extra palette colors */

.bg-red {
    color: #fff !important;
    background-color: #f44336 !important;
}

a.bg-red:focus,
a.bg-red:hover {
    background-color: #ea1c0d;
}

.bg-red-dark {
    color: #fff !important;
    background-color: #f32c1e !important;
}

a.bg-red-dark:focus,
a.bg-red-dark:hover {
    background-color: #d2190b;
}

.bg-red-darker {
    color: #fff !important;
    background-color: #ea1c0d !important;
}

a.bg-red-darker:focus,
a.bg-red-darker:hover {
    background-color: #ba160a;
}

.bg-red-light {
    color: #fff !important;
    background-color: #f55a4e !important;
}

a.bg-red-light:focus,
a.bg-red-light:hover {
    background-color: #f32c1e;
}

.bg-red-lighter {
    color: #fff !important;
    background-color: #f77066 !important;
}

a.bg-red-lighter:focus,
a.bg-red-lighter:hover {
    background-color: #f44336;
}

.bg-pink {
    color: #fff !important;
    background-color: #e91e63 !important;
}

a.bg-pink:focus,
a.bg-pink:hover {
    background-color: #c1134e;
}

.bg-pink-dark {
    color: #fff !important;
    background-color: #d81558 !important;
}

a.bg-pink-dark:focus,
a.bg-pink-dark:hover {
    background-color: #aa1145;
}

.bg-pink-darker {
    color: #fff !important;
    background-color: #c1134e !important;
}

a.bg-pink-darker:focus,
a.bg-pink-darker:hover {
    background-color: #930e3b;
}

.bg-pink-light {
    color: #fff !important;
    background-color: #eb3573 !important;
}

a.bg-pink-light:focus,
a.bg-pink-light:hover {
    background-color: #d81558;
}

.bg-pink-lighter {
    color: #fff !important;
    background-color: #ee4c83 !important;
}

a.bg-pink-lighter:focus,
a.bg-pink-lighter:hover {
    background-color: #e91e63;
}

.bg-purple {
    color: #fff !important;
    background-color: #9c27b0 !important;
}

a.bg-purple:focus,
a.bg-purple:hover {
    background-color: #771e86;
}

.bg-purple-dark {
    color: #fff !important;
    background-color: #89229b !important;
}

a.bg-purple-dark:focus,
a.bg-purple-dark:hover {
    background-color: #641971;
}

.bg-purple-darker {
    color: #fff !important;
    background-color: #771e86 !important;
}

a.bg-purple-darker:focus,
a.bg-purple-darker:hover {
    background-color: #52145d;
}

.bg-purple-light {
    color: #fff !important;
    background-color: #af2cc5 !important;
}

a.bg-purple-light:focus,
a.bg-purple-light:hover {
    background-color: #89229b;
}

.bg-purple-lighter {
    color: #fff !important;
    background-color: #bc37d3 !important;
}

a.bg-purple-lighter:focus,
a.bg-purple-lighter:hover {
    background-color: #9c27b0;
}

.bg-deeppurple {
    color: #fff !important;
    background-color: #673ab7 !important;
}

a.bg-deeppurple:focus,
a.bg-deeppurple:hover {
    background-color: #512e90;
}

.bg-deeppurple-dark {
    color: #fff !important;
    background-color: #5c34a4 !important;
}

a.bg-deeppurple-dark:focus,
a.bg-deeppurple-dark:hover {
    background-color: #46287d;
}

.bg-deeppurple-darker {
    color: #fff !important;
    background-color: #512e90 !important;
}

a.bg-deeppurple-darker:focus,
a.bg-deeppurple-darker:hover {
    background-color: #3b216a;
}

.bg-deeppurple-light {
    color: #fff !important;
    background-color: #7446c4 !important;
}

a.bg-deeppurple-light:focus,
a.bg-deeppurple-light:hover {
    background-color: #5c34a4;
}

.bg-deeppurple-lighter {
    color: #fff !important;
    background-color: #8259cb !important;
}

a.bg-deeppurple-lighter:focus,
a.bg-deeppurple-lighter:hover {
    background-color: #673ab7;
}

.bg-indigo {
    color: #fff !important;
    background-color: #3f51b5 !important;
}

a.bg-indigo:focus,
a.bg-indigo:hover {
    background-color: #32408f;
}

.bg-indigo-dark {
    color: #fff !important;
    background-color: #3849a2 !important;
}

a.bg-indigo-dark:focus,
a.bg-indigo-dark:hover {
    background-color: #2b387c;
}

.bg-indigo-darker {
    color: #fff !important;
    background-color: #32408f !important;
}

a.bg-indigo-darker:focus,
a.bg-indigo-darker:hover {
    background-color: #252f69;
}

.bg-indigo-light {
    color: #fff !important;
    background-color: #4d5ec1 !important;
}

a.bg-indigo-light:focus,
a.bg-indigo-light:hover {
    background-color: #3849a2;
}

.bg-indigo-lighter {
    color: #fff !important;
    background-color: #606fc7 !important;
}

a.bg-indigo-lighter:focus,
a.bg-indigo-lighter:hover {
    background-color: #3f51b5;
}

.bg-blue {
    color: #fff !important;
    background-color: #2196f3 !important;
}

a.bg-blue:focus,
a.bg-blue:hover {
    background-color: #0c7cd5;
}

.bg-blue-dark {
    color: #fff !important;
    background-color: #0d8aee !important;
}

a.bg-blue-dark:focus,
a.bg-blue-dark:hover {
    background-color: #0a6ebd;
}

.bg-blue-darker {
    color: #fff !important;
    background-color: #0c7cd5 !important;
}

a.bg-blue-darker:focus,
a.bg-blue-darker:hover {
    background-color: #0960a5;
}

.bg-blue-light {
    color: #fff !important;
    background-color: #39a1f4 !important;
}

a.bg-blue-light:focus,
a.bg-blue-light:hover {
    background-color: #0d8aee;
}

.bg-blue-lighter {
    color: #fff !important;
    background-color: #51adf6 !important;
}

a.bg-blue-lighter:focus,
a.bg-blue-lighter:hover {
    background-color: #2196f3;
}

.bg-lightblue {
    color: #fff !important;
    background-color: #03a9f4 !important;
}

a.bg-lightblue:focus,
a.bg-lightblue:hover {
    background-color: #0286c2;
}

.bg-lightblue-dark {
    color: #fff !important;
    background-color: #0398db !important;
}

a.bg-lightblue-dark:focus,
a.bg-lightblue-dark:hover {
    background-color: #0275a8;
}

.bg-lightblue-darker {
    color: #fff !important;
    background-color: #0286c2 !important;
}

a.bg-lightblue-darker:focus,
a.bg-lightblue-darker:hover {
    background-color: #02638f;
}

.bg-lightblue-light {
    color: #fff !important;
    background-color: #14b4fc !important;
}

a.bg-lightblue-light:focus,
a.bg-lightblue-light:hover {
    background-color: #0398db;
}

.bg-lightblue-lighter {
    color: #fff !important;
    background-color: #2ebcfc !important;
}

a.bg-lightblue-lighter:focus,
a.bg-lightblue-lighter:hover {
    background-color: #03a9f4;
}

.bg-cyan {
    color: #fff !important;
    background-color: #00bcd4 !important;
}

a.bg-cyan:focus,
a.bg-cyan:hover {
    background-color: #008fa1;
}

.bg-cyan-dark {
    color: #fff !important;
    background-color: #00a5bb !important;
}

a.bg-cyan-dark:focus,
a.bg-cyan-dark:hover {
    background-color: #007888;
}

.bg-cyan-darker {
    color: #fff !important;
    background-color: #008fa1 !important;
}

a.bg-cyan-darker:focus,
a.bg-cyan-darker:hover {
    background-color: #00626e;
}

.bg-cyan-light {
    color: #fff !important;
    background-color: #00d3ee !important;
}

a.bg-cyan-light:focus,
a.bg-cyan-light:hover {
    background-color: #00a5bb;
}

.bg-cyan-lighter {
    color: #fff !important;
    background-color: #08e3ff !important;
}

a.bg-cyan-lighter:focus,
a.bg-cyan-lighter:hover {
    background-color: #00bcd4;
}

.bg-teal {
    color: #fff !important;
    background-color: #009688 !important;
}

a.bg-teal:focus,
a.bg-teal:hover {
    background-color: #00635a;
}

.bg-teal-dark {
    color: #fff !important;
    background-color: #007d71 !important;
}

a.bg-teal-dark:focus,
a.bg-teal-dark:hover {
    background-color: #004a43;
}

.bg-teal-darker {
    color: #fff !important;
    background-color: #00635a !important;
}

a.bg-teal-darker:focus,
a.bg-teal-darker:hover {
    background-color: #00302c;
}

.bg-teal-light {
    color: #fff !important;
    background-color: #00b09f !important;
}

a.bg-teal-light:focus,
a.bg-teal-light:hover {
    background-color: #007d71;
}

.bg-teal-lighter {
    color: #fff !important;
    background-color: #00c9b6 !important;
}

a.bg-teal-lighter:focus,
a.bg-teal-lighter:hover {
    background-color: #009688;
}

.bg-green {
    color: #fff !important;
    background-color: #4caf50 !important;
}

a.bg-green:focus,
a.bg-green:hover {
    background-color: #3d8b40;
}

.bg-green-dark {
    color: #fff !important;
    background-color: #449d48 !important;
}

a.bg-green-dark:focus,
a.bg-green-dark:hover {
    background-color: #357a38;
}

.bg-green-darker {
    color: #fff !important;
    background-color: #3d8b40 !important;
}

a.bg-green-darker:focus,
a.bg-green-darker:hover {
    background-color: #2d682f;
}

.bg-green-light {
    color: #fff !important;
    background-color: #5cb860 !important;
}

a.bg-green-light:focus,
a.bg-green-light:hover {
    background-color: #449d48;
}

.bg-green-lighter {
    color: #fff !important;
    background-color: #6ec071 !important;
}

a.bg-green-lighter:focus,
a.bg-green-lighter:hover {
    background-color: #4caf50;
}

.bg-lightgreen {
    color: #fff !important;
    background-color: #74d108 !important;
}

a.bg-lightgreen:focus,
a.bg-lightgreen:hover {
    background-color: #59a006;
}

.bg-lightgreen-dark {
    color: #fff !important;
    background-color: #66b807 !important;
}

a.bg-lightgreen-dark:focus,
a.bg-lightgreen-dark:hover {
    background-color: #4b8705;
}

.bg-lightgreen-darker {
    color: #fff !important;
    background-color: #59a006 !important;
}

a.bg-lightgreen-darker:focus,
a.bg-lightgreen-darker:hover {
    background-color: #3d6f04;
}

.bg-lightgreen-light {
    color: #fff !important;
    background-color: #82ea09 !important;
}

a.bg-lightgreen-light:focus,
a.bg-lightgreen-light:hover {
    background-color: #66b807;
}

.bg-lightgreen-lighter {
    color: #fff !important;
    background-color: #8ef616 !important;
}

a.bg-lightgreen-lighter:focus,
a.bg-lightgreen-lighter:hover {
    background-color: #74d108;
}

.bg-lime {
    color: #fff !important;
    background-color: #cddc39 !important;
}

a.bg-lime:focus,
a.bg-lime:hover {
    background-color: #b2c022;
}

.bg-lime-dark {
    color: #fff !important;
    background-color: #c6d626 !important;
}

a.bg-lime-dark:focus,
a.bg-lime-dark:hover {
    background-color: #9daa1e;
}

.bg-lime-darker {
    color: #fff !important;
    background-color: #b2c022 !important;
}

a.bg-lime-darker:focus,
a.bg-lime-darker:hover {
    background-color: #89951a;
}

.bg-lime-light {
    color: #fff !important;
    background-color: #d2e04f !important;
}

a.bg-lime-light:focus,
a.bg-lime-light:hover {
    background-color: #c6d626;
}

.bg-lime-lighter {
    color: #fff !important;
    background-color: #d8e464 !important;
}

a.bg-lime-lighter:focus,
a.bg-lime-lighter:hover {
    background-color: #cddc39;
}

.bg-yellow {
    color: #fff !important;
    background-color: #ffeb3b !important;
}

a.bg-yellow:focus,
a.bg-yellow:hover {
    background-color: #ffe608;
}

.bg-yellow-dark {
    color: #fff !important;
    background-color: #ffe822 !important;
}

a.bg-yellow-dark:focus,
a.bg-yellow-dark:hover {
    background-color: #eed500;
}

.bg-yellow-darker {
    color: #fff !important;
    background-color: #ffe608 !important;
}

a.bg-yellow-darker:focus,
a.bg-yellow-darker:hover {
    background-color: #d4be00;
}

.bg-yellow-light {
    color: #fff !important;
    background-color: #ffee55 !important;
}

a.bg-yellow-light:focus,
a.bg-yellow-light:hover {
    background-color: #ffe822;
}

.bg-yellow-lighter {
    color: #fff !important;
    background-color: #fff06e !important;
}

a.bg-yellow-lighter:focus,
a.bg-yellow-lighter:hover {
    background-color: #ffeb3b;
}

.bg-amber {
    color: #fff !important;
    background-color: #ffc107 !important;
}

a.bg-amber:focus,
a.bg-amber:hover {
    background-color: #d39e00;
}

.bg-amber-dark {
    color: #fff !important;
    background-color: #edb100 !important;
}

a.bg-amber-dark:focus,
a.bg-amber-dark:hover {
    background-color: #ba8b00;
}

.bg-amber-darker {
    color: #fff !important;
    background-color: #d39e00 !important;
}

a.bg-amber-darker:focus,
a.bg-amber-darker:hover {
    background-color: #a07800;
}

.bg-amber-light {
    color: #fff !important;
    background-color: #ffc721 !important;
}

a.bg-amber-light:focus,
a.bg-amber-light:hover {
    background-color: #edb100;
}

.bg-amber-lighter {
    color: #fff !important;
    background-color: #ffce3a !important;
}

a.bg-amber-lighter:focus,
a.bg-amber-lighter:hover {
    background-color: #ffc107;
}

.bg-orange {
    color: #fff !important;
    background-color: #ff9800 !important;
}

a.bg-orange:focus,
a.bg-orange:hover {
    background-color: #cc7a00;
}

.bg-orange-dark {
    color: #fff !important;
    background-color: #e68900 !important;
}

a.bg-orange-dark:focus,
a.bg-orange-dark:hover {
    background-color: #b36a00;
}

.bg-orange-darker {
    color: #fff !important;
    background-color: #cc7a00 !important;
}

a.bg-orange-darker:focus,
a.bg-orange-darker:hover {
    background-color: #995b00;
}

.bg-orange-light {
    color: #fff !important;
    background-color: #ffa21a !important;
}

a.bg-orange-light:focus,
a.bg-orange-light:hover {
    background-color: #e68900;
}

.bg-orange-lighter {
    color: #fff !important;
    background-color: #ffad33 !important;
}

a.bg-orange-lighter:focus,
a.bg-orange-lighter:hover {
    background-color: #ff9800;
}

.bg-deeporange {
    color: #fff !important;
    background-color: #ff5722 !important;
}

a.bg-deeporange:focus,
a.bg-deeporange:hover {
    background-color: #ee3900;
}

.bg-deeporange-dark {
    color: #fff !important;
    background-color: #ff4409 !important;
}

a.bg-deeporange-dark:focus,
a.bg-deeporange-dark:hover {
    background-color: #d53300;
}

.bg-deeporange-darker {
    color: #fff !important;
    background-color: #ee3900 !important;
}

a.bg-deeporange-darker:focus,
a.bg-deeporange-darker:hover {
    background-color: #bb2d00;
}

.bg-deeporange-light {
    color: #fff !important;
    background-color: #ff6a3c !important;
}

a.bg-deeporange-light:focus,
a.bg-deeporange-light:hover {
    background-color: #ff4409;
}

.bg-deeporange-lighter {
    color: #fff !important;
    background-color: #ff7e55 !important;
}

a.bg-deeporange-lighter:focus,
a.bg-deeporange-lighter:hover {
    background-color: #ff5722;
}

.bg-brown {
    color: #fff !important;
    background-color: #795548 !important;
}

a.bg-brown:focus,
a.bg-brown:hover {
    background-color: #593f35;
}

.bg-brown-dark {
    color: #fff !important;
    background-color: #694a3e !important;
}

a.bg-brown-dark:focus,
a.bg-brown-dark:hover {
    background-color: #49332b;
}

.bg-brown-darker {
    color: #fff !important;
    background-color: #593f35 !important;
}

a.bg-brown-darker:focus,
a.bg-brown-darker:hover {
    background-color: #392822;
}

.bg-brown-light {
    color: #fff !important;
    background-color: #896052 !important;
}

a.bg-brown-light:focus,
a.bg-brown-light:hover {
    background-color: #694a3e;
}

.bg-brown-lighter {
    color: #fff !important;
    background-color: #996b5b !important;
}

a.bg-brown-lighter:focus,
a.bg-brown-lighter:hover {
    background-color: #795548;
}

.bg-grey {
    color: #fff !important;
    background-color: #9e9e9e !important;
}

a.bg-grey:focus,
a.bg-grey:hover {
    background-color: #858585;
}

.bg-grey-dark {
    color: #fff !important;
    background-color: #919191 !important;
}

a.bg-grey-dark:focus,
a.bg-grey-dark:hover {
    background-color: #787878;
}

.bg-grey-darker {
    color: #fff !important;
    background-color: #858585 !important;
}

a.bg-grey-darker:focus,
a.bg-grey-darker:hover {
    background-color: #6b6b6b;
}

.bg-grey-light {
    color: #fff !important;
    background-color: #ababab !important;
}

a.bg-grey-light:focus,
a.bg-grey-light:hover {
    background-color: #919191;
}

.bg-grey-lighter {
    color: #fff !important;
    background-color: #b8b8b8 !important;
}

a.bg-grey-lighter:focus,
a.bg-grey-lighter:hover {
    background-color: #9e9e9e;
}

.bg-bluegrey {
    color: #fff !important;
    background-color: #607d8b !important;
}

a.bg-bluegrey:focus,
a.bg-bluegrey:hover {
    background-color: #4b626d;
}

.bg-bluegrey-dark {
    color: #fff !important;
    background-color: #566f7c !important;
}

a.bg-bluegrey-dark:focus,
a.bg-bluegrey-dark:hover {
    background-color: #41545e;
}

.bg-bluegrey-darker {
    color: #fff !important;
    background-color: #4b626d !important;
}

a.bg-bluegrey-darker:focus,
a.bg-bluegrey-darker:hover {
    background-color: #36474f;
}

.bg-bluegrey-light {
    color: #fff !important;
    background-color: #6b8a99 !important;
}

a.bg-bluegrey-light:focus,
a.bg-bluegrey-light:hover {
    background-color: #566f7c;
}

.bg-bluegrey-lighter {
    color: #fff !important;
    background-color: #7b96a3 !important;
}

a.bg-bluegrey-lighter:focus,
a.bg-bluegrey-lighter:hover {
    background-color: #607d8b;
}


/* $TextColor */

.text-primary {
    color: #12a6a1 !important;
}

a.text-primary:focus,
a.text-primary:hover {
    color: #1d5dec;
}

.text-default {
    color: #e8e8e8 !important;
}

a.text-default:focus,
a.text-default:hover {
    color: #cfcfcf;
}

.text-warning {
    color: #f0c54c !important;
}

a.text-warning:focus,
a.text-warning:hover {
    color: #ecb61d;
}

.text-success {
    color: #7fc35c !important;
}

a.text-success:focus,
a.text-success:hover {
    color: #65ad3f;
}

.text-info {
    color: #4cc3f0 !important;
}

a.text-info:focus,
a.text-info:hover {
    color: #1db3ec;
}

.text-white {
    color: white !important;
}

a.text-white:focus,
a.text-white:hover {
    color: #e6e6e6;
}

.text-danger {
    color: #d26d54 !important;
}

a.text-danger:focus,
a.text-danger:hover {
    color: #c04f33;
}

.text-muted {
    color: #b3b3b3 !important;
}

a.text-muted:focus,
a.text-muted:hover {
    color: #999999;
}

.text-bic {
    color: #12a6a1 !important;
}

a.text-bic:focus,
a.text-muted:hover {
    color: #12a6a1;
}

.text-color {
    color: rgba(0, 0, 0, 0.7) !important;
}

a.text-color:focus,
a.text-color:hover {
    color: rgba(0, 0, 0, 0.7);
}


/* Extra text colors */

.text-red {
    color: #f44336 !important;
}

a.text-red:focus,
a.text-red:hover {
    color: #ea1c0d;
}

.text-pink {
    color: #e91e63 !important;
}

a.text-pink:focus,
a.text-pink:hover {
    color: #c1134e;
}

.text-purple {
    color: #9c27b0 !important;
}

a.text-purple:focus,
a.text-purple:hover {
    color: #771e86;
}

.text-deeppurple {
    color: #673ab7 !important;
}

a.text-deeppurple:focus,
a.text-deeppurple:hover {
    color: #512e90;
}

.text-indigo {
    color: #3f51b5 !important;
}

a.text-indigo:focus,
a.text-indigo:hover {
    color: #32408f;
}

.text-blue {
    color: #2196f3 !important;
}

a.text-blue:focus,
a.text-blue:hover {
    color: #0c7cd5;
}

.text-lightblue {
    color: #03a9f4 !important;
}

a.text-lightblue:focus,
a.text-lightblue:hover {
    color: #0286c2;
}

.text-cyan {
    color: #00bcd4 !important;
}

a.text-cyan:focus,
a.text-cyan:hover {
    color: #008fa1;
}

.text-teal {
    color: #009688 !important;
}

a.text-teal:focus,
a.text-teal:hover {
    color: #00635a;
}

.text-green {
    color: #4caf50 !important;
}

a.text-green:focus,
a.text-green:hover {
    color: #3d8b40;
}

.text-lightgreen {
    color: #74d108 !important;
}

a.text-lightgreen:focus,
a.text-lightgreen:hover {
    color: #59a006;
}

.text-lime {
    color: #cddc39 !important;
}

a.text-lime:focus,
a.text-lime:hover {
    color: #b2c022;
}

.text-yellow {
    color: #ffeb3b !important;
}

a.text-yellow:focus,
a.text-yellow:hover {
    color: #ffe608;
}

.text-amber {
    color: #ffc107 !important;
}

a.text-amber:focus,
a.text-amber:hover {
    color: #d39e00;
}

.text-orange {
    color: #ff9800 !important;
}

a.text-orange:focus,
a.text-orange:hover {
    color: #cc7a00;
}

.text-deeporange {
    color: #ff5722 !important;
}

a.text-deeporange:focus,
a.text-deeporange:hover {
    color: #ee3900;
}

.text-brown {
    color: #795548 !important;
}

a.text-brown:focus,
a.text-brown:hover {
    color: #593f35;
}

.text-grey {
    color: #9e9e9e !important;
}

a.text-grey:focus,
a.text-grey:hover {
    color: #858585;
}

.text-bluegrey {
    color: #607d8b !important;
}

a.text-bluegrey:focus,
a.text-bluegrey:hover {
    color: #4b626d;
}


/* $bootstrap.ui
 ------------------------------------------*/


/*Carousel*/

.carousel-inner {
    width: 100%;
    height: 100%;
}


/*Datepicker*/

.ui-datepicker table {
    padding: 1rem;
    border: 1px solid rgba(0, 0, 0, 0.1);
    outline: none;
    background-color: white;
}

.ui-datepicker table thead {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.ui-datepicker table .h6 {
    font-size: 0.8125rem;
}

.ui-datepicker table .btn {
    border-color: transparent;
    background-color: transparent;
}

.ui-datepicker table .btn:hover {
    border-color: #e8e8e8;
    background-color: #e8e8e8;
}

.ui-datepicker table .btn.active {
    border-color: #4c7ff0;
    background-color: #4c7ff0;
    box-shadow: none;
}

.ui-datepicker table .btn.active span {
    color: white !important;
}

.ui-datepicker .dropdown-menu table {
    border: 0;
}


/*Timepicker*/

.ui-timepicker td {
    padding: 0 5px;
}

.glyphicon-star,
.glyphicon-star-empty {
    position: relative;
    display: inline-block;
    overflow: hidden;
    width: 20px;
    height: 20px;
    white-space: nowrap;
    background-size: contain;
}

.glyphicon-star-empty {
    background: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMjBweCIgaGVpZ2h0PSIyMHB4IiB2aWV3Qm94PSIwIDAgMjAgMjAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDIwIDIwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cG9seWdvbiBmaWxsPSIjREREREREIiBwb2ludHM9IjEwLDAgMTMuMDksNi41ODMgMjAsNy42MzkgMTUsMTIuNzY0IDE2LjE4LDIwIDEwLDE2LjU4MyAzLjgyLDIwIDUsMTIuNzY0IDAsNy42MzkgNi45MSw2LjU4MyAiLz48L3N2Zz4=") no-repeat;
}

.glyphicon-star {
    background: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMjBweCIgaGVpZ2h0PSIyMHB4IiB2aWV3Qm94PSIwIDAgMjAgMjAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDIwIDIwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cG9seWdvbiBmaWxsPSIjRkZERjg4IiBwb2ludHM9IjEwLDAgMTMuMDksNi41ODMgMjAsNy42MzkgMTUsMTIuNzY0IDE2LjE4LDIwIDEwLDE2LjU4MyAzLjgyLDIwIDUsMTIuNzY0IDAsNy42MzkgNi45MSw2LjU4MyAiLz48L3N2Zz4=") no-repeat;
}

.glyphicon-chevron-left,
.glyphicon-chevron-right {
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.glyphicon-chevron-left:before {
    content: '\f104';
}

.glyphicon-chevron-right:before {
    content: '\f105';
}


/* $session
 ------------------------------------------*/

.session-panel {
    width: 100%;
    min-height: 100vh;
}

.session {
    min-height: 100vh;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

.session-content {
    padding: 40px 0;
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -moz-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-box-flex: 1;
    -moz-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    min-height: 100%;
}

.session-wrapper {
    min-height: 100%;
    margin: 0 auto-3rem;
}

.session-wrapper::after {
    content: "";
    display: table;
    clear: both;
}

.session-wrapper::after {
    height: 3rem;
}

.app.error-page .card,
.app.lockscreen .card {
    display: block;
    width: 100%;
    margin: 100px auto;
}

.app.lockscreen .card {
    max-width: 400px;
}

.form-layout {
    -webkit-box-flex: none;
    -moz-flex: none;
    -ms-flex: none;
    flex: none;
    width: 540px;
    margin: 0 auto;
}

.form-layout label {
    display: block;
    width: 100%;
}

.form-layout .divider {
    display: block;
    height: 1px;
    margin-top: 1.563rem;
    margin-right: -1rem;
    margin-bottom: 1.563rem;
    margin-left: -1rem;
    text-align: center;
    background: rgba(0, 0, 0, 0.1);
}

.form-layout .divider span {
    position: relative;
    top: -10px;
    display: inline-block;
    padding: 0 .75rem;
    background-color: white;
}


/* $lockscreen
 ------------------------------------------*/

.lockcode {
    display: block;
    max-width: 280px;
    margin: 0 auto;
}

.lockscreen-avatar {
    position: relative;
    display: block;
    margin: 0 auto;
}

.lockscreen-avatar img {
    border: 5px solid white;
}


/* $error-pages
 ------------------------------------------*/

.error-number {
    font-size: 150px;
    line-height: 1;
}

.error-number strong {
    font-weight: 900;
}

.error-icon {
    font-size: 100px;
    line-height: 160px;
    width: 160px;
    height: 160px;
    margin: 0 auto 20px;
    color: #d26d54;
    border: 3px solid #d26d54;
    border-radius: 50%;
}


/* $calendar
 ------------------------------------------*/

.fc-toolbar {
    margin: 0;
    margin-bottom: 0;
    padding: 0.75rem 1rem;
    color: #fff;
    border-radius: 2px 2px 0 0;
    background: #4cc3f0;
}

.fc-toolbar .fc-left {
    display: block;
    width: 100%;
    margin-bottom: 1.5rem;
}

.fc-toolbar .fc-left h2 {
    float: none;
    text-align: center;
}

.fc-toolbar .fc .fc-toolbar>*>* {
    float: none;
}

.fc-toolbar .fc-left h2 {
    font-size: 1.2rem;
}

.fc-toolbar>.fc-center {
    display: table;
}

.fc-state-default.fc-corner-left {
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}

.fc-state-default.fc-corner-right {
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

.fc-t-events {
    outline: none;
}

.fc td.fc-widget-header {
    padding: .5rem 0;
    color: white;
    border: 0;
    background-color: #34bbee;
}

.fullcalendar {
    background: #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
}

.fullcalendar th.fc-widget-header {
    font-size: 0.8125rem;
    font-weight: 400;
    border-width: 0;
}

.fullcalendar .fc td {
    font-weight: 600;
}

.fullcalendar .fc td,
.fullcalendar .fc th {
    border-right: 0;
    border-left: 0;
}

.fullcalendar .fc-day-grid>.fc-widget-content {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.fullcalendar .fc-day-grid>.fc-widget-content:last-child {
    border-bottom: 0;
}

.fullcalendar tr>.fc-day {
    border-right: 1px solid rgba(0, 0, 0, 0.1);
}

.fullcalendar tr>.fc-day:last-child {
    border-right: 0;
}

.fullcalendar .fc-day-grid-event .fc-time {
    font-weight: inherit;
}

.fullcalendar .fc-day-grid-event .fc-time::after {
    display: inline-block;
    content: ':';
}

.fullcalendar .fc-widget-content {
    border-width: 0;
    border-color: rgba(0, 0, 0, 0.1);
}

.fullcalendar .fc-slats .fc-widget-content {
    border-width: 1px;
}

.fullcalendar .fc-unthemed th,
.fullcalendar .fc-unthemed td,
.fullcalendar .fc-unthemed hr,
.fullcalendar .fc-unthemed thead,
.fullcalendar .fc-unthemed tbody,
.fullcalendar .fc-unthemed .fc-row,
.fullcalendar .fc-unthemed .fc-popover {
    border-color: rgba(0, 0, 0, 0.1);
}

.fullcalendar .fc-unthemed hr,
.fullcalendar .fc-unthemed .fc-popover .fc-header {
    background-color: rgba(0, 0, 0, 0.1);
}

.fullcalendar .fc-state-hover,
.fullcalendar .fc-state-down,
.fullcalendar .fc-state-active,
.fullcalendar .fc-state-disabled {
    color: rgba(0, 0, 0, 0.7);
    outline: none;
    background-color: rgba(0, 0, 0, 0.1);
}

.fullcalendar .fc-state-hover {
    color: rgba(0, 0, 0, 0.7);
}

.fullcalendar .fc-button {
    position: relative;
    position: relative;
    z-index: 1;
    height: inherit;
    padding: 0.375rem 1rem;
    outline: 0;
    background-image: none;
    text-shadow: none;
    color: rgba(0, 0, 0, 0.7);
    background-color: #e8e8e8;
    border-color: #e2e1e1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    border-radius: 2px;
    -webkit-transition: all 200ms linear;
    transition: all 200ms linear;
    -webkit-backface-visibility: hidden;
}

.fullcalendar .fc-button:hover {
    color: rgba(0, 0, 0, 0.7);
    background-color: #cfcfcf;
    border-color: #c4c2c2;
}

.fullcalendar .fc-button:focus,
.fullcalendar .fc-button.focus {
    color: rgba(0, 0, 0, 0.7);
    background-color: #cfcfcf;
    border-color: #c4c2c2;
}

.fullcalendar .fc-button:active,
.fullcalendar .fc-button.active,
.open>.fullcalendar .fc-button.dropdown-toggle {
    color: rgba(0, 0, 0, 0.7);
    background-color: #cfcfcf;
    border-color: #c4c2c2;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.fullcalendar .fc-button:active:hover,
.fullcalendar .fc-button:active:focus,
.fullcalendar .fc-button:active.focus,
.fullcalendar .fc-button.active:hover,
.fullcalendar .fc-button.active:focus,
.fullcalendar .fc-button.active.focus,
.open>.fullcalendar .fc-button.dropdown-toggle:hover,
.open>.fullcalendar .fc-button.dropdown-toggle:focus,
.open>.fullcalendar .fc-button.dropdown-toggle.focus {
    color: rgba(0, 0, 0, 0.7);
    background-color: #bdbdbd;
    border-color: #a3a0a0;
}

.fullcalendar .fc-button.disabled:focus,
.fullcalendar .fc-button.disabled.focus,
.fullcalendar .fc-button:disabled:focus,
.fullcalendar .fc-button:disabled.focus {
    background-color: #e8e8e8;
    border-color: #e2e1e1;
}

.fullcalendar .fc-button.disabled:hover,
.fullcalendar .fc-button:disabled:hover {
    background-color: #e8e8e8;
    border-color: #e2e1e1;
}

.fullcalendar .fc-button.fc-today-button {
    margin-right: 1.5rem;
}

.fullcalendar .fc-button.fc-state-down,
.fullcalendar .fc-button.fc-state-active {
    border-color: #c4c2c2;
    background-color: #cfcfcf;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.fc-widget-content {
    border: 0;
}

.fc .fc-toolbar>*>* {
    margin-left: 0;
}

.fc-event {
    font-size: 12px;
    padding: 2px 5px;
    color: white;
    border-color: transparent;
    border-radius: 0;
}

.external-event {
    font-size: 0.8125rem;
    display: block;
    margin: 0 0 .0625rem 0;
    padding: 4px;
    border-color: transparent;
}

.external-event .remove {
    cursor: pointer;
}

.external-events {
    padding: 0;
    list-style: none;
}

.external-events li {
    position: relative;
    display: block;
    margin: 0 5px 5px;
    padding: 0 5px;
    border-radius: 2px;
    background-color: #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
}

.external-events .form-control {
    font-size: .9rem;
    padding-left: 0;
}

.event-type {
    margin-top: 5px;
    padding: 0;
    list-style: none;
}

.event-type li {
    display: inline-block;
}

.event-type li a::before {
    display: block;
    width: 100%;
    height: 100%;
    content: '';
    background-color: #4c7ff0;
}

.event-type li a:hover,
.event-type li a:focus,
.event-type li a.active {
    border-color: #4c7ff0;
}

.event-type li a {
    position: relative;
    display: block;
    width: 15px;
    height: 15px;
    padding: 1px;
    border: .0625rem solid transparent;
}

@media (max-width: 767px) {
    .fc-toolbar .fc-right,
    .fc-toolbar .fc-center {
        display: table;
        float: none;
        margin: 0 auto 1.5rem;
    }
}


/* $gallery
 ------------------------------------------*/

.media-item {
    margin-bottom: 1.5rem;
}

.media .card-block {
    margin-bottom: .2rem;
    padding: .3rem;
    border-radius: 0;
}

.media p {
    margin-bottom: 0;
}


/* $invoice
 ------------------------------------------*/

.invoice-logo {
    height: 50px;
}

.invoice-totals {
    margin-bottom: 15px;
    text-align: right;
}

.invoice-totals::after {
    content: "";
    display: table;
    clear: both;
}

.invoice-totals .invoice-totals-row {
    margin-bottom: 5px;
}

.invoice-totals .invoice-totals-title {
    margin-right: 15px;
}

.invoice-totals .invoice-totals-value {
    display: inline-block;
    min-width: 140px;
    text-align: left;
}


/* $messages
 ------------------------------------------*/

.contacts-container {
    height: calc(100vh - 3.438rem);
}

.contacts-container .contacts-list {
    background-color: #e8e8e8;
}

.contacts-container .contacts-list a {
    position: relative;
    display: table;
    padding: 1rem;
    clear: both;
}

.contacts-container .contacts-list a .contact-avatar {
    width: 34px;
}

.contacts-container .contacts-list a .contact-details>* {
    display: block;
}

.contacts-container .contacts-list a:focus,
.contacts-container .contacts-list a:hover {
    background-color: #ebebeb;
    color: rgba(0, 0, 0, 0.7);
}

.header-secondary+.main-content>.content-view .contacts-container {
    height: calc(100vh - 6.876rem);
}

.messages-list {
    position: relative;
}

.message-list {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.message-list .message-list-item a {
    display: block;
    padding: 17px 1rem 18px 1rem;
    cursor: pointer;
    color: rgba(0, 0, 0, 0.7);
}

.message-list .message-list-item a::after {
    content: "";
    display: table;
    clear: both;
}

.message-active,
.message-list .message-list-item a:hover,
.message-list .message-list-item a:focus,
.message-list .message-list-item a:active {
    color: rgba(0, 0, 0, 0.7);
    background-color: rgba(0, 0, 0, 0.05);
}

.message-list .message-list-item a p {
    margin-bottom: 0;
}

.message-list .message-list-item a .message-list-item-header {
    display: block;
    margin-bottom: 2px;
}

.message-list .message-list-item a .message-list-item-header span {
    color: #333333;
}

.message-list .message-list-item a .time {
    font-size: 10px;
    font-weight: 600;
    margin-top: 3px;
    color: #b3b3b3;
    float: right;
}

.message-view {
    position: relative;
    width: 100%;
    background-color: white;
}

.message-header,
.contact-header {
    z-index: 1;
    top: 0;
    width: 100%;
    background: white;
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.1);
}

.message-header .lead,
.contact-header .lead {
    margin-bottom: 5px;
}

.message-header .date,
.contact-header .date {
    font-size: 11px;
    color: #b3b3b3;
    float: right;
}

.message-header .message-toolbar,
.message-header .contact-toolbar,
.contact-header .message-toolbar,
.contact-header .contact-toolbar {
    position: relative;
    display: block;
    height: 100%;
    padding: 0 1rem;
}

.message-header .message-toolbar::after,
.message-header .contact-toolbar::after,
.contact-header .message-toolbar::after,
.contact-header .contact-toolbar::after {
    content: "";
    display: table;
    clear: both;
}

.message-header .message-toolbar p,
.message-header .contact-toolbar p,
.contact-header .message-toolbar p,
.contact-header .contact-toolbar p {
    padding: 8px 0;
}

.message-header .message-toolbar input,
.message-header .contact-toolbar input,
.contact-header .message-toolbar input,
.contact-header .contact-toolbar input {
    font-size: 0.8125rem;
    width: 100%;
    margin-top: 0.694rem;
    margin-bottom: 0.694rem;
}

.message-header .message-toolbar a,
.message-header .contact-toolbar a,
.contact-header .message-toolbar a,
.contact-header .contact-toolbar a {
    display: inline-block;
    color: rgba(26, 26, 26, 0.7);
    margin-top: 0.8125rem;
    margin-bottom: 0.8125rem;
}

.message-header .message-toolbar a:hover,
.message-header .contact-toolbar a:hover,
.contact-header .message-toolbar a:hover,
.contact-header .contact-toolbar a:hover {
    color: rgba(0, 0, 0, 0.7);
}

.no-messages,
.no-contacts {
    max-width: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -moz-align-items: center;
    -ms-grid-row-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -moz-justify-content: center;
    justify-content: center;
}

.contacts-list {
    position: relative;
    overflow-y: auto !important;
}

@media (min-width: 992px) {
    .contacts-sidebar {
        width: 250px;
    }
    .contacts-list {
        min-width: 240px;
        max-width: 240px;
    }
}

@media (max-width: 991px) {
    .message-view,
    .contact-view {
        position: fixed;
        z-index: 1100;
        top: 3.438rem;
        right: 0;
        bottom: 0;
        left: 0;
        overflow: hidden;
        -webkit-transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
        transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
        transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
        transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1), -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
        background-color: rgba(255, 255, 255, 0.99);
        -webkit-transform: translate(100%, 0);
        transform: translate(100%, 0);
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
    .message-view .scroll,
    .contact-view .scroll {
        overflow-x: hidden;
        overflow-y: auto;
        height: 100%;
    }
    .message-open .message-view,
    .contact-open .contact-view {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .contacts-list {
        min-height: calc(100vh - 6.438rem);
    }
    .contacts-list #list1 {
        position: absolute;
    }
}


/* $social
 ------------------------------------------*/

.profile-bio .background {
    display: block;
    width: 100%;
    height: 100px;
    border-radius: 2px 2px 0 0;
    background-color: #4c7ff0;
}

.profile-bio .avatar {
    display: inline-block;
    max-width: 100%;
    margin: -30px 5px 0 10px;
    padding: 1px;
    vertical-align: bottom;
    background-color: #fff;
    border-radius: 2px;
    float: left;
}

.profile-bio .avatar img {
    box-sizing: border-box;
    width: 72px;
    height: 72px;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 4px;
}

.profile-bio .user-details {
    margin: 5px 0 0;
}

.profile-bio .user-details .user-name {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1rem;
}

.profile-bio .user-stats {
    margin: 10px;
    padding: 10px 0;
}

.profile-bio .user-stats>ul {
    display: table;
    box-sizing: border-box;
    min-width: 100%;
    margin: 0;
    margin: 0;
    padding: 0;
    padding: 0;
    table-layout: auto;
    list-style: outside none none;
}

.profile-bio .user-stats>ul>li {
    display: table-cell;
    padding: 0;
    vertical-align: top;
}

.profile-bio .user-stats>ul>li>a:hover {
    text-decoration: none;
}

.profile-bio .user-stats .small {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .01rem;
}

.post-header {
    display: table;
    width: 100%;
    margin-top: -146px;
    table-layout: fixed;
    border-spacing: 0;
    border-collapse: collapse;
}

.post-header>* {
    display: table-cell;
    float: none;
    height: 100%;
    vertical-align: bottom;
}

.profile-header {
    display: table;
    width: 100%;
    margin-top: -23%;
    table-layout: fixed;
    border-spacing: 0;
    border-collapse: collapse;
}

.profile-header>* {
    display: table-cell;
    float: none;
    height: 100%;
    vertical-align: bottom;
}

.profile-avatar {
    z-index: 1;
    display: block;
    width: 100%;
    padding: 5px;
    background-color: #fff;
    box-shadow: 0 0.125rem 0.25rem rgba(50, 70, 75, 0.2);
}

.profile-stats {
    width: 40%;
    float: right;
}

.profile-user {
    width: 60%;
}

.profile-sidebar-item {
    margin: 0 0 1.5rem 0;
}

.profile-sidebar-item::after {
    content: "";
    display: table;
    clear: both;
}

.profile-sidebar-item p {
    margin: 0;
}

.profile-sidebar-item.profile-info {
    text-align: center;
}

.profile-reccomendations .user-meta {
    margin-bottom: 0;
    padding: 0;
    list-style: none;
}

.profile-reccomendations .user-meta li {
    padding: 5px 0;
}

.profile-numbers-count {
    display: table;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.profile-numbers-count li {
    font-size: 12px;
    display: table-cell;
    float: none;
    text-align: center;
    vertical-align: middle;
    border-right: 0.0625rem solid rgba(0, 0, 0, 0.1);
}

.profile-numbers-count li:Last-child {
    border-right: 0;
}

.profile-numbers-count li span {
    font-size: 25px;
    display: block;
    color: #4d4d4d;
}

.profile-timeline-header {
    margin-bottom: 5px;
}

.profile-timeline-header::after {
    content: "";
    display: table;
    clear: both;
}

.profile-timeline-header .profile-timeline-user {
    position: relative;
    display: block;
    float: left;
    margin-right: 0.9rem;
}

.profile-timeline-header .profile-timeline-user img {
    max-width: 48px;
}

.profile-timeline-header .profile-timeline-user-details {
    margin-top: 5px;
    margin-left: 63px;
}

.profile-timeline-content {
    margin-left: 63px;
}

.profile-timeline-controls a {
    display: inline-block;
}

.profile-timeline-images {
    margin-right: -2px;
    margin-bottom: 10px;
    margin-left: -2px;
}

.profile-timeline-images .image-link {
    display: block;
    width: 50%;
    padding-right: 2px;
    padding-left: 2px;
    float: left;
}

.profile-timeline-images .image-link-smaller {
    display: block;
    width: 25%;
    padding-right: 2px;
    padding-bottom: 4px;
    padding-left: 2px;
    float: left;
}

.profile-timeline-audio {
    margin-bottom: 10px;
    padding: 0;
}

.profile-timeline-audio .audio {
    display: table;
    width: 100%;
}

.profile-timeline-audio .audio .play_pause,
.profile-timeline-audio .audio .audio-timeline,
.profile-timeline-audio .audio .time {
    display: table-cell;
    float: none;
    text-align: center;
    vertical-align: middle;
}

.profile-timeline-audio .audio .play_pause {
    width: 40px;
}

.profile-timeline-audio .audio .progress {
    width: 100%;
    height: 5px;
    margin: 0;
    float: left;
    border-radius: 0;
}

.profile-timeline-audio .audio .progress .done {
    width: 34%;
    height: 5px;
    text-align: center;
    background-color: #4c7ff0;
    float: left;
    -webkit-transition: width 0.6s ease;
    transition: width 0.6s ease;
}

.profile-timeline-audio .audio .time {
    width: 80px;
}

.post-comments {
    margin: 20px 0 0 0;
}

.post-comments .media {
    margin: 0;
}

.post-comments .comment {
    overflow: hidden;
    padding-left: 0.9rem;
}

.post-comments .comment-author a {
    color: #333333;
}

.post-comments .comment-author .time {
    font-size: 11px;
    font-weight: 600;
    color: rgba(64, 64, 64, 0.7);
}

.post-comments .avatar {
    max-width: 48px;
}

.post-comments .comment {
    overflow: hidden;
}

.post-comments .comment-meta {
    margin-bottom: 5px;
    float: right;
}


/* $timeline
 ------------------------------------------*/

.timeline {
    position: relative;
    margin-bottom: 3.25rem;
}

.timeline::before {
    position: absolute;
    top: 6px;
    width: 3px;
    height: 100%;
    content: '';
    background: #ffffff;
    left: 98px;
}

.timeline .timeline-icon {
    position: absolute;
    top: 0;
    width: 40px;
    height: 40px;
    text-align: center;
    left: 80px;
    border-radius: 50%;
    box-shadow: 0 0 0 2px #ffffff;
}

.timeline .timeline-icon>i {
    line-height: 40px;
}

.timeline .timeline-card {
    position: relative;
    margin: 40px 0;
}

.timeline .timeline-card::after {
    content: "";
    display: table;
    clear: both;
}

.timeline .timeline-card:first-child {
    margin-top: 0;
}

.timeline .timeline-heading {
    position: relative;
    font-weight: bold;
    color: #12a6a1;
    margin-bottom: 1rem;
    border-color: transparent;
}

.timeline .timeline-heading::after {
    content: "";
    display: table;
    clear: both;
}

.timeline .timeline-heading.border:after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    height: 1px;
    content: '';
    border-bottom: 0.0625rem solid rgba(0, 0, 0, 0.06);
}

.timeline .timeline-content {
    position: relative;
    margin-left: 150px;
}

.timeline .timeline-content::after {
    content: "";
    display: table;
    clear: both;
}

.timeline .timeline-content .timeline-body {
    display: inline-block;
    padding: 0.5rem;
    background: white;
    box-shadow: 0 0 0 1px rgba(64, 64, 69, 0.08);
    border-radius: 2px;
}

.timeline .timeline-content .timeline-date {
    display: inline-block;
    padding: 5px 0 10px;
}

.timeline .timeline-content .timeline-body::before {
    position: absolute;
    top: 13px;
    width: 0;
    height: 0;
    content: ' ';
    pointer-events: none;
    border-width: 7px;
    border-style: solid;
    right: 100%;
    border-color: transparent rgba(150, 150, 150, 0.2) transparent transparent;
}

.timeline .timeline-content .timeline-body::after {
    position: absolute;
    top: 14px;
    width: 0;
    height: 0;
    content: ' ';
    pointer-events: none;
    border-width: 6px;
    border-style: solid;
    right: 100%;
    border-color: transparent white transparent transparent;
}

@media (min-width: 992px) {
    .timeline:not(.stacked)::before {
        left: 50%;
        margin-left: -2px;
    }
    .timeline:not(.stacked) .timeline-card:nth-child(even) .timeline-content {
        float: right;
    }
    .timeline:not(.stacked) .timeline-card:nth-child(odd) .timeline-content .timeline-body {
        float: right;
    }
    .timeline:not(.stacked) .timeline-card:nth-child(odd) .timeline-content .timeline-body::before {
        position: absolute;
        right: auto;
        left: 100%;
        border-color: transparent transparent transparent rgba(150, 150, 150, 0.2);
    }
    .timeline:not(.stacked) .timeline-card:nth-child(odd) .timeline-content .timeline-body::after {
        position: absolute;
        right: auto;
        left: 100%;
        border-color: transparent transparent transparent white;
    }
    .timeline:not(.stacked) .timeline-card:nth-child(even) .timeline-content .timeline-date {
        right: 122%;
        left: auto;
        text-align: right;
    }
    .timeline:not(.stacked) .timeline-card:first-child {
        margin-top: 0;
    }
    .timeline:not(.stacked) .timeline-icon {
        left: 50%;
        margin-left: -20px;
    }
    .timeline:not(.stacked) .timeline-content {
        width: 45%;
        margin-left: 0;
    }
    .timeline .timeline-date {
        position: absolute;
        top: 6px;
        width: 100%;
        left: 122%;
    }
    .timeline.stacked .timeline-date {
        left: -150px;
    }
}

@media (max-width: 991px) {
    .timeline .timeline-date {
        position: absolute;
        top: 6px;
        width: 100%;
        left: -150px;
    }
}


/* $charts
 ------------------------------------------*/

.flot-x-axis> :first-child {
    display: none;
}

.chart_container {
    position: relative;
}

.rickshaw-chart {
    position: relative;
}

.y_axis {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 40px;
}

.chart {
    width: 100%;
    border: 0;
}

.chart-sm {
    width: 100%;
    height: 150px;
    border: 0;
}

.chart-legend.first {
    padding-top: 80px;
}

.c3chart {
    position: relative;
    display: block;
    width: 100%;
}

.pricing {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.pricing .pricing-plan {
    position: relative;
    text-align: center;
}

.pricing .pricing-plan {
    overflow: hidden;
    margin-top: 1.5rem;
    padding: 1rem;
    cursor: default;
    border-radius: 2px;
    background: #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
}

.pricing .plan-price {
    font-size: 2.5rem;
    font-weight: 900;
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.pricing .plan-price-symbol {
    font-size: 1rem;
    vertical-align: super;
}

.pricing .plan-price-period {
    font-size: 0.8125rem;
    display: inline-block;
    padding: 0;
    opacity: .7;
}

.pricing .plan-title {
    font-size: 0.8125rem;
    font-weight: 500;
    overflow: hidden;
    margin-bottom: 1.5rem;
    white-space: nowrap;
    letter-spacing: .01rem;
    text-transform: uppercase;
    text-overflow: ellipsis;
}

.pricing .plan-features {
    line-height: 2.5;
    margin: 0;
    padding: 1rem;
    list-style: none;
}

.pricing .plan-features li {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.pricing .btn {
    font-size: .9rem;
}


/* $switch
 ------------------------------------------*/

.switch {
    position: relative;
    display: inline-block;
    height: 1.875rem;
    margin: 0 1rem;
    padding: .3125rem 0;
    /* sizes. */
}

.switch span {
    position: relative;
    display: inline-block;
    box-sizing: content-box;
    width: 3.125rem;
    height: 2.5rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: background-color 200ms;
    transition: background-color 200ms;
    vertical-align: middle;
    border-radius: 1.5rem;
    background-color: #e8e8e8;
    background-clip: content-box;
}

.switch input {
    display: none;
}

.switch span i {
    position: absolute;
    top: 0;
    display: inline-block;
    padding-right: 1.25rem;
    cursor: pointer;
    -webkit-transition: all ease 200ms;
    transition: all ease 200ms;
}

.switch span i::before {
    display: block;
    width: 1.875rem;
    height: 1.875rem;
    content: '';
    border-radius: 50%;
    background: white;
    box-shadow: 0 0 0 0.0625rem rgba(0, 0, 0, 0.075), 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.25);
}

.switch :disabled+span i::before {
    background-color: #efefef;
}

.switch :checked+span {
    -webkit-transition: background-color 200ms;
    transition: background-color 200ms;
}

.switch :checked+span i {
    padding-right: 0;
    padding-left: 1.313rem;
}

.switch.switch-sm {
    border-radius: 1.25rem;
}

.switch.switch-sm span {
    width: 2.063rem;
    height: .625rem;
}

.switch.switch-sm span i::before {
    width: 1.25rem;
    height: 1.25rem;
}

.switch.switch-sm :checked+span i {
    padding-left: 0.875rem;
}

.switch.switch-lg {
    border-radius: 2.5rem;
}

.switch.switch-lg span {
    width: 4.125rem;
    height: 2.5rem;
}

.switch.switch-lg span i::before {
    width: 2.5rem;
    height: 2.5rem;
}

.switch.switch-lg :checked+span i {
    padding-left: 1.688rem;
}

.center-table {
    display: table;
    margin: 0 auto;
}


/* $jquery.ui
 ------------------------------------------*/

.ui-slider {
    position: relative;
    margin-bottom: 1rem;
    text-align: left;
    background: #efefef;
    border-radius: 2px;
}

.ui-slider .ui-slider-range {
    border-radius: 2px;
}

.ui-slider .ui-slider-handle {
    position: absolute;
    z-index: 2;
    width: 14px;
    height: 14px;
    cursor: default;
    cursor: pointer;
    -webkit-transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1), -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    outline: none;
    background: white;
    border-radius: 1px;
    -ms-touch-action: none;
    touch-action: none;
    box-shadow: #a3a3a3 0 0 0 1px;
}

.ui-slider .ui-slider-handle.ui-state-active {
    -webkit-transform: scale(2, 2);
    transform: scale(2, 2);
}

.ui-slider .ui-slider-range {
    font-size: .7em;
    position: absolute;
    z-index: 1;
    display: block;
    border: 0;
    background-position: 0 0;
}


/* support: IE8 - See #6727 */

.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
    -webkit-filter: inherit;
    filter: inherit;
}

.ui-slider-horizontal {
    height: 4px;
}

.ui-slider-horizontal .ui-slider-handle {
    top: -5px;
    margin-left: -.6em;
}

.ui-slider-horizontal .ui-slider-range {
    top: 0;
    height: 100%;
}

.ui-slider-horizontal .ui-slider-range-min {
    left: 0;
}

.ui-slider-horizontal .ui-slider-range-max {
    right: 0;
}

.ui-slider-vertical {
    display: inline-block;
    width: 4px;
    height: 9.375rem;
    margin: 0 8px;
}

.ui-slider-vertical .ui-slider-handle {
    left: -5px;
    margin-bottom: -.6em;
    margin-left: 0;
}

.ui-slider-vertical .ui-slider-range {
    left: 0;
    width: 100%;
}

.ui-slider-vertical .ui-slider-range-min {
    bottom: 0;
}

.ui-slider-vertical .ui-slider-range-max {
    top: 0;
}

.ui-slider-range-min,
.ui-slider-range {
    background-color: #4c7ff0;
}

.slider-info .ui-slider-range-min,
.slider-info .ui-slider-range {
    background-color: #4cc3f0;
}

.slider-info .ui-slider-handle {
    background-color: #aae3f8;
    box-shadow: #4cc3f0 0 0 0 1px;
}

.slider-info .slider-handle.triangle {
    border-bottom-color: #4cc3f0;
}

.slider-primary .ui-slider-range-min,
.slider-primary .ui-slider-range {
    background-color: #4c7ff0;
}

.slider-primary .ui-slider-handle {
    background-color: #aac2f8;
    box-shadow: #4c7ff0 0 0 0 1px;
}

.slider-primary .slider-handle.triangle {
    border-bottom-color: #4c7ff0;
}

.slider-success .ui-slider-range-min,
.slider-success .ui-slider-range {
    background-color: #7fc35c;
}

.slider-success .ui-slider-handle {
    background-color: #badea7;
    box-shadow: #7fc35c 0 0 0 1px;
}

.slider-success .slider-handle.triangle {
    border-bottom-color: #7fc35c;
}

.slider-warning .ui-slider-range-min,
.slider-warning .ui-slider-range {
    background-color: #f0c54c;
}

.slider-warning .ui-slider-handle {
    background-color: #f8e3aa;
    box-shadow: #f0c54c 0 0 0 1px;
}

.slider-warning .slider-handle.triangle {
    border-bottom-color: #f0c54c;
}

.slider-danger .ui-slider-range-min,
.slider-danger .ui-slider-range {
    background-color: #d26d54;
}

.slider-danger .ui-slider-handle {
    background-color: #e7b2a5;
    box-shadow: #d26d54 0 0 0 1px;
}

.slider-danger .slider-handle.triangle {
    border-bottom-color: #d26d54;
}

.rounded-handler .ui-slider-handle {
    border-radius: 50%;
}


/* $bootstrap-tags
 ------------------------------------------*/

div.tagsinput {
    width: 100% !important;
    height: auto !important;
    min-height: auto !important;
    padding: .3125rem .3125rem 0;
    border-color: rgba(0, 0, 0, 0.1);
    background: white;
}

div.tagsinput span.tag {
    font-family: inherit;
    padding: .125rem .3125rem;
    color: white;
    border-color: #4c7ff0;
    background: #4c7ff0;
    border-radius: 2px;
}

div.tagsinput span.tag a {
    font-size: 0.8125rem;
    color: white;
}

div.tagsinput input {
    font-family: inherit;
    color: white;
}

.not_valid {
    color: #983e28 !important;
    background: #f2d4cd !important;
}


/* $bootstrap-timepicker
 ------------------------------------------*/

.bootstrap-timepicker {
    position: relative;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu {
    right: 0;
    left: auto;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before {
    right: 12px;
    left: auto;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after {
    right: 13px;
    left: auto;
}

.bootstrap-timepicker .input-group-addon {
    cursor: pointer;
}

.bootstrap-timepicker .input-group-addon i {
    display: inline-block;
    width: 16px;
    height: 16px;
}

.bootstrap-timepicker-widget.dropdown-menu {
    padding: 4px;
}

.bootstrap-timepicker-widget.dropdown-menu.open {
    display: inline-block;
}

.bootstrap-timepicker-widget.dropdown-menu:before {
    position: absolute;
    display: inline-block;
    content: '';
    border-right: 7px solid transparent;
    border-bottom: 7px solid rgba(0, 0, 0, 0.2);
    border-left: 7px solid transparent;
}

.bootstrap-timepicker-widget.dropdown-menu:after {
    position: absolute;
    display: inline-block;
    content: '';
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-left: 6px solid transparent;
}

.bootstrap-timepicker-widget.timepicker-orient-left:before {
    left: 6px;
}

.bootstrap-timepicker-widget.timepicker-orient-left:after {
    left: 7px;
}

.bootstrap-timepicker-widget.timepicker-orient-right:before {
    right: 6px;
}

.bootstrap-timepicker-widget.timepicker-orient-right:after {
    right: 7px;
}

.bootstrap-timepicker-widget.timepicker-orient-top:before {
    top: -7px;
}

.bootstrap-timepicker-widget.timepicker-orient-top:after {
    top: -6px;
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:before {
    bottom: -7px;
    border-top: 7px solid #999;
    border-bottom: 0;
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:after {
    bottom: -6px;
    border-top: 6px solid #fff;
    border-bottom: 0;
}

.bootstrap-timepicker-widget .glyphicon-chevron-up,
.bootstrap-timepicker-widget .glyphicon-chevron-down {
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.bootstrap-timepicker-widget .glyphicon-chevron-up::before {
    content: '\f106';
}

.bootstrap-timepicker-widget .glyphicon-chevron-down::before {
    content: '\f107';
}

.bootstrap-timepicker-widget a.btn,
.bootstrap-timepicker-widget input {
    border-radius: 4px;
}

.bootstrap-timepicker-widget table {
    width: 100%;
    margin: 0;
}

.bootstrap-timepicker-widget table td {
    height: 30px;
    margin: 0;
    padding: 2px;
    text-align: center;
}

.bootstrap-timepicker-widget table td:not(.separator) {
    min-width: 30px;
}

.bootstrap-timepicker-widget table td span {
    width: 100%;
}

.bootstrap-timepicker-widget table td a {
    display: inline-block;
    width: 100%;
    margin: 0;
    padding: 8px 0;
    color: #333;
    border: 1px transparent solid;
    outline: 0;
}

.bootstrap-timepicker-widget table td a:hover {
    text-decoration: none;
    border-color: #ddd;
    border-radius: 4px;
    background-color: #eee;
}

.bootstrap-timepicker-widget table td a i {
    font-size: 18px;
    margin-top: 2px;
}

.bootstrap-timepicker-widget table td input {
    width: 25px;
    margin: 0;
    text-align: center;
}

.bootstrap-timepicker-widget .modal-content {
    padding: 4px;
}

@media (min-width: 767px) {
    .bootstrap-timepicker-widget.modal {
        width: 200px;
        margin-left: -100px;
    }
}

@media (max-width: 767px) {
    .bootstrap-timepicker {
        width: 100%;
    }
    .bootstrap-timepicker .dropdown-menu {
        width: 100%;
    }
}

.bootstrap-timepicker {
    position: relative;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu {
    right: 0;
    left: auto;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before {
    right: .75rem;
    left: auto;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after {
    right: .8125rem;
    left: auto;
}

.bootstrap-timepicker-widget.dropdown-menu {
    padding: 1px;
}

.bootstrap-timepicker-widget.dropdown-menu:before {
    position: absolute;
    display: inline-block;
    content: '';
    border-right: .4375rem solid transparent;
    border-bottom: 0.4375rem solid rgba(0, 0, 0, 0.2);
    border-left: .4375rem solid transparent;
}

.bootstrap-timepicker-widget.dropdown-menu:after {
    position: absolute;
    display: inline-block;
    content: '';
    border-right: .375rem solid transparent;
    border-bottom: .375rem solid #fff;
    border-left: .375rem solid transparent;
}

.bootstrap-timepicker-widget.timepicker-orient-left:before {
    left: .375rem;
}

.bootstrap-timepicker-widget.timepicker-orient-left:after {
    left: .4375rem;
}

.bootstrap-timepicker-widget.timepicker-orient-right:before {
    right: .375rem;
}

.bootstrap-timepicker-widget.timepicker-orient-right:after {
    right: .4375rem;
}

.bootstrap-timepicker-widget.timepicker-orient-top:before {
    top: -.4375rem;
}

.bootstrap-timepicker-widget.timepicker-orient-top:after {
    top: -.375rem;
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:before {
    top: auto;
    bottom: -.4375rem;
    border-top: .4375rem solid #999;
    border-bottom: 0;
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:after {
    top: auto;
    bottom: -.375rem;
    border-top: .375rem solid #fff;
    border-bottom: 0;
}

.bootstrap-timepicker-widget a.btn,
.bootstrap-timepicker-widget input {
    border-radius: 2px;
}

.bootstrap-timepicker-widget table td.separator {
    width: .125rem;
    padding: 0;
}

.bootstrap-timepicker-widget table td a {
    padding: 0;
    color: rgba(0, 0, 0, 0.7);
}

.bootstrap-timepicker-widget table td a:hover {
    color: rgba(0, 0, 0, 0.7);
    border-color: transparent;
    background-color: transparent;
    border-radius: 2px;
}

.bootstrap-timepicker-widget table td a i {
    font-size: 0.8125rem;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    font-weight: normal;
    font-style: normal;
    display: inline-block;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    speak: none;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.bootstrap-timepicker-widget table td a i::after {
    display: inline-block;
    width: .875rem;
    height: .875rem;
    vertical-align: middle;
}

.bootstrap-timepicker-widget table td a .icon-chevron-down::after {
    line-height: .5625rem;
    content: '\f0dd';
}

.bootstrap-timepicker-widget table td a .icon-chevron-up::after {
    line-height: 1.25rem;
    content: '\f0de';
}

.bootstrap-timepicker-widget table td input {
    border: 0;
}

.bootstrap-timepicker-widget .modal-content {
    padding: .25rem;
}


/* $c3-charts
 ------------------------------------------*/

.c3 svg text,
.c3 svg {
    font: 0.625rem -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    color: rgba(0, 0, 0, 0.7);
}

.c3 path,
.c3 line {
    stroke: rgba(0, 0, 0, 0.1);
}

.c3 .c3-tooltip {
    box-shadow: none;
}

.c3 .c3-tooltip tr {
    border-color: #4c7ff0;
}

.c3 .c3-tooltip th {
    font-size: .8125rem;
    background-color: #4c7ff0;
}

.c3 .c3-tooltip td {
    border-left-color: #4c7ff0;
}


/* $chartjs
 ------------------------------------------*/

.canvas-holder {
    position: relative;
    margin: 0;
    padding: 0;
}

.doughnut-legend {
    position: absolute;
    top: 0;
    right: .5rem;
    list-style: none;
}

.doughnut-legend li {
    position: relative;
    display: block;
    margin-bottom: .25rem;
    padding: .125rem .5rem .125rem 1.75rem;
    padding-left: 1.875rem;
    cursor: default;
    -webkit-transition: background-color 200ms ease-in-out;
    transition: background-color 200ms ease-in-out;
}

.doughnut-legend li:hover {
    background-color: #e8e8e8;
}

.doughnut-legend li span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 1.25rem;
    height: 100%;
}


/* $clock-picker
 ------------------------------------------*/

.clockpicker-popover .popover-title {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    color: rgba(0, 0, 0, 0.7);
}

.clockpicker-popover .popover-title span {
    cursor: pointer;
}

.clockpicker-popover .popover-content {
    background-color: white;
}

.clockpicker-popover .popover-content:last-child {
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
}

.clockpicker-popover .clockpicker-plate {
    border: 0.0625rem solid rgba(0, 0, 0, 0.1);
}

.clockpicker-popover .clockpicker-button {
    margin: 0;
    padding: .625rem 0;
    border-width: .0625rem 0 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}


/* $color-picker
 ------------------------------------------*/

.colorpicker {
    display: none;
    visibility: visible;
    min-width: initial !important;
    padding: .3125rem;
    opacity: 1;
    box-shadow: 0 0.0625rem 1px transparent;
}


/* $datepicker
 ------------------------------------------*/

.center-block>.datepicker {
    margin: 0 auto;
}

.datepicker.dropdown-menu {
    font-size: 0.8125rem;
    display: none;
    visibility: visible;
    padding: 1rem;
    border-color: rgba(0, 0, 0, 0.1);
    opacity: 1;
    border-radius: 2px;
    box-shadow: 0 0.0625rem 1px transparent;
}

.datepicker-inline {
    border: 0.0625rem solid rgba(0, 0, 0, 0.1);
}

.datepicker {
    border-radius: 2px;
}

.datepicker-dropdown {
    font-size: 0.8125rem;
    display: none;
    visibility: visible;
    padding: 1rem;
    border-color: rgba(0, 0, 0, 0.1);
    opacity: 1;
    border-radius: 2px;
    box-shadow: 0 0.0625rem 1px transparent;
}

.datepicker-dropdown:before {
    border-bottom-color: rgba(0, 0, 0, 0.1);
    border-bottom-color: rgba(0, 0, 0, 0.2);
}

.datepicker-dropdown.datepicker-orient-bottom:before {
    border-top-color: rgba(0, 0, 0, 0.1);
}

.datepicker table tr td,
.datepicker table tr th {
    border-radius: 2px;
}

.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover {
    position: relative;
    text-shadow: 0 -0.0625rem 0 rgba(0, 0, 0, 0.25);
    color: white;
    background-color: #4c7ff0;
    border-color: #4c7ff0;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover:hover {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}

.datepicker table tr td.active:focus,
.datepicker table tr td.active.focus,
.datepicker table tr td.active:hover:focus,
.datepicker table tr td.active:hover.focus,
.datepicker table tr td.active.disabled:focus,
.datepicker table tr td.active.disabled.focus,
.datepicker table tr td.active.disabled:hover:focus,
.datepicker table tr td.active.disabled:hover.focus {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}

.datepicker table tr td.active:active,
.datepicker table tr td.active.active,
.open>.datepicker table tr td.active.dropdown-toggle,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active:hover.active,
.open>.datepicker table tr td.active:hover.dropdown-toggle,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled.active,
.open>.datepicker table tr td.active.disabled.dropdown-toggle,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.disabled:hover.active,
.open>.datepicker table tr td.active.disabled:hover.dropdown-toggle {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.datepicker table tr td.active:active:hover,
.datepicker table tr td.active:active:focus,
.datepicker table tr td.active:active.focus,
.datepicker table tr td.active.active:hover,
.datepicker table tr td.active.active:focus,
.datepicker table tr td.active.active.focus,
.open>.datepicker table tr td.active.dropdown-toggle:hover,
.open>.datepicker table tr td.active.dropdown-toggle:focus,
.open>.datepicker table tr td.active.dropdown-toggle.focus,
.datepicker table tr td.active:hover:active:hover,
.datepicker table tr td.active:hover:active:focus,
.datepicker table tr td.active:hover:active.focus,
.datepicker table tr td.active:hover.active:hover,
.datepicker table tr td.active:hover.active:focus,
.datepicker table tr td.active:hover.active.focus,
.open>.datepicker table tr td.active:hover.dropdown-toggle:hover,
.open>.datepicker table tr td.active:hover.dropdown-toggle:focus,
.open>.datepicker table tr td.active:hover.dropdown-toggle.focus,
.datepicker table tr td.active.disabled:active:hover,
.datepicker table tr td.active.disabled:active:focus,
.datepicker table tr td.active.disabled:active.focus,
.datepicker table tr td.active.disabled.active:hover,
.datepicker table tr td.active.disabled.active:focus,
.datepicker table tr td.active.disabled.active.focus,
.open>.datepicker table tr td.active.disabled.dropdown-toggle:hover,
.open>.datepicker table tr td.active.disabled.dropdown-toggle:focus,
.open>.datepicker table tr td.active.disabled.dropdown-toggle.focus,
.datepicker table tr td.active.disabled:hover:active:hover,
.datepicker table tr td.active.disabled:hover:active:focus,
.datepicker table tr td.active.disabled:hover:active.focus,
.datepicker table tr td.active.disabled:hover.active:hover,
.datepicker table tr td.active.disabled:hover.active:focus,
.datepicker table tr td.active.disabled:hover.active.focus,
.open>.datepicker table tr td.active.disabled:hover.dropdown-toggle:hover,
.open>.datepicker table tr td.active.disabled:hover.dropdown-toggle:focus,
.open>.datepicker table tr td.active.disabled:hover.dropdown-toggle.focus {
    color: white;
    background-color: #124ed4;
    border-color: #0f40ae;
}

.datepicker table tr td.active.disabled:focus,
.datepicker table tr td.active.disabled.focus,
.datepicker table tr td.active:disabled:focus,
.datepicker table tr td.active:disabled.focus,
.datepicker table tr td.active:hover.disabled:focus,
.datepicker table tr td.active:hover.disabled.focus,
.datepicker table tr td.active:hover:disabled:focus,
.datepicker table tr td.active:hover:disabled.focus,
.datepicker table tr td.active.disabled.disabled:focus,
.datepicker table tr td.active.disabled.disabled.focus,
.datepicker table tr td.active.disabled:disabled:focus,
.datepicker table tr td.active.disabled:disabled.focus,
.datepicker table tr td.active.disabled:hover.disabled:focus,
.datepicker table tr td.active.disabled:hover.disabled.focus,
.datepicker table tr td.active.disabled:hover:disabled:focus,
.datepicker table tr td.active.disabled:hover:disabled.focus {
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active:disabled:hover,
.datepicker table tr td.active:hover.disabled:hover,
.datepicker table tr td.active:hover:disabled:hover,
.datepicker table tr td.active.disabled.disabled:hover,
.datepicker table tr td.active.disabled:disabled:hover,
.datepicker table tr td.active.disabled:hover.disabled:hover,
.datepicker table tr td.active.disabled:hover:disabled:hover {
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.datepicker table tr td span {
    border-radius: 2px;
}

.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
    position: relative;
    text-shadow: 0 -0.0625rem 0 rgba(0, 0, 0, 0.25);
    color: white;
    background-color: #4c7ff0;
    border-color: #4c7ff0;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}

.datepicker table tr td span.active:focus,
.datepicker table tr td span.active.focus,
.datepicker table tr td span.active:hover:focus,
.datepicker table tr td span.active:hover.focus,
.datepicker table tr td span.active.disabled:focus,
.datepicker table tr td span.active.disabled.focus,
.datepicker table tr td span.active.disabled:hover:focus,
.datepicker table tr td span.active.disabled:hover.focus {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}

.datepicker table tr td span.active:active,
.datepicker table tr td span.active.active,
.open>.datepicker table tr td span.active.dropdown-toggle,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active:hover.active,
.open>.datepicker table tr td span.active:hover.dropdown-toggle,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled.active,
.open>.datepicker table tr td span.active.disabled.dropdown-toggle,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.disabled:hover.active,
.open>.datepicker table tr td span.active.disabled:hover.dropdown-toggle {
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.datepicker table tr td span.active:active:hover,
.datepicker table tr td span.active:active:focus,
.datepicker table tr td span.active:active.focus,
.datepicker table tr td span.active.active:hover,
.datepicker table tr td span.active.active:focus,
.datepicker table tr td span.active.active.focus,
.open>.datepicker table tr td span.active.dropdown-toggle:hover,
.open>.datepicker table tr td span.active.dropdown-toggle:focus,
.open>.datepicker table tr td span.active.dropdown-toggle.focus,
.datepicker table tr td span.active:hover:active:hover,
.datepicker table tr td span.active:hover:active:focus,
.datepicker table tr td span.active:hover:active.focus,
.datepicker table tr td span.active:hover.active:hover,
.datepicker table tr td span.active:hover.active:focus,
.datepicker table tr td span.active:hover.active.focus,
.open>.datepicker table tr td span.active:hover.dropdown-toggle:hover,
.open>.datepicker table tr td span.active:hover.dropdown-toggle:focus,
.open>.datepicker table tr td span.active:hover.dropdown-toggle.focus,
.datepicker table tr td span.active.disabled:active:hover,
.datepicker table tr td span.active.disabled:active:focus,
.datepicker table tr td span.active.disabled:active.focus,
.datepicker table tr td span.active.disabled.active:hover,
.datepicker table tr td span.active.disabled.active:focus,
.datepicker table tr td span.active.disabled.active.focus,
.open>.datepicker table tr td span.active.disabled.dropdown-toggle:hover,
.open>.datepicker table tr td span.active.disabled.dropdown-toggle:focus,
.open>.datepicker table tr td span.active.disabled.dropdown-toggle.focus,
.datepicker table tr td span.active.disabled:hover:active:hover,
.datepicker table tr td span.active.disabled:hover:active:focus,
.datepicker table tr td span.active.disabled:hover:active.focus,
.datepicker table tr td span.active.disabled:hover.active:hover,
.datepicker table tr td span.active.disabled:hover.active:focus,
.datepicker table tr td span.active.disabled:hover.active.focus,
.open>.datepicker table tr td span.active.disabled:hover.dropdown-toggle:hover,
.open>.datepicker table tr td span.active.disabled:hover.dropdown-toggle:focus,
.open>.datepicker table tr td span.active.disabled:hover.dropdown-toggle.focus {
    color: white;
    background-color: #124ed4;
    border-color: #0f40ae;
}

.datepicker table tr td span.active.disabled:focus,
.datepicker table tr td span.active.disabled.focus,
.datepicker table tr td span.active:disabled:focus,
.datepicker table tr td span.active:disabled.focus,
.datepicker table tr td span.active:hover.disabled:focus,
.datepicker table tr td span.active:hover.disabled.focus,
.datepicker table tr td span.active:hover:disabled:focus,
.datepicker table tr td span.active:hover:disabled.focus,
.datepicker table tr td span.active.disabled.disabled:focus,
.datepicker table tr td span.active.disabled.disabled.focus,
.datepicker table tr td span.active.disabled:disabled:focus,
.datepicker table tr td span.active.disabled:disabled.focus,
.datepicker table tr td span.active.disabled:hover.disabled:focus,
.datepicker table tr td span.active.disabled:hover.disabled.focus,
.datepicker table tr td span.active.disabled:hover:disabled:focus,
.datepicker table tr td span.active.disabled:hover:disabled.focus {
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active:disabled:hover,
.datepicker table tr td span.active:hover.disabled:hover,
.datepicker table tr td span.active:hover:disabled:hover,
.datepicker table tr td span.active.disabled.disabled:hover,
.datepicker table tr td span.active.disabled:disabled:hover,
.datepicker table tr td span.active.disabled:hover.disabled:hover,
.datepicker table tr td span.active.disabled:hover:disabled:hover {
    background-color: #4c7ff0;
    border-color: #4c7ff0;
}

.input-daterange input:first-child {
    border-radius: 2px 0 0 2px;
}

.input-daterange input:last-child {
    border-radius: 0 2px 2px 0;
}

.input-daterange .input-group-addon {
    border: solid rgba(0, 0, 0, 0.1);
    background-color: rgba(3, 3, 3, 0.1);
}


/* $daterangepicker
 ------------------------------------------*/

.daterangepicker {
    font-size: 0.8125rem;
    display: none;
    visibility: visible;
    margin-top: -.0625rem;
    opacity: 1;
    border-radius: 2px;
    box-shadow: 0 0.0625rem 1px transparent;
}

.daterangepicker .ranges .input-mini {
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    background-color: transparent;
    border-radius: 2px;
}

.daterangepicker .calendar-date {
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 2px;
}

.daterangepicker td.available+td.start-date {
    border-radius: 2px 0 0 2px;
}

.daterangepicker td.in-range+td.end-date {
    border-radius: 0 2px 2px 0;
}

.daterangepicker td.available:hover,
.daterangepicker th.available:hover {
    background: #e8e8e8;
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
    color: #fff;
    border-color: #4c7ff0;
    background-color: #4c7ff0;
}

.daterangepicker td,
.daterangepicker th {
    border-radius: 2px;
}

.daterangepicker .calendar th,
.daterangepicker .calendar td {
    font-family: inherit;
}

.daterangepicker td.start-date.end-date {
    border-radius: 2px;
}

.daterangepicker .ranges li {
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    background: rgba(0, 0, 0, 0.1);
    border-radius: 2px;
}

.daterangepicker .ranges li.active,
.daterangepicker .ranges li:hover {
    border-color: #4c7ff0;
    background: #4c7ff0;
}

.drop-box {
    width: 100%;
    margin-bottom: 1.5rem;
    padding: 1.563rem 1rem;
    text-align: center;
    border: 0.0625rem dashed rgba(0, 0, 0, 0.1);
    background: white;
}

.dragover {
    border-color: #4c7ff0;
}

.dropzone {
    display: table;
    width: 100%;
    padding: 0;
    border-width: 1px;
    border-style: dashed;
    background: white;
    border-radius: 2px;
}

.dropzone .dz-message {
    display: table-cell;
    vertical-align: middle;
}

.dropzone .dz-preview.dz-file-preview .dz-image {
    background: #e8e8e8;
    border-radius: 2px;
}

.dropzone .dz-preview .dz-error-message {
    background: #d26d54;
    border-radius: 2px;
}

.dropzone .dz-preview .dz-error-message:after {
    border-bottom-color: #d26d54;
}

.dropzone .dz-preview .dz-progress {
    border-color: rgba(0, 0, 0, 0.1);
}

.dropzone .dz-preview .dz-progress .dz-upload {
    background: #4c7ff0;
}

.dropzone .dz-preview .dz-details .dz-filename:hover span {
    border-color: rgba(0, 0, 0, 0.1);
}

.dropzone .dz-preview .dz-details .dz-filename span,
.dropzone .dz-preview .dz-details .dz-size span {
    border-radius: 2px;
}

.my-drop-zone {
    min-height: 1.25rem;
    margin-bottom: 1rem;
    padding: 1.188rem;
    border: dashed 0.0625rem rgba(0, 0, 0, 0.7);
    background-color: white;
    border-radius: 2px;
}

.nv-file-over {
    border-color: #d26d54;
}

.another-file-over-class {
    border-color: #7fc35c;
}


/* $easypie
 ------------------------------------------*/

.piechart {
    position: relative;
    margin: 0 auto;
    text-align: center;
}

.piechart canvas {
    position: absolute;
    top: 0;
    left: 0;
}

.piechart>div {
    display: table;
    width: 100%;
    height: 100%;
}

.piechart>div>div {
    display: table-cell;
    vertical-align: middle;
}

.piechart .percent {
    position: relative;
    display: block;
    margin: 0;
}

.piechart .percent:after {
    font-family: Helvetica, Georgia, serif;
    font-size: .5em;
    position: absolute;
    top: 0;
    content: '%';
}


/* $flot-chart
 ------------------------------------------*/

#tooltip {
    line-height: 1;
    position: absolute;
    display: none;
    padding: .3125rem .625rem;
    color: white;
    border: 0;
    background-color: #4c7ff0;
}

#tooltip:before {
    position: absolute;
    top: .25rem;
    right: 100%;
    display: block;
    width: 0;
    height: 0;
    content: '';
    border-width: .375rem;
    border-style: solid;
    border-color: transparent #4c7ff0 transparent transparent;
}

td.legendColorBox>div {
    padding: 0 !important;
    border: 0 !important;
}

td.legendColorBox>div>div {
    border-radius: 0.25rem;
}

td.legendLabel {
    padding-left: .3125rem;
}


/* $google-map
 ------------------------------------------*/

#cd-google-map {
    position: relative;
}

#google-container {
    position: relative;
    width: 100%;
    height: 100% !important;
    min-height: 25rem;
}

.google-map {
    width: 100%;
    padding: 0 !important;
    background: transparent;
}

.google-map img {
    max-width: none !important;
}

.gm-style-cc {
    display: none !important;
}


/* $intl-tel-input
 ------------------------------------------*/

.iti-flag {
    width: 1rem;
    height: .6875rem;
    box-shadow: none;
}

.intl-tel-input {
    width: 100%;
}

.intl-tel-input .flag-dropdown:hover .selected-flag {
    background-color: rgba(232, 232, 232, 0.5);
}

.intl-tel-input .selected-flag .arrow {
    border-top-color: rgba(0, 0, 0, 0.1);
}

.intl-tel-input .selected-flag .arrow.up {
    border-bottom-color: rgba(0, 0, 0, 0.1);
}

.intl-tel-input .country-list {
    z-index: 1000;
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: none;
}

.intl-tel-input .country-list .divider {
    border-bottom-color: rgba(0, 0, 0, 0.1);
}

.intl-tel-input .country-list .country .dial-code {
    color: rgba(0, 0, 0, 0.7);
}

.intl-tel-input .country-list .country.highlight {
    background-color: rgba(232, 232, 232, 0.5);
}


/* $jvectormap
 ------------------------------------------*/

.jvectormap-tip {
    font-family: inherit;
    color: rgba(0, 0, 0, 0.7);
    border: solid 0.0625rem #4c7ff0;
    background: white;
    border-radius: 2px;
}

.jvectormap-label {
    font-family: inherit;
    font-size: smaller;
    font-size: inherit;
    position: absolute;
    padding: .1875rem;
    color: white;
    border-color: #4c7ff0;
    background-color: #4c7ff0;
    border-radius: 2px;
}

.jvectormap-zoomin,
.jvectormap-zoomout {
    position: absolute;
    top: 0;
    left: 0;
    width: 2rem;
    height: 2rem;
    margin-left: 1rem;
    cursor: pointer;
    text-indent: -9999px;
    background-color: white;
    background-repeat: no-repeat;
    border-radius: 0.125rem;
}

.jvectormap-zoomin::before,
.jvectormap-zoomout::before {
    position: absolute;
    top: 50%;
    right: 50%;
    width: .125rem;
    height: .625rem;
    margin-top: -.25rem;
    margin-right: -.0625rem;
    content: '';
    background: rgba(0, 0, 0, 0.7);
}

.jvectormap-zoomin::after,
.jvectormap-zoomout::after {
    position: absolute;
    top: 50%;
    right: 50%;
    width: .625rem;
    height: .125rem;
    margin-right: -.3125rem;
    content: '';
    background: rgba(0, 0, 0, 0.7);
}

.jvectormap-zoomin {
    top: 1rem;
    margin-top: 0;
    margin-bottom: 1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.jvectormap-zoomout {
    top: 3.063rem;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.jvectormap-zoomout::before {
    display: none;
}


/* $labelauty
 ------------------------------------------*/

input.labelauty+label {
    padding: .5625rem .625rem;
    color: rgba(0, 0, 0, 0.7);
    background-color: #e8e8e8;
    border-radius: 2px;
}

input.labelauty:not(:checked):not([disabled])+label:hover {
    background-color: #e3e3e3;
}

input.labelauty:checked+label {
    color: white;
    background-color: #4c7ff0;
}

input.labelauty:checked:not([disabled])+label:hover {
    background-color: #346eee;
}

input.btn-block+label {
    display: block;
    width: 100%;
}

input.to-labelauty-icon+label {
    display: inline-block;
    margin-right: .3125rem;
}


/* $multiselect
 ------------------------------------------*/

select.center-block+.ms-container {
    margin: 0 auto 1.5rem;
}

.ms-container .ms-selectable,
.ms-container .ms-selection {
    color: rgba(0, 0, 0, 0.7);
}

.ms-container .ms-list {
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: none;
    border-radius: 2px;
}

.ms-container .ms-list.ms-focus {
    border-color: #4c7ff0;
    box-shadow: none;
}

.ms-container .ms-selectable li.ms-elem-selectable,
.ms-container .ms-selection li.ms-elem-selection {
    font-size: 0.8125rem;
    color: rgba(0, 0, 0, 0.7);
    border-bottom-color: rgba(0, 0, 0, 0.1);
}

.ms-container .ms-selectable li.ms-hover,
.ms-container .ms-selection li.ms-hover {
    color: white;
    background-color: #4c7ff0;
}

.ms-container .ms-selectable li.disabled,
.ms-container .ms-selection li.disabled {
    background-color: #e8e8e8;
}


/* $nestable
 ------------------------------------------*/

.dd {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
}

.dd-list {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
}

.dd-list .dd-list {
    padding-left: 1.875rem;
}

.dd-collapsed .dd-list {
    display: none;
}

.dd-item,
.dd-empty,
.dd-placeholder {
    line-height: 1.25rem;
    position: relative;
    display: block;
    min-height: 1.25rem;
    margin: 0;
    padding: 0;
}

.dd-handle {
    display: block;
    margin: .3125rem 0;
    padding: .625rem;
    text-decoration: none;
    background: white;
    border-radius: 2px;
}

.dd-handle:hover {
    color: rgba(0, 0, 0, 0.7);
    background: #fff;
}

.dd-item>.dd-handle {
    border: 0;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
}

.dd-item>button {
    line-height: 2.625rem;
    position: relative;
    display: block;
    float: left;
    overflow: hidden;
    width: 2.188rem;
    padding: 0;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    text-indent: 100%;
    border: 0;
    background: transparent;
}

.dd-item>button::before {
    position: absolute;
    top: 50%;
    right: 50%;
    width: .125rem;
    height: .625rem;
    margin-top: -.3125rem;
    margin-right: -.0625rem;
    content: '';
    background: rgba(0, 0, 0, 0.7);
}

.dd-item>button::after {
    position: absolute;
    top: 50%;
    right: 50%;
    width: .625rem;
    height: .125rem;
    margin-top: -.0625rem;
    margin-right: -.3125rem;
    content: '';
    background: rgba(0, 0, 0, 0.7);
}

.dd-item>button[data-action='collapse']:before {
    display: none;
}

.dd-placeholder,
.dd-empty {
    min-height: 1.875rem;
    margin: .3125rem 0;
    padding: 0;
    border: .0625rem dashed #ddd;
    background: transparent;
}

.dd-empty {
    min-height: 100px;
    border: .0625rem dashed #bbb;
    background-color: #e5e5e5;
    background-image: -webkit-linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff), -webkit-linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff);
    background-image: linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff), linear-gradient(45deg, #fff 25%, transparent 25%, transparent 75%, #fff 75%, #fff);
    background-position: 0 0, 30px 30px;
    background-size: 60px 60px;
}

.dd-dragel {
    position: absolute;
    pointer-events: none;
}

.dd-dragel>.dd-item .dd-handle {
    margin-top: 0;
}

.dd-dragel .dd-handle {
    box-shadow: 0.125rem 0.25rem 0.375rem 0 rgba(0, 0, 0, 0.1);
}


/**
 * Nestable Draggable Handles
 */

.dd3-content {
    display: block;
    margin: .3125rem 0;
    padding: .625rem .625rem .625rem 3.125rem;
    text-decoration: none;
    background: #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
    border-radius: 2px;
}

.dd3-content:hover {
    background: #fff;
}

.dd-dragel>.dd3-item>.dd3-content {
    margin: 0;
}

.dd3-item>button {
    margin-left: 2.5rem;
}

.dd3-handle {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 2.375rem;
    margin: 0;
    cursor: pointer;
    white-space: nowrap;
    text-indent: 100%;
    border: 0.0625rem solid rgba(0, 0, 0, 0.1);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    background: #fff;
}

.dd3-handle:before {
    font-size: .875rem;
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    content: '\f0c9';
    text-align: center;
    text-indent: 0;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    font-weight: normal;
    font-style: normal;
    display: inline-block;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    speak: none;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.dd3-handle:hover {
    background: #e8e8e8;
}


/* $noty
 ------------------------------------------*/

li.app-noty {
    position: relative;
    display: block;
    margin-bottom: 1.5rem;
}

li.app-noty:last-child {
    margin-bottom: 0;
}

.noty_message[style] {
    font-size: 0.8125rem !important;
}

.app-noty .noty_bar {
    padding: 1rem 1rem;
    border: .0625rem solid transparent;
    border-radius: 1px;
}

.app-noty-top-left .app-noty .noty_bar,
.app-noty-top-right .app-noty .noty_bar,
.app-noty-top .app-noty .noty_bar {
    -webkit-animation: fadeIn 150ms;
    animation: fadeIn 150ms;
}

.app-noty-top-left .app-noty.i-am-closing-now .noty_bar,
.app-noty-top-right .app-noty.i-am-closing-now .noty_bar,
.app-noty-top .app-noty.i-am-closing-now .noty_bar {
    -webkit-animation: fadeOut 150ms;
    animation: fadeOut 150ms;
}

.app-noty-bottom-left .app-noty .noty_bar,
.app-noty-bottom-right .app-noty .noty_bar,
.app-noty-bottom .app-noty .noty_bar {
    -webkit-animation: fadeIn 150ms;
    animation: fadeIn 150ms;
}

.app-noty-bottom-left .app-noty.i-am-closing-now .noty_bar,
.app-noty-bottom-right .app-noty.i-am-closing-now .noty_bar,
.app-noty-bottom .app-noty.i-am-closing-now .noty_bar {
    -webkit-animation: fadeOut 150ms;
    animation: fadeOut 150ms;
}

.app-noty-bottom,
.app-noty-bottom-right,
.app-noty-bottom-left,
.app-noty-top,
.app-noty-top-right,
.app-noty-top-left {
    position: fixed;
    z-index: 99999;
    margin: 0;
    padding: 0;
    list-style: none;
    -webkit-transition: all 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: all 200ms cubic-bezier(0.7, 0, 0.3, 1);
}


/* Bottom notification */

.app-noty-bottom {
    right: 0;
    bottom: 0;
    width: 100%;
}

.app-noty-bottom li.app-noty {
    margin-top: -.0625rem;
    margin-bottom: 0;
}

.app-noty-bottom .noty_bar {
    border-radius: 0;
}

@media (min-width: 992px) {
    .app-noty-bottom {
        padding-left: 18rem;
    }
    .expanding~.app-noty-bottom {
        padding-left: 4rem;
    }
    .horizontal~.app-noty-bottom,
    .offcanvas~.app-noty-bottom,
    .boxed~.app-noty-bottom {
        padding-right: 0;
        padding-left: 0;
    }
}


/* Bottom right notification */

.app-noty-bottom-right {
    right: 1.5rem;
    bottom: 4.5rem;
}

@media (min-width: 992px) {
    .boxed~.app-noty-bottom-right {
        right: 1.5rem;
    }
}


/* Bottom left notification */

.app-noty-bottom-left {
    bottom: 4.5rem;
    left: 1.5rem;
}

@media (min-width: 992px) {
    .app-noty-bottom-left {
        left: 19.5rem;
    }
    .expanding~.app-noty-bottom-left {
        left: 5.5rem;
    }
    .horizontal~.app-noty-bottom-left,
    .offcanvas~.app-noty-bottom-left,
    .boxed~.app-noty-bottom-left,
    .boxed.expanding~.app-noty-bottom-left {
        left: 1.5rem;
    }
}


/* Top notification */

.app-noty-top {
    top: 4.938rem;
    right: 1.5rem;
}

.app-noty-top {
    top: 3.438rem;
    right: 0;
    width: 100%;
}

.app-noty-top li.app-noty {
    margin-top: -.0625rem;
    margin-bottom: 0;
}

.app-noty-top .noty_bar {
    border-radius: 0;
}

@media (min-width: 992px) {
    .app-noty-top {
        padding-left: 18rem;
    }
    .expanding~.app-noty-top {
        position: absolute;
        padding-left: 4rem;
    }
    .horizontal~.app-noty-top,
    .offcanvas~.app-noty-top,
    .boxed~.app-noty-top {
        padding-right: 0;
        padding-left: 0;
    }
}


/* Top right notification */

.app-noty-top-right {
    top: 4.938rem;
    right: 1.5rem;
}

@media (min-width: 992px) {
    .boxed~.app-noty-top-right,
    .boxed.expanding~.app-noty-top-right {
        right: 1.5rem;
    }
}


/* Top left notification */

.app-noty-top-left {
    top: 4.938rem;
    left: 1.5rem;
}

@media (min-width: 992px) {
    .app-noty-top-left {
        left: 19.5rem;
    }
    .expanding~.app-noty-top-left {
        left: 5.5rem;
    }
    .horizontal~.app-noty-top-left,
    .offcanvas~.app-noty-top-left,
    .boxed~.app-noty-top-left,
    .boxed.expanding~.app-noty-top-left {
        left: 1.5rem;
    }
}


/* Notification colors */

.noty_container_type_success .noty_bar {
    color: #fff !important;
    background-color: #7fc35c !important;
}

a.noty_container_type_success .noty_bar:focus,
a.noty_container_type_success .noty_bar:hover {
    background-color: #65ad3f;
}

.noty_container_type_information .noty_bar {
    color: #fff !important;
    background-color: #4cc3f0 !important;
}

a.noty_container_type_information .noty_bar:focus,
a.noty_container_type_information .noty_bar:hover {
    background-color: #1db3ec;
}

.noty_container_type_warning .noty_bar {
    color: #fff !important;
    background-color: #f0c54c !important;
}

a.noty_container_type_warning .noty_bar:focus,
a.noty_container_type_warning .noty_bar:hover {
    background-color: #ecb61d;
}

.noty_container_type_error .noty_bar {
    color: #fff !important;
    background-color: #d26d54 !important;
}

a.noty_container_type_error .noty_bar:focus,
a.noty_container_type_error .noty_bar:hover {
    background-color: #c04f33;
}

.noty_container_type_confirm .noty_bar {
    color: #fff !important;
    background-color: #4c7ff0 !important;
}

a.noty_container_type_confirm .noty_bar:focus,
a.noty_container_type_confirm .noty_bar:hover {
    background-color: #1d5dec;
}


/*!
 * ui-select
 * http://github.com/angular-ui/ui-select
 * Version: 0.13.1 - 2015-09-30T05:39:26.659Z
 * License: MIT
 */

.ui-select-choices-row:hover {
    background-color: #e8e8e8;
}


/* Select2 theme */

.select2-container .select2-selection {
    line-height: 34px;
    display: block;
    height: 34px;
    padding: 0 0 0 8px;
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    outline: 0;
    background-color: #fff;
    background-image: none;
    border-radius: 2px;
}

.select2-container .select2-selection::after {
    position: absolute;
    top: 50%;
    right: 15px;
    display: block;
    width: 0;
    height: 0;
    margin-top: -3px;
    content: ' ';
    border-width: 5px 5px 0 5px;
    border-style: solid;
    border-color: #808080 transparent transparent transparent;
}

.select2-container--open .select2-selection::after {
    margin-top: -4px;
    border-width: 0 5px 5px 5px;
    border-color: transparent transparent #808080 transparent;
}

.select2-container.select2-drop-above .select2-selection {
    border-bottom-color: rgba(0, 0, 0, 0.1);
    border-radius: 0 0 2px 2px;
    background-image: none;
}

.select2-dropdown {
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 0 0 2px 2px;
    box-shadow: none;
}

.select2-dropdown.select2-dropdown--above {
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 2px 2px 0 0;
    box-shadow: none;
}

.select2-container--open,
.select2-dropdown.select2-dropdown--above.select2-container--open {
    border-color: #4c7ff0;
}

.select2-drop-auto-width {
    border-color: rgba(0, 0, 0, 0.1);
}

.select2-container .select2-selection .select2-selection__arrow {
    display: none;
    visibility: hidden;
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 0 2px 2px 0;
    background: white;
    background-image: none;
}

.select2-container-active .select2-selection,
.select2-container-active .select2-choices {
    border-color: #4c7ff0;
    box-shadow: none;
}

.select2-dropdown-open .select2-selection {
    background-color: white;
    background-image: none;
    box-shadow: none;
}

.select2-dropdown-open.select2-drop-above .select2-selection,
.select2-dropdown-open.select2-drop-above .select2-choices {
    border-color: #4c7ff0;
    background-image: none;
}

.select2-container-multi .select2-choices {
    border-color: rgba(0, 0, 0, 0.1);
    background-image: none;
}

.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container-multi.select2-container-active .select2-choices {
    border-color: #4c7ff0;
    box-shadow: none;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice,
.select2-container-multi .select2-choices .select2-search-choice {
    border-color: #e8e8e8;
    border-radius: 2px;
    background-image: none;
    box-shadow: none;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-results .select2-highlighted {
    background: #4c7ff0;
}

.select2-search-choice-close {
    top: 2px;
}

.select2-search input {
    border-color: rgba(0, 0, 0, 0.1) !important;
    outline: 0;
}


/* Mark invalid Select2 */

.ng-dirty.ng-invalid>a.select2-selection {
    border-color: #d26d54;
}


/* Handle up direction Select2 */

.select2-container-multi .select2-choices .select2-search-field input {
    padding: 0.6rem 0.3125rem;
    margin: 0;
}

.ui-select-container[theme='select2'].direction-up .ui-select-match {
    border-radius: 2px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.ui-select-container[theme='select2'].direction-up .ui-select-dropdown {
    border-radius: 2px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    box-shadow: none;
}

.select2-container .select2-choice,
.ui-select-container[theme='select2'] .select2-choice {
    line-height: 38px;
    height: 38px;
    padding: 0 1rem;
    color: rgba(0, 0, 0, 0.7);
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 2px;
    background: #fff;
    background-image: none;
}

.select2-drop-active,
.select2-container-active .select2-choice,
.select2-container-active .select2-choices {
    border-color: #4c7ff0;
    box-shadow: none;
}

.select2-container .select2-choice .select2-arrow,
.ui-select-container[theme='select2'] .select2-choice .select2-arrow {
    width: 38px;
    margin-top: -1px;
    text-align: center;
    border-left: 0;
    border-radius: 0 2px 2px 0;
    background: #fff;
    background-image: none;
}

.select2-container .select2-choice .select2-arrow::after,
.ui-select-container[theme='select2'] .select2-choice .select2-arrow::after {
    display: inline-block;
    width: 0;
    height: 0;
    content: '';
    border-width: 5px 5px 0 5px;
    border-style: solid;
    border-color: #808080 transparent transparent transparent;
}

.select2-container .select2-choice .select2-arrow b,
.ui-select-container[theme='select2'] .select2-choice .select2-arrow b {
    display: none;
    visibility: hidden;
    background-image: none;
}

.ui-select-container[theme='select2'].select2-container-active .select2-choice,
.ui-select-container[theme='select2'].select2-container-active .select2-choices {
    border-color: #4c7ff0;
    box-shadow: none;
}

.ui-select-container[theme='select2'].select2-dropdown-open .select2-choice {
    background-color: white;
}

.ui-select-container[theme='select2'] .select2-drop-active {
    border-color: #4c7ff0;
}

.ui-select-container[theme='select2'].direction-up.select2-dropdown-open .ui-select-match {
    border-bottom-color: #4c7ff0;
}

.ui-select-container[theme='select2'] .select2-search input {
    font-family: inherit;
    font-size: 0.8125rem;
    min-height: 38px;
    border-color: rgba(0, 0, 0, 0.1);
    background: white;
}

.ui-select-container[theme='select2'] .select2-results .select2-highlighted {
    color: #fff;
    background: #4c7ff0;
}


/* Selectize theme */

.selectize-control.multi .selectize-input.has-items {
    padding: 7px 8px 4px;
}

.selectize-input {
    padding: 9px 8px;
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: none;
    border-radius: 2px;
}

.selectize-dropdown-header {
    border-bottom-color: rgba(0, 0, 0, 0.1);
    border-radius: 2px 2px 0 0;
    background: #e8e8e8;
}

.selectize-input.focus {
    box-shadow: none;
}

.selectize-input.dropdown-active {
    border-radius: 2px 2px 0 0;
}

.selectize-dropdown {
    border-radius: 0 0 2px 2px;
    box-shadow: none;
}

.selectize-dropdown .create {
    color: white !important;
}


/* Helper class to show styles when focus */

.selectize-input.selectize-focus {
    border-color: #4c7ff0 !important;
}


/* Mark invalid Selectize */

.ng-dirty.ng-invalid>div.selectize-input {
    border-color: #d26d54;
}


/* Handle up direction Selectize */

.ui-select-container[theme='selectize'].direction-up .ui-select-dropdown {
    box-shadow: none;
}

.ui-select-container[theme='selectize'] .selectize-input {
    line-height: 36px;
    padding: 0.4375rem 1rem;
    padding-top: 0;
    padding-bottom: 0;
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: none;
    border-radius: 2px;
}

.ui-select-container[theme='selectize'] .selectize-dropdown {
    border-color: rgba(0, 0, 0, 0.1);
    border-radius: 0 0 2px 2px;
    box-shadow: none;
}

.selectize-dropdown .active {
    color: #fff;
    background-color: #4c7ff0;
}


/* Bootstrap theme */


/* Helper class to show styles when focus */

.btn-default-focus {
    border-color: #4c7ff0;
    outline: 0;
    box-shadow: none;
}

.input-group>.ui-select-bootstrap>input.ui-select-search.form-control {
    border-radius: 2px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group>.ui-select-bootstrap>input.ui-select-search.form-control.direction-up {
    border-radius: 2px !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.ui-select-multiple .ui-select-match-item.dropping-before:before {
    border-color: #4c7ff0;
}

.ui-select-multiple .ui-select-match-item.dropping-after:after {
    border-color: #4c7ff0;
}

.ui-select-bootstrap .ui-select-choices-row.active>a {
    background-color: #4c7ff0;
}

.ui-select-bootstrap .ui-select-choices {
    font-size: inherit;
}


/* Mark invalid Bootstrap */

.ui-select-bootstrap.ng-dirty.ng-invalid>button.btn.ui-select-match {
    border-color: #d26d54;
}


/* Handle up direction Bootstrap */

.ui-select-container[theme='bootstrap'].direction-up .ui-select-dropdown {
    box-shadow: none;
}


/*
 *  Usage:
 *
     <div class="sk-rotating-plane"></div>
 *
 */

.sk-rotating-plane {
    width: 24px;
    height: 24px;
    -webkit-animation: sk-rotatePlane 1.2s infinite ease-in-out;
    animation: sk-rotatePlane 1.2s infinite ease-in-out;
    background-color: #4c7ff0;
}

@-webkit-keyframes sk-rotatePlane {
    0% {
        -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
        transform: perspective(120px) rotateX(0deg) rotateY(0deg);
    }
    50% {
        -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
        transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
    }
    100% {
        -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
        transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
    }
}

@keyframes sk-rotatePlane {
    0% {
        -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
        transform: perspective(120px) rotateX(0deg) rotateY(0deg);
    }
    50% {
        -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
        transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
    }
    100% {
        -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
        transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
    }
}


/*
 *  Usage:
 *
      <div class="sk-double-bounce">
        <div class="sk-child sk-double-bounce1"></div>
        <div class="sk-child sk-double-bounce2"></div>
      </div>
 *
 */

.sk-double-bounce {
    position: relative;
    width: 24px;
    height: 24px;
}

.sk-double-bounce .sk-child {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-animation: sk-doubleBounce 2s infinite ease-in-out;
    animation: sk-doubleBounce 2s infinite ease-in-out;
    opacity: .6;
    border-radius: 50%;
    background-color: #4c7ff0;
}

.sk-double-bounce .sk-double-bounce2 {
    -webkit-animation-delay: -1.0s;
    animation-delay: -1.0s;
}

@-webkit-keyframes sk-doubleBounce {
    0%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes sk-doubleBounce {
    0%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}


/*
 *  Usage:
 *
      <div class="sk-wave">
        <div class="sk-rect sk-rect1"></div>
        <div class="sk-rect sk-rect2"></div>
        <div class="sk-rect sk-rect3"></div>
        <div class="sk-rect sk-rect4"></div>
        <div class="sk-rect sk-rect5"></div>
      </div>
 *
 */

.sk-wave {
    font-size: 10px;
    width: 50px;
    height: 24px;
    text-align: center;
}

.sk-wave .sk-rect {
    display: inline-block;
    width: 6px;
    height: 100%;
    -webkit-animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
    animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
    background-color: #4c7ff0;
}

.sk-wave .sk-rect1 {
    -webkit-animation-delay: -1.2s;
    animation-delay: -1.2s;
}

.sk-wave .sk-rect2 {
    -webkit-animation-delay: -1.1s;
    animation-delay: -1.1s;
}

.sk-wave .sk-rect3 {
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

.sk-wave .sk-rect4 {
    -webkit-animation-delay: -.9s;
    animation-delay: -.9s;
}

.sk-wave .sk-rect5 {
    -webkit-animation-delay: -.8s;
    animation-delay: -.8s;
}

@-webkit-keyframes sk-waveStretchDelay {
    0%,
    40%,
    100% {
        -webkit-transform: scaleY(0.4);
        transform: scaleY(0.4);
    }
    20% {
        -webkit-transform: scaleY(1);
        transform: scaleY(1);
    }
}

@keyframes sk-waveStretchDelay {
    0%,
    40%,
    100% {
        -webkit-transform: scaleY(0.4);
        transform: scaleY(0.4);
    }
    20% {
        -webkit-transform: scaleY(1);
        transform: scaleY(1);
    }
}


/*
 *  Usage:
 *
      <div class="sk-wandering-cubes">
        <div class="sk-cube sk-cube1"></div>
        <div class="sk-cube sk-cube2"></div>
      </div>
 *
 */

.sk-wandering-cubes {
    position: relative;
    width: 24px;
    height: 24px;
}

.sk-wandering-cubes .sk-cube {
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    height: 10px;
    -webkit-animation: sk-wanderingCube 1.8s ease-in-out -1.8s infinite both;
    animation: sk-wanderingCube 1.8s ease-in-out -1.8s infinite both;
    background-color: #4c7ff0;
}

.sk-wandering-cubes .sk-cube2 {
    -webkit-animation-delay: -.9s;
    animation-delay: -.9s;
}

@-webkit-keyframes sk-wanderingCube {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    25% {
        -webkit-transform: translateX(30px) rotate(-90deg) scale(0.5);
        transform: translateX(30px) rotate(-90deg) scale(0.5);
    }
    50% {
        /* Hack to make FF rotate in the right direction */
        -webkit-transform: translateX(30px) translateY(30px) rotate(-179deg);
        transform: translateX(30px) translateY(30px) rotate(-179deg);
    }
    50.1% {
        -webkit-transform: translateX(30px) translateY(30px) rotate(-180deg);
        transform: translateX(30px) translateY(30px) rotate(-180deg);
    }
    75% {
        -webkit-transform: translateX(0) translateY(30px) rotate(-270deg) scale(0.5);
        transform: translateX(0) translateY(30px) rotate(-270deg) scale(0.5);
    }
    100% {
        -webkit-transform: rotate(-360deg);
        transform: rotate(-360deg);
    }
}

@keyframes sk-wanderingCube {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    25% {
        -webkit-transform: translateX(30px) rotate(-90deg) scale(0.5);
        transform: translateX(30px) rotate(-90deg) scale(0.5);
    }
    50% {
        /* Hack to make FF rotate in the right direction */
        -webkit-transform: translateX(30px) translateY(30px) rotate(-179deg);
        transform: translateX(30px) translateY(30px) rotate(-179deg);
    }
    50.1% {
        -webkit-transform: translateX(30px) translateY(30px) rotate(-180deg);
        transform: translateX(30px) translateY(30px) rotate(-180deg);
    }
    75% {
        -webkit-transform: translateX(0) translateY(30px) rotate(-270deg) scale(0.5);
        transform: translateX(0) translateY(30px) rotate(-270deg) scale(0.5);
    }
    100% {
        -webkit-transform: rotate(-360deg);
        transform: rotate(-360deg);
    }
}


/*
 *  Usage:
 *
      <div class="sk-spinner sk-spinner-pulse"></div>
 *
 */

.sk-spinner-pulse {
    width: 24px;
    height: 24px;
    -webkit-animation: sk-pulseScaleOut 1s infinite ease-in-out;
    animation: sk-pulseScaleOut 1s infinite ease-in-out;
    border-radius: 100%;
    background-color: #4c7ff0;
}

@-webkit-keyframes sk-pulseScaleOut {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}

@keyframes sk-pulseScaleOut {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}


/*
 *  Usage:
 *
      <div class="sk-chasing-dots">
        <div class="sk-child sk-dot1"></div>
        <div class="sk-child sk-dot2"></div>
      </div>
 *
 */

.sk-chasing-dots {
    position: relative;
    width: 24px;
    height: 24px;
    -webkit-animation: sk-chasingDotsRotate 2s infinite linear;
    animation: sk-chasingDotsRotate 2s infinite linear;
    text-align: center;
}

.sk-chasing-dots .sk-child {
    position: absolute;
    top: 0;
    display: inline-block;
    width: 60%;
    height: 60%;
    -webkit-animation: sk-chasingDotsBounce 2s infinite ease-in-out;
    animation: sk-chasingDotsBounce 2s infinite ease-in-out;
    border-radius: 100%;
    background-color: #4c7ff0;
}

.sk-chasing-dots .sk-dot2 {
    top: auto;
    bottom: 0;
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

@-webkit-keyframes sk-chasingDotsRotate {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes sk-chasingDotsRotate {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes sk-chasingDotsBounce {
    0%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes sk-chasingDotsBounce {
    0%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}


/*
 *  Usage:
 *
      <div class="sk-three-bounce">
        <div class="sk-child sk-bounce1"></div>
        <div class="sk-child sk-bounce2"></div>
        <div class="sk-child sk-bounce3"></div>
      </div>
 *
 */

.sk-three-bounce {
    width: 80px;
    text-align: center;
}

.sk-three-bounce .sk-child {
    display: inline-block;
    width: 20px;
    height: 20px;
    -webkit-animation: sk-three-bounce 1.4s ease-in-out 0s infinite both;
    animation: sk-three-bounce 1.4s ease-in-out 0s infinite both;
    border-radius: 100%;
    background-color: #4c7ff0;
}

.sk-three-bounce .sk-bounce1 {
    -webkit-animation-delay: -.32s;
    animation-delay: -.32s;
}

.sk-three-bounce .sk-bounce2 {
    -webkit-animation-delay: -.16s;
    animation-delay: -.16s;
}

@-webkit-keyframes sk-three-bounce {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes sk-three-bounce {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}


/*
 *  Usage:
 *
      <div class="sk-circle">
        <div class="sk-circle1 sk-child"></div>
        <div class="sk-circle2 sk-child"></div>
        <div class="sk-circle3 sk-child"></div>
        <div class="sk-circle4 sk-child"></div>
        <div class="sk-circle5 sk-child"></div>
        <div class="sk-circle6 sk-child"></div>
        <div class="sk-circle7 sk-child"></div>
        <div class="sk-circle8 sk-child"></div>
        <div class="sk-circle9 sk-child"></div>
        <div class="sk-circle10 sk-child"></div>
        <div class="sk-circle11 sk-child"></div>
        <div class="sk-circle12 sk-child"></div>
      </div>
 *
 */

.sk-circle {
    position: relative;
    width: 24px;
    height: 24px;
}

.sk-circle .sk-child {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.sk-circle .sk-child:before {
    display: block;
    width: 15%;
    height: 15%;
    margin: 0 auto;
    content: '';
    -webkit-animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
    animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
    border-radius: 100%;
    background-color: #4c7ff0;
}

.sk-circle .sk-circle2 {
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
}

.sk-circle .sk-circle3 {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
}

.sk-circle .sk-circle4 {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.sk-circle .sk-circle5 {
    -webkit-transform: rotate(120deg);
    transform: rotate(120deg);
}

.sk-circle .sk-circle6 {
    -webkit-transform: rotate(150deg);
    transform: rotate(150deg);
}

.sk-circle .sk-circle7 {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.sk-circle .sk-circle8 {
    -webkit-transform: rotate(210deg);
    transform: rotate(210deg);
}

.sk-circle .sk-circle9 {
    -webkit-transform: rotate(240deg);
    transform: rotate(240deg);
}

.sk-circle .sk-circle10 {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
}

.sk-circle .sk-circle11 {
    -webkit-transform: rotate(300deg);
    transform: rotate(300deg);
}

.sk-circle .sk-circle12 {
    -webkit-transform: rotate(330deg);
    transform: rotate(330deg);
}

.sk-circle .sk-circle2:before {
    -webkit-animation-delay: -1.1s;
    animation-delay: -1.1s;
}

.sk-circle .sk-circle3:before {
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

.sk-circle .sk-circle4:before {
    -webkit-animation-delay: -.9s;
    animation-delay: -.9s;
}

.sk-circle .sk-circle5:before {
    -webkit-animation-delay: -.8s;
    animation-delay: -.8s;
}

.sk-circle .sk-circle6:before {
    -webkit-animation-delay: -.7s;
    animation-delay: -.7s;
}

.sk-circle .sk-circle7:before {
    -webkit-animation-delay: -.6s;
    animation-delay: -.6s;
}

.sk-circle .sk-circle8:before {
    -webkit-animation-delay: -.5s;
    animation-delay: -.5s;
}

.sk-circle .sk-circle9:before {
    -webkit-animation-delay: -.4s;
    animation-delay: -.4s;
}

.sk-circle .sk-circle10:before {
    -webkit-animation-delay: -.3s;
    animation-delay: -.3s;
}

.sk-circle .sk-circle11:before {
    -webkit-animation-delay: -.2s;
    animation-delay: -.2s;
}

.sk-circle .sk-circle12:before {
    -webkit-animation-delay: -.1s;
    animation-delay: -.1s;
}

@-webkit-keyframes sk-circleBounceDelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes sk-circleBounceDelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}


/*
 *  Usage:
 *
      <div class="sk-cube-grid">
        <div class="sk-cube sk-cube1"></div>
        <div class="sk-cube sk-cube2"></div>
        <div class="sk-cube sk-cube3"></div>
        <div class="sk-cube sk-cube4"></div>
        <div class="sk-cube sk-cube5"></div>
        <div class="sk-cube sk-cube6"></div>
        <div class="sk-cube sk-cube7"></div>
        <div class="sk-cube sk-cube8"></div>
        <div class="sk-cube sk-cube9"></div>
      </div>
 *
 */

.sk-cube-grid {
    width: 24px;
    height: 24px;
    /*
   * Spinner positions
   * 1 2 3
   * 4 5 6
   * 7 8 9
   */
}

.sk-cube-grid .sk-cube {
    float: left;
    width: 33%;
    height: 33%;
    -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
    animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
    background-color: #4c7ff0;
}

.sk-cube-grid .sk-cube1 {
    -webkit-animation-delay: .2s;
    animation-delay: .2s;
}

.sk-cube-grid .sk-cube2 {
    -webkit-animation-delay: .3s;
    animation-delay: .3s;
}

.sk-cube-grid .sk-cube3 {
    -webkit-animation-delay: .4s;
    animation-delay: .4s;
}

.sk-cube-grid .sk-cube4 {
    -webkit-animation-delay: .1s;
    animation-delay: .1s;
}

.sk-cube-grid .sk-cube5 {
    -webkit-animation-delay: .2s;
    animation-delay: .2s;
}

.sk-cube-grid .sk-cube6 {
    -webkit-animation-delay: .3s;
    animation-delay: .3s;
}

.sk-cube-grid .sk-cube7 {
    -webkit-animation-delay: .0s;
    animation-delay: .0s;
}

.sk-cube-grid .sk-cube8 {
    -webkit-animation-delay: .1s;
    animation-delay: .1s;
}

.sk-cube-grid .sk-cube9 {
    -webkit-animation-delay: .2s;
    animation-delay: .2s;
}

@-webkit-keyframes sk-cubeGridScaleDelay {
    0%,
    70%,
    100% {
        -webkit-transform: scale3D(1, 1, 1);
        transform: scale3D(1, 1, 1);
    }
    35% {
        -webkit-transform: scale3D(0, 0, 1);
        transform: scale3D(0, 0, 1);
    }
}

@keyframes sk-cubeGridScaleDelay {
    0%,
    70%,
    100% {
        -webkit-transform: scale3D(1, 1, 1);
        transform: scale3D(1, 1, 1);
    }
    35% {
        -webkit-transform: scale3D(0, 0, 1);
        transform: scale3D(0, 0, 1);
    }
}


/*
 *  Usage:
 *
      <div class="sk-fading-circle">
        <div class="sk-circle1 sk-circle"></div>
        <div class="sk-circle2 sk-circle"></div>
        <div class="sk-circle3 sk-circle"></div>
        <div class="sk-circle4 sk-circle"></div>
        <div class="sk-circle5 sk-circle"></div>
        <div class="sk-circle6 sk-circle"></div>
        <div class="sk-circle7 sk-circle"></div>
        <div class="sk-circle8 sk-circle"></div>
        <div class="sk-circle9 sk-circle"></div>
        <div class="sk-circle10 sk-circle"></div>
        <div class="sk-circle11 sk-circle"></div>
        <div class="sk-circle12 sk-circle"></div>
      </div>
 *
 */

.sk-fading-circle {
    position: relative;
    width: 24px;
    height: 24px;
}

.sk-fading-circle .sk-circle {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.sk-fading-circle .sk-circle:before {
    display: block;
    width: 15%;
    height: 15%;
    margin: 0 auto;
    content: '';
    -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
    animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
    border-radius: 100%;
    background-color: #4c7ff0;
}

.sk-fading-circle .sk-circle2 {
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
}

.sk-fading-circle .sk-circle3 {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
}

.sk-fading-circle .sk-circle4 {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.sk-fading-circle .sk-circle5 {
    -webkit-transform: rotate(120deg);
    transform: rotate(120deg);
}

.sk-fading-circle .sk-circle6 {
    -webkit-transform: rotate(150deg);
    transform: rotate(150deg);
}

.sk-fading-circle .sk-circle7 {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.sk-fading-circle .sk-circle8 {
    -webkit-transform: rotate(210deg);
    transform: rotate(210deg);
}

.sk-fading-circle .sk-circle9 {
    -webkit-transform: rotate(240deg);
    transform: rotate(240deg);
}

.sk-fading-circle .sk-circle10 {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
}

.sk-fading-circle .sk-circle11 {
    -webkit-transform: rotate(300deg);
    transform: rotate(300deg);
}

.sk-fading-circle .sk-circle12 {
    -webkit-transform: rotate(330deg);
    transform: rotate(330deg);
}

.sk-fading-circle .sk-circle2:before {
    -webkit-animation-delay: -1.1s;
    animation-delay: -1.1s;
}

.sk-fading-circle .sk-circle3:before {
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

.sk-fading-circle .sk-circle4:before {
    -webkit-animation-delay: -.9s;
    animation-delay: -.9s;
}

.sk-fading-circle .sk-circle5:before {
    -webkit-animation-delay: -.8s;
    animation-delay: -.8s;
}

.sk-fading-circle .sk-circle6:before {
    -webkit-animation-delay: -.7s;
    animation-delay: -.7s;
}

.sk-fading-circle .sk-circle7:before {
    -webkit-animation-delay: -.6s;
    animation-delay: -.6s;
}

.sk-fading-circle .sk-circle8:before {
    -webkit-animation-delay: -.5s;
    animation-delay: -.5s;
}

.sk-fading-circle .sk-circle9:before {
    -webkit-animation-delay: -.4s;
    animation-delay: -.4s;
}

.sk-fading-circle .sk-circle10:before {
    -webkit-animation-delay: -.3s;
    animation-delay: -.3s;
}

.sk-fading-circle .sk-circle11:before {
    -webkit-animation-delay: -.2s;
    animation-delay: -.2s;
}

.sk-fading-circle .sk-circle12:before {
    -webkit-animation-delay: -.1s;
    animation-delay: -.1s;
}

@-webkit-keyframes sk-circleFadeDelay {
    0%,
    39%,
    100% {
        opacity: 0;
    }
    40% {
        opacity: 1;
    }
}

@keyframes sk-circleFadeDelay {
    0%,
    39%,
    100% {
        opacity: 0;
    }
    40% {
        opacity: 1;
    }
}

.sk-folding-cube {
    position: relative;
    width: 24px;
    height: 24px;
    -webkit-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
}

.sk-folding-cube .sk-cube {
    position: relative;
    float: left;
    width: 50%;
    height: 50%;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.sk-folding-cube .sk-cube:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both;
    animation: sk-foldCubeAngle 2.4s infinite linear both;
    background-color: #4c7ff0;
}

.sk-folding-cube .sk-cube2 {
    -webkit-transform: scale(1.1) rotateZ(90deg);
    transform: scale(1.1) rotateZ(90deg);
}

.sk-folding-cube .sk-cube3 {
    -webkit-transform: scale(1.1) rotateZ(180deg);
    transform: scale(1.1) rotateZ(180deg);
}

.sk-folding-cube .sk-cube4 {
    -webkit-transform: scale(1.1) rotateZ(270deg);
    transform: scale(1.1) rotateZ(270deg);
}

.sk-folding-cube .sk-cube2:before {
    -webkit-animation-delay: .3s;
    animation-delay: .3s;
}

.sk-folding-cube .sk-cube3:before {
    -webkit-animation-delay: .6s;
    animation-delay: .6s;
}

.sk-folding-cube .sk-cube4:before {
    -webkit-animation-delay: .9s;
    animation-delay: .9s;
}

@-webkit-keyframes sk-foldCubeAngle {
    0%,
    10% {
        -webkit-transform: perspective(140px) rotateX(-180deg);
        transform: perspective(140px) rotateX(-180deg);
        opacity: 0;
    }
    25%,
    75% {
        -webkit-transform: perspective(140px) rotateX(0deg);
        transform: perspective(140px) rotateX(0deg);
        opacity: 1;
    }
    90%,
    100% {
        -webkit-transform: perspective(140px) rotateY(180deg);
        transform: perspective(140px) rotateY(180deg);
        opacity: 0;
    }
}

@keyframes sk-foldCubeAngle {
    0%,
    10% {
        -webkit-transform: perspective(140px) rotateX(-180deg);
        transform: perspective(140px) rotateX(-180deg);
        opacity: 0;
    }
    25%,
    75% {
        -webkit-transform: perspective(140px) rotateX(0deg);
        transform: perspective(140px) rotateX(0deg);
        opacity: 1;
    }
    90%,
    100% {
        -webkit-transform: perspective(140px) rotateY(180deg);
        transform: perspective(140px) rotateY(180deg);
        opacity: 0;
    }
}


/* $jquery-validation
 ------------------------------------------*/

input.valid {
    border-color: #7fc35c;
    box-shadow: none;
}

input.valid:focus {
    border-color: #65ad3f;
    box-shadow: none;
}

input.error {
    border-color: #d26d54;
    box-shadow: none;
}

input.error:focus {
    border-color: #c04f33;
    box-shadow: none;
}

label.error {
    font-weight: 400;
    color: #d26d54;
}


/* $portlets
 ------------------------------------------*/

.draggable-portlets-wrapper .draggable-portlets {
    min-height: 3.125rem;
}

.draggable-portlets-wrapper .draggable-portlets .portlet {
    -webkit-transition: transition, transform 200ms linear;
    -webkit-transition: -webkit-transition, -webkit-transform 200ms linear;
    transition: -webkit-transition, -webkit-transform 200ms linear;
    transition: transition, transform 200ms linear;
    transition: transition, transform 200ms linear, -webkit-transition, -webkit-transform 200ms linear;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
}

.draggable-portlets-wrapper .draggable-portlets .portlet .portlet-heading {
    cursor: pointer;
}

.draggable-portlets-wrapper .draggable-portlets .ui-sortable-placeholder {
    visibility: visible !important;
    border: 0.0625rem dashed rgba(0, 0, 0, 0.1);
    background: rgba(0, 0, 0, 0.01);
}

.draggable-portlets-wrapper.dragging .portlet.ui-sortable-helper {
    opacity: 0.8;
    -webkit-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
}


/* $rickshaw
 ------------------------------------------*/

.rickshaw_graph {
    display: block;
}

.rickshaw_graph .detail .x_label {
    font-family: inherit;
    border-radius: 2px;
}

.rickshaw_graph .detail .item {
    font-family: inherit;
    border-radius: 2px;
}

.rickshaw_graph .x_tick {
    border-left: 0.0625rem dashed rgba(0, 0, 0, 0.2);
}

.rickshaw_graph .x_tick .title {
    font-family: inherit;
    color: black;
}

.rickshaw_annotation_timeline .annotation .content {
    border-radius: 2px;
}

.rickshaw_legend {
    font-family: inherit;
}

.rickshaw_legend li:hover {
    border-radius: 2px;
}

.rickshaw_legend li:active {
    border-radius: 2px;
}


/* $social-button
 ------------------------------------------*/

.btn-icon {
    position: relative;
    overflow: hidden;
    min-height: 2.375rem;
    padding-left: 3.375rem;
    text-overflow: ellipsis;
}

.btn-icon :first-child {
    line-height: 2.375rem;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 2.375rem;
    text-align: center;
    border-right: 1px solid rgba(0, 0, 0, 0.03);
    background: rgba(0, 0, 0, 0.05);
}

.btn-icon.btn-lg {
    min-height: 3.25rem;
}

.btn-icon.btn-lg :first-child {
    line-height: 3.25rem;
    width: 3.25rem;
}

.btn-icon.btn-sm {
    min-height: 2.125rem;
}

.btn-icon.btn-sm :first-child {
    line-height: 2.125rem;
    width: 2.125rem;
}

.btn-lg.btn-icon,
.btn-group-lg>.btn.btn-icon {
    padding-left: 4.25rem;
}

.btn-sm.btn-icon,
.btn-group-sm>.btn.btn-icon {
    padding-left: 2.75rem;
}

.btn-icon-icon {
    width: 2.375rem;
    height: 2.375rem;
    padding: 0;
    padding-left: 0;
    border-width: 1px;
    position: relative;
    overflow: hidden;
    min-height: 2.375rem;
    padding-left: 3.375rem;
    text-overflow: ellipsis;
}

.btn-icon-icon :first-child {
    line-height: 2.375rem;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 2.375rem;
    text-align: center;
    border-right: 1px solid rgba(0, 0, 0, 0.03);
    background: rgba(0, 0, 0, 0.05);
}

.btn-icon-icon.btn-lg {
    min-height: 3.25rem;
}

.btn-icon-icon.btn-lg :first-child {
    line-height: 3.25rem;
    width: 3.25rem;
}

.btn-icon-icon.btn-sm {
    min-height: 2.125rem;
}

.btn-icon-icon.btn-sm :first-child {
    line-height: 2.125rem;
    width: 2.125rem;
}

.btn-icon-icon :first-child {
    width: 100% !important;
    text-align: center;
    border: none;
    background-color: transparent;
}

.btn-icon-icon.btn-lg {
    width: 3.25rem;
    height: 3.25rem;
    padding-right: 0;
    padding-left: 0;
}

.btn-icon-icon.btn-sm {
    width: 2.125rem;
    height: 2.125rem;
    padding-right: 0;
    padding-left: 0;
}

.btn-adn {
    color: rgba(255, 255, 255, 0.8);
    background-color: #d87a68;
    border-color: #d87a68;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-adn:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #ce563f;
    border-color: #cb4f37;
}

.btn-adn:focus,
.btn-adn.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #ce563f;
    border-color: #cb4f37;
}

.btn-adn:active,
.btn-adn.active,
.open>.btn-adn.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #ce563f;
    border-color: #cb4f37;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-adn:active:hover,
.btn-adn:active:focus,
.btn-adn:active.focus,
.btn-adn.active:hover,
.btn-adn.active:focus,
.btn-adn.active.focus,
.open>.btn-adn.dropdown-toggle:hover,
.open>.btn-adn.dropdown-toggle:focus,
.open>.btn-adn.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #b94630;
    border-color: #993a28;
}

.btn-adn.disabled:focus,
.btn-adn.disabled.focus,
.btn-adn:disabled:focus,
.btn-adn:disabled.focus {
    background-color: #d87a68;
    border-color: #d87a68;
}

.btn-adn.disabled:hover,
.btn-adn:disabled:hover {
    background-color: #d87a68;
    border-color: #d87a68;
}

.btn-bitbucket {
    color: rgba(255, 255, 255, 0.8);
    background-color: #205081;
    border-color: #205081;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-bitbucket:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #163758;
    border-color: #143250;
}

.btn-bitbucket:focus,
.btn-bitbucket.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #163758;
    border-color: #143250;
}

.btn-bitbucket:active,
.btn-bitbucket.active,
.open>.btn-bitbucket.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #163758;
    border-color: #143250;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-bitbucket:active:hover,
.btn-bitbucket:active:focus,
.btn-bitbucket:active.focus,
.btn-bitbucket.active:hover,
.btn-bitbucket.active:focus,
.btn-bitbucket.active.focus,
.open>.btn-bitbucket.dropdown-toggle:hover,
.open>.btn-bitbucket.dropdown-toggle:focus,
.open>.btn-bitbucket.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #0f253c;
    border-color: #07111b;
}

.btn-bitbucket.disabled:focus,
.btn-bitbucket.disabled.focus,
.btn-bitbucket:disabled:focus,
.btn-bitbucket:disabled.focus {
    background-color: #205081;
    border-color: #205081;
}

.btn-bitbucket.disabled:hover,
.btn-bitbucket:disabled:hover {
    background-color: #205081;
    border-color: #205081;
}

.btn-dropbox {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1087dd;
    border-color: #1087dd;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-dropbox:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #0d6aad;
    border-color: #0c64a4;
}

.btn-dropbox:focus,
.btn-dropbox.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #0d6aad;
    border-color: #0c64a4;
}

.btn-dropbox:active,
.btn-dropbox.active,
.open>.btn-dropbox.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #0d6aad;
    border-color: #0c64a4;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-dropbox:active:hover,
.btn-dropbox:active:focus,
.btn-dropbox:active.focus,
.btn-dropbox.active:hover,
.btn-dropbox.active:focus,
.btn-dropbox.active.focus,
.open>.btn-dropbox.dropdown-toggle:hover,
.open>.btn-dropbox.dropdown-toggle:focus,
.open>.btn-dropbox.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #0a568c;
    border-color: #073e66;
}

.btn-dropbox.disabled:focus,
.btn-dropbox.disabled.focus,
.btn-dropbox:disabled:focus,
.btn-dropbox:disabled.focus {
    background-color: #1087dd;
    border-color: #1087dd;
}

.btn-dropbox.disabled:hover,
.btn-dropbox:disabled:hover {
    background-color: #1087dd;
    border-color: #1087dd;
}

.btn-facebook {
    color: rgba(255, 255, 255, 0.8);
    background-color: #3b5998;
    border-color: #3b5998;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-facebook:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2d4373;
    border-color: #2a3f6c;
}

.btn-facebook:focus,
.btn-facebook.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2d4373;
    border-color: #2a3f6c;
}

.btn-facebook:active,
.btn-facebook.active,
.open>.btn-facebook.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2d4373;
    border-color: #2a3f6c;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-facebook:active:hover,
.btn-facebook:active:focus,
.btn-facebook:active.focus,
.btn-facebook.active:hover,
.btn-facebook.active:focus,
.btn-facebook.active.focus,
.open>.btn-facebook.dropdown-toggle:hover,
.open>.btn-facebook.dropdown-toggle:focus,
.open>.btn-facebook.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #23345a;
    border-color: #17233c;
}

.btn-facebook.disabled:focus,
.btn-facebook.disabled.focus,
.btn-facebook:disabled:focus,
.btn-facebook:disabled.focus {
    background-color: #3b5998;
    border-color: #3b5998;
}

.btn-facebook.disabled:hover,
.btn-facebook:disabled:hover {
    background-color: #3b5998;
    border-color: #3b5998;
}

.btn-flickr {
    color: rgba(255, 255, 255, 0.8);
    background-color: #ff0084;
    border-color: #ff0084;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-flickr:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #cc006a;
    border-color: #c20064;
}

.btn-flickr:focus,
.btn-flickr.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #cc006a;
    border-color: #c20064;
}

.btn-flickr:active,
.btn-flickr.active,
.open>.btn-flickr.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #cc006a;
    border-color: #c20064;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-flickr:active:hover,
.btn-flickr:active:focus,
.btn-flickr:active.focus,
.btn-flickr.active:hover,
.btn-flickr.active:focus,
.btn-flickr.active.focus,
.open>.btn-flickr.dropdown-toggle:hover,
.open>.btn-flickr.dropdown-toggle:focus,
.open>.btn-flickr.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #a80057;
    border-color: #800042;
}

.btn-flickr.disabled:focus,
.btn-flickr.disabled.focus,
.btn-flickr:disabled:focus,
.btn-flickr:disabled.focus {
    background-color: #ff0084;
    border-color: #ff0084;
}

.btn-flickr.disabled:hover,
.btn-flickr:disabled:hover {
    background-color: #ff0084;
    border-color: #ff0084;
}

.btn-foursquare {
    color: rgba(255, 255, 255, 0.8);
    background-color: #f94877;
    border-color: #f94877;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-foursquare:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #f71752;
    border-color: #f70d4b;
}

.btn-foursquare:focus,
.btn-foursquare.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #f71752;
    border-color: #f70d4b;
}

.btn-foursquare:active,
.btn-foursquare.active,
.open>.btn-foursquare.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #f71752;
    border-color: #f70d4b;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-foursquare:active:hover,
.btn-foursquare:active:focus,
.btn-foursquare:active.focus,
.btn-foursquare.active:hover,
.btn-foursquare.active:focus,
.btn-foursquare.active.focus,
.open>.btn-foursquare.dropdown-toggle:hover,
.open>.btn-foursquare.dropdown-toggle:focus,
.open>.btn-foursquare.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #e30742;
    border-color: #bb0636;
}

.btn-foursquare.disabled:focus,
.btn-foursquare.disabled.focus,
.btn-foursquare:disabled:focus,
.btn-foursquare:disabled.focus {
    background-color: #f94877;
    border-color: #f94877;
}

.btn-foursquare.disabled:hover,
.btn-foursquare:disabled:hover {
    background-color: #f94877;
    border-color: #f94877;
}

.btn-github {
    color: rgba(255, 255, 255, 0.8);
    background-color: #444;
    border-color: #444;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-github:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2b2b2b;
    border-color: #252525;
}

.btn-github:focus,
.btn-github.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2b2b2b;
    border-color: #252525;
}

.btn-github:active,
.btn-github.active,
.open>.btn-github.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2b2b2b;
    border-color: #252525;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-github:active:hover,
.btn-github:active:focus,
.btn-github:active.focus,
.btn-github.active:hover,
.btn-github.active:focus,
.btn-github.active.focus,
.open>.btn-github.dropdown-toggle:hover,
.open>.btn-github.dropdown-toggle:focus,
.open>.btn-github.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #191919;
    border-color: #040404;
}

.btn-github.disabled:focus,
.btn-github.disabled.focus,
.btn-github:disabled:focus,
.btn-github:disabled.focus {
    background-color: #444;
    border-color: #444;
}

.btn-github.disabled:hover,
.btn-github:disabled:hover {
    background-color: #444;
    border-color: #444;
}

.btn-google {
    color: rgba(255, 255, 255, 0.8);
    background-color: #dd4b39;
    border-color: #dd4b39;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-google:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #c23321;
    border-color: #b93120;
}

.btn-google:focus,
.btn-google.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #c23321;
    border-color: #b93120;
}

.btn-google:active,
.btn-google.active,
.open>.btn-google.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #c23321;
    border-color: #b93120;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-google:active:hover,
.btn-google:active:focus,
.btn-google:active.focus,
.btn-google.active:hover,
.btn-google.active:focus,
.btn-google.active.focus,
.open>.btn-google.dropdown-toggle:hover,
.open>.btn-google.dropdown-toggle:focus,
.open>.btn-google.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #a32b1c;
    border-color: #802216;
}

.btn-google.disabled:focus,
.btn-google.disabled.focus,
.btn-google:disabled:focus,
.btn-google:disabled.focus {
    background-color: #dd4b39;
    border-color: #dd4b39;
}

.btn-google.disabled:hover,
.btn-google:disabled:hover {
    background-color: #dd4b39;
    border-color: #dd4b39;
}

.btn-instagram {
    color: rgba(255, 255, 255, 0.8);
    background-color: #3f729b;
    border-color: #3f729b;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-instagram:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #305777;
    border-color: #2d526f;
}

.btn-instagram:focus,
.btn-instagram.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #305777;
    border-color: #2d526f;
}

.btn-instagram:active,
.btn-instagram.active,
.open>.btn-instagram.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #305777;
    border-color: #2d526f;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-instagram:active:hover,
.btn-instagram:active:focus,
.btn-instagram:active.focus,
.btn-instagram.active:hover,
.btn-instagram.active:focus,
.btn-instagram.active.focus,
.open>.btn-instagram.dropdown-toggle:hover,
.open>.btn-instagram.dropdown-toggle:focus,
.open>.btn-instagram.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #26455d;
    border-color: #1a2f40;
}

.btn-instagram.disabled:focus,
.btn-instagram.disabled.focus,
.btn-instagram:disabled:focus,
.btn-instagram:disabled.focus {
    background-color: #3f729b;
    border-color: #3f729b;
}

.btn-instagram.disabled:hover,
.btn-instagram:disabled:hover {
    background-color: #3f729b;
    border-color: #3f729b;
}

.btn-linkedin {
    color: rgba(255, 255, 255, 0.8);
    background-color: #007bb6;
    border-color: #007bb6;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-linkedin:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #005983;
    border-color: #005279;
}

.btn-linkedin:focus,
.btn-linkedin.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #005983;
    border-color: #005279;
}

.btn-linkedin:active,
.btn-linkedin.active,
.open>.btn-linkedin.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #005983;
    border-color: #005279;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-linkedin:active:hover,
.btn-linkedin:active:focus,
.btn-linkedin:active.focus,
.btn-linkedin.active:hover,
.btn-linkedin.active:focus,
.btn-linkedin.active.focus,
.open>.btn-linkedin.dropdown-toggle:hover,
.open>.btn-linkedin.dropdown-toggle:focus,
.open>.btn-linkedin.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #00405f;
    border-color: #002537;
}

.btn-linkedin.disabled:focus,
.btn-linkedin.disabled.focus,
.btn-linkedin:disabled:focus,
.btn-linkedin:disabled.focus {
    background-color: #007bb6;
    border-color: #007bb6;
}

.btn-linkedin.disabled:hover,
.btn-linkedin:disabled:hover {
    background-color: #007bb6;
    border-color: #007bb6;
}

.btn-microsoft {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2672ec;
    border-color: #2672ec;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-microsoft:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #125acd;
    border-color: #1156c4;
}

.btn-microsoft:focus,
.btn-microsoft.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #125acd;
    border-color: #1156c4;
}

.btn-microsoft:active,
.btn-microsoft.active,
.open>.btn-microsoft.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #125acd;
    border-color: #1156c4;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-microsoft:active:hover,
.btn-microsoft:active:focus,
.btn-microsoft:active.focus,
.btn-microsoft.active:hover,
.btn-microsoft.active:focus,
.btn-microsoft.active.focus,
.open>.btn-microsoft.dropdown-toggle:hover,
.open>.btn-microsoft.dropdown-toggle:focus,
.open>.btn-microsoft.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #0f4bac;
    border-color: #0c3b87;
}

.btn-microsoft.disabled:focus,
.btn-microsoft.disabled.focus,
.btn-microsoft:disabled:focus,
.btn-microsoft:disabled.focus {
    background-color: #2672ec;
    border-color: #2672ec;
}

.btn-microsoft.disabled:hover,
.btn-microsoft:disabled:hover {
    background-color: #2672ec;
    border-color: #2672ec;
}

.btn-odnoklassniki {
    color: rgba(255, 255, 255, 0.8);
    background-color: #f4731c;
    border-color: #f4731c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-odnoklassniki:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #d35b0a;
    border-color: #c9570a;
}

.btn-odnoklassniki:focus,
.btn-odnoklassniki.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #d35b0a;
    border-color: #c9570a;
}

.btn-odnoklassniki:active,
.btn-odnoklassniki.active,
.open>.btn-odnoklassniki.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #d35b0a;
    border-color: #c9570a;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-odnoklassniki:active:hover,
.btn-odnoklassniki:active:focus,
.btn-odnoklassniki:active.focus,
.btn-odnoklassniki.active:hover,
.btn-odnoklassniki.active:focus,
.btn-odnoklassniki.active.focus,
.open>.btn-odnoklassniki.dropdown-toggle:hover,
.open>.btn-odnoklassniki.dropdown-toggle:focus,
.open>.btn-odnoklassniki.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #b14c09;
    border-color: #8a3c07;
}

.btn-odnoklassniki.disabled:focus,
.btn-odnoklassniki.disabled.focus,
.btn-odnoklassniki:disabled:focus,
.btn-odnoklassniki:disabled.focus {
    background-color: #f4731c;
    border-color: #f4731c;
}

.btn-odnoklassniki.disabled:hover,
.btn-odnoklassniki:disabled:hover {
    background-color: #f4731c;
    border-color: #f4731c;
}

.btn-openid {
    color: rgba(255, 255, 255, 0.8);
    background-color: #f7931e;
    border-color: #f7931e;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-openid:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #da7908;
    border-color: #d07407;
}

.btn-openid:focus,
.btn-openid.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #da7908;
    border-color: #d07407;
}

.btn-openid:active,
.btn-openid.active,
.open>.btn-openid.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #da7908;
    border-color: #d07407;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-openid:active:hover,
.btn-openid:active:focus,
.btn-openid:active.focus,
.btn-openid.active:hover,
.btn-openid.active:focus,
.btn-openid.active.focus,
.open>.btn-openid.dropdown-toggle:hover,
.open>.btn-openid.dropdown-toggle:focus,
.open>.btn-openid.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #b86607;
    border-color: #905005;
}

.btn-openid.disabled:focus,
.btn-openid.disabled.focus,
.btn-openid:disabled:focus,
.btn-openid:disabled.focus {
    background-color: #f7931e;
    border-color: #f7931e;
}

.btn-openid.disabled:hover,
.btn-openid:disabled:hover {
    background-color: #f7931e;
    border-color: #f7931e;
}

.btn-pinterest {
    color: rgba(255, 255, 255, 0.8);
    background-color: #cb2027;
    border-color: #cb2027;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-pinterest:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #9f191f;
    border-color: #96181d;
}

.btn-pinterest:focus,
.btn-pinterest.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #9f191f;
    border-color: #96181d;
}

.btn-pinterest:active,
.btn-pinterest.active,
.open>.btn-pinterest.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #9f191f;
    border-color: #96181d;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-pinterest:active:hover,
.btn-pinterest:active:focus,
.btn-pinterest:active.focus,
.btn-pinterest.active:hover,
.btn-pinterest.active:focus,
.btn-pinterest.active.focus,
.open>.btn-pinterest.dropdown-toggle:hover,
.open>.btn-pinterest.dropdown-toggle:focus,
.open>.btn-pinterest.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #801419;
    border-color: #5d0f12;
}

.btn-pinterest.disabled:focus,
.btn-pinterest.disabled.focus,
.btn-pinterest:disabled:focus,
.btn-pinterest:disabled.focus {
    background-color: #cb2027;
    border-color: #cb2027;
}

.btn-pinterest.disabled:hover,
.btn-pinterest:disabled:hover {
    background-color: #cb2027;
    border-color: #cb2027;
}

.btn-reddit {
    color: #000;
    background-color: #eff7ff;
    border-color: #eff7ff;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-reddit:hover {
    color: #000;
    background-color: #bcdeff;
    border-color: #b2d8ff;
}

.btn-reddit:focus,
.btn-reddit.focus {
    color: #000;
    background-color: #bcdeff;
    border-color: #b2d8ff;
}

.btn-reddit:active,
.btn-reddit.active,
.open>.btn-reddit.dropdown-toggle {
    color: #000;
    background-color: #bcdeff;
    border-color: #b2d8ff;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-reddit:active:hover,
.btn-reddit:active:focus,
.btn-reddit:active.focus,
.btn-reddit.active:hover,
.btn-reddit.active:focus,
.btn-reddit.active.focus,
.open>.btn-reddit.dropdown-toggle:hover,
.open>.btn-reddit.dropdown-toggle:focus,
.open>.btn-reddit.dropdown-toggle.focus {
    color: #000;
    background-color: #98ccff;
    border-color: #70b7ff;
}

.btn-reddit.disabled:focus,
.btn-reddit.disabled.focus,
.btn-reddit:disabled:focus,
.btn-reddit:disabled.focus {
    background-color: #eff7ff;
    border-color: #eff7ff;
}

.btn-reddit.disabled:hover,
.btn-reddit:disabled:hover {
    background-color: #eff7ff;
    border-color: #eff7ff;
}

.btn-soundcloud {
    color: rgba(255, 255, 255, 0.8);
    background-color: #f50;
    border-color: #f50;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-soundcloud:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #cc4400;
    border-color: #c24100;
}

.btn-soundcloud:focus,
.btn-soundcloud.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #cc4400;
    border-color: #c24100;
}

.btn-soundcloud:active,
.btn-soundcloud.active,
.open>.btn-soundcloud.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #cc4400;
    border-color: #c24100;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-soundcloud:active:hover,
.btn-soundcloud:active:focus,
.btn-soundcloud:active.focus,
.btn-soundcloud.active:hover,
.btn-soundcloud.active:focus,
.btn-soundcloud.active.focus,
.open>.btn-soundcloud.dropdown-toggle:hover,
.open>.btn-soundcloud.dropdown-toggle:focus,
.open>.btn-soundcloud.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #a83800;
    border-color: #802b00;
}

.btn-soundcloud.disabled:focus,
.btn-soundcloud.disabled.focus,
.btn-soundcloud:disabled:focus,
.btn-soundcloud:disabled.focus {
    background-color: #f50;
    border-color: #f50;
}

.btn-soundcloud.disabled:hover,
.btn-soundcloud:disabled:hover {
    background-color: #f50;
    border-color: #f50;
}

.btn-tumblr {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2c4762;
    border-color: #2c4762;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-tumblr:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1c2e3f;
    border-color: #192838;
}

.btn-tumblr:focus,
.btn-tumblr.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1c2e3f;
    border-color: #192838;
}

.btn-tumblr:active,
.btn-tumblr.active,
.open>.btn-tumblr.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1c2e3f;
    border-color: #192838;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-tumblr:active:hover,
.btn-tumblr:active:focus,
.btn-tumblr:active.focus,
.btn-tumblr.active:hover,
.btn-tumblr.active:focus,
.btn-tumblr.active.focus,
.open>.btn-tumblr.dropdown-toggle:hover,
.open>.btn-tumblr.dropdown-toggle:focus,
.open>.btn-tumblr.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #111c26;
    border-color: #04070a;
}

.btn-tumblr.disabled:focus,
.btn-tumblr.disabled.focus,
.btn-tumblr:disabled:focus,
.btn-tumblr:disabled.focus {
    background-color: #2c4762;
    border-color: #2c4762;
}

.btn-tumblr.disabled:hover,
.btn-tumblr:disabled:hover {
    background-color: #2c4762;
    border-color: #2c4762;
}

.btn-twitter {
    color: rgba(255, 255, 255, 0.8);
    background-color: #55acee;
    border-color: #55acee;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-twitter:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2795e9;
    border-color: #1d91e8;
}

.btn-twitter:focus,
.btn-twitter.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2795e9;
    border-color: #1d91e8;
}

.btn-twitter:active,
.btn-twitter.active,
.open>.btn-twitter.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #2795e9;
    border-color: #1d91e8;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-twitter:active:hover,
.btn-twitter:active:focus,
.btn-twitter:active.focus,
.btn-twitter.active:hover,
.btn-twitter.active:focus,
.btn-twitter.active.focus,
.open>.btn-twitter.dropdown-toggle:hover,
.open>.btn-twitter.dropdown-toggle:focus,
.open>.btn-twitter.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1583d7;
    border-color: #126db2;
}

.btn-twitter.disabled:focus,
.btn-twitter.disabled.focus,
.btn-twitter:disabled:focus,
.btn-twitter:disabled.focus {
    background-color: #55acee;
    border-color: #55acee;
}

.btn-twitter.disabled:hover,
.btn-twitter:disabled:hover {
    background-color: #55acee;
    border-color: #55acee;
}

.btn-vimeo {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1ab7ea;
    border-color: #1ab7ea;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-vimeo:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1295bf;
    border-color: #118eb6;
}

.btn-vimeo:focus,
.btn-vimeo.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1295bf;
    border-color: #118eb6;
}

.btn-vimeo:active,
.btn-vimeo.active,
.open>.btn-vimeo.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #1295bf;
    border-color: #118eb6;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-vimeo:active:hover,
.btn-vimeo:active:focus,
.btn-vimeo:active.focus,
.btn-vimeo.active:hover,
.btn-vimeo.active:focus,
.btn-vimeo.active.focus,
.open>.btn-vimeo.dropdown-toggle:hover,
.open>.btn-vimeo.dropdown-toggle:focus,
.open>.btn-vimeo.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #0f7b9f;
    border-color: #0b5e79;
}

.btn-vimeo.disabled:focus,
.btn-vimeo.disabled.focus,
.btn-vimeo:disabled:focus,
.btn-vimeo:disabled.focus {
    background-color: #1ab7ea;
    border-color: #1ab7ea;
}

.btn-vimeo.disabled:hover,
.btn-vimeo:disabled:hover {
    background-color: #1ab7ea;
    border-color: #1ab7ea;
}

.btn-vk {
    color: rgba(255, 255, 255, 0.8);
    background-color: #587ea3;
    border-color: #587ea3;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-vk:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #466482;
    border-color: #435f7b;
}

.btn-vk:focus,
.btn-vk.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #466482;
    border-color: #435f7b;
}

.btn-vk:active,
.btn-vk.active,
.open>.btn-vk.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #466482;
    border-color: #435f7b;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-vk:active:hover,
.btn-vk:active:focus,
.btn-vk:active.focus,
.btn-vk.active:hover,
.btn-vk.active:focus,
.btn-vk.active.focus,
.open>.btn-vk.dropdown-toggle:hover,
.open>.btn-vk.dropdown-toggle:focus,
.open>.btn-vk.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #3a526b;
    border-color: #2b3e50;
}

.btn-vk.disabled:focus,
.btn-vk.disabled.focus,
.btn-vk:disabled:focus,
.btn-vk:disabled.focus {
    background-color: #587ea3;
    border-color: #587ea3;
}

.btn-vk.disabled:hover,
.btn-vk:disabled:hover {
    background-color: #587ea3;
    border-color: #587ea3;
}

.btn-yahoo {
    color: rgba(255, 255, 255, 0.8);
    background-color: #720e9e;
    border-color: #720e9e;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}

.btn-yahoo:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: #500a6f;
    border-color: #490966;
}

.btn-yahoo:focus,
.btn-yahoo.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #500a6f;
    border-color: #490966;
}

.btn-yahoo:active,
.btn-yahoo.active,
.open>.btn-yahoo.dropdown-toggle {
    color: rgba(255, 255, 255, 0.8);
    background-color: #500a6f;
    border-color: #490966;
    background-image: none;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-yahoo:active:hover,
.btn-yahoo:active:focus,
.btn-yahoo:active.focus,
.btn-yahoo.active:hover,
.btn-yahoo.active:focus,
.btn-yahoo.active.focus,
.open>.btn-yahoo.dropdown-toggle:hover,
.open>.btn-yahoo.dropdown-toggle:focus,
.open>.btn-yahoo.dropdown-toggle.focus {
    color: rgba(255, 255, 255, 0.8);
    background-color: #39074e;
    border-color: #1d0429;
}

.btn-yahoo.disabled:focus,
.btn-yahoo.disabled.focus,
.btn-yahoo:disabled:focus,
.btn-yahoo:disabled.focus {
    background-color: #720e9e;
    border-color: #720e9e;
}

.btn-yahoo.disabled:hover,
.btn-yahoo:disabled:hover {
    background-color: #720e9e;
    border-color: #720e9e;
}

.btn,
.fullcalendar .fc-button {
    box-shadow: none;
}


/* $sortable
 ------------------------------------------*/

.sortable-list {
    padding: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.sortable-list li {
    position: relative;
    display: block;
    margin-bottom: -.0625rem;
    padding: .9375rem;
    cursor: move;
    border: 0;
    background-color: #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
}

.sortable-list li:first-child {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
}

.sortable-list li:last-child {
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
}

.sortable-list li.ui-state-highlight {
    width: 100%;
    min-height: 3.125rem;
    list-style: none;
    background: rgba(0, 0, 0, 0.01);
}


/* $summernote
 ------------------------------------------*/

.note-air-editor {
    min-height: 9.375rem;
    padding: 0.75rem;
    background-color: white;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
    border-radius: 2px;
}

.note-editor.note-frame {
    border: 0;
}

.note-editor {
    overflow: visible;
    border: 0;
    background-color: white;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(0, 0, 0, 0.05);
    border-radius: 2px;
}

.note-editor .btn-group .btn {
    box-shadow: none;
}

.note-editor .note-toolbar {
    padding: 0 0.75rem 0.75rem;
    border-color: rgba(0, 0, 0, 0.1);
}

.note-editor .dropdown-menu {
    font-size: inherit;
    overflow: auto;
    margin: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.note-editor .dropdown-menu li>a {
    font-weight: normal;
    line-height: 1.5;
    display: block;
    clear: both;
    width: 100%;
    padding: 3px 20px;
    text-align: inherit;
    white-space: nowrap;
    color: #373a3c;
    border: 0;
    background: none;
}

.note-editor .note-editable {
    min-height: 9.375rem;
    padding: 0.75rem;
    background-color: transparent !important;
}

.note-popover .popover-content>.btn-group,
.panel-heading.note-toolbar>.btn-group {
    margin-top: 0.75rem;
}

.note-icon-caret {
    display: none;
}

.note-popover .popover .popover-content .note-para .dropdown-menu,
.panel-heading.note-toolbar .note-para .dropdown-menu {
    min-width: 257px;
}


/* $sweet-alert
 ------------------------------------------*/

.sweet-alert {
    font-family: inherit;
    visibility: visible !important;
    border-radius: 2px;
}

.sweet-alert h2 {
    color: rgba(0, 0, 0, 0.7);
}

.sweet-alert p {
    font-size: 0.8125rem;
    font-weight: inherit;
    color: rgba(0, 0, 0, 0.7);
}

.sweet-alert button {
    font-size: inherit;
    border-radius: 2px;
}

.sweet-alert .icon.error {
    border-color: #d26d54;
}

.sweet-alert .sa-input-error::before,
.sweet-alert .sa-input-error::after,
.sweet-alert .sa-error-container .icon,
.sweet-alert .icon.error .line {
    background-color: #d26d54;
}

.sweet-alert .icon.warning {
    border-color: #f0c54c;
}

.sweet-alert .icon.warning .body {
    background-color: #f0c54c;
}

.sweet-alert .icon.warning .dot {
    background-color: #f0c54c;
}

.sweet-alert .icon.info {
    border-color: #4cc3f0;
}

.sweet-alert .icon.info::before {
    background-color: #4cc3f0;
}

.sweet-alert .icon.info::after {
    background-color: #4cc3f0;
}

.sweet-alert .icon.success {
    border-color: #7fc35c;
}

.sweet-alert .icon.success .placeholder {
    border-color: rgba(127, 195, 92, 0.2);
}

.sweet-alert .icon.success .line {
    background-color: #7fc35c;
}

.sweet-alert .sa-input-error {
    top: 1.438rem;
}


/* $touch-spin
 ------------------------------------------*/

.bootstrap-touchspin input {
    text-align: center;
}

.btn.bootstrap-touchspin-down,
.btn.bootstrap-touchspin-up {
    font-size: initial !important;
}


/*
 * twitter typeahead
 *
 */

.twitter-typeahead {
    display: block;
    width: 100%;
}

.tt-query {
    box-shadow: inset 0 0.0625rem 1px rgba(0, 0, 0, 0.075);
}

.tt-menu {
    width: 100%;
    margin: -0.0625rem 0 1.5rem;
    padding: 1rem 0;
    border: 0.0625rem solid #4c7ff0;
    background-color: #fff;
    box-shadow: none;
    border-radius: 2px;
}

.tt-suggestion {
    line-height: 1.5rem;
    padding: 0.1875rem 1rem;
}

.tt-suggestion:hover {
    cursor: pointer;
    color: #fff;
    background-color: #4c7ff0;
}

.tt-suggestion.tt-cursor {
    color: #fff;
    background-color: #4c7ff0;
}

.tt-suggestion p {
    margin: 0;
}


/* $Utilities Classes */

.inline {
    display: inline-block;
}

.block {
    display: block;
}

.l-h {
    line-height: 24px;
}


/* Margins */

.m-x-n {
    margin-right: -1rem !important;
    margin-left: -1rem !important;
}

.m-r-n {
    margin-right: -1rem !important;
}

.m-l-n {
    margin-left: -1rem !important;
}

.m-t-n {
    margin-top: -1rem !important;
}

.m-b-n {
    margin-bottom: -1rem !important;
}

.m-x-n-g {
    margin-right: -1.5rem !important;
    margin-left: -1.5rem !important;
}

.m-r-n-g {
    margin-right: -1.5rem !important;
}

.m-l-n-g {
    margin-left: -1.5rem !important;
}

.m-t-n-g {
    margin-top: -1.5rem !important;
}

.m-b-n-g {
    margin-bottom: -1.5rem !important;
}

.m-a-xs {
    margin: 0.5rem 0.5rem !important;
}

.m-t-xs {
    margin-top: 0.5rem !important;
}

.m-r-xs {
    margin-right: 0.5rem !important;
}

.m-b-xs {
    margin-bottom: 0.5rem !important;
}

.m-l-xs {
    margin-left: 0.5rem !important;
}

.m-x-xs {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
}

.m-y-xs {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}

.p-a-xs {
    padding: 0.5rem 0.5rem !important;
}

.p-t-xs {
    padding-top: 0.5rem !important;
}

.p-r-xs {
    padding-right: 0.5rem !important;
}

.p-b-xs {
    padding-bottom: 0.5rem !important;
}

.p-l-xs {
    padding-left: 0.5rem !important;
}

.p-x-xs {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
}

.p-y-xs {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}


/* no background color*/

.no-bg {
    background-color: transparent !important;
}

.shadow {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}

.no-shadow {
    box-shadow: none;
}

.v-align-middle,
.align-middle td,
td.align-middle {
    vertical-align: middle !important;
}


/* Position */

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.lt {
    left: 0;
}

.rt {
    right: 0;
}

.bt {
    bottom: 0;
}

.tp {
    top: 0;
}


/* Radius */

.no-radius {
    border-radius: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.round {
    border-radius: 2px;
}

.circle {
    border-radius: 50%;
}

.brtl {
    border-top-left-radius: 2px;
}

.brtr {
    border-top-right-radius: 2px;
}

.brbl {
    border-bottom-left-radius: 2px;
}

.brbr {
    border-bottom-right-radius: 2px;
}

.brlg {
    border-radius: 4px !important;
}


/* Overflow */

.overflow-hidden {
    overflow: hidden;
}

.overflow-visible {
    overflow: visible;
}

.overflow-auto {
    overflow: auto;
}


/* Borders */

.no-border,
.b-a-0 {
    border: 0;
}

.b-a {
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.b-b {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.b-t {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.b-l {
    border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.b-r {
    border-right: 1px solid rgba(0, 0, 0, 0.1);
}

.b-t-0 {
    border-top: 0;
}

.b-r-0 {
    border-right: 0;
}

.b-b-0 {
    border-bottom: 0;
}

.b-l-0 {
    border-left: 0;
}


/* border colors */

.border-primary {
    border-color: #4c7ff0 !important;
}

.border-default {
    border-color: #e8e8e8 !important;
}

.border-warning {
    border-color: #f0c54c !important;
}

.border-success {
    border-color: #7fc35c !important;
}

.border-info {
    border-color: #4cc3f0 !important;
}

.border-white {
    border-color: white !important;
}

.border-danger {
    border-color: #d26d54 !important;
}

.text-overflow {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}


/*
 *  Demo specific styles.
 *  These can be removed
 */

.wdemo-layout-column {
    -webkit-box-flex: 0;
    -moz-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    -ms-flex-preferred-size: 200px;
    flex-basis: 200px;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

.color-brands {
    display: block;
}

.color-brands::after {
    content: "";
    display: table;
    clear: both;
}

.color-brands.header-brands>div {
    width: 100% !important;
    cursor: pointer;
}

.color-brands>div {
    position: relative;
    display: block;
    float: left;
    width: 10%;
    margin-bottom: 1.5rem;
}

.color-brands .color-brand {
    line-height: 150px;
    position: relative;
    display: inline-block;
    overflow: hidden;
    width: 100%;
    text-align: center;
}

.color-brands .color-brand.header-brand {
    width: 100%;
    height: 30px;
}

.color-brands .color-brand div {
    line-height: 50px;
    width: 100%;
    height: 50px;
}

.color-brands>.color-brand {
    width: 10%;
    height: 100px;
}

@media (max-width: 991px) {
    .color-brands>div {
        width: 25%;
    }
    .color-brands>.color-brand {
        width: 25%;
    }
}

#focusedInput {
    border-color: #84a7f5;
    box-shadow: none;
}

.demo-button .btn {
    min-width: 115px;
    margin-right: 5px;
    margin-bottom: 5px;
}

.demo-button2 button {
    margin: 0 5px 10px 0;
}

.demo-button3 .btn {
    margin-bottom: 10px;
}

.demo-links a {
    display: inline-block;
    min-width: 110px;
}

.fontawesome-list .fa-hover {
    line-height: 24px;
    overflow: hidden;
    margin-bottom: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.fontawesome-list .fa,
.fontawesome-list .material-icons {
    min-width: 30px;
    vertical-align: middle;
}

.fontawesome-list .fa-hover:hover {
    cursor: pointer;
    color: #4c7ff0;
}

.fontawesome-icon-list {
    margin-bottom: 35px;
}

.option {
    display: table;
    width: 100%;
    padding: 0.5rem 0;
}

.option>div {
    display: table-cell;
    vertical-align: middle;
}

.option>div:first-child {
    width: 200px;
}

.demo-skin {
    display: table;
    width: 100%;
    margin-bottom: 30px;
}

.demo-skin span {
    display: table-cell;
    height: 25px;
    border-top: 0.0625rem solid fade(black, 7%);
    border-bottom: 0.0625rem solid fade(black, 7%);
}

.demo-skin span:first-child {
    border-left: 0.0625rem solid fade(black, 7%);
}

.demo-skin span:last-child {
    border-right: 0.0625rem solid fade(black, 7%);
}

.sidebar-skins>div .fa,
.header-skins>div .fa {
    display: none;
    visibility: hidden;
}

.sidebar-skins>div:hover,
.header-skins>div:hover {
    cursor: pointer;
}

.sidebar-skins>div:hover .fa,
.header-skins>div:hover .fa {
    display: inline-block;
    visibility: visible;
}

.sidebar-skins>div.active .fa,
.header-skins>div.active .fa {
    display: inline-block;
    visibility: visible;
    color: #7fc35c;
}

.configuration {
    position: fixed;
    z-index: 99999;
    top: 0;
    bottom: 0;
    right: 0;
    width: 400px;
    margin-left: 0;
    -webkit-transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    transition: transform 200ms cubic-bezier(0.7, 0, 0.3, 1), -webkit-transform 200ms cubic-bezier(0.7, 0, 0.3, 1);
    background: #fff;
    -webkit-transform: translate(100%, 0);
    transform: translate(100%, 0);
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}

.configuration .configuration-options {
    padding: 3rem;
}

.configuration.active {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.configuration-cog {
    line-height: 32px;
    position: absolute;
    z-index: 8;
    top: 150px;
    left: -55px;
    width: 55px;
    height: 55px;
    cursor: pointer;
    text-align: center;
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
    background: #fff;
    color: rgba(0, 0, 0, 0.7);
    box-shadow: -6px 0 10px rgba(0, 0, 0, 0.15);
    line-height: 55px;
}

.configuration-cog img {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    height: 30px;
}

.configuration-options {
    position: relative;
    z-index: 9;
}

.configuration .title {
    padding: 10px 0;
    font-weight: 500;
    text-transform: uppercase;
}

.configuration .option.styles label {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0 5px 0 0;
    padding: 0;
}

.configuration .option.styles input {
    position: absolute;
    top: -100%;
    visibility: hidden;
    opacity: 0;
}

.configuration .option.styles div {
    display: block;
}

.configuration .option.styles div:nth-child(3) {
    height: 9px;
}

.configuration .option.styles div:nth-child(4) {
    height: 1px;
}

.configuration .option.styles div:last-child {
    height: 20px;
}

.configuration .option.styles .fa {
    line-height: 32px;
    position: absolute;
    width: 100%;
    height: 100%;
    text-align: center;
    background: fade(white, 30%);
    opacity: 0;
}

.configuration .option.styles input[type=radio]:checked+.fa {
    opacity: 1;
}

.swatches {
    overflow: hidden;
    margin-bottom: 25px;
    border-radius: 2px;
}

.swatches>div {
    display: table;
    width: 100%;
    min-height: 40px;
    padding: 0 15px;
    table-layout: fixed;
}

.swatches>div:first-child {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
}

.swatches>div:last-child {
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
}

.swatches>div>span {
    display: table-cell;
    vertical-align: middle;
}

.demo-spinners .loader {
    display: table;
    min-height: 70px;
    margin: 1rem auto;
}

.demo-spinkit .card-block>[class^='sk-'] {
    display: block;
    margin: 1rem auto;
}

.theme-options {
    display: inline-block;
    width: 62px;
    height: 62px;
    border: 1px solid #535a6c;
    overflow: hidden;
    position: relative;
}

.theme-options label {
    display: block;
    width: 100%;
    height: 100%;
}

.theme-options label,
.theme-options label:focus,
.theme-options label:hover {
    cursor: pointer;
}

.theme-options label input[type="radio"] {
    position: absolute;
    opacity: 0;
    visibility: hidden;
}

.theme-options label .material-icons {
    position: absolute;
    width: 100%;
    height: 100%;
    -moz-opacity: 0;
    -webkit-opacity: 0;
    opacity: 0;
    text-align: center;
    line-height: 60px;
    left: 0;
    top: 0;
}

.theme-options label input[type=radio]:checked+.material-icons {
    opacity: 1;
}

.theme-options label>div {
    display: block;
    width: 100%;
    height: 100%;
}

.theme-options label>div>span {
    float: left;
}

.theme-options label>div>span:first-child {
    width: 30px;
    height: 60px;
}

.theme-options label>div>span:first-child>span {
    display: block;
}

.theme-options label>div>span:first-child>span:first-child {
    width: 100%;
    height: 10px;
}

.theme-options label>div>span:first-child>span:nth-child(2) {
    width: 100%;
    height: 60px;
}

.theme-options label>div>span:nth-child(2) {
    width: 30px;
    height: 60px;
}

.options label,
.options a {
    position: relative;
    margin-bottom: 0;
    display: block;
    opacity: .3;
}

.options label+div,
.options a+div {
    opacity: .3;
}

.options label.active,
.options label.active+div,
.options a.active,
.options a.active+div {
    opacity: 1;
}

.options label,
.options label:focus,
.options label:hover,
.options a,
.options a:focus,
.options a:hover {
    cursor: pointer;
}

.options label input,
.options a input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.options label .material-icons,
.options a .material-icons {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    text-align: center;
    line-height: 92px;
    left: 0;
    top: 0;
    font-size: 50px;
}

.options label input:checked+.material-icons,
.options a input:checked+.material-icons {
    opacity: 1;
}

.btn-buy {
    position: relative;
    padding: 1rem;
    border-radius: 60px;
    background-color: #262626;
    color: #999;
    text-align: center;
}

.btn-buy:focus,
.btn-buy:hover {
    color: #fff;
}


/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJhcHAuc2NzcyIsImNvcmUvX3NjYWZmb2xkaW5nLnNjc3MiLCJfYXBwLnZhcmlhYmxlcy5zY3NzIiwibWl4aW5zL19mbGV4LnNjc3MiLCIuLi8uLi92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwiY29yZS9fdHlwb2dyYXBoeS5zY3NzIiwibWl4aW5zL2JpLWFwcC9fbWl4aW5zLnNjc3MiLCJjb3JlL19pbWFnZXMuc2NzcyIsIm1peGlucy9fbWlzYy5zY3NzIiwiY29yZS9fc2lkZWJhci1wYW5lbC5zY3NzIiwiLi4vLi4vdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIm1peGlucy9fc2tpbi1nZW5lcmF0b3Iuc2NzcyIsImNvcmUvX2hlYWRlci5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiY29yZS9fYnJhbmQuc2NzcyIsImNvcmUvX21haW4tcGFuZWwuc2NzcyIsImNvcmUvX2Zvb3Rlci5zY3NzIiwiLi4vLi4vdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsImNvcmUvX2NoYXQtcGFuZWwuc2NzcyIsImNvcmUvX29mZnNjcmVlbi5zY3NzIiwiY29yZS9fd2lkZ2V0cy5zY3NzIiwiY29yZS9fbGF5b3V0LW9wdGlvbnMuc2NzcyIsImNvcmUvX21vZGFsLXBhbmVsLnNjc3MiLCJicy9fYWxlcnRzLnNjc3MiLCIuLi8uLi92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwiYnMvX2JyZWFkY3J1bWIuc2NzcyIsImJzL19idXR0b25zLnNjc3MiLCIuLi8uLi92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJicy9fY2FyZHMuc2NzcyIsIi4uLy4uL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmRzLnNjc3MiLCJicy9fZHJvcGRvd24uc2NzcyIsImJzL19jdXN0b20tZm9ybXMuc2NzcyIsImJzL19mb3Jtcy5zY3NzIiwiLi4vLi4vdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsImJzL19pbnB1dC1ncm91cHMuc2NzcyIsImJzL19sYWJlbHMuc2NzcyIsIi4uLy4uL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xhYmVsLnNjc3MiLCJicy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vLi4vdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiYnMvX21vZGFsLnNjc3MiLCJicy9fbmF2YmFyLnNjc3MiLCJicy9fbmF2cy5zY3NzIiwiYnMvX3BhZ2luYXRpb24uc2NzcyIsImJzL19wb3BvdmVyLnNjc3MiLCJicy9fcHJvZ3Jlc3Muc2NzcyIsIi4uLy4uL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Byb2dyZXNzLnNjc3MiLCJicy9fdGFibGUuc2NzcyIsIi4uLy4uL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwibWl4aW5zL2JpLWFwcC9fdmFyaWFibGVzLWx0ci5zY3NzIiwiYnMvX3Rvb2x0aXAuc2NzcyIsImJzL190eXBlLnNjc3MiLCIuLi8uLi92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIi4uLy4uL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsImJzL19ib290c3RyYXAtdWkuc2NzcyIsInBhZ2VzL19sb2dpbnMuc2NzcyIsInBhZ2VzL19sb2Nrc2NyZWVuLnNjc3MiLCJwYWdlcy9fZXJyb3ItcGFnZXMuc2NzcyIsInBhZ2VzL19jYWxlbmRhci5zY3NzIiwicGFnZXMvX21lZGlhLnNjc3MiLCJwYWdlcy9faW52b2ljZS5zY3NzIiwicGFnZXMvX21lc3NhZ2VzLnNjc3MiLCJwYWdlcy9fc29jaWFsLnNjc3MiLCJwYWdlcy9fdGltZWxpbmUuc2NzcyIsInBhZ2VzL19jaGFydHMuc2NzcyIsInBhZ2VzL19wcmljaW5nLnNjc3MiLCJwbHVnaW5zL19qcXVlcnktdWkuc2NzcyIsInBsdWdpbnMvX2Jvb3RzdHJhcC10YWdzLnNjc3MiLCJwbHVnaW5zL19ib290c3RyYXAtdGltZXBpY2tlci5zY3NzIiwicGx1Z2lucy9fYzMuc2NzcyIsInBsdWdpbnMvX2NoYXJ0anMuc2NzcyIsInBsdWdpbnMvX2Nsb2NrcGlja2VyLnNjc3MiLCJwbHVnaW5zL19jb2xvci1waWNrZXIuc2NzcyIsInBsdWdpbnMvX2RhdGVwaWNrZXIuc2NzcyIsInBsdWdpbnMvX2RhdGVyYW5nZXBpY2tlci5zY3NzIiwicGx1Z2lucy9fZHJvcHpvbmUuc2NzcyIsInBsdWdpbnMvX2Vhc3lwaWVjaGFydC5zY3NzIiwicGx1Z2lucy9fZmxvdC5zY3NzIiwicGx1Z2lucy9fZ29vZ2xlbWFwLnNjc3MiLCJwbHVnaW5zL19pbnQtdGVsLWlucHV0LnNjc3MiLCJwbHVnaW5zL19qdmVjdG9ybWFwLnNjc3MiLCJwbHVnaW5zL19sYWJlbGF1dHkuc2NzcyIsInBsdWdpbnMvX211bHRpc2VsZWN0LnNjc3MiLCJwbHVnaW5zL19uZXN0YWJsZS5zY3NzIiwicGx1Z2lucy9fbm90eS5zY3NzIiwicGx1Z2lucy9fc2VsZWN0cy5zY3NzIiwicGx1Z2lucy9fc3BpbmtpdC5zY3NzIiwicGx1Z2lucy9fanF1ZXJ5LXZhbGlkYXRpb24uc2NzcyIsInBsdWdpbnMvX3BvcnRsZXRzLnNjc3MiLCJwbHVnaW5zL19yaWNrc2hhdy5zY3NzIiwicGx1Z2lucy9fc29jaWFsLWJ1dHRvbnMuc2NzcyIsInBsdWdpbnMvX3NvcnRhYmxlLnNjc3MiLCJwbHVnaW5zL19zdW1tZXJub3RlLnNjc3MiLCJwbHVnaW5zL19zd2VldGFsZXJ0LnNjc3MiLCJwbHVnaW5zL190b3VjaHNwaW4uc2NzcyIsInBsdWdpbnMvX3R5cGVhaGVhZC5zY3NzIiwiX3V0aWxpdGllcy5zY3NzIiwiX2RlbW8uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUNBakI7OztFQUdFO0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUE0RUU7QUNqRkY7NkNBQzZDO0FBRTdDO0VBQ0UsOEJBQThCO0VBQzlCLGlCQUFpQjtFQUNqQixtQkFBbUI7RUFDbkIsd1FBQTJQLEVBQUE7O0FBRzdQO0VBQ0UsOEJBQThCO0VBQzlCLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsb0JBQW9CO0VBQ3BCLHVCQUF1QjtFQUN2QixxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixzQ0FBc0M7RUFDdEMsb0NBQW9DO0VBQ3BDLG9DQUFvQztFQUNwQyxtQ0FBbUM7RUFDbkMsMEJBQTBCO0VBQzFCLG1DQUFtQztFQUNuQyxxQkFBcUI7RUFDckIsc0NBQThCO1VBQTlCLDhCQUE4QixFQUMvQjs7QUFDRDtFQUNFLDZCQUEyQixFQUM1Qjs7QUFFRDtFQUNFLGFBQWE7RUFDYixvQkNkYztFRGVkLGtCQUFrQixFQUNuQjs7QUFFRDtFQUNFLGFBQWE7RUFDYixvQkNwQmM7RURxQmQsa0JBQWtCLEVBQ25COztBQUVEO0VBQ0UsWUFBWTtFQUNaLDhCQUE4QixFQVUvQjtFQVpEO0lBSUksWUFBWSxFQUNiO0VBTEg7SUFPSSwwQkMzQmUsRUQ0QmhCO0VBUkg7SUFVSSx1QkFBdUIsRUFDeEI7O0FBR0g7O0VBRUUsWUFBWTtFQUNaLGFBQWE7RUFDYixpQkFBaUIsRUFDbEI7O0FBRUQ7RUFDRSwyS0FBa0Q7RUFDbEQscUJDbEN3QjtFRG1DeEIsMEJDL0JlO0VEZ0NmLDBCQUEwQjtFQUMxQix5Q0FBeUM7RUFDekMsNEJBQTRCO0VBQzVCLCtCQUErQjtFQUMvQiwyQkFBMkI7RUFDM0Isb0NBQW9DO0VBQ3BDLG1DQUFtQztFQUNuQyw2Q0FBNkMsRUFDOUM7O0FBRUQ7RUFDRSxtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsb0JDckZrQjtFQ3lEbEIscUJBQXFCO0VBRXJCLG1CQUFtQjtFQUNuQixxQkFBcUI7RUFDckIsY0FBYztFQXlDWiw4QkFBOEI7RUFDOUIsK0JBQStCO0VBR2pDLHlCRm5CMkI7RUVvQjNCLHdCRnBCMkI7RUVxQjNCLG9CRnJCMkIsRUFDNUI7O0FBRUQ7RUFDRSxpQkFBaUI7RUFDakIsYUFBYSxFQUNkOztBQUVEO0VBQ0Usc0JBQXNCO0VBQ3RCLGVBQWUsRUFNaEI7RUFSRDtJQUlJLGdCQUFnQjtJQUNoQixzQkFBc0I7SUFDdEIsV0FBVyxFR3BGVjs7QUh3Rkw7Ozs7RUFNSSx5Q0FBdUMsRUFDeEM7O0FJckhIOzZDQUM2QztBQUU3Qzs7Ozs7Ozs7Ozs7O0VBWUUsK0pIZ0M2SztFRy9CN0ssaUJId0JvQixFR3ZCckI7O0FBRUQ7O0VBRUUsaUJIcUJvQixFR3BCckI7O0FBRUQ7O0VBRUUsb0JBQW9CLEVBQ3JCOztBQUVEOztFQUVFLGlCQUFpQixFQUNsQjs7QUFFRDtFQUNFLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLFdBQVc7RUMrQlgsYUFBb0IsRURyQnJCO0VBZEQ7SUFPSSw0QkFBNEI7SUFDNUIsa0JBQWtCO0lBQ2xCLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osYUFBUztJQUNULGVBQWUsRUFDaEI7O0FBR0g7RUFDRSxpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLFVBQVU7RUFDVix5Q0FBMEIsRUFDM0I7O0FBRUQ7O0VBRUUsV0FBVztFQUNYLGlCQUFpQixFQUNsQjs7QUFFRDtFQUNFLDBCSHJCZTtFR3NCZiwwQkhyQ2lCLEVHc0NsQjs7QUVsRUQ7NkNBQzZDO0FBRTdDO0VBQ0UsbUJBQW1CO0VBQ25CLHNCQUFzQixFQUN2Qjs7QUFFRDtFQUNFLGlDTEhpQixFS0lsQjs7QUFFRDtFQ2FFLHdCRFp3QixFQUN6Qjs7QUFHRCxXQUFXO0FBRVg7RUFDRSxhQUFhLEVBQ2Q7O0FBRUQ7RUFDRSxhQUFhLEVBQ2Q7O0FBRUQ7RUFDRSxZQUFZLEVBQ2I7O0FBRUQ7RUFDRSxZQUFZLEVBQ2I7O0FBRUQ7RUFDRSxZQUFZLEVBQ2I7O0FBRUQ7RUFDRSxnQkFBZ0IsRUFDakI7O0FBRUQ7RUFDRSxnQkFBZ0IsRUFDakI7O0FFN0NEOzZDQUM2QztBQUU3QztFQUNFLGlCQUFpQjtFQUNqQixZQUFZO0VBQ1osT0FBTztFQUNQLFVBQVU7RUFDVixpQkFBaUI7RUFDakIsdUJBQXVCO0VBQ3ZCLHdDQUE4QjtFQUM5QixnQ0FBc0I7RUFDdEIsMkNBQTBCO0VOa0QxQixxQkFBcUI7RUFFckIsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQixjQUFjO0VBbUNaLDhCQUE4QjtFQUM5Qiw2QkFBNkI7RUFTL0IsNEJNakc4QjtFTmtHOUIsMkJNbEc4QjtFTm1HOUIsdUJNbkc4QjtFSG9INUIsUUduSGE7RUQ4Q2YsNkRDN0M0QztFRDhDNUMscURDOUM0QyxFQThON0M7RUEzT0Q7SUFlSSxXQUFXLEVBQ1o7RUFoQkg7SUFrQkkseUJBQXVCO0lBQ3ZCLG1CQUFtQixFQUNwQjtFQXBCSDtJQXdCSSxnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLFlBQVk7SUFDWixVQUFVO0lBQ1YsMEJQM0JXO0lPNEJYLG9CQUFvQjtJQUNwQix1QkFBdUIsRUFDeEI7RUFsQ0g7SUFvQ0ksbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsbUJBQW1CLEVBK0VwQjtJQXRISDs7TUEwQ00sVUFBVTtNQUNWLFdBQVc7TUFDWCxzQ0FBb0I7Y0FBcEIsOEJBQW9CO01BQ3BCLG9CUDNDYztNTzRDZCxrREFBaUMsRUFPbEM7TUFyREw7O1FBZ0RRLGlCQUFpQjtRQUNqQix1QkFBdUI7UUFDdkIsb0JBQW9CO1FBQ3BCLHNCQUFzQixFQUN2QjtJQXBEUDtNQXVETSw4QkFBOEIsRUFDL0I7SUF4REw7TUEwRE0sbUJBQW1CO01BQ25CLHNCQUFzQjtNQUN0QixZQUFZO01BQ1osMEJQekRTLEVPaUhWO01BckhMO1FBK0RRLDhCQUE4QjtRQUM5QixnQkFBZ0I7UUFDaEIsb0JBQW9CO1FBQ3BCLG1CQUFtQjtRQUNuQixlQUFlO1FBQ2YsbUJBQW1CO1FBQ25CLFNBQVM7UUFDVCxlQUFlO1FBQ2YsWUFBWTtRQUNaLGFBQWE7UUFDYixrQkFBa0I7UUFDbEIsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZiwyQkFBMkI7UUFDM0IsdUJBQXVCO1FBQ3ZCLG9CQUFvQjtRQUNwQix1QkFBdUI7UUFDdkIscUJBQXFCO1FBQ3JCLGtCQUFrQjtRQUNsQixVQUFVO1FIcURkLGNKbklXO1FPZ0ZQLGVBQWU7UUFDZixzQ0FBc0M7UUFDdEMsb0NBQW9DO1FBQ3BDLG9DQUFvQztRQUNwQyxtQ0FBbUM7UUFDbkMsMEJBQTBCO1FBQzFCLG1DQUFtQztRQUNuQyxxQkFBcUI7UUFDckIsc0NBQThCO2dCQUE5Qiw4QkFBOEIsRUFDL0I7TUE3RlA7UUgwQ0Usc0JHcURrQyxFQUk3QjtRQW5HUDtVQWlHVSxjQUFjLEVBQ2Y7TUFsR1Q7O1FBc0dRLHNCQUFzQixFQUN2QjtNQXZHUDtRQXlHUSxlQUFlLEVBQ2hCO01BMUdQO1FBNEdRLHVCQUFxQjtRQUNyQixpQkFBaUI7UUFDakIsaUJBQWlCO1FBQ2pCLG9CQUFvQixFQUNyQjtNQWhIUDtRQWtIUSxvQkFBb0I7UUFDcEIsdUJBQXVCLEVBQ3hCO0VBcEhQO0lBd0hJLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsdUJBQXVCO0lOd0l6QixvQk12SWlCO0lOMElqQixhTTFJaUI7SU4ySWpCLFlNM0lpQjtJTjRJakIsUU01SWlCO0lBQ2Ysa0NBQWtDO0lBQ2xDLG9CQUFvQjtJQUNwQixvQkFBb0IsRUF5R3JCO0lBMU9IO01BbUlNLG1CQUFtQjtNQUNuQixXQUFXO01BQ1gsaUJBQWlCLEVBQ2xCO0lBdElMOztNQXlJTSxlQUFlO01BQ2YsWUFBWTtNQUNaLGlCQUFpQjtNQUNqQixvQkFBb0I7TURsRnhCLGtETnpEeUI7TU0wRHpCLDBDTjFEeUIsRU9xSnRCO01BdEpMOztRQStJUSxzQkFBc0IsRUFDdkI7TUFoSlA7O1FBa0pRLGVBQWU7UUFDZixtQkFBbUI7UUgzRnpCLG9CRzRGZ0MsRUFDM0I7SUFySlA7OztNQTBKTSxzQkFBc0I7TUFDdEIsdUJBQXVCLEVBQ3hCO0lBNUpMO01Ic0NFLG1CR3dIOEIsRUFJM0I7TUFsS0w7UUFnS1EsZUFBZSxFQUNoQjtJQWpLUDtNQW9LTSxnQkFBZ0I7TUFDaEIsaUJBQWlCO01BQ2pCLGVBQWU7TUFDZixxQ0FBc0I7TUFDdEIsOEJBQThCO01EbEpsQyx5QkNtSjZCLEVBQzFCO0lBMUtMO01INkJJLDRDR2dKeUQsRUFDdEQ7SUE5S1A7TUFpTE0sc0JBQXNCO01BQ3RCLHlFQUF1RTtNQUd2RSxpRUFBdUQ7TUFBdkQseURBQXVEO01BQXZELCtHQUF1RDtNSC9HM0QsY0FBcUI7TUFsQnJCLHVCR21JaUMsRUFDOUI7SUF4TEw7TUEwTE0sbUJBQW1CO01BQ25CLGVBQWUsRUE4Q2hCO01Bek9MO1FBNkxRLDhCQUE4QixFQUMvQjtNQTlMUDtRQWdNUSxtQkFBbUI7UUFDbkIsZUFBZTtRQUNmLFlBQVk7UUFDWiwwQlAvTE8sRU9tTVI7UUF2TVA7VUFxTVUsdUJBQXVCLEVBQ3hCO01BdE1UO1FBeU1RLFVBQVU7UUFDVixXQUFXLEVBQ1o7TUEzTVA7UUE2TVEsaUJBQWlCO1FBQ2pCLGNBQWM7UUFDZCx3REFBb0M7UUFFcEMsZ0RBQTRCO1FBQzVCLHdDQUF3QztRQUV4QyxnQ0FBZ0MsRUFDakM7TUFyTlA7O1FEOEJFLG1DQVF5QjtRQUp6QiwyQkFJeUIsRUNtTHBCO01Bek5QOztRQTROUSxtQkFBbUIsRUFDcEI7TUE3TlA7UUErTlEsc0NBQXNCLEVBQ3ZCO01BaE9QO1FBa09RLG1CQUFtQjtRQUNuQixXQUFXO1FBQ1gsaUJBQWlCLEVBQ2xCO01Bck9QO1FIc0NFLHFCSmxDYSxFT29PUjs7QUM5TEg7RURvTUY7SUFDRSxjQUFjO0lBQ2QsYVB2T2lCLEVPNk9sQjtJQVJEOzs7TUFNSSxpQlAzT2UsRU80T2hCO0VBRUgsdUJBQXVCO0VBQ3ZCO0lBRUksZ0JBQWdCLEVBQ2pCO0VBSEg7SUhwTUEsa0JKMUM2QixFT29QMUI7RUFOSDtJQVFJLFlQdFB5QixFT3NUMUI7SUF4RUg7OztNQVlNLGdCUDFQdUIsRU8yUHhCO0lBYkw7TUFlTSxnQkFBZ0I7TUFDaEIsaUJBQWlCO01BQ2pCLG1CQUFtQixFQU9wQjtNQXhCTDtRRHZPQSxpQkFBNkI7UUFDN0Isb0JBQWdDLEVDNlB6QjtRQXZCUDtVQXFCVSxpQkFBaUIsRUFDbEI7SUF0QlQ7TUEyQlEsaUJBQWlCO01BQ2pCLGdCQUFnQixFQUtqQjtNQWpDUDtRQThCVSxjQUFjO1FBQ2QsbUJBQW1CLEVBQ3BCO0lBaENUO01BbUNRLDBCQUF3QjtNQUN4Qiw0QkFBMEI7TUFDMUIsZ0JBQWdCO01BQ2hCLG1CQUFtQixFQUNwQjtJQXZDUDtNQXlDUSxjQUFjLEVBQ2Y7SUExQ1A7O01BOENNLFdBQVcsRUFDWjtJQS9DTDtNQWlETSwwQkFBd0I7TUFDeEIsb0JBQW9CLEVBQ3JCO0lBbkRMOztNQXNETSx5QkFBdUI7TUFDdkIsbUJBQW1CLEVBQ3BCO0lBeERMO01BNERVLGlCQUFpQjtNQUNqQixnQkFBZ0IsRUFDakI7SUE5RFQ7TUFnRVUsY0FBYyxFQUNmO0lBakVUO01BbUVVLFlBQVk7TUFDWixXQUFXLEVBQ1osRUFBQTs7QUN0UVA7RUQ4UUY7SUFDRSxtQkFBbUIsRUFDcEIsRUFBQTs7QUFJSCwwQkFBMEI7QUU1VXhCO0VBQ0Usd0JUd0QyQixFU2hCNUI7RUF6Q0Q7SUFHSSx3QlRzRHlCLEVTL0MxQjtJQVZIO01BS00sMEJUb0NTLEVTaENWO01BVEw7UUFPUSw2QkFBYyxFUGFuQjtFT3BCSDs7SUFhSSwwQlQ0QlcsRVMzQlo7RUFkSDs7SUFrQk0sMEJBQXdCLEVBQ3pCO0VBbkJMOztJQXNCTSxhVHFDZ0IsRVNwQ2pCO0VBdkJMO0lBeUJNLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osT0FBTztJQUNQLFdBQVc7SUFDWCxhQUFhO0lBQ2IsWUFBWTtJQUNaLG9CVFBRO0lJd0daLFFLaEdtQixFQUNoQjtFQWpDTDtJQW1DTSwwQlRNUyxFU0ZWO0lBdkNMO01BcUNRLHdCQUFvQyxFUGpCekM7O0FRdEJMOzZDQUM2QztBQUU3Qzs7RUFFRSxtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLGFBQWE7RUFDYixVQUFVO0VBQ1YsZUFBZTtFQUNmLHNCVkhhO0VVSWIsa0JBQWtCO0VBQ2xCLHFCVkxhO0VVTWIsdUNBQXdCO0VKWXhCLGlCSVhrQjtFQUNsQix3QkFBd0IsRUFnSXpCO0VBNUlEOztJQWNJLHVCQUF1QjtJQUN2QixZQUFZO0lUNENkLHFCQUFxQjtJQUVyQixtQkFBbUI7SUFDbkIscUJBQXFCO0lBQ3JCLGNBQWMsRVM5Q2I7RUFqQkg7O0lBbUJJLHNCQUFzQjtJVDZLeEIsb0JTNUtzQjtJVDhLdEIsa0JTOUtzQjtJVCtLdEIscUJTL0tzQjtJVGdMdEIsYVNoTHNCO0lUaU10QixxQlNoTXdCO0lUaU14QixlU2pNd0I7SVRrTnhCLDhCU2pOMEI7SVRrTjFCLGlCU2xOMEIsRUFFekI7RUF4Qkg7O0lUZ01FLG9CU3RLc0I7SVR3S3RCLGtCU3hLc0I7SVR5S3RCLHFCU3pLc0I7SVQwS3RCLGFTMUtzQjtJVDJMdEIscUJTMUx3QjtJVDJMeEIsZVMzTHdCO0lUNE14QiwyQlMzTXVCO0lUNE12QixjUzVNdUI7SUFFckIsd0RWN0J1QjtJVTZCdkIsZ0RWN0J1QjtJVTZCdkIsb0NWN0J1QjtJVTZCdkIsNEVWN0J1QixFVThCeEI7RUEvQkg7O0lBa0NNLHNCVmxCa0I7SVVtQmxCLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2Ysa0JBQWtCLEVBQ25CO0VBdENMOztJQXdDTSxzQlZ4QmtCO0lVeUJsQixzQkFBc0IsRUFDdkI7RUExQ0w7O0lKaUJFLHVCQUE2QjtJQUM3QiwwQkFBZ0MsRUk0Qi9CO0VBOUNIOztJQWdESSxtQkN0QmdDO0lEdUJoQyxrQkN2QmdDO0lMZGxDLHFCQUE0QjtJQUM1Qix3QkFBK0IsRUlzQzlCO0VBbkRIOztJQXFESSxnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLHNCQUFzQjtJSjNDeEIsc0JBQTRCO0lBQzVCLHlCQUErQjtJRjJDL0IsbUJPOUJrQyxFRGdDakM7RUExREg7O0lKWUUsc0JBQTRCO0lBQzVCLHlCQUErQixFSWdEOUI7RUE3REg7O0lKWUUsc0JBQTRCO0lBQzVCLHlCQUErQixFSW1EOUI7RUFoRUg7O0lKWUUsc0JBQTRCO0lBQzVCLHlCQUErQixFSXNEOUI7RUFuRUg7O0lKWUUsc0JBQTRCO0lBQzVCLHlCQUErQixFSXlEOUI7RUF0RUg7O0lBd0VJLGtCQUFrQjtJQUNsQix1QkFBdUIsRUFDeEI7RUExRUg7O0lBNEVJLFVBQVUsRUFrQ1g7SUE5R0g7O01KaUJFLHNCQUE2QjtNQUM3Qix5QkFBZ0MsRUk2RDdCO0lBL0VMOztNQWlGTSxtQkFBbUIsRUFPcEI7TUF4Rkw7O1FBbUZRLHVCQUF1QixFQUN4QjtNQXBGUDs7UUFzRlEsbUJBQW1CLEVBQ3BCO0lBdkZQOztNQTBGTSxnQkFBZ0I7TUFDaEIsaUJBQWlCO01BQ2pCLDBCQUEwQjtNQUMxQiwyQkFBMkI7TUFDM0IsZ0NWN0NrQjtNVThDbEIsK0JWOUNrQjtNTXZCdEIsa0RJc0V1RCxFQWFwRDtNQTdHTDs7UUFrR1EsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIsY0FBYyxFQU9mO1FBNUdQOztVQXVHVSwwQlY5RVMsRVUrRVY7UUF4R1Q7O1VBMEdVLDhCQUE4QixFQUMvQjtFQTNHVDs7SUFnSEksd0RWL0d1QjtJVStHdkIsZ0RWL0d1QjtJVStHdkIsb0NWL0d1QjtJVStHdkIsNEVWL0d1QixFVXlJeEI7SUExSUg7O01Ba0hNLCtCQUFnQjtNQUNoQixtQkFBbUI7TUp2R3ZCLHFCQUE0QjtNQUM1Qix3QkFBK0I7TUl3RzNCLG1CVnBFa0I7TVVxRWxCLGtCQzVGOEI7TUQ2RjlCLG1CQzdGOEI7TUQ4RjlCLGVBQWUsRUFpQmhCO01BeklMOztRQTBIUSxxQlZ0RmtCO1FVdUZsQix3QkFBd0I7UUFDeEIsV0FBVztRQUNYLGFBQWE7UUFDYixZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYix3QkFBd0IsRUFDekI7TUFsSVA7O1FBb0lRLG1CQUFtQjtRQUNuQixTQUFTO1FBQ1QsV0FBVztRQUNYLGtCQUFrQixFQUNuQjs7QUFNUDtFQUNFLGNBQWMsRUFDZjs7QUFFRDs7RUFHSSxlQUFlO0VBQ2YsOEJBQThCLEVBQy9COztBRjdHQztFRWlIRjs7O0lUcUNBLG9CU2pDMEI7SVRtQzFCLGtCU25DMEI7SVRvQzFCLHFCU3BDMEI7SVRxQzFCLGFTckMwQjtJVHNEMUIscUJTckQ0QjtJVHNENUIsZVN0RDRCO0lUdUU1Qiw4QlN0RThCO0lUdUU5QixpQlN2RThCLEVBRXpCO0VBUkw7OztJVHFDQSxvQlMzQjBCO0lUNkIxQixrQlM3QjBCO0lUOEIxQixxQlM5QjBCO0lUK0IxQixhUy9CMEI7SVRnRDFCLHFCUy9DNEI7SVRnRDVCLGVTaEQ0QjtJVGlFNUIsMkJTaEUyQjtJVGlFM0IsY1NqRTJCLEVBeUJ0QjtJQXJDTDs7O01BZVEsa0JBQWdCO01BQ2hCLHlDQUEwQixFQUMzQjtJQWpCUDs7O01BbUJRLDBCVnRJTztNVXVJUCxtQ0FBaUMsRUFhbEM7TUFqQ1A7OztRQXNCVSwwQlZ6SUssRVUwSU47TUF2QlQ7OztRQXlCVSwwQlY1SUssRVU2SU47TUExQlQ7OztRQTRCVSwwQlYvSUssRVVnSk47TUE3QlQ7OztRQStCVSwwQlZsSkssRVVtSk47SUFoQ1Q7OztNQW1DUSwwQlZ0Sk8sRVV1SlIsRUFBQTs7QUZ4SUw7RUUrSUY7O0lBR0ksY0FBYyxFQUNmLEVBQUE7O0FGbkpEO0VFd0pGO0lBQ0UsaUJBQWlCO0lBQ2pCLGNBQWM7SUFDZCx3REFBb0M7SUFFcEMsZ0RBQTRCO0lBQzVCLHdDQUF3QztJQUV4QyxnQ0FBZ0MsRUFLakM7SUFiRDtNQVVJLGtCQy9MOEI7TURnTTlCLHFCQ2hNOEIsRURpTS9CO0VBRUg7SUFDRSxtQkFBbUIsRUFDcEI7RUFDRDtJQUVJLGVBQWU7SUFDZix1QkFBcUIsRUFDdEI7RUFKSDtJQU1JLGVBQWU7SUFDZixZQUFZLEVBUWI7SUFmSDs7TUFVTSw2QkFBMkIsRUFDNUI7SUFYTDtNTjVLQSxlTXlMNEIsRUFDdkI7RUFkTDtJQWlCSSxpQkFBaUI7SUFDakIsWUFBWTtJQUNaLFVBQVU7SUFDVix1Q0FBcUQ7SUFDckQsd0NBQXNELEVBQ3ZELEVBQUE7O0FGL0xEO0VFb01GO0lBRUksNEJBQTBCLEVBZTNCO0lBakJIO01BSU0sWUFBWTtNQUNaLGtCQ3RPNEIsRURpUDdCO01BaEJMO1FBT1EsZ0JBQWdCLEVBQ2pCO01BUlA7UUFVUSxpQkMzTzBCO1FENE8xQixpQkFBaUIsRUFDbEI7TUFaUDtRQWNRLG1CVnhOYyxFVXlOZixFQUFBOztBQU9ULHlCQUF5QjtBRHBPdkI7RUFDRSxnQ1RvQm9CO0VTbkJwQiwwQlR4QlksRVM0RGI7RUF0Q0Q7Ozs7SUFPSSxnQ1Rja0IsRVNibkI7RUFSSDtJQVdNLHNCVGpDUSxFU2tDVDtFQVpMO0lBZ0JNLGdDVEtnQixFU0pqQjtFQWpCTDtJQW1CTSxnQ1RFZ0IsRVNEakI7RUFwQkw7SUFzQk0sZ0NURGdCLEVTRWpCO0VBdkJMO0lBeUJNLGdDVEpnQixFU0tqQjtFQTFCTDtJQTZCSSxvQlRuRFUsRVNvRFg7RUE5Qkg7Ozs7O0lBb0NJLGFUZGlCLEVTZWxCOztBR3JGTDs2Q0FDNkM7QUFFN0M7RUFDRSxtQkFBbUI7RUFDbkIsc0JBQXNCO0VBQ3RCLG9CQUFvQjtFQUNwQixpQkFBaUIsRUFpQmxCO0VBckJEO0lOaUJFLGtCQUE2QjtJQUM3QixxQkFBZ0M7SUZnRGhDLGFBQW9CO0lBVnBCLG1CUWhENEIsRUFJM0I7SUFaSDtNQVVNLHVCQUF1QixFQUN4QjtFQVhMO0lBY0ksc0JBQXNCO0lOR3hCLGtCQUE2QjtJQUM3QixxQkFBZ0M7SU1GOUIsa0JBQWtCLEVBSW5CO0lBcEJIO01Ba0JNLGlCQUFpQixFQUNsQjs7QUFJTDtFQUNFLGlCWlBxQjtFSXFCckIscUJKbENhO0VJc0NiLHNCSnRDYSxFWXVCZDs7QUM5QkQ7NkNBQzZDO0FBRTdDO0VBQ0Usb0JiQ2tCO0VhQWxCLGlCQUFpQjtFQUNqQix1QkFBdUI7RVorRnJCLDhCQUE4QjtFQUM5Qiw2QkFBNkI7RUFTL0IsNEJZeEc4QjtFWnlHOUIsMkJZekc4QjtFWjBHOUIsdUJZMUc4QjtFWnVEOUIscUJBQXFCO0VBRXJCLG1CQUFtQjtFQUNuQixxQkFBcUI7RUFDckIsY0FBYztFQXNNZCxvQlkvUGU7RVprUWYsYVlsUWU7RVptUWYsWVluUWU7RVpvUWYsUVlwUWU7RUFDZixpQkFBaUI7RUFDakIsbUJBQW1CLEVBYXBCO0VBckJEO0lBVUksdUJBQXVCO0lad0Z2Qiw4QkFBOEI7SUFDOUIsNkJBQTZCO0lBUy9CLDRCWWpHZ0M7SVprR2hDLDJCWWxHZ0M7SVptR2hDLHVCWW5HZ0M7SVpnRGhDLHFCQUFxQjtJQUVyQixtQkFBbUI7SUFDbkIscUJBQXFCO0lBQ3JCLGNBQWM7SUFzTWQsb0JZeFBpQjtJWjJQakIsYVkzUGlCO0laNFBqQixZWTVQaUI7SVo2UGpCLFFZN1BpQixFQU9oQjtJQXBCSDtNQWVNLG1CQUFtQjtNQUNuQix1QkFBdUI7TUFDdkIsZ0JiYlM7TUNpUWIsb0JZblBtQjtNWnNQbkIsb0JZdFAwQjtNWnVQMUIsbUJZdlAwQjtNWndQMUIsZVl4UDBCLEVBQ3ZCOztBQUlMO0VBQ0Usc0JBQW9CLEVBQ3JCOztBQUdELFdBQVc7QUFFWDtFQUNFLHVCQUFzQjtFQUN0QixzQkFBcUIsRUFDdEI7O0FBTUM7RUFDRSxtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLHNCQUFpQztFQUNqQyx1QkFBa0MsRUFDbkM7O0FDL0NIOzZDQUM2QztBQUU3QztFQUNFLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2QsWUFBWTtFQUNaLGlCZGNrQjtFY2JsQixrQmREYSxFY3VEZDtFQTNERDtJQ0RJLFlBQVk7SUFDWixlQUFlO0lBQ2YsWUFBWSxFQUNiO0VERkg7SUFRSSxzQkFBc0I7SUFDdEIsb0JIaUJnQztJR2hCaEMsbUJIZ0JnQztJTGRsQyxxQkFBNEI7SUFDNUIsd0JBQStCO0lGcUQvQixhQUFvQixFVWxEbkI7SUFoQkg7TVJZRSx1QkFBNEI7TUFDNUIsMEJBQStCLEVRRTVCO0VBZkw7SVZzRUUsY0FBcUI7SUFkckIsZ0JVckN5QixFQUN4QjtFQXBCSDtJVndERSxtQk85QmtDLEVHSGpDO0VBdkJIO0lBeUJJLG9CQUFvQjtJQUNwQixlQUFlO0lBQ2YsVUFBVTtJQUNWLGlCQUFpQixFQXlCbEI7SUFyREg7TUE4Qk0sc0JBQXNCO01BQ3RCLHdDQUF3QyxFQXFCekM7TUFwREw7UUFpQ1EscUJBQXFCO1FBQ3JCLGVBQWU7UUFDZixpQmRqQlk7UWNrQlosdUJBQXVCO1FBQ3ZCLHNCQUFzQjtRQUN0QiwwQmRFUztRTXZCZixzQkFBNkI7UUFDN0IseUJBQWdDLEVRMkIzQjtRQTdDUDtVQTBDVSwwQkFBYTtVQUNiLDhCQUE4QixFQUMvQjtNQTVDVDtRVm9ERSxlVUw0QixFQUl2QjtRQW5EUDtVVnNDRSxnQlVXK0IsRUFDeEI7RUFsRFQ7OztJQXlESSx3QkFBd0IsRUFDekI7O0FBR0g7RUFDRSxnQkFBZ0IsRUFDakI7O0FBRUQ7O0VBRUUsY0FBYztFQUNkLG1CQUFtQixFQUNwQjs7QUV4RUQ7NkNBQzZDO0FBRTdDO0VBRUksd0JBQStCO0VBQy9CLDZCQUEyQjtFQUMzQiwyQ0FBMEIsRUFDM0I7O0FBTEg7RUFPSSxpQkFBaUI7RUFDakIsYUFBYTtFQUNiLCtCQUFnQixFQUNqQjs7QUFHSDs7RUFHSSxtQkFBb0IsRUFDckI7O0FBSkg7O0VBTUksWUFBWTtFQUNaLGFBQWEsRUFDZDs7QUFSSDs7RUFVSSxpQmhCTm1CO0VnQk9uQixrQmhCcEJXO0VnQnFCWCxzQ0FBZ0MsRUFrRGpDO0VBOURIOztJRGRJLFlBQVk7SUFDWixlQUFlO0lBQ2YsWUFBWSxFQUNiO0VDV0g7O0lBZU0sc0JBQXNCO0lBQ3RCLFVBQVU7SVZaZCx1QkFBNkI7SUFDN0IsMEJBQWdDLEVVYTdCO0VBbEJMOztJQW9CTSxzQkFBc0I7SUFDdEIsVUFBVTtJVmpCZCx1QkFBNkI7SUFDN0IsMEJBQWdDLEVVcUI3QjtJQTFCTDs7TUF3QlEsZUFBZSxFQUNoQjtFQXpCUDs7OztJVklFLHNCQUE2QjtJQUM3Qix5QkFBZ0MsRVV5QjdCO0VBOUJMOztJQWdDTSxjQUFjLEVBQ2Y7RUFqQ0w7Ozs7SUFvQ00sZ0JBQWdCO0lBQ2hCLG1DQUFtQztJQUNuQyw4QkFBOEI7SUFDOUIsdUJBQXVCO0laZDNCLG1CT1prQztJUGdCbEMsb0JPaEJrQztJTFRsQyxrQkFBNkI7SUFDN0IscUJBQWdDLEVVc0M3QjtFQTNDTDs7SUE2Q00sbUJBQW1CO0lBQ25CLE9BQU87SVo0RVQsU1kzRWtCLEVBQ2pCO0VBaERMOztJQWtETSxnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixPQUFPO0lBQ1AsYUFBYTtJQUNiLGdDQUFnQztJWjJEbEMsUVkxRGlCO0lWdUNuQixhVXRDdUIsRUFJcEI7SUE3REw7O01WK0ZFLGFVcEN5QixFQUNwQjs7QUFLUDtFQUdJLGlCQUFpQjtFQUNqQixhQUFhO0VBQ2IsZ0NBQWdCO0VBQ2hCLGlCQUFnQixFQUNqQjs7QUFQSDtFQVNJLHNCQUFzQixFQUN2Qjs7QUFHSDtFQUNFLDhCQUFzQixFQUN2Qjs7QUFFRDtFQUNFLHFDQUFzQixFQUN2Qjs7QUFFRDtFQUNFLG9CTDFFa0MsRUtpSG5DO0VBeENEO0lBR0ksaUJBQWlCO0lBQ2pCLDBCQUEwQixFQUMzQjtFQUxIOztJQVFJLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsMEJoQnpHVyxFZ0I2R1o7SUFkSDs7TUFZTSwwQkFBYSxFQUNkO0VBYkw7Ozs7O0lBb0JJLHNCQUFzQjtJQUN0QixZQUFZO0lBQ1osYUFBYTtJQUNiLDBCaEJqR2U7SUkrQmpCLHdCWW1FZ0M7SVZyR2hDLG1CVXNHc0IsRUFDckI7RUExQkg7SUE0QkksMEJoQnBHZSxFZ0JxR2hCO0VBN0JIO0lBK0JJLDBCaEJ0R2UsRWdCdUdoQjtFQWhDSDtJQWtDSSwwQmhCeEdjLEVnQnlHZjtFQW5DSDs7SUFzQ0ksMEJoQmhIZSxFZ0JpSGhCOztBQUdIO0VBQ0UsbUJBQW1CO0VBQ25CLGNoQi9Ic0I7RWdCZ0l0QixTQUFTO0VBQ1QsaUJoQmpJc0I7RWdCa0l0QixRQUFRO0VBQ1IsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQixjTDNIa0MsRUs0SG5DOztBQUVEO0VBQ0UsbUJBQW1CO0VBQ25CLFlBQVk7RUFDWix5Q2hCeEppQixFZ0J5SmxCOztBQUVEO0VBQ0UsaUJBQWlCO0VBQ2pCLHVCQUF1QjtFQUN2QixZQUFZO0VBQ1osc0JoQjlKYTtFZ0IrSmIsZ0JBQWdCO0VmeEdoQixxQkFBcUI7RUFFckIsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQixjQUFjLEVlc0dmOztBQUVEO0VmNkhJLHNCQUFzQjtFQUN0QixtQkFBbUI7RUFXckIsK0JleElpQztFZnlJakMsMEJleklpQyxFQUNsQzs7QUFFRDtFWnZIRSxrQk8xQmtDO0VWbUpsQyw2QkFBK0I7RUFFL0IsY2VGZ0I7RWZHaEIsa0JlSGdCO0VmSWhCLFNlSmdCLEVBQ2pCOztBQUVEO0VmSEUsNkJBQStCO0VBRS9CLGNlRWdCO0VmRGhCLGtCZUNnQjtFZkFoQixTZUFnQixFQUNqQjs7QUFFRDtFQUNFLG1CQUFtQjtFQUNuQixVQUFVO0VBQ1YsU0FBUztFQUNULFVBQVU7RUFDVixZQUFZO0VBQ1osMEJoQjVKYztFZ0I2SmQsOEJBQThCO0VBQzlCLGdDQUFnQztFWnJEOUIsWVlzRGlCLEVBQ3BCOztBQUVEO0VaeElFLG1CTzlCa0MsRUt3S25DOztBQUVEO0VBQ0UsbUJBQW1CO0VBQ25CLE9BQU87RUFDUCxTQUFTO0VBQ1QsVUFBVTtFQUNWLFlBQVk7RUFDWiwwQmhCakxpQjtFZ0JrTGpCLGlDQUFpQztFWjVFL0IsV1k2RWdCO0VaaENsQiwrQllpQ3NDLEVBQ3ZDOztBQUVEO0VBQ0UsbUJBQW1CO0VBQ25CLFlBQVk7RWZHWixxQmVGc0I7RWZHdEIsZWVIc0I7RWZuQnRCLG9CZW9Cb0I7RWZsQnBCLGtCZWtCb0I7RWZqQnBCLHFCZWlCb0I7RWZoQnBCLGFlZ0JvQixFQUtyQjtFQVREO0lBTUksZ0JBQWdCO0lBQ2hCLG1CQUFtQixFQUNwQjs7QUFHSDtFQUNFLG1CQUFtQjtFQUNuQix1QkxuTWtDO0VLb01sQywwQmhCck1pQjtFTUhqQixtQlV5TW9CLEVBSXJCO0VBUkQ7SUFNSSxVQUFVLEVBQ1g7O0FBR0g7RUFDRSxtQkFBbUI7RUFDbkIsMEJoQnpNYztFSXdDZCxjQUFxQixFWXNLdEI7RUFQRDtJQUtJLGFBQWEsRUFDZDs7QUFHSDtFQUNFLG1CQUFtQjtFQUNuQixPQUFPO0VBQ1AsWUFBWTtFQUNaLFdBQVc7RUFDWCxlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixxQmhCdE9zQjtFZ0J1T3RCLGFBQWE7RUFDYixVQUFVO0VBQ1YsY0FBYztFVnhPZCxrQkFBNkI7RUFDN0IscUJBQWdDO0VBSWhDLGlCVXFPa0I7RVZqT2xCLGlCVWtPd0IsRUFDekI7O0FBRUQ7RUFDRSwwQkFBMEIsRUFDM0I7O0FBRUQ7RUFDRSxZQUFZLEVBQ2I7O0FBRUQ7RUFDRSx1Qkw5T2tDO0VLK09sQyxlQUFlO0VBQ2YsYUFBYTtFQUNiLGNBQWM7RUFDZCx3QkFBd0I7RVZoUXhCLHNCQUE0QjtFQUM1Qix5QkFBK0I7RUZxRC9CLGFBQW9CLEVZNk1yQjs7QUFFRDtFQUNFLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsdUJMMVBrQztFSzJQbEMsYUFBYTtFQUNiLGNBQWM7RUFDZCx3QkFBd0I7RVYzUXhCLHNCQUE0QjtFQUM1Qix5QkFBK0I7RUZ5RC9CLGNBQXFCLEVZb050Qjs7QUFFRDtFQUNFLG1CQUFtQixFQUNwQjs7QUNqU0Q7NkNBQzZDO0FBRTdDO0VBQ0UsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCxPQUFPO0VBQ1AsU0FBUztFQUNULFVBQVU7RUFDVixRQUFRO0VBQ1IsY0FBYztFQUNkLG1CQUFtQjtFQUNuQixxQ0FBc0IsRUFDdkI7O0FBRUQ7RUFFSSw4QkFBc0IsRUFDdkI7O0FBSEg7RUFLSSxtQkFBbUI7RUFDbkIsY0FBYztFQUNkLGFqQlJ3QjtFTW1CMUIsNENBZ0I4QjtFQVo5QixvQ0FZOEIsRVd0QjdCO0VBWkg7SVhrQkUsMkNBZ0I4QjtJQVo5QixtQ0FZOEIsRVd2QjNCOztBQVhMO0VBY0ksbUJBQW1CO0VBQ25CLFlBQVk7RUFDWixpQkFBaUIsRUFDbEI7O0FBakJIOztFQW9CSSx5RUFBdUU7RUFHdkUsaUVBQXVEO0VBQXZELHlEQUF1RDtFQUF2RCwrR0FBdUQsRUFDeEQ7O0FBeEJIOztFQTJCSSxpQ0FBK0I7RUFDL0IsK0JBQTZCLEVBQzlCOztBQTdCSDtFQStCSSxjQUFjO0VBQ2QsbUJBQW1CLEVBQ3BCOztBQWpDSDtFQW9DTSxlQUFlO0VBQ2Ysb0JBQW9CLEVBQ3JCOztBQXRDTDtFWGtCRSx3Q0FnQjhCO0VBWjlCLGdDQVk4QixFV08zQjs7QUF6Q0w7RVhrQkUsd0NBZ0I4QjtFQVo5QixnQ0FZOEIsRVdXN0I7O0FBR0g7O0VBRUUsdUJBQXFCLEVBQ3RCOztBVHJCRztFU3dCRjtJQUNFLGdEQUE2QyxFQUM5QztFQUNEOztJQUVFLFdBQVc7SUFDWCxtQkFBbUI7SUFDbkIsa0JBQWtCLEVBQ25CLEVBQUE7O0FUbkJDO0VTdUJGO0lBQ0UsZ0RBQTZDLEVBQzlDLEVBQUE7O0FUekJDO0VTNkJGO0lBQ0Usa0NBQWtDLEVBQ25DO0VBQ0Q7SUFDRSxjQUFjO0lBQ2QsYWpCOUV3QjtJTW1CMUIsNENBZ0I4QjtJQVo5QixvQ0FZOEIsRVdnRDdCO0lBUEQ7TVh6REEsMkNBZ0I4QjtNQVo5QixtQ0FZOEIsRVcrQzNCO0VBRUg7SUFDRSxtQkFBbUI7SUFDbkIsaUJBQWlCLEVBQ2xCO0VBQ0Q7O0lBRUUsWUFBWSxFQUNiO0VBQ0Q7SUFDRSxZQUFZO0lBQ1osb0JBQW9CO0lBQ3BCLG1CQUFtQixFQUNwQjtFQUNEOztJQUVFLHlFQUF1RTtJQUd2RSxpRUFBdUQ7SUFBdkQseURBQXVEO0lBQXZELCtHQUF1RCxFQUN4RDtFQUNEO0lBRUksZUFBZTtJQUNmLG9CQUFvQixFQUNyQjtFQUpIO0lYckZBLHdDQWdCOEI7SUFaOUIsZ0NBWThCLEVXNEUzQjtFQUVIO0lYOUZBLHdDQWdCOEI7SUFaOUIsZ0NBWThCLEVXZ0Y3QixFQUFBOztBQ2pJSDs2Q0FDNkM7QUFHN0MsaUJBQWlCO0FBUWpCOztFQUVFLG9CQUFvQjtFQUNwQixZQUFZO0VBQ1osdUJBQXVCLEVBQ3hCOztBQUVEO0VBQ0UsWUFBWTtFQUNaLGFBQWEsRUFtQmQ7RUFyQkQ7SUFJSSxtQkFBbUI7SUFDbkIsWUFBWTtJQUNaLGFBQWE7SUFDYixxQ2xCcEJlO0lrQnFCZixtQkFBbUI7SUFDbkIsdUJBQXVCLEVBQ3hCO0VBVkg7SUFZSSxtQkFBbUI7SUFDbkIsU0FBUztJQUNULGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsbUJBQW1CO0lBQ25CLDBCbEJOZTtJSW9HZixVYzdGaUI7SWRMakIsa0NjTTBDLEVBQzNDOztBQUdIO0VkREUscUJjRTJCLEVBSzVCO0VBTkQ7SUFHSSxrQkFBa0I7SUFDbEIsZUFBZSxFQUNoQjs7QUF4Q3NCO0VBQ3JCLDBCbEJzQmUsRWtCckJoQjs7QUFGc0I7RUFDckIsMEJsQndCYyxFa0J2QmY7O0FBRnNCO0VBQ3JCLDBCbEJ5QlksRWtCeEJiOztBQXFESDtFQUVJLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGdCQUFnQixFQUNqQjs7QUFOSDtFQVFJLFlBQVksRUFDYjs7QUFUSDtFZHJCRSx1QmNnQytCLEVBQzlCOztBQVpIO0VBY0ksZ0JQL0NnQyxFT2dEakM7O0FBZkg7RUFpQkkscUJBQXFCO0VBQ3JCLHVCQUF1QjtFQUN2Qix3QkFBd0I7RUFDeEIsc0JBQXNCO0VBQ3RCLDRDbEI3RWUsRWtCaUZoQjtFQXpCSDtJQXVCTSxVQUFVLEVBQ1g7O0FBeEJMO0VBMkJJLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixhQUFhO0VBQ2Isa0JBQWtCLEVBQ25COztBQWpDSDs7RUFvQ0ksbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixZQUFZO0VBQ1osYUFBYTtFQUNiLHVCQUF1QixFQUN4Qjs7QUF6Q0g7RUEyQ0ksa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixlQUFlO0VBQ2YsMEJBQXFCLEVBQ3RCOztBQS9DSDtFQWlESSxZQUFZLEVBQ2I7O0FBbERIOztFQXFESSwwQkFBYTtFQUNiLDhCQUE4QixFQUMvQjs7QUF2REg7RUF5REksbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQixrQkFBa0IsRUFDbkI7O0FBNURIO0VBOERJLFVBQVU7RUFDVixXQUFXO0VBQ1gsaUJBQWlCLEVBWWxCO0VBNUVIO0lBa0VNLGlCbEJ6SFMsRWtCMEhWO0VBbkVMO0lBcUVNLG1CQUFtQjtJQUNuQixnQkFBd0I7SUFDeEIsc0NBQXNDLEVBQ3ZDO0VBeEVMO0lBMEVNLGlCQUFpQixFQUNsQjs7QUEzRUw7RUE4RUkscUJsQnJJVyxFa0JzSVo7O0FBR0g7RUFDRSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixZQUFZO0VBQ1osYUFBYTtFQUNiLFVBQVU7RUFDVixtQkFBbUI7RWRsRm5CLGFBQW9CO0VFNUNwQixtQllnSW9CLEVBU3JCO0VBbEJEO0lBV0ksZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQixZQUFZO0lBQ1osWUFBWTtJQUNaLGFBQWE7SUFDYix1QkFBdUIsRUFDeEI7O0FDaktIOzZDQUM2QztBQUc3QyxlQUFlO0FBRWY7O0VBR0UsdUJBQXVCO0VBQ3ZCLFlBQVk7RWxCb0RaLHFCQUFxQjtFQUVyQixtQkFBbUI7RUFDbkIscUJBQXFCO0VBQ3JCLGNBQWMsRWtCdERmOztBQUVEO0VsQjBQRSxvQkFYZ0I7RUFjaEIsYUFkZ0I7RUFlaEIsWUFmZ0I7RUFnQmhCLFFBaEJnQjtFQXhKZCw4QkFBOEI7RUFDOUIsNkJBQTZCO0VBUy9CLDRCa0IvRjhCO0VsQmdHOUIsMkJrQmhHOEI7RWxCaUc5Qix1QmtCakc4QixFQUMvQjs7QUFFRDtFbEJ3RkksOEJBQThCO0VBQzlCLCtCQUErQjtFQUdqQyx5QmtCM0YyQjtFbEI0RjNCLHdCa0I1RjJCO0VsQjZGM0Isb0JrQjdGMkIsRUFJNUI7RUFMRDtJQUdJLGdCQUFnQixFQUNqQjs7QUFHSDtFQUNFLHVCQUF1QjtFbEJtQ3ZCLHFCQUFxQjtFQUVyQixtQkFBbUI7RUFDbkIscUJBQXFCO0VBQ3JCLGNBQWMsRWtCckNmOztBQUVEO0VBQ0UsdUJBQXVCO0VsQndPdkIsb0JrQnZPZTtFbEIwT2YsYWtCMU9lO0VsQjJPZixZa0IzT2U7RWxCNE9mLFFrQjVPZSxFQUNoQjs7QUFHRCxXQUFXO0FBQ1g7RUFDRSxhQUFhLEVBQ2Q7O0FBQ0Q7O0VBRUUsK0JBQVksRUFDYjs7QUFFRDs7RUFHSSwrQkFBWSxFQUNiOztBQUlILHVCQUF1QjtBQUV2QjtFQUNFLGVBQWU7RUFDZixZQUFZO0VBQ1osb0JBQW9CLEVBTXJCO0VBVEQ7SUFLSSxvQkFBb0I7SUFDcEIsWUFBWTtJQUNaLG9CQUFvQixFQUNyQjs7QUFJSCxVQUFVO0FBRVY7RUFDRSxtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLGtDQUFrQyxFQUNuQzs7QUFHRCx3QkFBd0I7QUFFeEI7RUFFSSxvQkFBb0I7RUFDcEIsb0JBQW9CLEVBQ3JCOztBQUpIO0VBTUksbUJBQW1CO0VBQ25CLGlCQUFpQixFQUNsQjs7QUFJSCwwQkFBMEI7QUFDMUI7RUFDRSwrQkFBNkI7RUFDN0IsNEJBQTBCO0VBQzFCLDJCQUF5QjtFQUN6Qix3QkFBc0IsRUFDdkI7O0FBQ0Q7RUFDRSxvQkFBb0I7RUFDcEIsZ0JBQWdCLEVBc0JqQjtFQXhCRDtJQUlJLG9CQUFvQjtJQUNwQixvQkFBb0IsRUFDckI7RUFOSDtJQVFJLG9CQUFvQjtJQUNwQixvQkFBb0IsRUFDckI7RUFWSDtJQVlJLDJCQUF5QixFQUMxQjtFQWJIO0lBZUksZ0JBQ0QsRUFBQztFQWhCSjtJQWtCSSxZQUFZO0lBQ1osZ0JBQWdCLEVBQ2pCO0VBcEJIO0lBc0JJLDhCQUE0QixFQUM3Qjs7QUFJSCxpQkFBaUI7QUFFakI7RUFDRSxpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLGtCQUFrQixFQUluQjtFQVBEO0lBS0ksbUJBQW1CLEVBQ3BCOztBQUdIO0VBQ0U7SUFDRSxvQkFBb0IsRUFDckIsRUFBQTs7QUFHSDtFQUNFO0lBQ0Usb0JBQW9CLEVBQ3JCLEVBQUE7O0FBR0g7RUFDRTtJQUNFLG9CQUFvQixFQUNyQixFQUFBOztBQ3ZKSDs2Q0FDNkM7QUFFN0M7RUFDRSx5RUFBdUU7RUFHdkUsaUVBQXVEO0VBQXZELHlEQUF1RDtFQUF2RCwrR0FBdUQ7RWQwQnZELDJDQWdCOEI7RUFaOUIsbUNBWThCLEVjeEMvQjs7QUFFRDtFZHNCRSx3Q0FnQjhCO0VBWjlCLGdDQVk4QixFY3BDL0I7O0FBRUQ7RUFDRSxtQkFBbUI7RUFDbkIsY1RrS21DO0VTaktuQyxPQUFPO0VBQ1AsVUFBVTtFQUNWLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsYUFBYTtFQUNiLFVBQVU7RUFDVixpQkFBaUI7RUFDakIsMEJwQkdpQjtFSThHZixTZ0JoSGMsRUFRakI7RUFuQkQ7SUFhSSxpQ3BCdEJlLEVvQnVCaEI7RUFkSDtJQWdCSSxVQUFVO0lBQ1Ysd0JBQXdCLEVBQ3pCOztBQ2pDSDs2Q0FDNkM7QUFFN0M7RUFDRSxtQnJCZ0RzQixFcUIvQ3ZCOztBQUVEO0VDSkUsMEJYK0lzQztFVzlJdEMsc0JYZ0pxQztFVy9JckMsZVg4SXFDLEVVMUl0QztFQ0ZDO0lBQ0UsMEJBQXdCLEVBQ3pCO0VBQ0Q7SUFDRSxlQUFhLEVBQ2Q7O0FEREg7RUNSRSwwQlhtSnNDO0VXbEp0QyxzQlhvSnFDO0VXbkpyQyxlWGtKcUMsRVUxSXRDO0VDTkM7SUFDRSwwQkFBd0IsRUFDekI7RUFDRDtJQUNFLGVBQWEsRUFDZDs7QURHSDtFQ1pFLDBCWHVKc0M7RVd0SnRDLHNCWHdKcUM7RVd2SnJDLGVYc0pxQyxFVTFJdEM7RUNWQztJQUNFLDBCQUF3QixFQUN6QjtFQUNEO0lBQ0UsZUFBYSxFQUNkOztBRE9IO0VDaEJFLDBCWDJKc0M7RVcxSnRDLHNCWDRKcUM7RVczSnJDLGVYMEpxQyxFVTFJdEM7RUNkQztJQUNFLDBCQUF3QixFQUN6QjtFQUNEO0lBQ0UsZUFBYSxFQUNkOztBQ1pIOzZDQUM2QztBQUU3QztFakJzQkUsbUJOMkJzQixFdUIzQ3ZCO0VBTkQ7SUFHSSx5QlpNdUM7SVlMdkMsYUFBUyxFQUEwQjs7QUNQdkM7NkNBQzZDO0FBRTdDO0VsQnNCRSxtQk4yQnNCO0VNU3RCLHFDa0J4RG1EO0VsQnlEbkQsNkJrQnpEbUQsRUFTcEQ7RUFYRDtJQVFNLFdBQVcsRUFDWjs7QUFLTCwyQkFBMkI7QUFFM0I7Ozs7RWxCTUUsc0JrQkZ1QixFQUl4QjtFQVJEOzs7O0lsQk1FLHNCa0JBeUIsRUFDeEI7O0FBTUg7RUN2QkUsMEJ6QmtDZTtFeUJqQ2YsMEJ6QmtCaUI7RXlCakJqQixzQmQ0Q3NDO0VMMUJ0QyxvRm1CakJ1RSxFRHNCeEU7RUFGRDtJQ2pCSSwwQnpCNEJhO0l5QjNCYiwwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VzQnVCekI7SUNWSSwwQnpCcUJhO0l5QnBCYiwwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFRE9IOztJQ0ZJLDBCekJhYTtJeUJaYiwwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SURaSDs7OztNQ1FNLDBCekJHVztNeUJGWCwwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0VEWEw7SUNrQk0sMEJ6QnRCYTtJeUJ1QlQsc0JkSThCLEVjSG5DO0VEcEJMO0lDc0JNLDBCekIxQmE7SXlCMkJULHNCZEE4QixFVDlDZjs7QXNCMkJ6QjtFQzNCRSxhZGdEb0M7RWMvQ3BDLDBCekJnQmM7RXlCZmQsc0J6QmVjO0VNR2Qsb0ZtQmpCdUUsRUQwQnhFO0VBRkQ7SUNyQkksYWQwQ2tDO0ljekNsQywwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VzQjJCekI7SUNkSSxhZG1Da0M7SWNsQ2xDLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0VEV0g7O0lDTkksYWQyQmtDO0ljMUJsQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SURSSDs7OztNQ0lNLGFkaUJnQztNY2hCaEMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFRFBMO0lDY00sMEJ6QnhCVTtJeUJ5Qk4sc0J6QnpCTSxFeUIwQlg7RURoQkw7SUNrQk0sMEJ6QjVCVTtJeUI2Qk4sc0J6QjdCTSxFRWpCUzs7QXNCK0J6QjtFQy9CRSwwQnpCa0NlO0V5QmpDZix1QmRvRG1DO0VjbkRuQyxpQ3pCTGlCO0VNdUJqQixvRm1CakJ1RSxFRDhCeEU7RUFGRDtJQ3pCSSwwQnpCNEJhO0l5QjNCYiwwQkFWd0I7SUFXcEIsaUNBVmdCLEV2QkVDO0VzQitCekI7SUNsQkksMEJ6QnFCYTtJeUJwQmIsMEJBakJ3QjtJQWtCcEIsaUNBakJnQixFQWtCckI7RURlSDs7SUNWSSwwQnpCYWE7SXlCWmIsMEJBekJ3QjtJQTBCcEIsaUNBekJnQjtJQTJCcEIsdUJBQXVCO0luQkx6QixpRG1CTTBDLEVBU3pDO0lESkg7Ozs7TUNBTSwwQnpCR1c7TXlCRlgsMEJBQXdCO01BQ3BCLGlDQUFvQixFQUN6QjtFREhMO0lDVU0sdUJkWStCO0ljWDNCLGlDekI3Q1MsRXlCOENkO0VEWkw7SUNjTSx1QmRRK0I7SWNQM0IsaUN6QmpEUyxFRUdNOztBc0JtQ3pCO0VDbkNFLGFkb0VvQztFY25FcEMsMEJ6QnVCYztFeUJ0QmQsc0J6QnNCYztFTUpkLG9GbUJqQnVFLEVEa0N4RTtFQUZEO0lDN0JJLGFkOERrQztJYzdEbEMsMEJBVndCO0lBV3BCLHNCQVZnQixFdkJFQztFc0JtQ3pCO0lDdEJJLGFkdURrQztJY3REbEMsMEJBakJ3QjtJQWtCcEIsc0JBakJnQixFQWtCckI7RURtQkg7O0lDZEksYWQrQ2tDO0ljOUNsQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SURBSDs7OztNQ0pNLGFkcUNnQztNY3BDaEMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFRENMO0lDTU0sMEJ6QmpCVTtJeUJrQk4sc0J6QmxCTSxFeUJtQlg7RURSTDtJQ1VNLDBCekJyQlU7SXlCc0JOLHNCekJ0Qk0sRUV4QlM7O0FzQnVDekI7RUN2Q0UsYWR3RG9DO0VjdkRwQywwQnpCb0JpQjtFeUJuQmpCLHNCekJtQmlCO0VNRGpCLG9GbUJqQnVFLEVEc0N4RTtFQUZEO0lDakNJLGFka0RrQztJY2pEbEMsMEJBVndCO0lBV3BCLHNCQVZnQixFdkJFQztFc0J1Q3pCO0lDMUJJLGFkMkNrQztJYzFDbEMsMEJBakJ3QjtJQWtCcEIsc0JBakJnQixFQWtCckI7RUR1Qkg7O0lDbEJJLGFkbUNrQztJY2xDbEMsMEJBekJ3QjtJQTBCcEIsc0JBekJnQjtJQTJCcEIsdUJBQXVCO0luQkx6QixpRG1CTTBDLEVBU3pDO0lESUg7Ozs7TUNSTSxhZHlCZ0M7TWN4QmhDLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RURLTDtJQ0VNLDBCekJwQmE7SXlCcUJULHNCekJyQlMsRXlCc0JkO0VESkw7SUNNTSwwQnpCeEJhO0l5QnlCVCxzQnpCekJTLEVFckJNOztBc0IyQ3pCO0VDM0NFLGFkNERvQztFYzNEcEMsMEJ6QnFCaUI7RXlCcEJqQixzQnpCb0JpQjtFTUZqQixvRm1CakJ1RSxFRDBDeEU7RUFGRDtJQ3JDSSxhZHNEa0M7SWNyRGxDLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXNCMkN6QjtJQzlCSSxhZCtDa0M7SWM5Q2xDLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0VEMkJIOztJQ3RCSSxhZHVDa0M7SWN0Q2xDLDBCQXpCd0I7SUEwQnBCLHNCQXpCZ0I7SUEyQnBCLHVCQUF1QjtJbkJMekIsaURtQk0wQyxFQVN6QztJRFFIOzs7O01DWk0sYWQ2QmdDO01jNUJoQywwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0VEU0w7SUNGTSwwQnpCbkJhO0l5Qm9CVCxzQnpCcEJTLEV5QnFCZDtFREFMO0lDRU0sMEJ6QnZCYTtJeUJ3QlQsc0J6QnhCUyxFRXRCTTs7QXNCK0N6QjtFQy9DRSxhZGdFb0M7RWMvRHBDLDBCekJzQmdCO0V5QnJCaEIsc0J6QnFCZ0I7RU1IaEIsb0ZtQmpCdUUsRUQ4Q3hFO0VBRkQ7SUN6Q0ksYWQwRGtDO0ljekRsQywwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VzQitDekI7SUNsQ0ksYWRtRGtDO0ljbERsQywwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFRCtCSDs7SUMxQkksYWQyQ2tDO0ljMUNsQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SURZSDs7OztNQ2hCTSxhZGlDZ0M7TWNoQ2hDLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RURhTDtJQ05NLDBCekJsQlk7SXlCbUJSLHNCekJuQlEsRXlCb0JiO0VESUw7SUNGTSwwQnpCdEJZO0l5QnVCUixzQnpCdkJRLEVFdkJPOztBc0JvRHpCO0VDQUUsZXpCakNpQjtFeUJrQ2pCLHVCQUF1QjtFQUN2Qiw4QkFBOEI7RUFDOUIsc0J6QnBDaUIsRXdCbUNsQjtFQUZEOztJQ1VJLFlBQVk7SUFDWiwwQnpCNUNlO0l5QjZDWCxzQnpCN0NXLEV5QjhDaEI7RURiSDtJQ2VJLFlBQVk7SUFDWiwwQnpCakRlO0l5QmtEWCxzQnpCbERXLEVFbkJNO0VzQm9EekI7SUN3Qk0sb0JBQXFCLEVBQ3RCO0VEekJMO0lDMkJNLG9CQUFxQixFdkIvRUY7O0FzQndEekI7RUNKRSxlekJuQ2M7RXlCb0NkLHVCQUF1QjtFQUN2Qiw4QkFBOEI7RUFDOUIsc0J6QnRDYyxFd0J5Q2Y7RUFGRDs7SUNNSSxZQUFZO0lBQ1osMEJ6QjlDWTtJeUIrQ1Isc0J6Qi9DUSxFeUJnRGI7RURUSDtJQ1dJLFlBQVk7SUFDWiwwQnpCbkRZO0l5Qm9EUixzQnpCcERRLEVFakJTO0VzQndEekI7SUNvQk0sc0JBQXFCLEVBQ3RCO0VEckJMO0lDdUJNLHNCQUFxQixFdkIvRUY7O0FzQjREekI7RUNSRSwwQnpCdkRpQjtFeUJ3RGpCLHVCQUF1QjtFQUN2Qiw4QkFBOEI7RUFDOUIsaUN6QjFEaUIsRXdCaUVsQjtFQUZEOztJQ0VJLFlBQVk7SUFDWixxQ3pCbEVlO0l5Qm1FWCxpQ3pCbkVXLEV5Qm9FaEI7RURMSDtJQ09JLFlBQVk7SUFDWixxQ3pCdkVlO0l5QndFWCxpQ3pCeEVXLEVFR007RXNCNER6QjtJQ2dCTSxvQ0FBcUIsRUFDdEI7RURqQkw7SUNtQk0sb0NBQXFCLEV2Qi9FRjs7QXNCZ0V6QjtFQ1pFLGV6QjVCYztFeUI2QmQsdUJBQXVCO0VBQ3ZCLDhCQUE4QjtFQUM5QixzQnpCL0JjLEV3QjBDZjtFQUZEOztJQ0ZJLFlBQVk7SUFDWiwwQnpCdkNZO0l5QndDUixzQnpCeENRLEV5QnlDYjtFRERIO0lDR0ksWUFBWTtJQUNaLDBCekI1Q1k7SXlCNkNSLHNCekI3Q1EsRUV4QlM7RXNCZ0V6QjtJQ1lNLHNCQUFxQixFQUN0QjtFRGJMO0lDZU0sc0JBQXFCLEV2Qi9FRjs7QXNCb0V6QjtFQ2hCRSxlekIvQmlCO0V5QmdDakIsdUJBQXVCO0VBQ3ZCLDhCQUE4QjtFQUM5QixzQnpCbENpQixFd0JpRGxCO0VBRkQ7O0lDTkksWUFBWTtJQUNaLDBCekIxQ2U7SXlCMkNYLHNCekIzQ1csRXlCNENoQjtFREdIO0lDREksWUFBWTtJQUNaLDBCekIvQ2U7SXlCZ0RYLHNCekJoRFcsRUVyQk07RXNCb0V6QjtJQ1FNLHNCQUFxQixFQUN0QjtFRFRMO0lDV00sc0JBQXFCLEV2Qi9FRjs7QXNCd0V6QjtFQ3BCRSxlekI5QmlCO0V5QitCakIsdUJBQXVCO0VBQ3ZCLDhCQUE4QjtFQUM5QixzQnpCakNpQixFd0JvRGxCO0VBRkQ7O0lDVkksWUFBWTtJQUNaLDBCekJ6Q2U7SXlCMENYLHNCekIxQ1csRXlCMkNoQjtFRE9IO0lDTEksWUFBWTtJQUNaLDBCekI5Q2U7SXlCK0NYLHNCekIvQ1csRUV0Qk07RXNCd0V6QjtJQ0lNLHNCQUFxQixFQUN0QjtFRExMO0lDT00sc0JBQXFCLEV2Qi9FRjs7QXNCNEV6QjtFQ3hCRSxlekI3QmdCO0V5QjhCaEIsdUJBQXVCO0VBQ3ZCLDhCQUE4QjtFQUM5QixzQnpCaENnQixFd0J1RGpCO0VBRkQ7O0lDZEksWUFBWTtJQUNaLDBCekJ4Q2M7SXlCeUNWLHNCekJ6Q1UsRXlCMENmO0VEV0g7SUNUSSxZQUFZO0lBQ1osMEJ6QjdDYztJeUI4Q1Ysc0J6QjlDVSxFRXZCTztFc0I0RXpCO0lDQU0sc0JBQXFCLEVBQ3RCO0VEREw7SUNHTSxzQkFBcUIsRXZCL0VGOztBc0JnRnpCO0VBQ0UsZXhCaEVjLEV3QmlFZjs7QUFHRCxvQkFBb0I7QUFFcEI7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxlQUFlO0VBQ2YsWUFBWTtFQUNaLGFBQWE7RUFDYixpQkFBaUI7RUFDakIs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STBCZiwyQ3lCYWdEO0V2QnBCbEQsbUJOMkJzQixFNkJEdkI7RUFURDtJQU1JLHNCN0J0Qlk7SU1HZCxpQnVCb0IwQixFQUN6Qjs7QUFJSCxRQUFRO0FBRVI7RUFDRSwwQjdCZGU7RTZCZWYsaUM3QnBEaUI7RTZCcURqQixtQjdCUHNCO0VNdkJ0QixpQnVCK0J3QixFQUN6Qjs7QUFFRDtFQUNFLGtCQUFrQjtFQUNsQiwwQjdCdEJlO0U2QnVCZixpQzdCNURpQjtFNkI2RGpCLDJCQUEwRDtFQUMxRCwwQjdCeENpQixFNkJ5Q2xCOztBQUdEO0V2QjNDRSx1RE5IYyxFNkJnRGY7O0FBRUQ7RUFDRSxtQkFBbUIsRUFDcEI7O0FDOUVEOzZDQUM2QztBQUU3QztFQUNFLGlCOUJxQ3NCLEU4QnBDdkI7O0FBRUQ7RUFDRSxpQkFBaUIsRUFDbEI7O0FBRUQ7RUFDRSxpQzlCTmlCO0VNbUJqQixtQk4yQnNCO0VNdkJ0QixpQndCZndCLEVBWXpCO0VBZkQ7SUFLSSw2Qm5CbUVvQyxFbUJsRXJDO0VBTkg7SUFLSSw2Qm5CbUVvQyxFbUJsRXJDO0VBTkg7SUFLSSw2Qm5CbUVvQyxFbUJsRXJDO0VBTkg7SUFLSSw2Qm5CbUVvQyxFbUJsRXJDO0VBTkg7SUFTSSwwQjlCUWUsRThCUGhCO0VBVkg7SUFZSSxzQm5COERvQztJTHhEdEMsaUJ3QkwwQixFQUN6Qjs7QUFJSCwwQkFBMEI7QUN0QnhCOzs7Ozs7Ozs7O0VBVUUsZS9CYWUsRStCWmhCOztBQUVEO0VBQ0Usc0IvQlNlLEUrQkRoQjs7QUFHRDtFQUNFLGUvQkhlO0UrQklmLHNCL0JKZTtFK0JLZiwwQkFBeUIsRUFDMUI7O0FBRUQ7RUFDRSxlL0JUZSxFK0JVaEI7O0FBakNEOzs7Ozs7Ozs7O0VBVUUsZS9CY2UsRStCYmhCOztBQUVEO0VBQ0Usc0IvQlVlLEUrQkZoQjs7QUFHRDtFQUNFLGUvQkZlO0UrQkdmLHNCL0JIZTtFK0JJZix3QkFBeUIsRUFDMUI7O0FBRUQ7RUFDRSxlL0JSZSxFK0JTaEI7O0FBakNEOzs7Ozs7Ozs7O0VBVUUsZS9CZWMsRStCZGY7O0FBRUQ7RUFDRSxzQi9CV2MsRStCSGY7O0FBR0Q7RUFDRSxlL0JEYztFK0JFZCxzQi9CRmM7RStCR2QsMEJBQXlCLEVBQzFCOztBQUVEO0VBQ0UsZS9CUGMsRStCUWY7O0FDeENIOzZDQUM2QztBQUU3QztFQUNFLFdBQVcsRUFDWjs7QUFFRDtFQUNFLDZCaEM0Q3NCLEVnQzNDdkI7O0FBRUQ7RUFDRSwrQmhDd0NzQixFZ0N2Q3ZCOztBQUVEOztFQUVFLHVCQUF1QixFQUN4Qjs7QUFFRDtFQUNFLDBCaENzQmU7RWdDckJmLGlDaENoQmlCO0VnQ2lCakIscUNyQitEc0M7RUw3RHRDLG1CTjJCc0IsRWdDM0J2Qjs7QUN6QkQ7NkNBQzZDO0FBRTdDO0VBQ0MsaUJqQ3NDcUI7RU1qQnBCLG1CTjJCc0IsRWlDOUN2Qjs7QUFFRDtFQUNFLDBCakNrQ2U7RWtDeENmLDBCbEN5QmlCLEVpQ2pCbEI7RUFIRDtJQ0RNLDBCQUF3QixFaENlekI7O0ErQlRMO0VDVkUsMEJsQ3VCYyxFaUNYZjtFQUZEO0lDTk0sMEJBQXdCLEVoQ2V6Qjs7QStCTEw7RUNkRSwwQmxDMkJpQixFaUNYbEI7RUFGRDtJQ1ZNLDBCQUF3QixFaENlekI7O0ErQkRMO0VDbEJFLDBCbEM4QmMsRWlDVmY7RUFGRDtJQ2RNLDBCQUF3QixFaENlekI7O0ErQkdMO0VDdEJFLDBCbEM0QmlCLEVpQ0psQjtFQUZEO0lDbEJNLDBCQUF3QixFaENlekI7O0ErQk9MO0VDMUJFLDBCbEM2QmdCLEVpQ0RqQjtFQUZEO0lDdEJNLDBCQUF3QixFaENlekI7O0FpQ3RCTDs2Q0FDNkM7QUFDN0M7RUFDRSxVQUFVO0VBQ1YseUVBQXlELEVBUzFEO0VBWEQ7SUFJSSw2Qm5DOENvQjtJbUM3Q3BCLDRCbkM2Q29CLEVtQzVDckI7RUFOSDtJQVFJLGdDbkMwQ29CO0ltQ3pDcEIsK0JuQ3lDb0IsRW1DeENyQjs7QUFHSDs7RUFFRSw2QkFBeUIsRUFDMUI7O0FDZkM7RUFDRSxlRGdCMEU7RUNmMUUsMEJEZTZDLEVDZDlDOztBQUVEOztFQUNFLGVEVzBFLEVDTzNFO0VBbkJEOztJQUlJ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RUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0IsRS9DYXpCOztBK0NuQkg7RUFDRSx1QkFBdUI7RUFDdkIscUNBQW1DLEVBQ3BDOztBQUNEO0VBRUksMEJBQXdCLEUvQ2F6Qjs7QStDbkJIO0VBQ0UsdUJBQXVCO0VBQ3ZCLHFDQUFtQyxFQUNwQzs7QUFDRDtFQUVJLDBCQUF3QixFL0NhekI7O0ErQ25CSDtFQUNFLHVCQUF1QjtFQUN2QixxQ0FBbUMsRUFDcEM7O0FBQ0Q7RUFFSSwwQkFBd0Is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TTZDdEJIOzs7Ozs7Ozs7Ozs7O1E3Q2tCTSxhZGlCZ0M7UWNoQmhDLDBCQUF3QjtRQUNwQixzQkFBb0IsRUFDekI7STZDckJMO003QzRCTSwwQnpCeEJVO015QnlCTixzQnpCekJNLEV5QjBCWDtJNkM5Qkw7TTdDZ0NNLDBCekI1QlU7TXlCNkJOLHNCekI3Qk0sRUVqQlM7RW9FYXpCO0loRUdFLG1CTjJCc0IsRXNFZ0JuQjtJQTlDTDtNQTBDUSxtQkFBbUI7TUFDbkIsZ0RBQStCO003Q3hEckMsYWRnRG9DO01jL0NwQywwQnpCZ0JjO015QmZkLHNCekJlYztNTUdkLG9GbUJqQnVFLEU2Q3VEbEU7TUE3Q1A7UTdDUEksYWQwQ2tDO1FjekNsQywwQkFWd0I7UUFXcEIsc0JBVmdCLEV2QkVDO01vRWF6QjtRN0NBSSxhZG1Da0M7UWNsQ2xDLDBCQWpCd0I7UUFrQnBCLHNCQWpCZ0IsRUFrQnJCO002Q0hIOzs7OztRN0NRSSxhZDJCa0M7UWMxQmxDLDBCQXpCd0I7UUEwQnBCLHNCQXpCZ0I7UUEyQnBCLHVCQUF1QjtRbkJMekIsaURtQk0wQyxFQVN6QztRNkN0Qkg7Ozs7Ozs7Ozs7Ozs7VTdDa0JNLGFkaUJnQztVY2hCaEMsMEJBQXdCO1VBQ3BCLHNCQUFvQixFQUN6QjtNNkNyQkw7UTdDNEJNLDBCekJ4QlU7UXlCeUJOLHNCekJ6Qk0sRXlCMEJYO002QzlCTDtRN0NnQ00sMEJ6QjVCVTtReUI2Qk4sc0J6QjdCTSxFRWpCUzs7QW9FK0R6QjtFQUVJLDJCdEV0Qm9CLEVzRXVCckI7O0FBSEg7RUFLSSwyQkFBMEQsRUFDM0Q7O0FBTkg7RUFRSSxpQ3RFMUVlO0VzRTJFZixxQzNES29DLEUyREpyQzs7QUNsRkg7NkNBQzZDO0FBRTdDO0VBQ0UscUJ2RW1Dd0I7RXVFbEN4QixjQUFjO0VBQ2Qsb0JBQW9CO0VBQ3BCLHNCQUFzQjtFakV3R3RCLFdpRXZHa0I7RWpFaUJsQixtQk4yQnNCO0VNdkJ0Qix3Q2lFbkJpRCxFQWlEbEQ7RUF4REQ7SUFTSSwwQnZFK0JhO0l1RTlCYixpQ3ZFUGU7SXVFUWYsOEJBQThCO0lq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TSwwQjhEbUN1QjtJOURsQ25CLHNCOERrQ21CLEU5RGpDeEI7RThEZ0NMO0k5RDlCTSwwQjhEK0J1QjtJOUQ5Qm5CLHNCOEQ4Qm1CLEVyRjVFSjs7QXFGK0V6QjtFOUQvRUUsZ0M4RHVFdUM7RTlEdEV2QywwQjhEK0UyQjtFOUQ5RTNCLHNCOEQ4RTJCO0VqRjVEM0Isb0ZtQmpCdUUsRThEOEV4RTtFQUZEO0k5RHpFSSxnQzhEaUVxQztJOURoRXJDLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXFGK0V6QjtJOURsRUksZ0M4RDBEcUM7STlEekRyQywwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFOEQrREg7O0k5RDFESSxnQzhEa0RxQztJOURqRHJDLDBCQXpCd0I7SUEwQnBCLHNCQXpCZ0I7SUEyQnBCLHVCQUF1QjtJbkJMekIsaURtQk0wQyxFQVN6QztJOEQ0Q0g7Ozs7TTlEaERNLGdDOER3Q21DO005RHZDbkMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFOEQ2Q0w7STlEdENNLDBCOER1Q3VCO0k5RHRDbkIsc0I4RHNDbUIsRTlEckN4QjtFOERvQ0w7STlEbENNLDBCOERtQ3VCO0k5RGxDbkIsc0I4RGtDbUIsRXJGaEZKOztBcUZtRnpCO0U5RG5GRSxnQzhEdUV1QztFOUR0RXZDLDBCOERtRjJCO0U5RGxGM0Isc0I4RGtGMkI7RWpGaEUzQixvRm1CakJ1RSxFOERrRnhFO0VBRkQ7STlEN0VJLGdDOERpRXFDO0k5RGhFckMsMEJBVndCO0lBV3BCLHNCQVZnQixFdkJFQztFcUZtRnpCO0k5RHRFSSxnQzhEMERxQztJOUR6RHJDLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0U4RG1FSDs7STlEOURJLGdDOERrRHFDO0k5RGpEckMsMEJBekJ3QjtJQTBCcEIsc0JBekJnQjtJQTJCcEIsdUJBQXVCO0luQkx6QixpRG1CTTBDLEVBU3pDO0k4RGdESDs7OztNOURwRE0sZ0M4RHdDbUM7TTlEdkNuQywwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0U4RGlETDtJOUQxQ00sMEI4RDJDdUI7STlEMUNuQixzQjhEMENtQixFOUR6Q3hCO0U4RHdDTDtJOUR0Q00sMEI4RHVDdUI7STlEdENuQixzQjhEc0NtQixFckZwRko7O0FxRnVGekI7RTlEdkZFLGdDOER1RXVDO0U5RHRFdkMsMEI4RHVGMkI7RTlEdEYzQixzQjhEc0YyQjtFakZwRTNCLG9GbUJqQnVFLEU4RHNGeEU7RUFGRDtJOURqRkksZ0M4RGlFcUM7STlEaEVyQywwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VxRnVGekI7STlEMUVJLGdDOEQwRHFDO0k5RHpEckMsMEJBakJ3QjtJQWtCcEIsc0JBakJnQixFQWtCckI7RThEdUVIOztJOURsRUksZ0M4RGtEcUM7STlEakRyQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SThEb0RIOzs7O005RHhETSxnQzhEd0NtQztNOUR2Q25DLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RThEcURMO0k5RDlDTSwwQjhEK0N1QjtJOUQ5Q25CLHNCOEQ4Q21CLEU5RDdDeEI7RThENENMO0k5RDFDTSwwQjhEMkN1QjtJOUQxQ25CLHNCOEQwQ21CLEVyRnhGSjs7QXFGMkZ6QjtFOUQzRkUsZ0M4RHVFdUM7RTlEdEV2QywwQjhEMkYyQjtFOUQxRjNCLHNCOEQwRjJCO0VqRnhFM0Isb0ZtQmpCdUUsRThEMEZ4RTtFQUZEO0k5RHJGSSxnQzhEaUVxQztJOURoRXJDLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXFGMkZ6QjtJOUQ5RUksZ0M4RDBEcUM7STlEekRyQywwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFOEQyRUg7O0k5RHRFSSxnQzhEa0RxQztJOURqRHJDLDBCQXpCd0I7SUEwQnBCLHNCQXpCZ0I7SUEyQnBCLHVCQUF1QjtJbkJMekIsaURtQk0wQyxFQVN6QztJOER3REg7Ozs7TTlENURNLGdDOER3Q21DO005RHZDbkMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFOER5REw7STlEbERNLDBCOERtRHVCO0k5RGxEbkIsc0I4RGtEbUIsRTlEakR4QjtFOERnREw7STlEOUNNLDBCOEQrQ3VCO0k5RDlDbkIsc0I4RDhDbUIsRXJGNUZKOztBcUYrRnpCO0U5RC9GRSxnQzhEdUV1QztFOUR0RXZDLDBCOEQrRjJCO0U5RDlGM0Isc0I4RDhGMkI7RWpGNUUzQixvRm1CakJ1RSxFOEQ4RnhFO0VBRkQ7STlEekZJLGdDOERpRXFDO0k5RGhFckMsMEJBVndCO0lBV3BCLHNCQVZnQixFdkJFQztFcUYrRnpCO0k5RGxGSSxnQzhEMERxQztJOUR6RHJDLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0U4RCtFSDs7STlEMUVJLGdDOERrRHFDO0k5RGpEckMsMEJBekJ3QjtJQTBCcEIsc0JBekJnQjtJQTJCcEIsdUJBQXVCO0luQkx6QixpRG1CTTBDLEVBU3pDO0k4RDRESDs7OztNOURoRU0sZ0M4RHdDbUM7TTlEdkNuQywwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0U4RDZETDtJOUR0RE0sMEI4RHVEdUI7STlEdERuQixzQjhEc0RtQixFOURyRHhCO0U4RG9ETDtJOURsRE0sMEI4RG1EdUI7STlEbERuQixzQjhEa0RtQixFckZoR0o7O0FxRm1HekI7RTlEbkdFLGdDOER1RXVDO0U5RHRFdkMsdUI4RG1Hd0I7RTlEbEd4QixtQjhEa0d3QjtFakZoRnhCLG9GbUJqQnVFLEU4RGtHeEU7RUFGRDtJOUQ3RkksZ0M4RGlFcUM7STlEaEVyQywwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VxRm1HekI7STlEdEZJLGdDOEQwRHFDO0k5RHpEckMsMEJBakJ3QjtJQWtCcEIsc0JBakJnQixFQWtCckI7RThEbUZIOztJOUQ5RUksZ0M4RGtEcUM7STlEakRyQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SThEZ0VIOzs7O005RHBFTSxnQzhEd0NtQztNOUR2Q25DLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RThEaUVMO0k5RDFETSx1QjhEMkRvQjtJOUQxRGhCLG1COEQwRGdCLEU5RHpEckI7RThEd0RMO0k5RHRETSx1QjhEdURvQjtJOUR0RGhCLG1COERzRGdCLEVyRnBHRDs7QXFGdUd6QjtFOUR2R0UsZ0M4RHVFdUM7RTlEdEV2QywwQjhEdUcyQjtFOUR0RzNCLHNCOERzRzJCO0VqRnBGM0Isb0ZtQmpCdUUsRThEc0d4RTtFQUZEO0k5RGpHSSxnQzhEaUVxQztJOURoRXJDLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXFGdUd6QjtJOUQxRkksZ0M4RDBEcUM7STlEekRyQywwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFOER1Rkg7O0k5RGxGSSxnQzhEa0RxQztJOURqRHJDLDBCQXpCd0I7SUEwQnBCLHNCQXpCZ0I7SUEyQnBCLHVCQUF1QjtJbkJMekIsaURtQk0wQyxFQVN6QztJOERvRUg7Ozs7TTlEeEVNLGdDOER3Q21DO005RHZDbkMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFOERxRUw7STlEOURNLDBCOEQrRHVCO0k5RDlEbkIsc0I4RDhEbUIsRTlEN0R4QjtFOEQ0REw7STlEMURNLDBCOEQyRHVCO0k5RDFEbkIsc0I4RDBEbUIsRXJGeEdKOztBcUYyR3pCO0U5RDNHRSxnQzhEdUV1QztFOUR0RXZDLDBCOEQyRzJCO0U5RDFHM0Isc0I4RDBHMkI7RWpGeEYzQixvRm1CakJ1RSxFOEQwR3hFO0VBRkQ7STlEckdJLGdDOERpRXFDO0k5RGhFckMsMEJBVndCO0lBV3BCLHNCQVZnQixFdkJFQztFcUYyR3pCO0k5RDlGSSxnQzhEMERxQztJOUR6RHJDLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0U4RDJGSDs7STlEdEZJLGdDOERrRHFDO0k5RGpEckMsMEJBekJ3QjtJQTBCcEIsc0JBekJnQjtJQTJCcEIsdUJBQXVCO0luQkx6QixpRG1CTTBDLEVBU3pDO0k4RHdFSDs7OztNOUQ1RU0sZ0M4RHdDbUM7TTlEdkNuQywwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0U4RHlFTDtJOURsRU0sMEI4RG1FdUI7STlEbEVuQixzQjhEa0VtQixFOURqRXhCO0U4RGdFTDtJOUQ5RE0sMEI4RCtEdUI7STlEOURuQixzQjhEOERtQixFckY1R0o7O0FxRitHekI7RTlEL0dFLGdDOER1RXVDO0U5RHRFdkMsMEI4RCtHMkI7RTlEOUczQixzQjhEOEcyQjtFakY1RjNCLG9GbUJqQnVFLEU4RDhHeEU7RUFGRDtJOUR6R0ksZ0M4RGlFcUM7STlEaEVyQywwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VxRitHekI7STlEbEdJLGdDOEQwRHFDO0k5RHpEckMsMEJBakJ3QjtJQWtCcEIsc0JBakJnQixFQWtCckI7RThEK0ZIOztJOUQxRkksZ0M4RGtEcUM7STlEakRyQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SThENEVIOzs7O005RGhGTSxnQzhEd0NtQztNOUR2Q25DLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RThENkVMO0k5RHRFTSwwQjhEdUV1QjtJOUR0RW5CLHNCOERzRW1CLEU5RHJFeEI7RThEb0VMO0k5RGxFTSwwQjhEbUV1QjtJOURsRW5CLHNCOERrRW1CLEVyRmhISjs7QXFGbUh6QjtFOURuSEUsZ0M4RHVFdUM7RTlEdEV2QywwQjhEbUgyQjtFOURsSDNCLHNCOERrSDJCO0VqRmhHM0Isb0ZtQmpCdUUsRThEa0h4RTtFQUZEO0k5RDdHSSxnQzhEaUVxQztJOURoRXJDLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXFGbUh6QjtJOUR0R0ksZ0M4RDBEcUM7STlEekRyQywwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFOERtR0g7O0k5RDlGSSxnQzhEa0RxQztJOURqRHJDLDBCQXpCd0I7SUEwQnBCLHNCQXpCZ0I7SUEyQnBCLHVCQUF1QjtJbkJMekIsaURtQk0wQyxFQVN6QztJOERnRkg7Ozs7TTlEcEZNLGdDOER3Q21DO005RHZDbkMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFOERpRkw7STlEMUVNLDBCOEQyRXVCO0k5RDFFbkIsc0I4RDBFbUIsRTlEekV4QjtFOER3RUw7STlEdEVNLDBCOER1RXVCO0k5RHRFbkIsc0I4RHNFbUIsRXJGcEhKOztBcUZ1SHpCO0U5RHZIRSxnQzhEdUV1QztFOUR0RXZDLDBCOER1SDJCO0U5RHRIM0Isc0I4RHNIMkI7RWpGcEczQixvRm1CakJ1RSxFOERzSHhFO0VBRkQ7STlEakhJLGdDOERpRXFDO0k5RGhFckMsMEJBVndCO0lBV3BCLHNCQVZnQixFdkJFQztFcUZ1SHpCO0k5RDFHSSxnQzhEMERxQztJOUR6RHJDLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0U4RHVHSDs7STlEbEdJLGdDOERrRHFDO0k5RGpEckMsMEJBekJ3QjtJQTBCcEIsc0JBekJnQjtJQTJCcEIsdUJBQXVCO0luQkx6QixpRG1CTTBDLEVBU3pDO0k4RG9GSDs7OztNOUR4Rk0sZ0M4RHdDbUM7TTlEdkNuQywwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0U4RHFGTDtJOUQ5RU0sMEI4RCtFdUI7STlEOUVuQixzQjhEOEVtQixFOUQ3RXhCO0U4RDRFTDtJOUQxRU0sMEI4RDJFdUI7STlEMUVuQixzQjhEMEVtQixFckZ4SEo7O0FxRjJIekI7RTlEM0hFLGdDOER1RXVDO0U5RHRFdkMsMEI4RDJIMkI7RTlEMUgzQixzQjhEMEgyQjtFakZ4RzNCLG9GbUJqQnVFLEU4RDBIeEU7RUFGRDtJOURySEksZ0M4RGlFcUM7STlEaEVyQywwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VxRjJIekI7STlEOUdJLGdDOEQwRHFDO0k5RHpEckMsMEJBakJ3QjtJQWtCcEIsc0JBakJnQixFQWtCckI7RThEMkdIOztJOUR0R0ksZ0M4RGtEcUM7STlEakRyQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SThEd0ZIOzs7O005RDVGTSxnQzhEd0NtQztNOUR2Q25DLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RThEeUZMO0k5RGxGTSwwQjhEbUZ1QjtJOURsRm5CLHNCOERrRm1CLEU5RGpGeEI7RThEZ0ZMO0k5RDlFTSwwQjhEK0V1QjtJOUQ5RW5CLHNCOEQ4RW1CLEVyRjVISjs7QXFGK0h6QjtFOUQvSEUsZ0M4RHVFdUM7RTlEdEV2QywwQjhEK0gyQjtFOUQ5SDNCLHNCOEQ4SDJCO0VqRjVHM0Isb0ZtQmpCdUUsRThEOEh4RTtFQUZEO0k5RHpISSxnQzhEaUVxQztJOURoRXJDLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXFGK0h6QjtJOURsSEksZ0M4RDBEcUM7STlEekRyQywwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFOEQrR0g7O0k5RDFHSSxnQzhEa0RxQztJOURqRHJDLDBCQXpCd0I7SUEwQnBCLHNCQXpCZ0I7SUEyQnBCLHVCQUF1QjtJbkJMekIsaURtQk0wQyxFQVN6QztJOEQ0Rkg7Ozs7TTlEaEdNLGdDOER3Q21DO005RHZDbkMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFOEQ2Rkw7STlEdEZNLDBCOER1RnVCO0k5RHRGbkIsc0I4RHNGbUIsRTlEckZ4QjtFOERvRkw7STlEbEZNLDBCOERtRnVCO0k5RGxGbkIsc0I4RGtGbUIsRXJGaElKOztBcUZtSXpCO0U5RG5JRSxZOERvSWlDO0U5RG5JakMsMEI4RG1JMkI7RTlEbEkzQixzQjhEa0kyQjtFakZoSDNCLG9GbUJqQnVFLEU4RGtJeEU7RUFGRDtJOUQ3SEksWThEOEgrQjtJOUQ3SC9CLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXFGbUl6QjtJOUR0SEksWThEdUgrQjtJOUR0SC9CLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0U4RG1ISDs7STlEOUdJLFk4RCtHK0I7STlEOUcvQiwwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SThEZ0dIOzs7O005RHBHTSxZOERxRzZCO005RHBHN0IsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFOERpR0w7STlEMUZNLDBCOEQyRnVCO0k5RDFGbkIsc0I4RDBGbUIsRTlEekZ4QjtFOER3Rkw7STlEdEZNLDBCOER1RnVCO0k5RHRGbkIsc0I4RHNGbUIsRXJGcElKOztBcUZ1SXpCO0U5RHZJRSxnQzhEdUV1QztFOUR0RXZDLHVCOER1SXdCO0U5RHRJeEIsbUI4RHNJd0I7RWpGcEh4QixvRm1CakJ1RSxFOERzSXhFO0VBRkQ7STlEaklJLGdDOERpRXFDO0k5RGhFckMsMEJBVndCO0lBV3BCLHNCQVZnQixFdkJFQztFcUZ1SXpCO0k5RDFISSxnQzhEMERxQztJOUR6RHJDLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0U4RHVISDs7STlEbEhJLGdDOERrRHFDO0k5RGpEckMsMEJBekJ3QjtJQTBCcEIsc0JBekJnQjtJQTJCcEIsdUJBQXVCO0luQkx6QixpRG1CTTBDLEVBU3pDO0k4RG9HSDs7OztNOUR4R00sZ0M4RHdDbUM7TTlEdkNuQywwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0U4RHFHTDtJOUQ5Rk0sdUI4RCtGb0I7STlEOUZoQixtQjhEOEZnQixFOUQ3RnJCO0U4RDRGTDtJOUQxRk0sdUI4RDJGb0I7STlEMUZoQixtQjhEMEZnQixFckZ4SUQ7O0FxRjJJekI7RTlEM0lFLGdDOER1RXVDO0U5RHRFdkMsMEI4RDJJMkI7RTlEMUkzQixzQjhEMEkyQjtFakZ4SDNCLG9GbUJqQnVFLEU4RDBJeEU7RUFGRDtJOURySUksZ0M4RGlFcUM7STlEaEVyQywwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VxRjJJekI7STlEOUhJLGdDOEQwRHFDO0k5RHpEckMsMEJBakJ3QjtJQWtCcEIsc0JBakJnQixFQWtCckI7RThEMkhIOztJOUR0SEksZ0M4RGtEcUM7STlEakRyQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SThEd0dIOzs7O005RDVHTSxnQzhEd0NtQztNOUR2Q25DLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RThEeUdMO0k5RGxHTSwwQjhEbUd1QjtJOURsR25CLHNCOERrR21CLEU5RGpHeEI7RThEZ0dMO0k5RDlGTSwwQjhEK0Z1QjtJOUQ5Rm5CLHNCOEQ4Rm1CLEVyRjVJSjs7QXFGK0l6QjtFOUQvSUUsZ0M4RHVFdUM7RTlEdEV2QywwQjhEK0kyQjtFOUQ5STNCLHNCOEQ4STJCO0VqRjVIM0Isb0ZtQmpCdUUsRThEOEl4RTtFQUZEO0k5RHpJSSxnQzhEaUVxQztJOURoRXJDLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXFGK0l6QjtJOURsSUksZ0M4RDBEcUM7STlEekRyQywwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFOEQrSEg7O0k5RDFISSxnQzhEa0RxQztJOURqRHJDLDBCQXpCd0I7SUEwQnBCLHNCQXpCZ0I7SUEyQnBCLHVCQUF1QjtJbkJMekIsaURtQk0wQyxFQVN6QztJOEQ0R0g7Ozs7TTlEaEhNLGdDOER3Q21DO005RHZDbkMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFOEQ2R0w7STlEdEdNLDBCOER1R3VCO0k5RHRHbkIsc0I4RHNHbUIsRTlEckd4QjtFOERvR0w7STlEbEdNLDBCOERtR3VCO0k5RGxHbkIsc0I4RGtHbUIsRXJGaEpKOztBcUZtSnpCO0U5RG5KRSxnQzhEdUV1QztFOUR0RXZDLDBCOERtSjJCO0U5RGxKM0Isc0I4RGtKMkI7RWpGaEkzQixvRm1CakJ1RSxFOERrSnhFO0VBRkQ7STlEN0lJLGdDOERpRXFDO0k5RGhFckMsMEJBVndCO0lBV3BCLHNCQVZnQixFdkJFQztFcUZtSnpCO0k5RHRJSSxnQzhEMERxQztJOUR6RHJDLDBCQWpCd0I7SUFrQnBCLHNCQWpCZ0IsRUFrQnJCO0U4RG1JSDs7STlEOUhJLGdDOERrRHFDO0k5RGpEckMsMEJBekJ3QjtJQTBCcEIsc0JBekJnQjtJQTJCcEIsdUJBQXVCO0luQkx6QixpRG1CTTBDLEVBU3pDO0k4RGdISDs7OztNOURwSE0sZ0M4RHdDbUM7TTlEdkNuQywwQkFBd0I7TUFDcEIsc0JBQW9CLEVBQ3pCO0U4RGlITDtJOUQxR00sMEI4RDJHdUI7STlEMUduQixzQjhEMEdtQixFOUR6R3hCO0U4RHdHTDtJOUR0R00sMEI4RHVHdUI7STlEdEduQixzQjhEc0dtQixFckZwSko7O0FxRnVKekI7RTlEdkpFLGdDOER1RXVDO0U5RHRFdkMsMEI4RHVKMkI7RTlEdEozQixzQjhEc0oyQjtFakZwSTNCLG9GbUJqQnVFLEU4RHNKeEU7RUFGRDtJOURqSkksZ0M4RGlFcUM7STlEaEVyQywwQkFWd0I7SUFXcEIsc0JBVmdCLEV2QkVDO0VxRnVKekI7STlEMUlJLGdDOEQwRHFDO0k5RHpEckMsMEJBakJ3QjtJQWtCcEIsc0JBakJnQixFQWtCckI7RThEdUlIOztJOURsSUksZ0M4RGtEcUM7STlEakRyQywwQkF6QndCO0lBMEJwQixzQkF6QmdCO0lBMkJwQix1QkFBdUI7SW5CTHpCLGlEbUJNMEMsRUFTekM7SThEb0hIOzs7O005RHhITSxnQzhEd0NtQztNOUR2Q25DLDBCQUF3QjtNQUNwQixzQkFBb0IsRUFDekI7RThEcUhMO0k5RDlHTSwwQjhEK0d1QjtJOUQ5R25CLHNCOEQ4R21CLEU5RDdHeEI7RThENEdMO0k5RDFHTSwwQjhEMkd1QjtJOUQxR25CLHNCOEQwR21CLEVyRnhKSjs7QXFGMkp6QjtFOUQzSkUsZ0M4RHVFdUM7RTlEdEV2QywwQjhEMkoyQjtFOUQxSjNCLHNCOEQwSjJCO0VqRnhJM0Isb0ZtQmpCdUUsRThEMEp4RTtFQUZEO0k5RHJKSSxnQzhEaUVxQztJOURoRXJDLDBCQVZ3QjtJQVdwQixzQkFWZ0IsRXZCRUM7RXFGMkp6QjtJOUQ5SUksZ0M4RDBEcUM7STlEekRyQywwQkFqQndCO0lBa0JwQixzQkFqQmdCLEVBa0JyQjtFOEQySUg7O0k5RHRJSSxnQzhEa0RxQztJOURqRHJDLDBCQXpCd0I7SUEwQnBCLHNCQXpCZ0I7SUEyQnBCLHVCQUF1QjtJbkJMekIsaURtQk0wQyxFQVN6QztJOER3SEg7Ozs7TTlENUhNLGdDOER3Q21DO005RHZDbkMsMEJBQXdCO01BQ3BCLHNCQUFvQixFQUN6QjtFOER5SEw7STlEbEhNLDBCOERtSHVCO0k5RGxIbkIsc0I4RGtIbUIsRTlEakh4QjtFOERnSEw7STlEOUdNLDBCOEQrR3VCO0k5RDlHbkIsc0I4RDhHbUIsRXJGNUpKOztB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QixZQUFZO0lBQ1osV0FBVyxFQUNaO0VBbkJIO0lBcUJJLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osYUFBYTtJQUNiLFdBQVc7SUFDWCxtQkFBbUI7SUFDbkIsa0JBQWtCO0lBQ2xCLFFBQVE7SUFDUixPQUFPO0lBQ1AsZ0JBQWdCLEVBQ2pCO0VBOUJIO0lBZ0NJLFdBQVcsRUFDWjs7QUFHSDtFQUNFLG1CQUFtQjtFQUNuQixjbkZ0WGtDO0VtRnVYbEMsb0JBQW9CO0VBQ3BCLDBCQUEwQjtFQUMxQixZQUFZO0VBQ1osbUJBQW1CLEVBSXBCO0VBVkQ7SUFRSSxZQUFZLEU1Rm5ZWCIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLypcbiogICBUZW1wbGF0ZSBuYW1lOiBNaWxlc3RvbmUgQm9vdHN0cmFwIDQgRGFzaGJvYXJkIFRlbXBsYXRlXG4qICAgRGVtbyBVUkw6IGh0cDovL21pbGVzdG9uZS5ueWFzaGEubWVcbiovXG4vKiBUYWJsZSBvZiBDb250ZW50c1xuICAgIFVzZSAoQ01EL0NUUkwgKyBGICRbU0VDVElPTl0pIHRvIHF1aWNrbHkgZmluZCB3aGF0IHlvdSBhcmUgbG9va2luZyBmb3JcbiAgICBbU0VDVElPTl1cblx0MS5cdHNjYWZmb2xkaW5nXG5cdDIuXHR0eXBvZ3JhcGh5XG5cdDMuXHRhdmF0YXJcblx0NC5cdHNpZGViYXItcGFuZWxcblx0NS5cdGhlYWRlclxuXHQ2Llx0YnJhbmRcblx0Ny5cdG1haW4tcGFuZWxcblx0OC5cdGZvb3RlclxuXHQ5Llx0Y2hhdC1wYW5lbFxuXHQxMC5cdG9mZnNjcmVlbi1tZW51XG5cdDExLlx0d2lkZ2V0XG5cdDEyLlx0bGF5b3V0LW9wdGlvbnNcblx0MTMuXHRtb2RhbC1wYW5lbFxuXHQxNC5cdGFsZXJ0c1xuXHQxNS5cdGJyZWFkY3J1bWJzXG5cdDE2Llx0YnV0dG9uc1xuXHQxNy5cdGNhcmRzXG5cdDE4Llx0ZHJvcGRvd25cblx0MTkuXHRmb3Jtc1xuXHQyMC5cdGlucHV0LWdyb3Vwc1xuXHQyMS5cdGxhYmVsc1xuXHQyMi5cdGxpc3Rncm91cFxuXHQyMy5cdG1vZGFsXG5cdDI0Llx0bmF2YmFyXG5cdDI1Llx0bmF2c1xuXHQyNi5cdHBpbGxzXG5cdDI3Llx0dGFic1xuXHQyOC5cdHBhZ2luYXRpb25cblx0MjkuXHRwb3BvdmVyXG5cdDMwLlx0cHJvZ3Jlc3MtYmFyXG5cdDMxLlx0dGFibGVzXG5cdDMyLlx0dG9vbHRpcFxuXHQzMy5cdGNvbG9yc1xuXHQzNC5cdGJvb3RzdHJhcC51aVxuXHQzNS5cdHNlc3Npb25cblx0MzYuXHRsb2Nrc2NyZWVuXG5cdDM3Llx0ZXJyb3ItcGFnZXNcblx0MzguXHRjYWxlbmRhclxuXHQzOS5cdGdhbGxlcnlcblx0NDAuXHRpbnZvaWNlXG5cdDQxLlx0bWVzc2FnZXNcblx0NDIuXHRzb2NpYWxcblx0NDMuXHR0aW1lbGluZVxuXHQ0NC5cdGNoYXJ0c1xuXHQ0NS5cdGpxdWVyeS51aVxuXHQ0Ni5cdGJvb3RzdHJhcC10YWdzXG5cdDQ3Llx0Ym9vdHN0YXAtdGltZXBpY2tlclxuXHQ0OC5cdGMzLWNoYXJ0c1xuXHQ0OS5cdGNoYXJ0anNcblx0NTAuXHRjbG9jay1waWNrZXJcblx0NTEuXHRjb2xvci1waWNrZXJcblx0NTIuXHRkYXRlcGlja2VyXG5cdDUzLlx0ZGF0ZXJhbmdlcGlja2VyXG5cdDU0Llx0ZWFzeXBpZVxuXHQ1NS5cdGZsb3QtY2hhcnRcblx0NTYuXHRnb29nbGUtbWFwXG5cdDU3Llx0aW5wdXQtc2VsZWN0XG5cdDU4Llx0aW50bC10ZWwtaW5wdXRcblx0NTkuXHRqdmVjdG9ybWFwXG5cdDYwLlx0bGFiZWxhdXR5XG5cdDYxLlx0bXVsdGlzZWxlY3Rcblx0NjIuXHRuZXN0YWJsZVxuXHQ2My5cdG5vdHlcblx0NjQuXHRudmRcblx0NjUuXHRqcXVlcnktdmFsaWRhdGlvblxuXHQ2Ni5cdHBvcnRsZXRzXG5cdDY3Llx0cmlja3NoYXdcblx0NjguXHRzb2NpYWwtYnV0dG9uXG5cdDY5Llx0c29ydGFibGVcblx0NzAuXHRzdW1tZXJub3RlXG5cdDcxLlx0c3dlZXQtYWxlcnRcblx0NzIuXHR0b3VjaC1zcGluXG5cdDczLlx0dXRpbGl0aWVzXG4qL1xuLyogJHNjYWZmb2xkaW5nXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBzcmM6IGxvY2FsKFwiTWF0ZXJpYWwgSWNvbnNcIiksIGxvY2FsKFwiTWF0ZXJpYWxJY29ucy1SZWd1bGFyXCIpLCB1cmwoLi4vZm9udHMvbWF0ZXJpYWwvTWF0ZXJpYWxJY29ucy1SZWd1bGFyLndvZmYyKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKC4uL2ZvbnRzL21hdGVyaWFsL01hdGVyaWFsSWNvbnMtUmVndWxhci53b2ZmKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoLi4vZm9udHMvbWF0ZXJpYWwvTWF0ZXJpYWxJY29ucy1SZWd1bGFyLnR0ZikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuLm1hdGVyaWFsLWljb25zIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgd2lkdGg6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC8qIFByZWZlcnJlZCBpY29uIHNpemUgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIGRpcmVjdGlvbjogbHRyO1xuICAvKiBTdXBwb3J0IGZvciBhbGwgV2ViS2l0IGJyb3dzZXJzLiAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLyogU3VwcG9ydCBmb3IgU2FmYXJpIGFuZCBDaHJvbWUuICovXG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC8qIFN1cHBvcnQgZm9yIEZpcmVmb3guICovXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC8qIFN1cHBvcnQgZm9yIElFLiAqL1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJzsgfVxuXG4uYnRuLXNtOm5vdCguYnRuLWljb24pID4gLm1hdGVyaWFsLWljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDIxcHggIWltcG9ydGFudDsgfVxuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiAjNGM3ZmYwO1xuICB0ZXh0LXNoYWRvdzogbm9uZTsgfVxuXG46OnNlbGVjdGlvbiB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogIzRjN2ZmMDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7IH1cblxuLnBhY2Uge1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhY2UgLnBhY2UtcHJvZ3Jlc3Mge1xuICAgIGhlaWdodDogMnB4OyB9XG4gIC5wYWNlIC5wYWNlLXByb2dyZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjOyB9XG4gIC5wYWNlIC5wYWNlLWFjdGl2aXR5IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbmJvZHksXG5odG1sIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0QxRDFEMjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmFwcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2Y3ZjBmMDtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAtbW96LWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5hcHA6bm90KC5sYXlvdXQtc3RhdGljKSB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDsgfVxuICBhOmZvY3VzLCBhOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7IH1cblxuLnRvdWNoIGxpOmhvdmVyLFxuLnRvdWNoIGxpOmZvY3VzLFxuLnRvdWNoIGE6aG92ZXIsXG4udG91Y2ggYTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuLyogJHR5cG9ncmFwaHlcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxuLmgxLFxuLmgyLFxuLmgzLFxuLmg0LFxuLmg1LFxuLmg2IHtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbmR0LFxuLmJvbGQge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiAuNjg3NXJlbTsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4ucHVsbHF1b3RlIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA1NSU7XG4gIGZsb2F0OiBsZWZ0IDsgfVxuICAucHVsbHF1b3RlOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCBzZXJpZjtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY29udGVudDogJ+KAnCc7XG4gICAgY29sb3I6ICNlMmU0ZTk7IH1cblxuaHIge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxub2wubGlzdC1zdHlsZS1ub25lLFxudWwubGlzdC1zdHlsZS1ub25lIHtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG5jb2RlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODsgfVxuXG4vKiAkYXZhdGFyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5hdmF0YXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uaW1nLXRodW1ibmFpbCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5pbWctcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtOyB9XG5cbi8qIHNpemVzICovXG4uYXZhdGFyLXhsZyB7XG4gIHdpZHRoOiAzMnJlbTsgfVxuXG4uYXZhdGFyLXhsZyB7XG4gIHdpZHRoOiAxNnJlbTsgfVxuXG4uYXZhdGFyLWxnIHtcbiAgd2lkdGg6IDhyZW07IH1cblxuLmF2YXRhci1tZCB7XG4gIHdpZHRoOiA0cmVtOyB9XG5cbi5hdmF0YXItc20ge1xuICB3aWR0aDogM3JlbTsgfVxuXG4uYXZhdGFyLXhzIHtcbiAgd2lkdGg6IDIuMTI1cmVtOyB9XG5cbi5hdmF0YXIteHhzIHtcbiAgd2lkdGg6IDEuMzc1cmVtOyB9XG5cbi8qICRzaWRlYmFyLXBhbmVsXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zaWRlYmFyLXBhbmVsIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgei1pbmRleDogNjA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1vei1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGVmdDogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpOyB9XG4gIC5zaWRlYmFyLXBhbmVsIC5icmFuZCB7XG4gICAgei1pbmRleDogMTsgfVxuICAuc2lkZWJhci1wYW5lbCAuZXhwYW5kaW5nLXZpc2libGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNpZGViYXItcGFuZWwgLm5hdi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjUxMjVyZW0gMS41cmVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wMXJlbTsgfVxuICAuc2lkZWJhci1wYW5lbCAubmF2LXByb2ZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgLnNpZGViYXItcGFuZWwgLm5hdi1wcm9maWxlIC51aWItZHJvcGRvd24tbWVudSxcbiAgICAuc2lkZWJhci1wYW5lbCAubmF2LXByb2ZpbGUgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgYmFja2dyb3VuZDogI2Y3ZjBmMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMC4zNzVyZW0gMC43NXJlbSByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsIC5uYXYtcHJvZmlsZSAudWliLWRyb3Bkb3duLW1lbnUgYSxcbiAgICAgIC5zaWRlYmFyLXBhbmVsIC5uYXYtcHJvZmlsZSAuZHJvcGRvd24tbWVudSBhIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDNweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9XG4gICAgLnNpZGViYXItcGFuZWwgLm5hdi1wcm9maWxlID4gYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zaWRlYmFyLXBhbmVsIC5uYXYtcHJvZmlsZSBhLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAuNTEyNXJlbSAxLjVyZW07IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsIC5uYXYtcHJvZmlsZSBhLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEycHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6ICdhcnJvd19kcm9wX2Rvd24nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgcmlnaHQ6IDEuNXJlbTtcbiAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAgIC8qIFN1cHBvcnQgZm9yIGFsbCBXZWJLaXQgYnJvd3NlcnMuICovXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAvKiBTdXBwb3J0IGZvciBTYWZhcmkgYW5kIENocm9tZS4gKi9cbiAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgICAgICAgLyogU3VwcG9ydCBmb3IgRmlyZWZveC4gKi9cbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgLyogU3VwcG9ydCBmb3IgSUUuICovXG4gICAgICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnOyB9XG4gICAgICAuc2lkZWJhci1wYW5lbCAubmF2LXByb2ZpbGUgYS5kcm9wZG93bi10b2dnbGUgLnVzZXItaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07IH1cbiAgICAgICAgLnNpZGViYXItcGFuZWwgLm5hdi1wcm9maWxlIGEuZHJvcGRvd24tdG9nZ2xlIC51c2VyLWltYWdlIC5hdmF0YXIge1xuICAgICAgICAgIHdpZHRoOiAyLjhyZW07IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsIC5uYXYtcHJvZmlsZSBhLmRyb3Bkb3duLXRvZ2dsZSAudXNlci1pbmZvLFxuICAgICAgLnNpZGViYXItcGFuZWwgLm5hdi1wcm9maWxlIGEuZHJvcGRvd24tdG9nZ2xlIC51c2VyLWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuc2lkZWJhci1wYW5lbCAubmF2LXByb2ZpbGUgYS5kcm9wZG93bi10b2dnbGUgLnVzZXItaW5mbyBzbWFsbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuc2lkZWJhci1wYW5lbCAubmF2LXByb2ZpbGUgYS5kcm9wZG93bi10b2dnbGUgLnVzZXItaW5mbyB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsIC5uYXYtcHJvZmlsZSBhLmRyb3Bkb3duLXRvZ2dsZSA+ICoge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5zaWRlYmFyLXBhbmVsID4gbmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogb3ZlcmxheTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gICAgLXdlYmtpdC1mbGV4OiAxO1xuICAgIC1tb3otYm94LWZsZXg6IDE7XG4gICAgLW1vei1mbGV4OiAxO1xuICAgIC1tcy1mbGV4OiAxO1xuICAgIGZsZXg6IDE7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIG1hcmdpbi1yaWdodDogLTM1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMzVweDsgfVxuICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLnNpZGViYXItcGFuZWwgPiBuYXYgdWwgPiBsaSA+IGEsXG4gICAgLnNpZGViYXItcGFuZWwgPiBuYXYgLm1lbnUtbGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMsIGNvbG9yIDIwMG1zO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyMDBtcywgY29sb3IgMjAwbXM7IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IHVsID4gbGkgPiBhID4gc3BhbixcbiAgICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IC5tZW51LWxpbmsgPiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiB1bCA+IGxpID4gYSA+IC5tYXRlcmlhbC1pY29ucyxcbiAgICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IC5tZW51LWxpbmsgPiAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtOyB9XG4gICAgLnNpZGViYXItcGFuZWwgPiBuYXYgLnVzZXItaW1hZ2UsXG4gICAgLnNpZGViYXItcGFuZWwgPiBuYXYgLnVzZXItaW5mbyxcbiAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiAubmF2LXByb2ZpbGUgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IC51c2VyLWluZm8ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gICAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiAudXNlci1pbmZvIHNtYWxsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiAuYmFkZ2Uge1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgcGFkZGluZzogMCAuM3JlbTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjUxMjVyZW07IH1cbiAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiBsaSB1bC5zdWItbWVudSBsaSBhIHtcbiAgICAgIHBhZGRpbmc6IDAuNTEyNXJlbSAxLjVyZW0gMC41MTI1cmVtIDQuMDFyZW07IH1cbiAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiAubWVudS1jYXJldCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgICAgZmxvYXQ6IHJpZ2h0IDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07IH1cbiAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiB1bC5uYXYgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLnNpZGViYXItcGFuZWwgPiBuYXYgdWwubmF2ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IHVsLm5hdiA+IGxpIGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgcGFkZGluZzogMC41MTI1cmVtIDEuNXJlbTsgfVxuICAgICAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiB1bC5uYXYgPiBsaSBhID4gKiB7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgLnNpZGViYXItcGFuZWwgPiBuYXYgdWwubmF2ID4gbGkgPiB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnNpZGViYXItcGFuZWwgPiBuYXYgdWwubmF2ID4gbGkgdWwge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IDAuNXMgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IDAuNXMgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGN1YmljLWJlemllcigwLjM1LCAwLCAwLjI1LCAxKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBtYXgtaGVpZ2h0O1xuICAgICAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IG1heC1oZWlnaHQ7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG1heC1oZWlnaHQ7IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IHVsLm5hdiA+IGxpLm9wZW4gPiBhID4gLm1lbnUtY2FyZXQsXG4gICAgICAuc2lkZWJhci1wYW5lbCA+IG5hdiB1bC5uYXYgPiBsaSBsaS5vcGVuID4gYSA+IC5tZW51LWNhcmV0IHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IHVsLm5hdiA+IGxpLm9wZW4gPiB1bCxcbiAgICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IHVsLm5hdiA+IGxpIGxpLm9wZW4gPiB1bCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDsgfVxuICAgICAgLnNpZGViYXItcGFuZWwgPiBuYXYgdWwubmF2ID4gbGkub3BlbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7IH1cbiAgICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IHVsLm5hdiA+IGxpIC5zdWItbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLnNpZGViYXItcGFuZWwgPiBuYXYgdWwubmF2ID4gbGkgPiAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5zaWRlYmFyLXBhbmVsIHtcbiAgICB6LWluZGV4OiAxMDMwO1xuICAgIHdpZHRoOiAxOHJlbTsgfVxuICAgIC5zaWRlYmFyLXBhbmVsID4gLmJyYW5kLFxuICAgIC5zaWRlYmFyLXBhbmVsID4gLm5hdi1wcm9maWxlLFxuICAgIC5zaWRlYmFyLXBhbmVsID4gbmF2IHtcbiAgICAgIG1pbi13aWR0aDogMThyZW07IH1cbiAgLyogQ29sbGFwc2VkIHNpZGViYXIgKi9cbiAgLmV4cGFuZGluZyAuc2lkZWJhci1wYW5lbCB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gIC5leHBhbmRpbmcgLm1haW4tcGFuZWwge1xuICAgIG1hcmdpbi1sZWZ0OiA0cmVtOyB9XG4gIC5leHBhbmRpbmcgLnNpZGViYXItcGFuZWw6bm90KDpob3Zlcikge1xuICAgIHdpZHRoOiA0cmVtOyB9XG4gICAgLmV4cGFuZGluZyAuc2lkZWJhci1wYW5lbDpub3QoOmhvdmVyKSA+IC5icmFuZCxcbiAgICAuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsOm5vdCg6aG92ZXIpID4gLm5hdi1wcm9maWxlLFxuICAgIC5leHBhbmRpbmcgLnNpZGViYXItcGFuZWw6bm90KDpob3ZlcikgPiBuYXYge1xuICAgICAgbWluLXdpZHRoOiA0cmVtOyB9XG4gICAgLmV4cGFuZGluZyAuc2lkZWJhci1wYW5lbDpub3QoOmhvdmVyKSA+IC5icmFuZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsOm5vdCg6aG92ZXIpID4gLmJyYW5kIC5icmFuZC1sb2dvIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDhweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxuICAgICAgICAuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsOm5vdCg6aG92ZXIpID4gLmJyYW5kIC5icmFuZC1sb2dvIGltZyB7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDBweDsgfVxuICAgIC5leHBhbmRpbmcgLnNpZGViYXItcGFuZWw6bm90KDpob3ZlcikgLm5hdi1wcm9maWxlID4gYSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsOm5vdCg6aG92ZXIpIC5uYXYtcHJvZmlsZSA+IGEuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAgIC5leHBhbmRpbmcgLnNpZGViYXItcGFuZWw6bm90KDpob3ZlcikgLm5hdi1wcm9maWxlIC51c2VyLWltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsOm5vdCg6aG92ZXIpIC5uYXYtcHJvZmlsZSAuZHJvcGRvd24tbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmV4cGFuZGluZyAuc2lkZWJhci1wYW5lbDpub3QoOmhvdmVyKSAuc21hbGwtbWVudS1oaWRkZW4sXG4gICAgLmV4cGFuZGluZyAuc2lkZWJhci1wYW5lbDpub3QoOmhvdmVyKSAubmF2LXRpdGxlIHtcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsOm5vdCg6aG92ZXIpIC5leHBhbmRpbmctdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5leHBhbmRpbmcgLnNpZGViYXItcGFuZWw6bm90KDpob3ZlcikgLmV4cGFuZGluZy1oaWRkZW4sXG4gICAgLmV4cGFuZGluZyAuc2lkZWJhci1wYW5lbDpub3QoOmhvdmVyKSAuc3ViLW1lbnUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gICAgLmV4cGFuZGluZyAuc2lkZWJhci1wYW5lbDpub3QoOmhvdmVyKSA+IG5hdiA+IHVsID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsOm5vdCg6aG92ZXIpID4gbmF2ID4gdWwgPiBsaSA+IGEgPiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsOm5vdCg6aG92ZXIpID4gbmF2ID4gdWwgPiBsaSAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zaWRlYmFyLXBhbmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH0gfVxuXG4vKiBkZWZhdWx0IHNpZGViYXIgc2tpbiAqL1xuLnNpZGViYXItcGFuZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuICAuc2lkZWJhci1wYW5lbCA+IC5icmFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cbiAgICAuc2lkZWJhci1wYW5lbCA+IC5icmFuZCA+IGEge1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgfVxuICAgICAgLnNpZGViYXItcGFuZWwgPiAuYnJhbmQgPiBhOmZvY3VzLCAuc2lkZWJhci1wYW5lbCA+IC5icmFuZCA+IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogcmdiYSgxMywgMTMsIDEzLCAwLjcpOyB9XG4gIC5zaWRlYmFyLXBhbmVsIC5uYXYtcHJvZmlsZSA+IC5kcm9wZG93bi10b2dnbGUsXG4gIC5zaWRlYmFyLXBhbmVsIC5uYXYtdGl0bGUge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgLnNpZGViYXItcGFuZWwgPiBuYXYgPiB1bCA+IGxpID4gYTpob3ZlcixcbiAgLnNpZGViYXItcGFuZWwgPiBuYXYgPiB1bCA+IGxpLm9wZW4gPiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OyB9XG4gIC5zaWRlYmFyLXBhbmVsID4gbmF2IGxpLm9wZW4gPiBhLFxuICAuc2lkZWJhci1wYW5lbCA+IG5hdiBsaS5hY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogYmxhY2s7IH1cbiAgLnNpZGViYXItcGFuZWwgPiBuYXYgPiB1bCA+IGxpLm9wZW46YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogOTk7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6ICM0YzdmZjA7XG4gICAgbGVmdDogMDsgfVxuICAuc2lkZWJhci1wYW5lbCA+IG5hdiBhIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gICAgLnNpZGViYXItcGFuZWwgPiBuYXYgYTpmb2N1cywgLnNpZGViYXItcGFuZWwgPiBuYXYgYTpob3ZlciB7XG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgfVxuXG4vKiAkaGVhZGVyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnksXG4ubWFpbi1wYW5lbCA+IC5oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLyogRWxlbWVudCBhbGlnbm1lbnRzICovIH1cbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAuaGVhZGVyLWlubmVyLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLmhlYWRlci1pbm5lciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAubmF2YmFyLWl0ZW0sXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleC1ncm93OiAwO1xuICAgIC1tb3otZmxleC1ncm93OiAwO1xuICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAwO1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAgIC1tb3otZmxleC1zaHJpbms6IDA7XG4gICAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiBhdXRvO1xuICAgIC1tb3otZmxleC1iYXNpczogYXV0bztcbiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogYXV0bztcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1zcGFjZXItcmlnaHQsXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLXNwYWNlci1yaWdodCB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgICAtbW96LWZsZXgtZ3JvdzogMTtcbiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgLXdlYmtpdC1mbGV4LXNocmluazogMTtcbiAgICAtbW96LWZsZXgtc2hyaW5rOiAxO1xuICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAxO1xuICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgIC13ZWJraXQtZmxleC1iYXNpczogMDtcbiAgICAtbW96LWZsZXgtYmFzaXM6IDA7XG4gICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICB0cmFuc2l0aW9uOiBmbGV4IDIwMG1zLCB3aWR0aCAyMDBtczsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItbmF2IC5uYXYtbGluayxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDMuNDM4cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItbmF2IC5uYXYtbGluay5kcm9wZG93biA+IGEsXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLW5hdiAubmF2LWxpbmsuZHJvcGRvd24gPiBhIHtcbiAgICBsaW5lLWhlaWdodDogMy40MzhyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1icmFuZCxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXZiYXItYnJhbmQge1xuICAgIHBhZGRpbmctdG9wOiAwLjc4MTVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNzgxNXJlbTsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItdGV4dCxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXZiYXItdGV4dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDEuMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1oZWFkaW5nLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdmJhci1oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMC45MDY1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTA2NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAubmF2YmFyLWJ0bixcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXZiYXItYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAwLjY1NjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42NTY1cmVtOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLmJ0bi1sZy5uYXZiYXItYnRuLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLmJ0bi1sZy5uYXZiYXItYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAwLjMxMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zMTI1cmVtOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLmJ0bi1zbS5uYXZiYXItYnRuLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLmJ0bi1zbS5uYXZiYXItYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAwLjc4MTVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC43ODE1cmVtOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLmJ0bi14cy5uYXZiYXItYnRuLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLmJ0bi14cy5uYXZiYXItYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAxLjAzMTVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4wMzE1cmVtOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm1hdGVyaWFsLWljb25zLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm1hdGVyaWFsLWljb25zIHtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1uYXYsXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLW5hdiB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAubmF2YmFyLW5hdiA+IGxpID4gYSxcbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdmJhci1uYXYgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZy10b3A6IDEuMTI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuMTI1cmVtOyB9XG4gICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAubmF2YmFyLW5hdiAuZHJvcGRvd24tdG9nZ2xlLFxuICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLW5hdiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAubmF2YmFyLW5hdiAuZHJvcGRvd24tdG9nZ2xlID4gKixcbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLW5hdiAuZHJvcGRvd24tdG9nZ2xlID4gKiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1uYXYgLmRyb3Bkb3duLXRvZ2dsZSA+IC5sYWJlbCxcbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLW5hdiAuZHJvcGRvd24tdG9nZ2xlID4gLmxhYmVsIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSxcbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG4gICAgICBib3gtc2hhZG93OiAwIDAuMzc1cmVtIDAuNzVyZW0gcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51Lm5vdGlmaWNhdGlvbnMsXG4gICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyB7XG4gICAgICAgIG1pbi13aWR0aDogMzYwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51Lm5vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi1mb290ZXIsXG4gICAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24tZm9vdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4OyB9XG4gICAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyAuZHJvcGRvd24taXRlbTpob3ZlcixcbiAgICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51Lm5vdGlmaWNhdGlvbnMgLmRyb3Bkb3duLWl0ZW06aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1zZWFyY2gsXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLXNlYXJjaCB7XG4gICAgdHJhbnNpdGlvbjogZmxleCAyMDBtcywgd2lkdGggMjAwbXM7IH1cbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItc2VhcmNoIC5zZWFyY2gtZm9ybSxcbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdmJhci1zZWFyY2ggLnNlYXJjaC1mb3JtIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNTk0cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41OTRyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItc2VhcmNoIC5zZWFyY2gtZm9ybSAuZm9ybS1jb250cm9sLFxuICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXZiYXItc2VhcmNoIC5zZWFyY2gtZm9ybSAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgIHBhZGRpbmc6IC41MzVyZW0gLjc1cmVtO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBjdXJzb3I6IHRleHQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWluZGVudDogMzBweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAubmF2YmFyLXNlYXJjaCAuc2VhcmNoLWZvcm0gLm1hdGVyaWFsLWljb25zLFxuICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXZiYXItc2VhcmNoIC5zZWFyY2gtZm9ybSAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDsgfVxuXG4ubWFpbi1wYW5lbCA+IC5oZWFkZXIgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdiA+IGxpID4gYTpob3Zlcixcbi5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdiA+IGxpID4gYTpmb2N1cyB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTQ0cHgpIHtcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAuc2VhcmNoLWZvY3VzIC5uYXZiYXItc3BhY2VyLXJpZ2h0LCAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5zZWFyY2gtZm9jdXMtYWN0aXZlIC5uYXZiYXItc3BhY2VyLXJpZ2h0LFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb2N1cyAubmF2YmFyLXNwYWNlci1yaWdodCxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5zZWFyY2gtZm9jdXMtYWN0aXZlIC5uYXZiYXItc3BhY2VyLXJpZ2h0IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleC1ncm93OiAwO1xuICAgIC1tb3otZmxleC1ncm93OiAwO1xuICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAwO1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAgIC1tb3otZmxleC1zaHJpbms6IDA7XG4gICAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiBhdXRvO1xuICAgIC1tb3otZmxleC1iYXNpczogYXV0bztcbiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogYXV0bztcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLnNlYXJjaC1mb2N1cyAubmF2YmFyLXNlYXJjaCwgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAuc2VhcmNoLWZvY3VzLWFjdGl2ZSAubmF2YmFyLXNlYXJjaCxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5zZWFyY2gtZm9jdXMgLm5hdmJhci1zZWFyY2gsXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAuc2VhcmNoLWZvY3VzLWFjdGl2ZSAubmF2YmFyLXNlYXJjaCB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgICAtbW96LWZsZXgtZ3JvdzogMTtcbiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgLXdlYmtpdC1mbGV4LXNocmluazogMTtcbiAgICAtbW96LWZsZXgtc2hyaW5rOiAxO1xuICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAxO1xuICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgIC13ZWJraXQtZmxleC1iYXNpczogMTtcbiAgICAtbW96LWZsZXgtYmFzaXM6IDE7XG4gICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDE7XG4gICAgZmxleC1iYXNpczogMTsgfVxuICAgIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLnNlYXJjaC1mb2N1cyAubmF2YmFyLXNlYXJjaCAuc2VhcmNoLWZvcm0sIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLnNlYXJjaC1mb2N1cy1hY3RpdmUgLm5hdmJhci1zZWFyY2ggLnNlYXJjaC1mb3JtLFxuICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAuc2VhcmNoLWZvY3VzIC5uYXZiYXItc2VhcmNoIC5zZWFyY2gtZm9ybSxcbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb2N1cy1hY3RpdmUgLm5hdmJhci1zZWFyY2ggLnNlYXJjaC1mb3JtIHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLnNlYXJjaC1mb2N1cyAubmF2YmFyLXNlYXJjaCAuZm9ybS1jb250cm9sLCAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5zZWFyY2gtZm9jdXMtYWN0aXZlIC5uYXZiYXItc2VhcmNoIC5mb3JtLWNvbnRyb2wsXG4gICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5zZWFyY2gtZm9jdXMgLm5hdmJhci1zZWFyY2ggLmZvcm0tY29udHJvbCxcbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb2N1cy1hY3RpdmUgLm5hdmJhci1zZWFyY2ggLmZvcm0tY29udHJvbCB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAuc2VhcmNoLWZvY3VzIC5uYXZiYXItc2VhcmNoIC5mb3JtLWNvbnRyb2w6LW1vei1wbGFjZWhvbGRlciwgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAuc2VhcmNoLWZvY3VzLWFjdGl2ZSAubmF2YmFyLXNlYXJjaCAuZm9ybS1jb250cm9sOi1tb3otcGxhY2Vob2xkZXIsXG4gICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb2N1cyAubmF2YmFyLXNlYXJjaCAuZm9ybS1jb250cm9sOi1tb3otcGxhY2Vob2xkZXIsXG4gICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb2N1cy1hY3RpdmUgLm5hdmJhci1zZWFyY2ggLmZvcm0tY29udHJvbDotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgfVxuICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAuc2VhcmNoLWZvY3VzIC5uYXZiYXItc2VhcmNoIC5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIsIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLnNlYXJjaC1mb2N1cy1hY3RpdmUgLm5hdmJhci1zZWFyY2ggLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlcixcbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAuc2VhcmNoLWZvY3VzIC5uYXZiYXItc2VhcmNoIC5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIsXG4gICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb2N1cy1hY3RpdmUgLm5hdmJhci1zZWFyY2ggLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLnNlYXJjaC1mb2N1cyAubmF2YmFyLXNlYXJjaCAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAuc2VhcmNoLWZvY3VzLWFjdGl2ZSAubmF2YmFyLXNlYXJjaCAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAuc2VhcmNoLWZvY3VzIC5uYXZiYXItc2VhcmNoIC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5zZWFyY2gtZm9jdXMtYWN0aXZlIC5uYXZiYXItc2VhcmNoIC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgfVxuICAgICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSAuc2VhcmNoLWZvY3VzIC5uYXZiYXItc2VhcmNoIC5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLnNlYXJjaC1mb2N1cy1hY3RpdmUgLm5hdmJhci1zZWFyY2ggLmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAuc2VhcmNoLWZvY3VzIC5uYXZiYXItc2VhcmNoIC5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4gICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb2N1cy1hY3RpdmUgLm5hdmJhci1zZWFyY2ggLmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5zZWFyY2gtZm9jdXMgLm5hdmJhci1zZWFyY2ggLm1hdGVyaWFsLWljb25zLCAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5zZWFyY2gtZm9jdXMtYWN0aXZlIC5uYXZiYXItc2VhcmNoIC5tYXRlcmlhbC1pY29ucyxcbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb2N1cyAubmF2YmFyLXNlYXJjaCAubWF0ZXJpYWwtaWNvbnMsXG4gICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5zZWFyY2gtZm9jdXMtYWN0aXZlIC5uYXZiYXItc2VhcmNoIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU0M3B4KSB7XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1zZWFyY2gsXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLXNlYXJjaCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjVzIGN1YmljLWJlemllcigwLjM1LCAwLCAwLjI1LCAxKTtcbiAgICAtbW96LXRyYW5zaXRpb246IDAuNXMgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpO1xuICAgIHRyYW5zaXRpb246IDAuNXMgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogbWF4LWhlaWdodDtcbiAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IG1heC1oZWlnaHQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbWF4LWhlaWdodDsgfVxuICAgIC5uYXZiYXItY29sbGFwc2UgLm5hdmJhci1uYXYge1xuICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAub2Zmc2NyZWVuIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIG1heC1oZWlnaHQ6IDIwMDBweDsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1uYXYgLm5hdi1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTsgfVxuICAgIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkgLm5hdmJhci1uYXYgLm5hdi1pdGVtIC5uYXYtbGluayxcbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItbmF2IC5uYXYtaXRlbSAubmF2LWxpbmsuZHJvcGRvd24gPiBhIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5uYXZiYXItbmF2IC5uYXYtaXRlbSArIC5uYXYtaXRlbSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXItc2Vjb25kYXJ5IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHggIWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTQzcHgpIHtcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5kcm9wZG93biB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB9XG4gICAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMCAxcmVtOyB9XG4gICAgICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51Lm5vdGlmaWNhdGlvbnMge1xuICAgICAgICBtaW4td2lkdGg6IGF1dG87IH1cbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5tYWluLXBhbmVsID4gLmhlYWRlciAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7IH0gfVxuXG4vKiBkZWZhdWx0IGhlYWRlciBza2luICovXG4ubWFpbi1wYW5lbCA+IC5oZWFkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2YmFyLW5hdiAubmF2LWxpbmsuZHJvcGRvd24gPiBhLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdiA+IGxpID4gYSxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXZiYXItaGVhZGluZyxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIGJvcmRlci1jb2xvcjogIzRjN2ZmMDsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb3JtID4gaW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb3JtID4gaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7IH1cbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5zZWFyY2gtZm9ybSA+IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsgfVxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLnNlYXJjaC1mb3JtID4gaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7IH1cbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5zZWFyY2gtZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAjNGM3ZmYwOyB9XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2ID4gbGkgPiBhOmhvdmVyLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdiA+IGxpID4gYTpmb2N1cyxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIC5uYXYgLm9wZW4gPiBhLFxuICAubWFpbi1wYW5lbCA+IC5oZWFkZXIgLm5hdiAub3BlbiA+IGE6aG92ZXIsXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciAubmF2IC5vcGVuID4gYTpmb2N1cyB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG5cbi8qICRicmFuZFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYnJhbmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuYnJhbmQgLnRvZ2dsZS1vZmZzY3JlZW4ge1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgIGZsb2F0OiBsZWZ0IDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgICAuYnJhbmQgLnRvZ2dsZS1vZmZzY3JlZW4gLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmJyYW5kIC5icmFuZC1sb2dvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEzcHg7IH1cbiAgICAuYnJhbmQgLmJyYW5kLWxvZ28gaW1nIHtcbiAgICAgIG1heC1oZWlnaHQ6IDE2cHg7IH1cblxuLnNpZGViYXItcGFuZWwgLmJyYW5kIHtcbiAgbWluLWhlaWdodDogNTZweDtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuXG4vKiAkbWFpbi1wYW5lbFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubWFpbi1wYW5lbCB7XG4gIGJhY2tncm91bmQ6ICNmN2YwZjA7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC1tb3otZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC13ZWJraXQtZmxleDogMTtcbiAgLW1vei1ib3gtZmxleDogMTtcbiAgLW1vei1mbGV4OiAxO1xuICAtbXMtZmxleDogMTtcbiAgZmxleDogMTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG4gIC5tYWluLXBhbmVsID4gLm1haW4tY29udGVudCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAtbW96LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgICAtd2Via2l0LWZsZXg6IDE7XG4gICAgLW1vei1ib3gtZmxleDogMTtcbiAgICAtbW96LWZsZXg6IDE7XG4gICAgLW1zLWZsZXg6IDE7XG4gICAgZmxleDogMTsgfVxuICAgIC5tYWluLXBhbmVsID4gLm1haW4tY29udGVudCA+IC5jb250ZW50LXZpZXcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gICAgICAtd2Via2l0LWZsZXg6IDEgMCBhdXRvO1xuICAgICAgLW1vei1ib3gtZmxleDogMTtcbiAgICAgIC1tb3otZmxleDogMSAwIGF1dG87XG4gICAgICAtbXMtZmxleDogMSAwIGF1dG87XG4gICAgICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4ubm8tcGFkZGluZyAuY29udGVudC12aWV3IHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi8qTWFyZ2lucyovXG4ucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtOyB9XG5cbi5jb2wteHMtMSwgLmNvbC1zbS0xLCAuY29sLW1kLTEsIC5jb2wtbGctMSwgLmNvbC14cy0yLCAuY29sLXNtLTIsIC5jb2wtbWQtMiwgLmNvbC1sZy0yLCAuY29sLXhzLTMsIC5jb2wtc20tMywgLmNvbC1tZC0zLCAuY29sLWxnLTMsIC5jb2wteHMtNCwgLmNvbC1zbS00LCAuY29sLW1kLTQsIC5jb2wtbGctNCwgLmNvbC14cy01LCAuY29sLXNtLTUsIC5jb2wtbWQtNSwgLmNvbC1sZy01LCAuY29sLXhzLTYsIC5jb2wtc20tNiwgLmNvbC1tZC02LCAuY29sLWxnLTYsIC5jb2wteHMtNywgLmNvbC1zbS03LCAuY29sLW1kLTcsIC5jb2wtbGctNywgLmNvbC14cy04LCAuY29sLXNtLTgsIC5jb2wtbWQtOCwgLmNvbC1sZy04LCAuY29sLXhzLTksIC5jb2wtc20tOSwgLmNvbC1tZC05LCAuY29sLWxnLTksIC5jb2wteHMtMTAsIC5jb2wtc20tMTAsIC5jb2wtbWQtMTAsIC5jb2wtbGctMTAsIC5jb2wteHMtMTEsIC5jb2wtc20tMTEsIC5jb2wtbWQtMTEsIC5jb2wtbGctMTEsIC5jb2wteHMtMTIsIC5jb2wtc20tMTIsIC5jb2wtbWQtMTIsIC5jb2wtbGctMTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtOyB9XG5cbi8qICRmb290ZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbnRlbnQtZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogM3JlbTtcbiAgcGFkZGluZzogMCAxLjVyZW07IH1cbiAgLmNvbnRlbnQtZm9vdGVyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuY29udGVudC1mb290ZXIgLmZvb3Rlci10ZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMC45MDZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC45MDZyZW07XG4gICAgZmxvYXQ6IGxlZnQgOyB9XG4gICAgLmNvbnRlbnQtZm9vdGVyIC5mb290ZXItdGV4dC5zbWFsbCB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjAzMTI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4wMzEyNXJlbTsgfVxuICAuY29udGVudC1mb290ZXIgLmZvb3Rlci1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0IDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmNvbnRlbnQtZm9vdGVyIG5hdiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC5jb250ZW50LWZvb3RlciBuYXYgdWwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAuY29udGVudC1mb290ZXIgbmF2IHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAtd2Via2l0LWJhc2VsaW5lLW1pZGRsZTsgfVxuICAgICAgLmNvbnRlbnQtZm9vdGVyIG5hdiB1bCBsaSBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtaGVpZ2h0OiAzcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IC42MjVyZW07XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjkwNnJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuOTA2cmVtOyB9XG4gICAgICAgIC5jb250ZW50LWZvb3RlciBuYXYgdWwgbGkgYTpob3ZlciwgLmNvbnRlbnQtZm9vdGVyIG5hdiB1bCBsaSBhOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuY29udGVudC1mb290ZXIgbmF2IHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgLmNvbnRlbnQtZm9vdGVyIG5hdiB1bCBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmNvbnRlbnQtZm9vdGVyIGxpOmhvdmVyLFxuICAuY29udGVudC1mb290ZXIgbGkgYTpob3ZlcixcbiAgLmNvbnRlbnQtZm9vdGVyIGxpIGE6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uc2Vzc2lvbi1mb290ZXIge1xuICBwYWRkaW5nOiAwIDRyZW07IH1cblxuLm5vLWZvb3RlciAuY29udGVudC1mb290ZXIsXG4ubm8tZm9vdGVyIC5zZXNzaW9uLWZvb3RlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiAkY2hhdC1wYW5lbFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY2hhdC1wYW5lbCAubW9kYWwtZGlhbG9nIHtcbiAgd2lkdGg6IDE4cmVtICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuXG4uY2hhdC1wYW5lbCAubW9kYWwtYm9keSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDU2cHgpOyB9XG5cbi5jaGF0LXBhbmVsIC5tb2RhbC1ib2R5LFxuLmNoYXQtbWVzc2FnZSAubW9kYWwtYm9keSB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMDsgfVxuXG4uY2hhdC1wYW5lbCAuY2hhdC1pbm5lcixcbi5jaGF0LW1lc3NhZ2UgLmNoYXQtaW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5jaGF0LXBhbmVsIC5jaGF0LWhlYWRlcixcbi5jaGF0LW1lc3NhZ2UgLmNoYXQtaGVhZGVyIHtcbiAgbWluLWhlaWdodDogNTZweDtcbiAgcGFkZGluZzogMCAxLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7IH1cbiAgLmNoYXQtcGFuZWwgLmNoYXQtaGVhZGVyOjphZnRlcixcbiAgLmNoYXQtbWVzc2FnZSAuY2hhdC1oZWFkZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jaGF0LXBhbmVsIC5jaGF0LWhlYWRlciAuY2hhdC1oZWFkZXItdGl0bGUsXG4gIC5jaGF0LW1lc3NhZ2UgLmNoYXQtaGVhZGVyIC5jaGF0LWhlYWRlci10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLXRvcDogMS4xODc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjE4NzVyZW07IH1cbiAgLmNoYXQtcGFuZWwgLmNoYXQtaGVhZGVyIC5jaGF0LWNvbnZlcnNhdGlvbi10aXRsZSxcbiAgLmNoYXQtbWVzc2FnZSAuY2hhdC1oZWFkZXIgLmNoYXQtY29udmVyc2F0aW9uLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwLjUzMTVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNTMxNXJlbTsgfVxuICAgIC5jaGF0LXBhbmVsIC5jaGF0LWhlYWRlciAuY2hhdC1jb252ZXJzYXRpb24tdGl0bGUgc3BhbixcbiAgICAuY2hhdC1tZXNzYWdlIC5jaGF0LWhlYWRlciAuY2hhdC1jb252ZXJzYXRpb24tdGl0bGUgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY2hhdC1wYW5lbCAuY2hhdC1oZWFkZXIgPiBhLFxuICAuY2hhdC1wYW5lbCAuY2hhdC1oZWFkZXIgPiAuZHJvcGRvd24sXG4gIC5jaGF0LW1lc3NhZ2UgLmNoYXQtaGVhZGVyID4gYSxcbiAgLmNoYXQtbWVzc2FnZSAuY2hhdC1oZWFkZXIgPiAuZHJvcGRvd24ge1xuICAgIHBhZGRpbmctdG9wOiAwLjg3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC44NzVyZW07IH1cbiAgLmNoYXQtcGFuZWwgLmNoYXQtaGVhZGVyID4gLmRyb3Bkb3duID4gYTo6YWZ0ZXIsXG4gIC5jaGF0LW1lc3NhZ2UgLmNoYXQtaGVhZGVyID4gLmRyb3Bkb3duID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNoYXQtcGFuZWwgLmNoYXQtaGVhZGVyIC5jaGF0LXJpZ2h0LFxuICAuY2hhdC1wYW5lbCAuY2hhdC1oZWFkZXIgLmNoYXQtYmFjayxcbiAgLmNoYXQtbWVzc2FnZSAuY2hhdC1oZWFkZXIgLmNoYXQtcmlnaHQsXG4gIC5jaGF0LW1lc3NhZ2UgLmNoYXQtaGVhZGVyIC5jaGF0LWJhY2sge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXI6IC4wNjI1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgLmNoYXQtcGFuZWwgLmNoYXQtaGVhZGVyIC5jaGF0LXJpZ2h0LFxuICAuY2hhdC1tZXNzYWdlIC5jaGF0LWhlYWRlciAuY2hhdC1yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDsgfVxuICAuY2hhdC1wYW5lbCAuY2hhdC1oZWFkZXIgLmNoYXQtYmFjayxcbiAgLmNoYXQtbWVzc2FnZSAuY2hhdC1oZWFkZXIgLmNoYXQtYmFjayB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIHRleHQtc2hhZG93OiAwIC4wNjI1cmVtIDAgd2hpdGU7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAwLjQ7IH1cbiAgICAuY2hhdC1wYW5lbCAuY2hhdC1oZWFkZXIgLmNoYXQtYmFjazpob3ZlcixcbiAgICAuY2hhdC1tZXNzYWdlIC5jaGF0LWhlYWRlciAuY2hhdC1iYWNrOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxuXG4uY2hhdC1tZXNzYWdlIC5tb2RhbC1ib2R5IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpO1xuICBwYWRkaW5nOiAwLjc1cmVtOyB9XG5cbi5jaGF0LW1lc3NhZ2UgLm1vZGFsLWNvbnRlbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmNoYXQtYmFja2Ryb3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uY2hhdC1tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi5jaGF0LWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuY2hhdC1ncm91cCAuY2hhdC1ncm91cC1oZWFkZXIge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuY2hhdC1ncm91cCAuY2hhdC1ncm91cC1oZWFkZXIsXG4gIC5jaGF0LWdyb3VwIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjYxMjVyZW0gMS41cmVtOyB9XG4gICAgLmNoYXQtZ3JvdXAgLmNoYXQtZ3JvdXAtaGVhZGVyOmhvdmVyLFxuICAgIC5jaGF0LWdyb3VwIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgfVxuICAuY2hhdC1ncm91cCAuc3RhdHVzLW9ubGluZSxcbiAgLmNoYXQtZ3JvdXAgLnN0YXR1cy1hd2F5LFxuICAuY2hhdC1ncm91cCAuc3RhdHVzLW5vLWRpc3R1cmIsXG4gIC5jaGF0LWdyb3VwIC5zdGF0dXMtaW52aXNpYmxlLFxuICAuY2hhdC1ncm91cCAuc3RhdHVzLW9mZmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgLmNoYXQtZ3JvdXAgLnN0YXR1cy1vbmxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZmMzNWM7IH1cbiAgLmNoYXQtZ3JvdXAgLnN0YXR1cy1hd2F5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBjNTRjOyB9XG4gIC5jaGF0LWdyb3VwIC5zdGF0dXMtbm8tZGlzdHVyYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NDsgfVxuICAuY2hhdC1ncm91cCAuc3RhdHVzLWludmlzaWJsZSxcbiAgLmNoYXQtZ3JvdXAgLnN0YXR1cy1vZmZsaW5lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4OyB9XG5cbi5jaGF0LWNvbnZlcnNhdGlvbi1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDMuNDM4cmVtO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAzLjQzOHJlbTtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5jaGF0LWNvbnZlcnNhdGlvbi1mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5jaGF0LWNvbnZlcnNhdGlvbi11c2VyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgcGFkZGluZzogMCA0cmVtO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5tZSB7XG4gIC13ZWJraXQtYm94LXBhY2s6IGVuZDtcbiAgLW1zLWZsZXgtcGFjazogZW5kO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIC1tb3otanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4ubWUgLmNoYXQtY29udmVyc2F0aW9uLWF2YXRhciB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAzO1xuICAtd2Via2l0LW9yZGVyOiAyO1xuICAtbW96LW9yZGVyOiAyO1xuICAtbXMtZmxleC1vcmRlcjogMjtcbiAgb3JkZXI6IDI7IH1cblxuLm1lIC5jaGF0LWNvbnZlcnNhdGlvbi1tZXNzYWdlIHtcbiAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjtcbiAgLXdlYmtpdC1vcmRlcjogMTtcbiAgLW1vei1vcmRlcjogMTtcbiAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gIG9yZGVyOiAxOyB9XG5cbi5tZSAuY2hhdC1jb252ZXJzYXRpb24tbWVzc2FnZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlcjogNXB4IHNvbGlkICM0Y2MzZjA7XG4gIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICByaWdodDogLTdweDsgfVxuXG4udGhlbSAuY2hhdC1jb252ZXJzYXRpb24tYXZhdGFyIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG5cbi50aGVtIC5jaGF0LWNvbnZlcnNhdGlvbi1tZXNzYWdlOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyOiA1cHggc29saWQgI2U4ZThlODtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGxlZnQ6IC03cHg7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uY2hhdC1jb252ZXJzYXRpb24tYXZhdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMzZweDtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgLW1vei1mbGV4LXNocmluazogMDtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAtd2Via2l0LWZsZXgtZ3JvdzogMDtcbiAgLW1vei1mbGV4LWdyb3c6IDA7XG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAwO1xuICBmbGV4LWdyb3c6IDA7IH1cbiAgLmNoYXQtY29udmVyc2F0aW9uLWF2YXRhciBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLmNoYXQtY29udmVyc2F0aW9uLW1lc3NhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAuY2hhdC1jb252ZXJzYXRpb24tbWVzc2FnZSBwIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLmNoYXQtY29udmVyc2F0aW9uLXVzZXIubWUgLmNoYXQtY29udmVyc2F0aW9uLW1lc3NhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2MzZjA7XG4gIGZsb2F0OiByaWdodCA7IH1cbiAgLmNoYXQtY29udmVyc2F0aW9uLXVzZXIubWUgLmNoYXQtY29udmVyc2F0aW9uLW1lc3NhZ2UgcCB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG5cbi5jaGF0LWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAzcmVtO1xuICBsZWZ0OiAzcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMy40MzhyZW07XG4gIHJlc2l6ZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLmNoYXQtaW5wdXQ6ZW1wdHk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdTZW5kIGEgbWVzc2FnZSc7IH1cblxuLmNoYXQtaW5wdXQ6Zm9jdXM6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnOyB9XG5cbi5jaGF0LWxlZnQge1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxcmVtO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLXRvcDogMC4yMTg1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjIxODVyZW07XG4gIGZsb2F0OiBsZWZ0IDsgfVxuXG4uY2hhdC1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMC42MjVyZW0gMXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLXRvcDogMC4yMTg1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjIxODVyZW07XG4gIGZsb2F0OiByaWdodCA7IH1cblxuLmNoYXQtc2VuZCA+IGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLyogJG9mZnNjcmVlbi1tZW51XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5vZmYtY2FudmFzLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLm9mZmNhbnZhcyAub2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm9mZmNhbnZhcyAuc2lkZWJhci1wYW5lbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgd2lkdGg6IDE4cmVtO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfVxuICAub2ZmY2FudmFzIC5zaWRlYmFyLXBhbmVsLm9mZnNjcmVlbi1yaWdodCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cblxuLm9mZmNhbnZhcyAubWFpbi1wYW5lbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7IH1cblxuLm9mZmNhbnZhcyAubWFpbi1wYW5lbCxcbi5vZmZjYW52YXMgLnNpZGViYXItcGFuZWwge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpOyB9XG5cbi5vZmZjYW52YXMgLmhlYWRlciAuYnJhbmQsXG4ub2ZmY2FudmFzIC50b2dnbGUtb2Zmc2NyZWVuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgfVxuXG4ub2ZmY2FudmFzIC5uYXZiYXItaGVhZGluZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ub2ZmY2FudmFzLm9mZnNjcmVlbiAub2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLm9mZmNhbnZhcy5vZmZzY3JlZW4gLnNpZGViYXItcGFuZWwge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLm9mZmNhbnZhcy5tb3ZlLXJpZ2h0IC5zaWRlYmFyLXBhbmVsID4gbmF2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5vZmZjYW52YXMuZnVsbC13aWR0aCAubWFpbi1wYW5lbCA+IC5tYWluLWNvbnRlbnQgPiAuY29udGVudC12aWV3LFxuLmZ1bGwtd2lkdGggLmhlYWRlci1zZWNvbmRhcnkgKyAubWFpbi1jb250ZW50ID4gLmNvbnRlbnQtdmlldyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5vZmYtY2FudmFzLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KSAhaW1wb3J0YW50OyB9XG4gIC5vZmZjYW52YXMgLm1haW4tcGFuZWwgPiAubWFpbi1jb250ZW50ID4gLmNvbnRlbnQtdmlldyxcbiAgLmhlYWRlci1zZWNvbmRhcnkgKyAubWFpbi1jb250ZW50ID4gLmNvbnRlbnQtdmlldyB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgKiB7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG4gIC5zaWRlYmFyLXBhbmVsIHtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHdpZHRoOiAxOHJlbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG4gICAgLnNpZGViYXItcGFuZWwub2Zmc2NyZWVuLXJpZ2h0IHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgLm1haW4tcGFuZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlOyB9XG4gIC5tYWluLXBhbmVsLFxuICAuc2lkZWJhci1wYW5lbCAuYnJhbmQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zaWRlYmFyLXBhbmVsIC5icmFuZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgLm1haW4tcGFuZWwsXG4gIC5zaWRlYmFyLXBhbmVsIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpOyB9XG4gIC5vZmZzY3JlZW4gLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAub2Zmc2NyZWVuIC5zaWRlYmFyLXBhbmVsIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICAubW92ZS1yaWdodCAuc2lkZWJhci1wYW5lbCA+IG5hdiB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH0gfVxuXG4vKiAkV2lkZ2V0XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qTm90aWZpY2F0aW9ucyovXG4ubm90aWZpY2F0aW9uLWJhci1pY29uLFxuLm5vdGlmaWNhdGlvbi1iYXItZGV0YWlscyB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIGZsb2F0OiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5ub3RpZmljYXRpb24tYmFyLWljb24ge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtOyB9XG4gIC5ub3RpZmljYXRpb24tYmFyLWljb24gZGl2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAubm90aWZpY2F0aW9uLWJhci1pY29uIGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMS44NzVyZW07XG4gICAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdmYzM1YztcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luOiAtMC45Mzc1cmVtIDAgMCAtMC45Mzc1cmVtOyB9XG5cbi5ub3RpZmljYXRpb24tYmFyLWRldGFpbHMge1xuICBwYWRkaW5nLWxlZnQ6IDAuOXJlbTsgfVxuICAubm90aWZpY2F0aW9uLWJhci1kZXRhaWxzIC5ub3RpZmljYXRpb24tYmFyLXRpdGxlIHtcbiAgICBmb250LXNpemU6IC44NXJlbTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubm90aWZpY2F0aW9uLWJhci1zdWNjZXNzIC5ub3RpZmljYXRpb24tYmFyLWljb24gaSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZmMzNWM7IH1cblxuLm5vdGlmaWNhdGlvbi1iYXItZmFpbCAubm90aWZpY2F0aW9uLWJhci1pY29uIGkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDI2ZDU0OyB9XG5cbi5ub3RpZmljYXRpb24tYmFyLWluZm8gLm5vdGlmaWNhdGlvbi1iYXItaWNvbiBpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjYzNmMDsgfVxuXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC5kcm9wZG93bi1pdGVtIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLWljb24ge1xuICB3aWR0aDogMnJlbTsgfVxuXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24tbWVzc2FnZSB7XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9ucy1oZWFkZXIge1xuICBwYWRkaW5nOiAwIDFyZW07IH1cblxuLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9ucy1oZWFkZXIge1xuICBwYWRkaW5nLXRvcDogLjYyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb25zLWhlYWRlciBwIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyBsaSBhIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTYzcmVtO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxuLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLWljb24sXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24tbWVzc2FnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgZmxvYXQ6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC50aW1lIHtcbiAgZm9udC1zaXplOiAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC5hdmF0YXIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIGE6aG92ZXIsXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIGE6YWN0aXZlIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9ucy13cmFwcGVyIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAyNTBweDsgfVxuXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb25zLWxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9ucy1saXN0IGxpIHtcbiAgICBtYXJnaW46IDAgMS41cmVtOyB9XG4gIC5kcm9wZG93bi1tZW51Lm5vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbnMtbGlzdCBsaSBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IC4wNjI1cmVtIHNvbGlkICNmMWYxZjE7IH1cbiAgLmRyb3Bkb3duLW1lbnUubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9ucy1saXN0IGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24tZm9vdGVyIHtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07IH1cblxuLmNpcmNsZS1pY29uIHtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmbG9hdDogbGVmdCA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAuY2lyY2xlLWljb24gPiBpIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4vKiAkbGF5b3V0LW9wdGlvbnNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypGbGV4IExheW91dCovXG4ubGF5b3V0LFxuLmxheW91dC1yb3cge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4ubGF5b3V0LWNvbHVtbiB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC13ZWJraXQtZmxleDogMTtcbiAgLW1vei1ib3gtZmxleDogMTtcbiAgLW1vei1mbGV4OiAxO1xuICAtbXMtZmxleDogMTtcbiAgZmxleDogMTtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1vei1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4ubGF5b3V0LXJvdyB7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgLW1vei1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGF5b3V0LXJvdyA+ICoge1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4uZmxleGJveCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtd2Via2l0LWZsZXg6IDE7XG4gIC1tb3otYm94LWZsZXg6IDE7XG4gIC1tb3otZmxleDogMTtcbiAgLW1zLWZsZXg6IDE7XG4gIGZsZXg6IDE7IH1cblxuLypIZWlnaHRzKi9cbi5mdWxsLWhlaWdodCB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uZmlsbC1jb250YWluZXIsXG4ucGFnZS1oZWlnaHQge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA2LjQzOHJlbSk7IH1cblxuLmhlYWRlci1zZWNvbmRhcnkgKyAubWFpbi1jb250ZW50ID4gLmNvbnRlbnQtdmlldyAuZmlsbC1jb250YWluZXIsXG4uaGVhZGVyLXNlY29uZGFyeSArIC5tYWluLWNvbnRlbnQgPiAuY29udGVudC12aWV3IC5wYWdlLWhlaWdodCB7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDkuODc2cmVtKTsgfVxuXG4vKlRhYmxlIGVxdWFsIGNvbHVtbnMqL1xuLmNvbHVtbi1lcXVhbCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDsgfVxuICAuY29sdW1uLWVxdWFsIC5jb2wge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4vKlNjcm9sbCovXG4uc2Nyb2xsLXkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG4vKiBGaXhlZCBoZWFkZXIgbGF5b3V0Ki9cbi5maXhlZC1oZWFkZXIgLm1haW4tcGFuZWwge1xuICBvdmVyZmxvdy14OiBpbml0aWFsO1xuICBvdmVyZmxvdy15OiBpbml0aWFsOyB9XG5cbi5maXhlZC1oZWFkZXIgLm1haW4tY29udGVudCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4vKiBTdGF0aWMgc2lkZWJhciBsYXlvdXQqL1xuLmFwcC5sYXlvdXQtc3RhdGljIHtcbiAgbWF4LWhlaWdodDogaW5pdGlhbCAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogaW5pdGlhbCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uYXBwLnN0YXRpYyB7XG4gIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gIGhlaWdodDogaW5pdGlhbDsgfVxuICAuYXBwLnN0YXRpYyAubWFpbi1wYW5lbCB7XG4gICAgb3ZlcmZsb3cteDogaW5pdGlhbDtcbiAgICBvdmVyZmxvdy15OiBpbml0aWFsOyB9XG4gIC5hcHAuc3RhdGljIC5tYWluLWNvbnRlbnQge1xuICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTsgfVxuICAuYXBwLnN0YXRpYyAuY29udGFjdHMtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IGluaXRpYWwgIWltcG9ydGFudDsgfVxuICAuYXBwLnN0YXRpYyAuZnVsbC1oZWlnaHQge1xuICAgIGhlaWdodDogaW5pdGlhbDsgfVxuICAuYXBwLnN0YXRpYyAuZmlsbC1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogaW5pdGlhbDsgfVxuICAuYXBwLnN0YXRpYyAjZ29vZ2xlLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IH1cblxuLyogQm94ZWQgbGF5b3V0Ki9cbi5hcHAuYm94ZWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5hcHAuYm94ZWQuZXhwYW5kaW5nIC5zaWRlYmFyLXBhbmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmFwcC5ib3hlZCB7XG4gICAgbWF4LXdpZHRoOiA0Ni44OHJlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MnJlbSkge1xuICAuYXBwLmJveGVkIHtcbiAgICBtYXgtd2lkdGg6IDYwLjYzcmVtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc1cmVtKSB7XG4gIC5hcHAuYm94ZWQge1xuICAgIG1heC13aWR0aDogNzMuMTNyZW07IH0gfVxuXG4vKiAkbW9kYWwtcGFuZWxcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNpZGViYXItbW9kYWwubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG5cbi5zaWRlYmFyLW1vZGFsLm1vZGFsLmluIC5tb2RhbC1kaWFsb2cge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnNpZGViYXItbW9kYWwgLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTEwMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDIwcmVtO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gIHJpZ2h0OiAwOyB9XG4gIC5zaWRlYmFyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWhlYWRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLnNpZGViYXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi8qICRhbGVydHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmFsZXJ0IHtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q3ZWNjYztcbiAgYm9yZGVyLWNvbG9yOiAjY2VlOGMxO1xuICBjb2xvcjogIzRmODczMjsgfVxuICAuYWxlcnQtc3VjY2VzcyBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2JmZTFhZTsgfVxuICAuYWxlcnQtc3VjY2VzcyAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6ICMzOTYyMjQ7IH1cblxuLmFsZXJ0LWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlmMmZjO1xuICBib3JkZXItY29sb3I6ICNjYmVlZmI7XG4gIGNvbG9yOiAjMTE5NGM1OyB9XG4gIC5hbGVydC1pbmZvIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjYjRlNmY5OyB9XG4gIC5hbGVydC1pbmZvIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogIzBkNzE5NjsgfVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWViYzI7XG4gIGJvcmRlci1jb2xvcjogI2Y5ZTdiNDtcbiAgY29sb3I6ICNkZGE4MTM7IH1cbiAgLmFsZXJ0LXdhcm5pbmcgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmN2RmOWM7IH1cbiAgLmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiAjYWU4NDBmOyB9XG5cbi5hbGVydC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJkNGNkO1xuICBib3JkZXItY29sb3I6ICNlZmNhYzE7XG4gIGNvbG9yOiAjOTgzZTI4OyB9XG4gIC5hbGVydC1kYW5nZXIgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNlOWI5YWQ7IH1cbiAgLmFsZXJ0LWRhbmdlciAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6ICM3MDJlMWQ7IH1cblxuLyogJGJyZWFkY3J1bWJzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5icmVhZGNydW1iIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5icmVhZGNydW1iID4gbGkgKyBsaTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgY29udGVudDogXCLvhIVcIjsgfVxuXG4vKiAkYnV0dG9uc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7IH1cbiAgLmJ0bjpmb2N1cywgLmJ0bi5mb2N1cywgLmJ0bjphY3RpdmU6Zm9jdXMsIC5idG46YWN0aXZlLmZvY3VzLCAuYnRuLmFjdGl2ZTpmb2N1cywgLmJ0bi5hY3RpdmUuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7IH1cblxuLyogUm91bmRlZCBidXR0b24gc3R5bGVzICovXG4uYnRuLXJvdW5kLFxuLmJ0bi1yb3VuZCBhLFxuLmJ0bi1yb3VuZCAuYnRuLFxuLmlucHV0LXJvdW5kIHtcbiAgYm9yZGVyLXJhZGl1czogMi41cmVtOyB9XG4gIC5idG4tcm91bmQ6OmJlZm9yZSxcbiAgLmJ0bi1yb3VuZCBhOjpiZWZvcmUsXG4gIC5idG4tcm91bmQgLmJ0bjo6YmVmb3JlLFxuICAuaW5wdXQtcm91bmQ6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMi41cmVtOyB9XG5cbi5idG4tZGVmYXVsdCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gIGJvcmRlci1jb2xvcjogI2UyZTFlMTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmJ0bi1kZWZhdWx0OmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmNmY2Y7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzRjMmMyOyB9XG4gIC5idG4tZGVmYXVsdDpmb2N1cywgLmJ0bi1kZWZhdWx0LmZvY3VzIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmNmY2Y7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzRjMmMyOyB9XG4gIC5idG4tZGVmYXVsdDphY3RpdmUsIC5idG4tZGVmYXVsdC5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kZWZhdWx0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZjZmNmO1xuICAgIGJvcmRlci1jb2xvcjogI2M0YzJjMjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAgIC5idG4tZGVmYXVsdDphY3RpdmU6aG92ZXIsIC5idG4tZGVmYXVsdDphY3RpdmU6Zm9jdXMsIC5idG4tZGVmYXVsdDphY3RpdmUuZm9jdXMsIC5idG4tZGVmYXVsdC5hY3RpdmU6aG92ZXIsIC5idG4tZGVmYXVsdC5hY3RpdmU6Zm9jdXMsIC5idG4tZGVmYXVsdC5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRlZmF1bHQuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1kZWZhdWx0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZGVmYXVsdC5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZGJkYmQ7XG4gICAgICBib3JkZXItY29sb3I6ICNhM2EwYTA7IH1cbiAgLmJ0bi1kZWZhdWx0LmRpc2FibGVkOmZvY3VzLCAuYnRuLWRlZmF1bHQuZGlzYWJsZWQuZm9jdXMsIC5idG4tZGVmYXVsdDpkaXNhYmxlZDpmb2N1cywgLmJ0bi1kZWZhdWx0OmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4O1xuICAgIGJvcmRlci1jb2xvcjogI2UyZTFlMTsgfVxuICAuYnRuLWRlZmF1bHQuZGlzYWJsZWQ6aG92ZXIsIC5idG4tZGVmYXVsdDpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgICBib3JkZXItY29sb3I6ICNlMmUxZTE7IH1cblxuLmJ0bi1wcmltYXJ5IHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwO1xuICBib3JkZXItY29sb3I6ICM0YzdmZjA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4tcHJpbWFyeTpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDVkZWM7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTQ1N2ViOyB9XG4gIC5idG4tcHJpbWFyeTpmb2N1cywgLmJ0bi1wcmltYXJ5LmZvY3VzIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYztcbiAgICBib3JkZXItY29sb3I6ICMxNDU3ZWI7IH1cbiAgLmJ0bi1wcmltYXJ5OmFjdGl2ZSwgLmJ0bi1wcmltYXJ5LmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYztcbiAgICBib3JkZXItY29sb3I6ICMxNDU3ZWI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLXByaW1hcnk6YWN0aXZlOmhvdmVyLCAuYnRuLXByaW1hcnk6YWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnk6YWN0aXZlLmZvY3VzLCAuYnRuLXByaW1hcnkuYWN0aXZlOmhvdmVyLCAuYnRuLXByaW1hcnkuYWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjRlZDQ7XG4gICAgICBib3JkZXItY29sb3I6ICMwZjQwYWU7IH1cbiAgLmJ0bi1wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnRuLXByaW1hcnkuZGlzYWJsZWQuZm9jdXMsIC5idG4tcHJpbWFyeTpkaXNhYmxlZDpmb2N1cywgLmJ0bi1wcmltYXJ5OmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwO1xuICAgIGJvcmRlci1jb2xvcjogIzRjN2ZmMDsgfVxuICAuYnRuLXByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idG4tcHJpbWFyeTpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDtcbiAgICBib3JkZXItY29sb3I6ICM0YzdmZjA7IH1cblxuLmJ0bi1zZWNvbmRhcnkge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmJ0bi1zZWNvbmRhcnk6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuYnRuLXNlY29uZGFyeTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5LmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAgIC5idG4tc2Vjb25kYXJ5OmFjdGl2ZTpob3ZlciwgLmJ0bi1zZWNvbmRhcnk6YWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeTphY3RpdmUuZm9jdXMsIC5idG4tc2Vjb25kYXJ5LmFjdGl2ZTpob3ZlciwgLmJ0bi1zZWNvbmRhcnkuYWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNGQ0ZDQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuYnRuLXNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQuZm9jdXMsIC5idG4tc2Vjb25kYXJ5OmRpc2FibGVkOmZvY3VzLCAuYnRuLXNlY29uZGFyeTpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuYnRuLXNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ0bi1zZWNvbmRhcnk6ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLmJ0bi1pbmZvIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGNjM2YwO1xuICBib3JkZXItY29sb3I6ICM0Y2MzZjA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4taW5mbzpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxZGIzZWM7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTRiMGViOyB9XG4gIC5idG4taW5mbzpmb2N1cywgLmJ0bi1pbmZvLmZvY3VzIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFkYjNlYztcbiAgICBib3JkZXItY29sb3I6ICMxNGIwZWI7IH1cbiAgLmJ0bi1pbmZvOmFjdGl2ZSwgLmJ0bi1pbmZvLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFkYjNlYztcbiAgICBib3JkZXItY29sb3I6ICMxNGIwZWI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLWluZm86YWN0aXZlOmhvdmVyLCAuYnRuLWluZm86YWN0aXZlOmZvY3VzLCAuYnRuLWluZm86YWN0aXZlLmZvY3VzLCAuYnRuLWluZm8uYWN0aXZlOmhvdmVyLCAuYnRuLWluZm8uYWN0aXZlOmZvY3VzLCAuYnRuLWluZm8uYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjllZDQ7XG4gICAgICBib3JkZXItY29sb3I6ICMwZjgyYWU7IH1cbiAgLmJ0bi1pbmZvLmRpc2FibGVkOmZvY3VzLCAuYnRuLWluZm8uZGlzYWJsZWQuZm9jdXMsIC5idG4taW5mbzpkaXNhYmxlZDpmb2N1cywgLmJ0bi1pbmZvOmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGNjM2YwO1xuICAgIGJvcmRlci1jb2xvcjogIzRjYzNmMDsgfVxuICAuYnRuLWluZm8uZGlzYWJsZWQ6aG92ZXIsIC5idG4taW5mbzpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjYzNmMDtcbiAgICBib3JkZXItY29sb3I6ICM0Y2MzZjA7IH1cblxuLmJ0bi1zdWNjZXNzIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjO1xuICBib3JkZXItY29sb3I6ICM3ZmMzNWM7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4tc3VjY2Vzczpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NWFkM2Y7XG4gICAgYm9yZGVyLWNvbG9yOiAjNjBhNTNkOyB9XG4gIC5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1zdWNjZXNzLmZvY3VzIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY1YWQzZjtcbiAgICBib3JkZXItY29sb3I6ICM2MGE1M2Q7IH1cbiAgLmJ0bi1zdWNjZXNzOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY1YWQzZjtcbiAgICBib3JkZXItY29sb3I6ICM2MGE1M2Q7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLXN1Y2Nlc3M6YWN0aXZlOmhvdmVyLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlLmZvY3VzLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlOmhvdmVyLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1NTkyMzY7XG4gICAgICBib3JkZXItY29sb3I6ICM0NDc1MmI7IH1cbiAgLmJ0bi1zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQuZm9jdXMsIC5idG4tc3VjY2VzczpkaXNhYmxlZDpmb2N1cywgLmJ0bi1zdWNjZXNzOmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjO1xuICAgIGJvcmRlci1jb2xvcjogIzdmYzM1YzsgfVxuICAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idG4tc3VjY2VzczpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdmYzM1YztcbiAgICBib3JkZXItY29sb3I6ICM3ZmMzNWM7IH1cblxuLmJ0bi13YXJuaW5nIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBjNTRjO1xuICBib3JkZXItY29sb3I6ICNmMGM1NGM7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4td2FybmluZzpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2I2MWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZWJiMzE0OyB9XG4gIC5idG4td2FybmluZzpmb2N1cywgLmJ0bi13YXJuaW5nLmZvY3VzIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjYjYxZDtcbiAgICBib3JkZXItY29sb3I6ICNlYmIzMTQ7IH1cbiAgLmJ0bi13YXJuaW5nOmFjdGl2ZSwgLmJ0bi13YXJuaW5nLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjYjYxZDtcbiAgICBib3JkZXItY29sb3I6ICNlYmIzMTQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLXdhcm5pbmc6YWN0aXZlOmhvdmVyLCAuYnRuLXdhcm5pbmc6YWN0aXZlOmZvY3VzLCAuYnRuLXdhcm5pbmc6YWN0aXZlLmZvY3VzLCAuYnRuLXdhcm5pbmcuYWN0aXZlOmhvdmVyLCAuYnRuLXdhcm5pbmcuYWN0aXZlOmZvY3VzLCAuYnRuLXdhcm5pbmcuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNGExMTI7XG4gICAgICBib3JkZXItY29sb3I6ICNhZTg0MGY7IH1cbiAgLmJ0bi13YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnRuLXdhcm5pbmcuZGlzYWJsZWQuZm9jdXMsIC5idG4td2FybmluZzpkaXNhYmxlZDpmb2N1cywgLmJ0bi13YXJuaW5nOmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBjNTRjO1xuICAgIGJvcmRlci1jb2xvcjogI2YwYzU0YzsgfVxuICAuYnRuLXdhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idG4td2FybmluZzpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwYzU0YztcbiAgICBib3JkZXItY29sb3I6ICNmMGM1NGM7IH1cblxuLmJ0bi1kYW5nZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMjZkNTQ7XG4gIGJvcmRlci1jb2xvcjogI2QyNmQ1NDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmJ0bi1kYW5nZXI6aG92ZXIge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzA0ZjMzO1xuICAgIGJvcmRlci1jb2xvcjogI2I4NGIzMTsgfVxuICAuYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXIuZm9jdXMge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzA0ZjMzO1xuICAgIGJvcmRlci1jb2xvcjogI2I4NGIzMTsgfVxuICAuYnRuLWRhbmdlcjphY3RpdmUsIC5idG4tZGFuZ2VyLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzA0ZjMzO1xuICAgIGJvcmRlci1jb2xvcjogI2I4NGIzMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAgIC5idG4tZGFuZ2VyOmFjdGl2ZTpob3ZlciwgLmJ0bi1kYW5nZXI6YWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlcjphY3RpdmUuZm9jdXMsIC5idG4tZGFuZ2VyLmFjdGl2ZTpob3ZlciwgLmJ0bi1kYW5nZXIuYWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlci5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E0NDMyYjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzg0MzYyMzsgfVxuICAuYnRuLWRhbmdlci5kaXNhYmxlZDpmb2N1cywgLmJ0bi1kYW5nZXIuZGlzYWJsZWQuZm9jdXMsIC5idG4tZGFuZ2VyOmRpc2FibGVkOmZvY3VzLCAuYnRuLWRhbmdlcjpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NDtcbiAgICBib3JkZXItY29sb3I6ICNkMjZkNTQ7IH1cbiAgLmJ0bi1kYW5nZXIuZGlzYWJsZWQ6aG92ZXIsIC5idG4tZGFuZ2VyOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDI2ZDU0O1xuICAgIGJvcmRlci1jb2xvcjogI2QyNmQ1NDsgfVxuXG4uYnRuLWRlZmF1bHQtb3V0bGluZSB7XG4gIGNvbG9yOiAjZThlOGU4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAjZThlOGU4OyB9XG4gIC5idG4tZGVmYXVsdC1vdXRsaW5lOmZvY3VzLCAuYnRuLWRlZmF1bHQtb3V0bGluZS5mb2N1cywgLmJ0bi1kZWZhdWx0LW91dGxpbmU6YWN0aXZlLCAuYnRuLWRlZmF1bHQtb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kZWZhdWx0LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4O1xuICAgIGJvcmRlci1jb2xvcjogI2U4ZThlODsgfVxuICAuYnRuLWRlZmF1bHQtb3V0bGluZTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgICBib3JkZXItY29sb3I6ICNlOGU4ZTg7IH1cbiAgLmJ0bi1kZWZhdWx0LW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZGVmYXVsdC1vdXRsaW5lLmRpc2FibGVkLmZvY3VzLCAuYnRuLWRlZmF1bHQtb3V0bGluZTpkaXNhYmxlZDpmb2N1cywgLmJ0bi1kZWZhdWx0LW91dGxpbmU6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogd2hpdGU7IH1cbiAgLmJ0bi1kZWZhdWx0LW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsIC5idG4tZGVmYXVsdC1vdXRsaW5lOmRpc2FibGVkOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHdoaXRlOyB9XG5cbi5idG4tcHJpbWFyeS1vdXRsaW5lIHtcbiAgY29sb3I6ICM0YzdmZjA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICM0YzdmZjA7IH1cbiAgLmJ0bi1wcmltYXJ5LW91dGxpbmU6Zm9jdXMsIC5idG4tcHJpbWFyeS1vdXRsaW5lLmZvY3VzLCAuYnRuLXByaW1hcnktb3V0bGluZTphY3RpdmUsIC5idG4tcHJpbWFyeS1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXByaW1hcnktb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7XG4gICAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwOyB9XG4gIC5idG4tcHJpbWFyeS1vdXRsaW5lOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwO1xuICAgIGJvcmRlci1jb2xvcjogIzRjN2ZmMDsgfVxuICAuYnRuLXByaW1hcnktb3V0bGluZS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1wcmltYXJ5LW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4tcHJpbWFyeS1vdXRsaW5lOmRpc2FibGVkOmZvY3VzLCAuYnRuLXByaW1hcnktb3V0bGluZTpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWFjMmY4OyB9XG4gIC5idG4tcHJpbWFyeS1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLCAuYnRuLXByaW1hcnktb3V0bGluZTpkaXNhYmxlZDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWFjMmY4OyB9XG5cbi5idG4tc2Vjb25kYXJ5LW91dGxpbmUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLmJ0bi1zZWNvbmRhcnktb3V0bGluZTpmb2N1cywgLmJ0bi1zZWNvbmRhcnktb3V0bGluZS5mb2N1cywgLmJ0bi1zZWNvbmRhcnktb3V0bGluZTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLmJ0bi1zZWNvbmRhcnktb3V0bGluZTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6ZGlzYWJsZWQ6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAwLjEpOyB9XG4gIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAwLjEpOyB9XG5cbi5idG4taW5mby1vdXRsaW5lIHtcbiAgY29sb3I6ICM0Y2MzZjA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICM0Y2MzZjA7IH1cbiAgLmJ0bi1pbmZvLW91dGxpbmU6Zm9jdXMsIC5idG4taW5mby1vdXRsaW5lLmZvY3VzLCAuYnRuLWluZm8tb3V0bGluZTphY3RpdmUsIC5idG4taW5mby1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWluZm8tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0Y2MzZjA7XG4gICAgYm9yZGVyLWNvbG9yOiAjNGNjM2YwOyB9XG4gIC5idG4taW5mby1vdXRsaW5lOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGNjM2YwO1xuICAgIGJvcmRlci1jb2xvcjogIzRjYzNmMDsgfVxuICAuYnRuLWluZm8tb3V0bGluZS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1pbmZvLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4taW5mby1vdXRsaW5lOmRpc2FibGVkOmZvY3VzLCAuYnRuLWluZm8tb3V0bGluZTpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWFlM2Y4OyB9XG4gIC5idG4taW5mby1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLCAuYnRuLWluZm8tb3V0bGluZTpkaXNhYmxlZDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWFlM2Y4OyB9XG5cbi5idG4tc3VjY2Vzcy1vdXRsaW5lIHtcbiAgY29sb3I6ICM3ZmMzNWM7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICM3ZmMzNWM7IH1cbiAgLmJ0bi1zdWNjZXNzLW91dGxpbmU6Zm9jdXMsIC5idG4tc3VjY2Vzcy1vdXRsaW5lLmZvY3VzLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZTphY3RpdmUsIC5idG4tc3VjY2Vzcy1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3Mtb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZmMzNWM7XG4gICAgYm9yZGVyLWNvbG9yOiAjN2ZjMzVjOyB9XG4gIC5idG4tc3VjY2Vzcy1vdXRsaW5lOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjO1xuICAgIGJvcmRlci1jb2xvcjogIzdmYzM1YzsgfVxuICAuYnRuLXN1Y2Nlc3Mtb3V0bGluZS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1zdWNjZXNzLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4tc3VjY2Vzcy1vdXRsaW5lOmRpc2FibGVkOmZvY3VzLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZTpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYmFkZWE3OyB9XG4gIC5idG4tc3VjY2Vzcy1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZTpkaXNhYmxlZDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYmFkZWE3OyB9XG5cbi5idG4td2FybmluZy1vdXRsaW5lIHtcbiAgY29sb3I6ICNmMGM1NGM7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICNmMGM1NGM7IH1cbiAgLmJ0bi13YXJuaW5nLW91dGxpbmU6Zm9jdXMsIC5idG4td2FybmluZy1vdXRsaW5lLmZvY3VzLCAuYnRuLXdhcm5pbmctb3V0bGluZTphY3RpdmUsIC5idG4td2FybmluZy1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXdhcm5pbmctb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGM1NGM7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjBjNTRjOyB9XG4gIC5idG4td2FybmluZy1vdXRsaW5lOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBjNTRjO1xuICAgIGJvcmRlci1jb2xvcjogI2YwYzU0YzsgfVxuICAuYnRuLXdhcm5pbmctb3V0bGluZS5kaXNhYmxlZDpmb2N1cywgLmJ0bi13YXJuaW5nLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4td2FybmluZy1vdXRsaW5lOmRpc2FibGVkOmZvY3VzLCAuYnRuLXdhcm5pbmctb3V0bGluZTpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjhlM2FhOyB9XG4gIC5idG4td2FybmluZy1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLCAuYnRuLXdhcm5pbmctb3V0bGluZTpkaXNhYmxlZDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjhlM2FhOyB9XG5cbi5idG4tZGFuZ2VyLW91dGxpbmUge1xuICBjb2xvcjogI2QyNmQ1NDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogI2QyNmQ1NDsgfVxuICAuYnRuLWRhbmdlci1vdXRsaW5lOmZvY3VzLCAuYnRuLWRhbmdlci1vdXRsaW5lLmZvY3VzLCAuYnRuLWRhbmdlci1vdXRsaW5lOmFjdGl2ZSwgLmJ0bi1kYW5nZXItb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kYW5nZXItb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMjZkNTQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDI2ZDU0OyB9XG4gIC5idG4tZGFuZ2VyLW91dGxpbmU6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMjZkNTQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDI2ZDU0OyB9XG4gIC5idG4tZGFuZ2VyLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZGFuZ2VyLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4tZGFuZ2VyLW91dGxpbmU6ZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZGFuZ2VyLW91dGxpbmU6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2U3YjJhNTsgfVxuICAuYnRuLWRhbmdlci1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLCAuYnRuLWRhbmdlci1vdXRsaW5lOmRpc2FibGVkOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICNlN2IyYTU7IH1cblxuLmJ0bi1saW5rIHtcbiAgY29sb3I6ICM0YzdmZjA7IH1cblxuLyogRmxvYXRpbiBCdXR0b24gKi9cbi5idG4tZmxvYXQge1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAyO1xuICBib3R0b206IDQuNXJlbTtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcmlnaHQ6IDEuNXJlbTsgfVxuICAuYnRuLWZsb2F0ID4gLm1hdGVyaWFsLWljb25zIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLyogJGNhcmRzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5jYXJkLWJsb2NrIHtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtOyB9XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0wLjM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1saW5rICsgLmNhcmQtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5jYXJkID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwOyB9XG5cbi5jYXJkID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMnB4IDJweDsgfVxuXG4uY2FyZC1oZWFkZXIge1xuICBmb250LXNpemU6IC44NnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07IH1cbiAgLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDsgfVxuXG4uY2FyZC1oZWFkZXIubm8tYmcgKyAuY2FyZC1ibG9jayB7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTsgfVxuICAuY2FyZC1mb290ZXI6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7IH1cblxuLmNhcmQtaW1nLXRvcCB7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwOyB9XG5cbi5jYXJkLWltZy1ib3R0b20ge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMnB4IDJweDsgfVxuXG4vKkJhY2tncm91bmQgdmFyaWF0aW9ucyovXG4uY2FyZC1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDtcbiAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi5jYXJkLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjO1xuICBib3JkZXItY29sb3I6ICM3ZmMzNWM7IH1cblxuLmNhcmQtaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2MzZjA7XG4gIGJvcmRlci1jb2xvcjogIzRjYzNmMDsgfVxuXG4uY2FyZC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwYzU0YztcbiAgYm9yZGVyLWNvbG9yOiAjZjBjNTRjOyB9XG5cbi5jYXJkLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMjZkNTQ7XG4gIGJvcmRlci1jb2xvcjogI2QyNmQ1NDsgfVxuXG4vKlJlbW92ZSBhbGwgYmFja2dyb3VuZHMqL1xuLmNhcmQtcHJpbWFyeS1vdXRsaW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMDsgfVxuXG4uY2FyZC1zZWNvbmRhcnktb3V0bGluZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICNmZmY7IH1cblxuLmNhcmQtaW5mby1vdXRsaW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogIzRjYzNmMDsgfVxuXG4uY2FyZC1zdWNjZXNzLW91dGxpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAjN2ZjMzVjOyB9XG5cbi5jYXJkLXdhcm5pbmctb3V0bGluZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICNmMGM1NGM7IH1cblxuLmNhcmQtZGFuZ2VyLW91dGxpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAjZDI2ZDU0OyB9XG5cbi5jYXJkLWludmVyc2UgLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLypDYXJkIGNvbnRyb2xzKi9cbi5jYXJkLWNvbnRyb2xzIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMXJlbTsgfVxuICAuY2FyZC1jb250cm9scyBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmNhcmQtY29udHJvbHMgLmNhcmQtY29sbGFwc2U6OmFmdGVyLCAuY2FyZC1jb250cm9scyAuY2FyZC1yZWZyZXNoOjphZnRlciwgLmNhcmQtY29udHJvbHMgLmNhcmQtcmVtb3ZlOjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgYm9yZGVyOiAwO1xuICAgIHJpZ2h0OiAxLjVyZW07XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgLyogU3VwcG9ydCBmb3IgYWxsIFdlYktpdCBicm93c2Vycy4gKi9cbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAvKiBTdXBwb3J0IGZvciBTYWZhcmkgYW5kIENocm9tZS4gKi9cbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIC8qIFN1cHBvcnQgZm9yIEZpcmVmb3guICovXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAvKiBTdXBwb3J0IGZvciBJRS4gKi9cbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJzsgfVxuICAuY2FyZC1jb250cm9scyAuY2FyZC1jb2xsYXBzZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdhcnJvd19kcm9wX2Rvd24nOyB9XG4gIC5jYXJkLWNvbnRyb2xzIC5jYXJkLXJlZnJlc2g6OmFmdGVyIHtcbiAgICBjb250ZW50OiAncmVmcmVzaCc7IH1cbiAgLmNhcmQtY29udHJvbHMgLmNhcmQtcmVtb3ZlOjphZnRlciB7XG4gICAgY29udGVudDogJ2Nsb3NlJzsgfVxuXG4uY2FyZC1jb2xsYXBzZWQgPiAuY2FyZC1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNhcmQtY29sbGFwc2VkID4gLmNhcmQtaGVhZGVyIC5jYXJkLWNvbGxhcHNlOjphZnRlciB7XG4gIGNvbnRlbnQ6ICdhcnJvd19kcm9wX3VwJzsgfVxuXG4uY2FyZC1yZWZyZXNoaW5nOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTsgfVxuXG4uY2FyZC1yZWZyZXNoaW5nOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGNvbnRlbnQ6ICcnO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stcHVsc2VTY2FsZU91dCAxcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay1wdWxzZVNjYWxlT3V0IDFzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEwcHggMCAwIC0xMHB4OyB9XG5cbi8qICRkcm9wZG93blxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMDcpIDAgMnB4IDVweCAwLCByZ2JhKDAsIDAsIDAsIDAuMDgpIDAgMnB4IDEwcHggMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLmRyb3Bkb3duLWl0ZW0ge1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5kcm9wZG93bi1pdGVtOmZvY3VzLCAuZHJvcGRvd24taXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMCwgMjAsIDIwLCAwLjEpOyB9XG4gIC5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlOmZvY3VzLCAuZHJvcGRvd24taXRlbS5hY3RpdmU6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMCwgMjAsIDIwLCAwLjEpOyB9XG5cbi5kcm9wZG93bi1oZWFkZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cblxuLm1lZ2EtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7IH1cbiAgLm1lZ2EtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMCAxcmVtOyB9XG4gICAgLm1lZ2EtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5tZWdhLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm1lZ2EtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbi8qICRjLWZvcm1zXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jLWlucHV0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgfVxuICAuYy1pbnB1dCA+IGlucHV0OmNoZWNrZWQgfiAuYy1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuYy1pbnB1dCA+IGlucHV0OmZvY3VzIH4gLmMtaW5kaWNhdG9yIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjA3NXJlbSAjZmZmLCAwIDAgMCAwLjE1cmVtICM0YzdmZjA7IH1cbiAgLmMtaW5wdXQgPiBpbnB1dDphY3RpdmUgfiAuYy1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4vKkluZGljYXRvciovXG4uYy1pbmRpY2F0b3Ige1xuICB0b3A6IDFweDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4wNXJlbSByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG5cbi8qQ2hlY2tib3hlcyovXG4uYy1jaGVja2JveCAuYy1pbmRpY2F0b3Ige1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLypTZWxlY3QqL1xuLmMtc2VsZWN0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHBhZGRpbmc6IDAuNTM0cmVtIDEuNzVyZW0gMC41MzRyZW0gMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5jLXNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLypGaWxlKi9cbi5maWxlLWN1c3RvbSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLmZpbGUtY3VzdG9tOjpiZWZvcmUge1xuICBjb250ZW50OiAnQnJvd3NlJztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4OyB9XG5cbi5maWxlIGlucHV0OmZvY3VzIH4gLmZpbGUtY3VzdG9tIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4wNzVyZW0gI2ZmZiwgMCAwIDAgMC4xNXJlbSAjNGM3ZmYwOyB9XG5cbi5zcGlubmVyIC5mb3JtLWNvbnRyb2wge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLyogJGZvcm1zXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7IH1cblxuLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDM4LCAzOCwgMzgsIDAuNyk7IH1cbiAgLmZvcm0tY29udHJvbDpkaXNhYmxlZCwgLmZvcm0tY29udHJvbFtyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7IH1cbiAgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODRhN2Y1O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLypGb3JtIHZhbGlkYXRpb24gc3RhdGVzKi9cbi5oYXMtc3VjY2VzcyAudGV4dC1oZWxwLFxuLmhhcy1zdWNjZXNzIC5mb3JtLWNvbnRyb2wtbGFiZWwsXG4uaGFzLXN1Y2Nlc3MgLnJhZGlvLFxuLmhhcy1zdWNjZXNzIC5jaGVja2JveCxcbi5oYXMtc3VjY2VzcyAucmFkaW8taW5saW5lLFxuLmhhcy1zdWNjZXNzIC5jaGVja2JveC1pbmxpbmUsXG4uaGFzLXN1Y2Nlc3MucmFkaW8gbGFiZWwsXG4uaGFzLXN1Y2Nlc3MuY2hlY2tib3ggbGFiZWwsXG4uaGFzLXN1Y2Nlc3MucmFkaW8taW5saW5lIGxhYmVsLFxuLmhhcy1zdWNjZXNzLmNoZWNrYm94LWlubGluZSBsYWJlbCB7XG4gIGNvbG9yOiAjN2ZjMzVjOyB9XG5cbi5oYXMtc3VjY2VzcyAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWNvbG9yOiAjN2ZjMzVjOyB9XG5cbi5oYXMtc3VjY2VzcyAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBjb2xvcjogIzdmYzM1YztcbiAgYm9yZGVyLWNvbG9yOiAjN2ZjMzVjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmYWYxOyB9XG5cbi5oYXMtc3VjY2VzcyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgY29sb3I6ICM3ZmMzNWM7IH1cblxuLmhhcy13YXJuaW5nIC50ZXh0LWhlbHAsXG4uaGFzLXdhcm5pbmcgLmZvcm0tY29udHJvbC1sYWJlbCxcbi5oYXMtd2FybmluZyAucmFkaW8sXG4uaGFzLXdhcm5pbmcgLmNoZWNrYm94LFxuLmhhcy13YXJuaW5nIC5yYWRpby1pbmxpbmUsXG4uaGFzLXdhcm5pbmcgLmNoZWNrYm94LWlubGluZSxcbi5oYXMtd2FybmluZy5yYWRpbyBsYWJlbCxcbi5oYXMtd2FybmluZy5jaGVja2JveCBsYWJlbCxcbi5oYXMtd2FybmluZy5yYWRpby1pbmxpbmUgbGFiZWwsXG4uaGFzLXdhcm5pbmcuY2hlY2tib3gtaW5saW5lIGxhYmVsIHtcbiAgY29sb3I6ICNmMGM1NGM7IH1cblxuLmhhcy13YXJuaW5nIC5mb3JtLWNvbnRyb2wge1xuICBib3JkZXItY29sb3I6ICNmMGM1NGM7IH1cblxuLmhhcy13YXJuaW5nIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIGNvbG9yOiAjZjBjNTRjO1xuICBib3JkZXItY29sb3I6ICNmMGM1NGM7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi5oYXMtd2FybmluZyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgY29sb3I6ICNmMGM1NGM7IH1cblxuLmhhcy1kYW5nZXIgLnRleHQtaGVscCxcbi5oYXMtZGFuZ2VyIC5mb3JtLWNvbnRyb2wtbGFiZWwsXG4uaGFzLWRhbmdlciAucmFkaW8sXG4uaGFzLWRhbmdlciAuY2hlY2tib3gsXG4uaGFzLWRhbmdlciAucmFkaW8taW5saW5lLFxuLmhhcy1kYW5nZXIgLmNoZWNrYm94LWlubGluZSxcbi5oYXMtZGFuZ2VyLnJhZGlvIGxhYmVsLFxuLmhhcy1kYW5nZXIuY2hlY2tib3ggbGFiZWwsXG4uaGFzLWRhbmdlci5yYWRpby1pbmxpbmUgbGFiZWwsXG4uaGFzLWRhbmdlci5jaGVja2JveC1pbmxpbmUgbGFiZWwge1xuICBjb2xvcjogI2QyNmQ1NDsgfVxuXG4uaGFzLWRhbmdlciAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWNvbG9yOiAjZDI2ZDU0OyB9XG5cbi5oYXMtZGFuZ2VyIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIGNvbG9yOiAjZDI2ZDU0O1xuICBib3JkZXItY29sb3I6ICNkMjZkNTQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGY3ZjY7IH1cblxuLmhhcy1kYW5nZXIgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIGNvbG9yOiAjZDI2ZDU0OyB9XG5cbi8qICRpbnB1dC1ncm91cHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICB6LWluZGV4OiAyOyB9XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4OyB9XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7IH1cblxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cCB7XG4gIG1hcmdpbi1yaWdodDogLS4xMjVyZW07IH1cblxuLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMywgMywgMywgMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi8qICRsYWJlbHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5sYWJlbC1kZWZhdWx0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODsgfVxuICAubGFiZWwtZGVmYXVsdFtocmVmXTpmb2N1cywgLmxhYmVsLWRlZmF1bHRbaHJlZl06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmNmY2Y7IH1cblxuLmxhYmVsLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG4gIC5sYWJlbC1wcmltYXJ5W2hyZWZdOmZvY3VzLCAubGFiZWwtcHJpbWFyeVtocmVmXTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYzsgfVxuXG4ubGFiZWwtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZmMzNWM7IH1cbiAgLmxhYmVsLXN1Y2Nlc3NbaHJlZl06Zm9jdXMsIC5sYWJlbC1zdWNjZXNzW2hyZWZdOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjVhZDNmOyB9XG5cbi5sYWJlbC1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjYzNmMDsgfVxuICAubGFiZWwtaW5mb1tocmVmXTpmb2N1cywgLmxhYmVsLWluZm9baHJlZl06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxZGIzZWM7IH1cblxuLmxhYmVsLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBjNTRjOyB9XG4gIC5sYWJlbC13YXJuaW5nW2hyZWZdOmZvY3VzLCAubGFiZWwtd2FybmluZ1tocmVmXTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjYjYxZDsgfVxuXG4ubGFiZWwtZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NDsgfVxuICAubGFiZWwtZGFuZ2VyW2hyZWZdOmZvY3VzLCAubGFiZWwtZGFuZ2VyW2hyZWZdOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzA0ZjMzOyB9XG5cbi8qICRsaXN0Z3JvdXBcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4OyB9XG4gIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7IH1cblxuYS5saXN0LWdyb3VwLWl0ZW06aG92ZXIsXG5hLmxpc3QtZ3JvdXAtaXRlbTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHtcbiAgY29sb3I6ICM0Zjg3MzI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkN2VjY2M7IH1cblxuYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7XG4gIGNvbG9yOiAjNGY4NzMyOyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzOmZvY3VzLCBhLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3M6Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzczpob3ZlciB7XG4gICAgY29sb3I6ICM0Zjg3MzI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M4ZTViOTsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmFjdGl2ZSwgYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsIGEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGY4NzMyO1xuICAgIGJvcmRlci1jb2xvcjogIzRmODczMjsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLWluZm8ge1xuICBjb2xvcjogIzExOTRjNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZjJmYzsgfVxuXG5hLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLFxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHtcbiAgY29sb3I6ICMxMTk0YzU7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0taW5mbyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mbyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLWluZm86Zm9jdXMsIGEubGlzdC1ncm91cC1pdGVtLWluZm86aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mbzpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1pbmZvOmhvdmVyIHtcbiAgICBjb2xvcjogIzExOTRjNTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzJlYWZhOyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLWluZm8uYWN0aXZlLCBhLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmFjdGl2ZTpmb2N1cywgYS5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmU6aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmUsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmU6Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmU6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMTk0YzU7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTE5NGM1OyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZyB7XG4gIGNvbG9yOiAjYzU5NjExO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmM2Q5OyB9XG5cbmEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcsXG5idXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcge1xuICBjb2xvcjogI2M1OTYxMTsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZzpmb2N1cywgYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZzpob3ZlcixcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nOmZvY3VzLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmc6aG92ZXIge1xuICAgIGNvbG9yOiAjYzU5NjExO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWViYzI7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5hY3RpdmUsIGEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcuYWN0aXZlOmZvY3VzLCBhLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZTpob3ZlcixcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZTpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M1OTYxMTtcbiAgICBib3JkZXItY29sb3I6ICNjNTk2MTE7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIge1xuICBjb2xvcjogIzk4M2UyODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZDRjZDsgfVxuXG5hLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIsXG5idXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlciB7XG4gIGNvbG9yOiAjOTgzZTI4OyB9XG4gIGEubGlzdC1ncm91cC1pdGVtLWRhbmdlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmZvY3VzLCBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXI6aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmZvY3VzLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlcjpob3ZlciB7XG4gICAgY29sb3I6ICM5ODNlMjg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkYzNiOTsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlLCBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmZvY3VzLCBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmhvdmVyLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5hY3RpdmUsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmFjdGl2ZTpmb2N1cyxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTgzZTI4O1xuICAgIGJvcmRlci1jb2xvcjogIzk4M2UyODsgfVxuXG4vKiAkbW9kYWxcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1vZGFsLWNvbnRlbnQge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cblxuLyogJG5hdmJhclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiAkbmF2c1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBOYXZzICovXG4ubmF2ID4gbGkgPiBhOmhvdmVyLFxuLm5hdiA+IGxpID4gYTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi8qIFBpbGxzICovXG4ubmF2LXBpbGxzIC5uYXYtbGluayB7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubmF2LXBpbGxzIC5uYXYtbGluay5hY3RpdmUsIC5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZTpmb2N1cywgLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlOmhvdmVyLFxuLm5hdi1waWxscyAubmF2LWl0ZW0ub3BlbiAubmF2LWxpbmssXG4ubmF2LXBpbGxzIC5uYXYtaXRlbS5vcGVuIC5uYXYtbGluazpmb2N1cyxcbi5uYXYtcGlsbHMgLm5hdi1pdGVtLm9wZW4gLm5hdi1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi8qIFRhYnMgKi9cbi5uYXYtdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlcjogMDsgfVxuICAubmF2LXRhYnMgLm5hdi1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAubmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHggM3B4IDAgMDsgfVxuICAgICAgLm5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIsIC5uYXYtdGFicyAubmF2LWl0ZW0gLm5hdi1saW5rOmhvdmVyLCAubmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluazpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuICAgICAgLm5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi50YWItY29udGVudCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG5cbi8qICRwYWdpbmF0aW9uXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wYWdpbmF0aW9uIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMnB4OyB9XG5cbi5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDsgfVxuXG4ucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rLCAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rOmZvY3VzLCAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6ICM0YzdmZjA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rLCAucGFnZS1pdGVtLmRpc2FibGVkIC5wYWdlLWxpbms6Zm9jdXMsIC5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7IH1cblxuLnBhZ2UtbGluayB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5wYWdlLWxpbms6Zm9jdXMsIC5wYWdlLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi5uZy10YWJsZS1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qICRwb3BvdmVyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wb3BvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJveC1zaGFkb3c6IDAgMC4wNjI1cmVtIDAuMDYyNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLnBvcG92ZXItdGl0bGUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZBRkJGRDsgfVxuXG4ucG9wb3Zlci1jb250ZW50Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7IH1cblxuLyogJHByb2dyZXNzLWJhclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucHJvZ3Jlc3Mge1xuICBoZWlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4ucHJvZ3Jlc3Mtc3VjY2Vzc1t2YWx1ZV06Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjOyB9XG5cbi5wcm9ncmVzcy1zdWNjZXNzW3ZhbHVlXTo6LW1vei1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgLnByb2dyZXNzLXN1Y2Nlc3MgLnByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdmYzM1YzsgfSB9XG5cbi5wcm9ncmVzcy1pbmZvW3ZhbHVlXTo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2MzZjA7IH1cblxuLnByb2dyZXNzLWluZm9bdmFsdWVdOjotbW96LXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2MzZjA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAucHJvZ3Jlc3MtaW5mbyAucHJvZ3Jlc3MtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGNjM2YwOyB9IH1cblxuLnByb2dyZXNzLXdhcm5pbmdbdmFsdWVdOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwYzU0YzsgfVxuXG4ucHJvZ3Jlc3Mtd2FybmluZ1t2YWx1ZV06Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwYzU0YzsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gIC5wcm9ncmVzcy13YXJuaW5nIC5wcm9ncmVzcy1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGM1NGM7IH0gfVxuXG4ucHJvZ3Jlc3MtZGFuZ2VyW3ZhbHVlXTo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMjZkNTQ7IH1cblxuLnByb2dyZXNzLWRhbmdlclt2YWx1ZV06Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gIC5wcm9ncmVzcy1kYW5nZXIgLnByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NDsgfSB9XG5cbi8qICR0YWJsZXNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnRhYmxlIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyB9XG4gIC50YWJsZSB0aCxcbiAgLnRhYmxlIHRkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAudGFibGUgdGhlYWQgdGgsXG4gIC50YWJsZSB0Zm9vdCB0aCB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNSwgMTUsIDE1LCAwLjEpOyB9XG5cbi50YWJsZS1zdHJpcGVkID4gdGJvZHkgPiB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1LCAxNSwgMTUsIDAuMSk7IH1cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLnRhYmxlLWJvcmRlcmVkIHRoLFxuICAudGFibGUtYm9yZGVyZWQgdGQge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAudGFibGUtYm9yZGVyZWQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnRhYmxlLWJvcmRlcmVkIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgLnRhYmxlLWJvcmRlcmVkIHRoOmxhc3QtY2hpbGQsXG4gICAgLnRhYmxlLWJvcmRlcmVkIHRkOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC50YWJsZS1ib3JkZXJlZCB0aGVhZCB0aCxcbiAgLnRhYmxlLWJvcmRlcmVkIHRoZWFkIHRkIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cblxuLnRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4udGFibGUtYWN0aXZlLFxuLnRhYmxlLWFjdGl2ZSA+IHRoLFxuLnRhYmxlLWFjdGl2ZSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYmRiZGI7IH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0ZCxcbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RiZGJkYjsgfVxuXG4udGFibGUtc3VjY2Vzcyxcbi50YWJsZS1zdWNjZXNzID4gdGgsXG4udGFibGUtc3VjY2VzcyA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmYzM1YzsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzBiYzQ5OyB9XG4gIC50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciA+IHRkLFxuICAudGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzcwYmM0OTsgfVxuXG4udGFibGUtaW5mbyxcbi50YWJsZS1pbmZvID4gdGgsXG4udGFibGUtaW5mbyA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjYzNmMDsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzRiYmVlOyB9XG4gIC50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlciA+IHRkLFxuICAudGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM0YmJlZTsgfVxuXG4udGFibGUtd2FybmluZyxcbi50YWJsZS13YXJuaW5nID4gdGgsXG4udGFibGUtd2FybmluZyA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwYzU0YzsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWViZDM0OyB9XG4gIC50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciA+IHRkLFxuICAudGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlYmQzNDsgfVxuXG4udGFibGUtZGFuZ2VyLFxuLnRhYmxlLWRhbmdlciA+IHRoLFxuLnRhYmxlLWRhbmdlciA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NDsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWRhbmdlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZDVjNDA7IH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0ZCxcbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NkNWM0MDsgfVxuXG4vKiBObyBNb3JlIHRhYmxlcyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC8qIFNvdXJjZTo6IGh0dHA6Ly9lbHZlcnkubmV0L2RlbW8vcmVzcG9uc2l2ZS10YWJsZXMvI25vLW1vcmUtdGFibGVzICovXG4gIC8qIEZvcmNlIHRhYmxlIHRvIG5vdCBiZSBsaWtlIHRhYmxlcyBhbnltb3JlICovXG4gIC5uby1tb3JlLXRhYmxlcyB0YWJsZSxcbiAgLm5vLW1vcmUtdGFibGVzIHRoZWFkLFxuICAubm8tbW9yZS10YWJsZXMgdGJvZHksXG4gIC5uby1tb3JlLXRhYmxlcyB0aCxcbiAgLm5vLW1vcmUtdGFibGVzIHRkLFxuICAubm8tbW9yZS10YWJsZXMgdHIge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC8qIEhpZGUgdGFibGUgaGVhZGVycyAoYnV0IG5vdCBkaXNwbGF5OiBub25lOywgZm9yIGFjY2Vzc2liaWxpdHkpICovXG4gIC5uby1tb3JlLXRhYmxlcyB0aGVhZCB0ciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTk5OTlweDtcbiAgICBsZWZ0OiAtOTk5OXB4OyB9XG4gIC5uby1tb3JlLXRhYmxlcyB0ciB7XG4gICAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5uby1tb3JlLXRhYmxlcyB0ZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gICAgLyogQmVoYXZlICBsaWtlIGEgXCJyb3dcIiAqL1xuICAgIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuICAubm8tbW9yZS10YWJsZXMgdGQ6YmVmb3JlIHtcbiAgICAvKiBOb3cgbGlrZSBhIHRhYmxlIGhlYWRlciAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvKiBUb3AvbGVmdCB2YWx1ZXMgbWltaWMgcGFkZGluZyAqL1xuICAgIHRvcDogMC4zNzVyZW07XG4gICAgbGVmdDogMC4zNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgd2lkdGg6IDQ1JTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAvKiBMYWJlbCB0aGUgZGF0YSAqL1xuICAubm8tbW9yZS10YWJsZXMgdGQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtdGl0bGUpOyB9IH1cblxuLyogJHRvb2x0aXBcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogJGNvbG9yc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBDb2xvciBWYXJpYW50OiBEYXJrICovXG4uYmctZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzVhNmMgIWltcG9ydGFudDsgfVxuXG5hLmJnLWRhcms6Zm9jdXMsIGEuYmctZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZDQyNGY7IH1cblxuLmJnLWRhcmstZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ODRlNWUgIWltcG9ydGFudDsgfVxuXG5hLmJnLWRhcmstZGFyazpmb2N1cywgYS5iZy1kYXJrLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzNjQxOyB9XG5cbi5iZy1kYXJrLWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZDQyNGYgIWltcG9ydGFudDsgfVxuXG5hLmJnLWRhcmstZGFya2VyOmZvY3VzLCBhLmJnLWRhcmstZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MmEzMjsgfVxuXG4uYmctZGFyay1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZTY2N2EgIWltcG9ydGFudDsgfVxuXG5hLmJnLWRhcmstbGlnaHQ6Zm9jdXMsIGEuYmctZGFyay1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ODRlNWU7IH1cblxuLmJnLWRhcmstbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2OTcyODkgIWltcG9ydGFudDsgfVxuXG5hLmJnLWRhcmstbGlnaHRlcjpmb2N1cywgYS5iZy1kYXJrLWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1YTZjOyB9XG5cbi8qIENvbG9yIFZhcmlhbnQ6IFByaW1hcnkgKi9cbi5iZy1wcmltYXJ5IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHJpbWFyeTpmb2N1cywgYS5iZy1wcmltYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYzsgfVxuXG4uYmctcHJpbWFyeS1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0NmVlZSAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHJpbWFyeS1kYXJrOmZvY3VzLCBhLmJnLXByaW1hcnktZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMzUxZGQ7IH1cblxuLmJnLXByaW1hcnktZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYyAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHJpbWFyeS1kYXJrZXI6Zm9jdXMsIGEuYmctcHJpbWFyeS1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE0OWM1OyB9XG5cbi5iZy1wcmltYXJ5LWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY0OTBmMiAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHJpbWFyeS1saWdodDpmb2N1cywgYS5iZy1wcmltYXJ5LWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0NmVlZTsgfVxuXG4uYmctcHJpbWFyeS1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdiYTFmNCAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHJpbWFyeS1saWdodGVyOmZvY3VzLCBhLmJnLXByaW1hcnktbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLyogQ29sb3IgVmFyaWFudDogRGVmYXVsdCAqL1xuLmJnLWRlZmF1bHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1kZWZhdWx0OmZvY3VzLCBhLmJnLWRlZmF1bHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZjZmNmOyB9XG5cbi5iZy1kZWZhdWx0LWRhcmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJkYmRiICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1kZWZhdWx0LWRhcms6Zm9jdXMsIGEuYmctZGVmYXVsdC1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MyYzJjMjsgfVxuXG4uYmctZGVmYXVsdC1kYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZjZmNmICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1kZWZhdWx0LWRhcmtlcjpmb2N1cywgYS5iZy1kZWZhdWx0LWRhcmtlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiNWI1YjU7IH1cblxuLmJnLWRlZmF1bHQtbGlnaHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1kZWZhdWx0LWxpZ2h0OmZvY3VzLCBhLmJnLWRlZmF1bHQtbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJkYmRiOyB9XG5cbi5iZy1kZWZhdWx0LWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVmYXVsdC1saWdodGVyOmZvY3VzLCBhLmJnLWRlZmF1bHQtbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cblxuLyogQ29sb3IgVmFyaWFudDogV2FybmluZyAqL1xuLmJnLXdhcm5pbmcge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBjNTRjICFpbXBvcnRhbnQ7IH1cblxuYS5iZy13YXJuaW5nOmZvY3VzLCBhLmJnLXdhcm5pbmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNiNjFkOyB9XG5cbi5iZy13YXJuaW5nLWRhcmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWViZDM0ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy13YXJuaW5nLWRhcms6Zm9jdXMsIGEuYmctd2FybmluZy1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkYTgxMzsgfVxuXG4uYmctd2FybmluZy1kYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNiNjFkICFpbXBvcnRhbnQ7IH1cblxuYS5iZy13YXJuaW5nLWRhcmtlcjpmb2N1cywgYS5iZy13YXJuaW5nLWRhcmtlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNTk2MTE7IH1cblxuLmJnLXdhcm5pbmctbGlnaHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJjZDY0ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy13YXJuaW5nLWxpZ2h0OmZvY3VzLCBhLmJnLXdhcm5pbmctbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWViZDM0OyB9XG5cbi5iZy13YXJuaW5nLWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRkNDdiICFpbXBvcnRhbnQ7IH1cblxuYS5iZy13YXJuaW5nLWxpZ2h0ZXI6Zm9jdXMsIGEuYmctd2FybmluZy1saWdodGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwYzU0YzsgfVxuXG4vKiBDb2xvciBWYXJpYW50OiBTdWNjZXNzICovXG4uYmctc3VjY2VzcyB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZmMzNWMgIWltcG9ydGFudDsgfVxuXG5hLmJnLXN1Y2Nlc3M6Zm9jdXMsIGEuYmctc3VjY2Vzczpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NWFkM2Y7IH1cblxuLmJnLXN1Y2Nlc3MtZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3MGJjNDkgIWltcG9ydGFudDsgfVxuXG5hLmJnLXN1Y2Nlc3MtZGFyazpmb2N1cywgYS5iZy1zdWNjZXNzLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE5YTM5OyB9XG5cbi5iZy1zdWNjZXNzLWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NWFkM2YgIWltcG9ydGFudDsgfVxuXG5hLmJnLXN1Y2Nlc3MtZGFya2VyOmZvY3VzLCBhLmJnLXN1Y2Nlc3MtZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRmODczMjsgfVxuXG4uYmctc3VjY2Vzcy1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ZWNhNmYgIWltcG9ydGFudDsgfVxuXG5hLmJnLXN1Y2Nlc3MtbGlnaHQ6Zm9jdXMsIGEuYmctc3VjY2Vzcy1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3MGJjNDk7IH1cblxuLmJnLXN1Y2Nlc3MtbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5Y2QxODEgIWltcG9ydGFudDsgfVxuXG5hLmJnLXN1Y2Nlc3MtbGlnaHRlcjpmb2N1cywgYS5iZy1zdWNjZXNzLWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjOyB9XG5cbi8qIENvbG9yIFZhcmlhbnQ6IEluZm8gKi9cbi5iZy1pbmZvIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjYzNmMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctaW5mbzpmb2N1cywgYS5iZy1pbmZvOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkYjNlYzsgfVxuXG4uYmctaW5mby1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0YmJlZSAhaW1wb3J0YW50OyB9XG5cbmEuYmctaW5mby1kYXJrOmZvY3VzLCBhLmJnLWluZm8tZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxM2E1ZGQ7IH1cblxuLmJnLWluZm8tZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkYjNlYyAhaW1wb3J0YW50OyB9XG5cbmEuYmctaW5mby1kYXJrZXI6Zm9jdXMsIGEuYmctaW5mby1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE5NGM1OyB9XG5cbi5iZy1pbmZvLWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY0Y2JmMiAhaW1wb3J0YW50OyB9XG5cbmEuYmctaW5mby1saWdodDpmb2N1cywgYS5iZy1pbmZvLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0YmJlZTsgfVxuXG4uYmctaW5mby1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdiZDNmNCAhaW1wb3J0YW50OyB9XG5cbmEuYmctaW5mby1saWdodGVyOmZvY3VzLCBhLmJnLWluZm8tbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2MzZjA7IH1cblxuLyogQ29sb3IgVmFyaWFudDogRGFuZ2VyICovXG4uYmctZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NCAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGFuZ2VyOmZvY3VzLCBhLmJnLWRhbmdlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMDRmMzM7IH1cblxuLmJnLWRhbmdlci1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NkNWM0MCAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGFuZ2VyLWRhcms6Zm9jdXMsIGEuYmctZGFuZ2VyLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWM0NjJkOyB9XG5cbi5iZy1kYW5nZXItZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MwNGYzMyAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGFuZ2VyLWRhcmtlcjpmb2N1cywgYS5iZy1kYW5nZXItZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk4M2UyODsgfVxuXG4uYmctZGFuZ2VyLWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q3N2U2OCAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGFuZ2VyLWxpZ2h0OmZvY3VzLCBhLmJnLWRhbmdlci1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZDVjNDA7IH1cblxuLmJnLWRhbmdlci1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkOGY3YyAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGFuZ2VyLWxpZ2h0ZXI6Zm9jdXMsIGEuYmctZGFuZ2VyLWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDI2ZDU0OyB9XG5cbi8qIENvbG9yIFZhcmlhbnQ6IFdoaXRlICovXG4uYmctd2hpdGUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7IH1cblxuLyogRXh0cmEgcGFsZXR0ZSBjb2xvcnMgKi9cbi5iZy1yZWQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjQ0MzM2ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1yZWQ6Zm9jdXMsIGEuYmctcmVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhMWMwZDsgfVxuXG4uYmctcmVkLWRhcmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjMyYzFlICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1yZWQtZGFyazpmb2N1cywgYS5iZy1yZWQtZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMjE5MGI7IH1cblxuLmJnLXJlZC1kYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWExYzBkICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1yZWQtZGFya2VyOmZvY3VzLCBhLmJnLXJlZC1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmExNjBhOyB9XG5cbi5iZy1yZWQtbGlnaHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjU1YTRlICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1yZWQtbGlnaHQ6Zm9jdXMsIGEuYmctcmVkLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzMmMxZTsgfVxuXG4uYmctcmVkLWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjc3MDY2ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1yZWQtbGlnaHRlcjpmb2N1cywgYS5iZy1yZWQtbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNDQzMzY7IH1cblxuLmJnLXBpbmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTkxZTYzICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1waW5rOmZvY3VzLCBhLmJnLXBpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzExMzRlOyB9XG5cbi5iZy1waW5rLWRhcmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDgxNTU4ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1waW5rLWRhcms6Zm9jdXMsIGEuYmctcGluay1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhMTE0NTsgfVxuXG4uYmctcGluay1kYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzExMzRlICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1waW5rLWRhcmtlcjpmb2N1cywgYS5iZy1waW5rLWRhcmtlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MzBlM2I7IH1cblxuLmJnLXBpbmstbGlnaHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIzNTczICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1waW5rLWxpZ2h0OmZvY3VzLCBhLmJnLXBpbmstbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDgxNTU4OyB9XG5cbi5iZy1waW5rLWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWU0YzgzICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1waW5rLWxpZ2h0ZXI6Zm9jdXMsIGEuYmctcGluay1saWdodGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5MWU2MzsgfVxuXG4uYmctcHVycGxlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzljMjdiMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHVycGxlOmZvY3VzLCBhLmJnLXB1cnBsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NzFlODY7IH1cblxuLmJnLXB1cnBsZS1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg5MjI5YiAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHVycGxlLWRhcms6Zm9jdXMsIGEuYmctcHVycGxlLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQxOTcxOyB9XG5cbi5iZy1wdXJwbGUtZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc3MWU4NiAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHVycGxlLWRhcmtlcjpmb2N1cywgYS5iZy1wdXJwbGUtZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUyMTQ1ZDsgfVxuXG4uYmctcHVycGxlLWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FmMmNjNSAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHVycGxlLWxpZ2h0OmZvY3VzLCBhLmJnLXB1cnBsZS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4OTIyOWI7IH1cblxuLmJnLXB1cnBsZS1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjMzdkMyAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHVycGxlLWxpZ2h0ZXI6Zm9jdXMsIGEuYmctcHVycGxlLWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWMyN2IwOyB9XG5cbi5iZy1kZWVwcHVycGxlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY3M2FiNyAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcHB1cnBsZTpmb2N1cywgYS5iZy1kZWVwcHVycGxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUxMmU5MDsgfVxuXG4uYmctZGVlcHB1cnBsZS1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjMzRhNCAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcHB1cnBsZS1kYXJrOmZvY3VzLCBhLmJnLWRlZXBwdXJwbGUtZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NjI4N2Q7IH1cblxuLmJnLWRlZXBwdXJwbGUtZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUxMmU5MCAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcHB1cnBsZS1kYXJrZXI6Zm9jdXMsIGEuYmctZGVlcHB1cnBsZS1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2IyMTZhOyB9XG5cbi5iZy1kZWVwcHVycGxlLWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc0NDZjNCAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcHB1cnBsZS1saWdodDpmb2N1cywgYS5iZy1kZWVwcHVycGxlLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjMzRhNDsgfVxuXG4uYmctZGVlcHB1cnBsZS1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgyNTljYiAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcHB1cnBsZS1saWdodGVyOmZvY3VzLCBhLmJnLWRlZXBwdXJwbGUtbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NzNhYjc7IH1cblxuLmJnLWluZGlnbyB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZjUxYjUgIWltcG9ydGFudDsgfVxuXG5hLmJnLWluZGlnbzpmb2N1cywgYS5iZy1pbmRpZ286aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzI0MDhmOyB9XG5cbi5iZy1pbmRpZ28tZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODQ5YTIgIWltcG9ydGFudDsgfVxuXG5hLmJnLWluZGlnby1kYXJrOmZvY3VzLCBhLmJnLWluZGlnby1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJiMzg3YzsgfVxuXG4uYmctaW5kaWdvLWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjQwOGYgIWltcG9ydGFudDsgfVxuXG5hLmJnLWluZGlnby1kYXJrZXI6Zm9jdXMsIGEuYmctaW5kaWdvLWRhcmtlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTJmNjk7IH1cblxuLmJnLWluZGlnby1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZDVlYzEgIWltcG9ydGFudDsgfVxuXG5hLmJnLWluZGlnby1saWdodDpmb2N1cywgYS5iZy1pbmRpZ28tbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg0OWEyOyB9XG5cbi5iZy1pbmRpZ28tbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MDZmYzcgIWltcG9ydGFudDsgfVxuXG5hLmJnLWluZGlnby1saWdodGVyOmZvY3VzLCBhLmJnLWluZGlnby1saWdodGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNmNTFiNTsgfVxuXG4uYmctYmx1ZSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk2ZjMgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWU6Zm9jdXMsIGEuYmctYmx1ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzdjZDU7IH1cblxuLmJnLWJsdWUtZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDhhZWUgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWUtZGFyazpmb2N1cywgYS5iZy1ibHVlLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGE2ZWJkOyB9XG5cbi5iZy1ibHVlLWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzdjZDUgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWUtZGFya2VyOmZvY3VzLCBhLmJnLWJsdWUtZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA5NjBhNTsgfVxuXG4uYmctYmx1ZS1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOWExZjQgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWUtbGlnaHQ6Zm9jdXMsIGEuYmctYmx1ZS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDhhZWU7IH1cblxuLmJnLWJsdWUtbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MWFkZjYgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWUtbGlnaHRlcjpmb2N1cywgYS5iZy1ibHVlLWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NmYzOyB9XG5cbi5iZy1saWdodGJsdWUge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDNhOWY0ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGJsdWU6Zm9jdXMsIGEuYmctbGlnaHRibHVlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAyODZjMjsgfVxuXG4uYmctbGlnaHRibHVlLWRhcmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDM5OGRiICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGJsdWUtZGFyazpmb2N1cywgYS5iZy1saWdodGJsdWUtZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMjc1YTg7IH1cblxuLmJnLWxpZ2h0Ymx1ZS1kYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI4NmMyICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGJsdWUtZGFya2VyOmZvY3VzLCBhLmJnLWxpZ2h0Ymx1ZS1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI2MzhmOyB9XG5cbi5iZy1saWdodGJsdWUtbGlnaHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTRiNGZjICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGJsdWUtbGlnaHQ6Zm9jdXMsIGEuYmctbGlnaHRibHVlLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAzOThkYjsgfVxuXG4uYmctbGlnaHRibHVlLWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmViY2ZjICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGJsdWUtbGlnaHRlcjpmb2N1cywgYS5iZy1saWdodGJsdWUtbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwM2E5ZjQ7IH1cblxuLmJnLWN5YW4ge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiY2Q0ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1jeWFuOmZvY3VzLCBhLmJnLWN5YW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4ZmExOyB9XG5cbi5iZy1jeWFuLWRhcmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNWJiICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1jeWFuLWRhcms6Zm9jdXMsIGEuYmctY3lhbi1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzg4ODsgfVxuXG4uYmctY3lhbi1kYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4ZmExICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1jeWFuLWRhcmtlcjpmb2N1cywgYS5iZy1jeWFuLWRhcmtlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDYyNmU7IH1cblxuLmJnLWN5YW4tbGlnaHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBkM2VlICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1jeWFuLWxpZ2h0OmZvY3VzLCBhLmJnLWN5YW4tbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNWJiOyB9XG5cbi5iZy1jeWFuLWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDhlM2ZmICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1jeWFuLWxpZ2h0ZXI6Zm9jdXMsIGEuYmctY3lhbi1saWdodGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmNkNDsgfVxuXG4uYmctdGVhbCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDk2ODggIWltcG9ydGFudDsgfVxuXG5hLmJnLXRlYWw6Zm9jdXMsIGEuYmctdGVhbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDYzNWE7IH1cblxuLmJnLXRlYWwtZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdkNzEgIWltcG9ydGFudDsgfVxuXG5hLmJnLXRlYWwtZGFyazpmb2N1cywgYS5iZy10ZWFsLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0YTQzOyB9XG5cbi5iZy10ZWFsLWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDYzNWEgIWltcG9ydGFudDsgfVxuXG5hLmJnLXRlYWwtZGFya2VyOmZvY3VzLCBhLmJnLXRlYWwtZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzAyYzsgfVxuXG4uYmctdGVhbC1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGIwOWYgIWltcG9ydGFudDsgfVxuXG5hLmJnLXRlYWwtbGlnaHQ6Zm9jdXMsIGEuYmctdGVhbC1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdkNzE7IH1cblxuLmJnLXRlYWwtbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGM5YjYgIWltcG9ydGFudDsgfVxuXG5hLmJnLXRlYWwtbGlnaHRlcjpmb2N1cywgYS5iZy10ZWFsLWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5Njg4OyB9XG5cbi5iZy1ncmVlbiB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2FmNTAgIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZWVuOmZvY3VzLCBhLmJnLWdyZWVuOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNkOGI0MDsgfVxuXG4uYmctZ3JlZW4tZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDlkNDggIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZWVuLWRhcms6Zm9jdXMsIGEuYmctZ3JlZW4tZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNTdhMzg7IH1cblxuLmJnLWdyZWVuLWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZDhiNDAgIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZWVuLWRhcmtlcjpmb2N1cywgYS5iZy1ncmVlbi1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQ2ODJmOyB9XG5cbi5iZy1ncmVlbi1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NjAgIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZWVuLWxpZ2h0OmZvY3VzLCBhLmJnLWdyZWVuLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0OWQ0ODsgfVxuXG4uYmctZ3JlZW4tbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZWMwNzEgIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZWVuLWxpZ2h0ZXI6Zm9jdXMsIGEuYmctZ3JlZW4tbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2FmNTA7IH1cblxuLmJnLWxpZ2h0Z3JlZW4ge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzRkMTA4ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGdyZWVuOmZvY3VzLCBhLmJnLWxpZ2h0Z3JlZW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTlhMDA2OyB9XG5cbi5iZy1saWdodGdyZWVuLWRhcmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZiODA3ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGdyZWVuLWRhcms6Zm9jdXMsIGEuYmctbGlnaHRncmVlbi1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRiODcwNTsgfVxuXG4uYmctbGlnaHRncmVlbi1kYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTlhMDA2ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGdyZWVuLWRhcmtlcjpmb2N1cywgYS5iZy1saWdodGdyZWVuLWRhcmtlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZDZmMDQ7IH1cblxuLmJnLWxpZ2h0Z3JlZW4tbGlnaHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODJlYTA5ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGdyZWVuLWxpZ2h0OmZvY3VzLCBhLmJnLWxpZ2h0Z3JlZW4tbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZiODA3OyB9XG5cbi5iZy1saWdodGdyZWVuLWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGVmNjE2ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1saWdodGdyZWVuLWxpZ2h0ZXI6Zm9jdXMsIGEuYmctbGlnaHRncmVlbi1saWdodGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc0ZDEwODsgfVxuXG4uYmctbGltZSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZGRjMzkgIWltcG9ydGFudDsgfVxuXG5hLmJnLWxpbWU6Zm9jdXMsIGEuYmctbGltZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMmMwMjI7IH1cblxuLmJnLWxpbWUtZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNmQ2MjYgIWltcG9ydGFudDsgfVxuXG5hLmJnLWxpbWUtZGFyazpmb2N1cywgYS5iZy1saW1lLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWRhYTFlOyB9XG5cbi5iZy1saW1lLWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMmMwMjIgIWltcG9ydGFudDsgfVxuXG5hLmJnLWxpbWUtZGFya2VyOmZvY3VzLCBhLmJnLWxpbWUtZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg5OTUxYTsgfVxuXG4uYmctbGltZS1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMmUwNGYgIWltcG9ydGFudDsgfVxuXG5hLmJnLWxpbWUtbGlnaHQ6Zm9jdXMsIGEuYmctbGltZS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNmQ2MjY7IH1cblxuLmJnLWxpbWUtbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOGU0NjQgIWltcG9ydGFudDsgfVxuXG5hLmJnLWxpbWUtbGlnaHRlcjpmb2N1cywgYS5iZy1saW1lLWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2RkYzM5OyB9XG5cbi5iZy15ZWxsb3cge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlYjNiICFpbXBvcnRhbnQ7IH1cblxuYS5iZy15ZWxsb3c6Zm9jdXMsIGEuYmcteWVsbG93OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTYwODsgfVxuXG4uYmcteWVsbG93LWRhcmsge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlODIyICFpbXBvcnRhbnQ7IH1cblxuYS5iZy15ZWxsb3ctZGFyazpmb2N1cywgYS5iZy15ZWxsb3ctZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWQ1MDA7IH1cblxuLmJnLXllbGxvdy1kYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlNjA4ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy15ZWxsb3ctZGFya2VyOmZvY3VzLCBhLmJnLXllbGxvdy1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRiZTAwOyB9XG5cbi5iZy15ZWxsb3ctbGlnaHQge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZTU1ICFpbXBvcnRhbnQ7IH1cblxuYS5iZy15ZWxsb3ctbGlnaHQ6Zm9jdXMsIGEuYmcteWVsbG93LWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTgyMjsgfVxuXG4uYmcteWVsbG93LWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmMDZlICFpbXBvcnRhbnQ7IH1cblxuYS5iZy15ZWxsb3ctbGlnaHRlcjpmb2N1cywgYS5iZy15ZWxsb3ctbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmViM2I7IH1cblxuLmJnLWFtYmVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50OyB9XG5cbmEuYmctYW1iZXI6Zm9jdXMsIGEuYmctYW1iZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDM5ZTAwOyB9XG5cbi5iZy1hbWJlci1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkYjEwMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctYW1iZXItZGFyazpmb2N1cywgYS5iZy1hbWJlci1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhOGIwMDsgfVxuXG4uYmctYW1iZXItZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzOWUwMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctYW1iZXItZGFya2VyOmZvY3VzLCBhLmJnLWFtYmVyLWRhcmtlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMDc4MDA7IH1cblxuLmJnLWFtYmVyLWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzcyMSAhaW1wb3J0YW50OyB9XG5cbmEuYmctYW1iZXItbGlnaHQ6Zm9jdXMsIGEuYmctYW1iZXItbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRiMTAwOyB9XG5cbi5iZy1hbWJlci1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2UzYSAhaW1wb3J0YW50OyB9XG5cbmEuYmctYW1iZXItbGlnaHRlcjpmb2N1cywgYS5iZy1hbWJlci1saWdodGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNzsgfVxuXG4uYmctb3JhbmdlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOTgwMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctb3JhbmdlOmZvY3VzLCBhLmJnLW9yYW5nZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzdhMDA7IH1cblxuLmJnLW9yYW5nZS1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ODkwMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctb3JhbmdlLWRhcms6Zm9jdXMsIGEuYmctb3JhbmdlLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjM2YTAwOyB9XG5cbi5iZy1vcmFuZ2UtZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjN2EwMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctb3JhbmdlLWRhcmtlcjpmb2N1cywgYS5iZy1vcmFuZ2UtZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5NWIwMDsgfVxuXG4uYmctb3JhbmdlLWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYTIxYSAhaW1wb3J0YW50OyB9XG5cbmEuYmctb3JhbmdlLWxpZ2h0OmZvY3VzLCBhLmJnLW9yYW5nZS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNjg5MDA7IH1cblxuLmJnLW9yYW5nZS1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWQzMyAhaW1wb3J0YW50OyB9XG5cbmEuYmctb3JhbmdlLWxpZ2h0ZXI6Zm9jdXMsIGEuYmctb3JhbmdlLWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY5ODAwOyB9XG5cbi5iZy1kZWVwb3JhbmdlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNTcyMiAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcG9yYW5nZTpmb2N1cywgYS5iZy1kZWVwb3JhbmdlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlMzkwMDsgfVxuXG4uYmctZGVlcG9yYW5nZS1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNDQwOSAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcG9yYW5nZS1kYXJrOmZvY3VzLCBhLmJnLWRlZXBvcmFuZ2UtZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNTMzMDA7IH1cblxuLmJnLWRlZXBvcmFuZ2UtZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlMzkwMCAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcG9yYW5nZS1kYXJrZXI6Zm9jdXMsIGEuYmctZGVlcG9yYW5nZS1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmIyZDAwOyB9XG5cbi5iZy1kZWVwb3JhbmdlLWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNmEzYyAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcG9yYW5nZS1saWdodDpmb2N1cywgYS5iZy1kZWVwb3JhbmdlLWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNDQwOTsgfVxuXG4uYmctZGVlcG9yYW5nZS1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmN2U1NSAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVlcG9yYW5nZS1saWdodGVyOmZvY3VzLCBhLmJnLWRlZXBvcmFuZ2UtbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjU3MjI7IH1cblxuLmJnLWJyb3duIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc5NTU0OCAhaW1wb3J0YW50OyB9XG5cbmEuYmctYnJvd246Zm9jdXMsIGEuYmctYnJvd246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTkzZjM1OyB9XG5cbi5iZy1icm93bi1kYXJrIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY5NGEzZSAhaW1wb3J0YW50OyB9XG5cbmEuYmctYnJvd24tZGFyazpmb2N1cywgYS5iZy1icm93bi1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ5MzMyYjsgfVxuXG4uYmctYnJvd24tZGFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU5M2YzNSAhaW1wb3J0YW50OyB9XG5cbmEuYmctYnJvd24tZGFya2VyOmZvY3VzLCBhLmJnLWJyb3duLWRhcmtlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzOTI4MjI7IH1cblxuLmJnLWJyb3duLWxpZ2h0IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg5NjA1MiAhaW1wb3J0YW50OyB9XG5cbmEuYmctYnJvd24tbGlnaHQ6Zm9jdXMsIGEuYmctYnJvd24tbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjk0YTNlOyB9XG5cbi5iZy1icm93bi1saWdodGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5NmI1YiAhaW1wb3J0YW50OyB9XG5cbmEuYmctYnJvd24tbGlnaHRlcjpmb2N1cywgYS5iZy1icm93bi1saWdodGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc5NTU0ODsgfVxuXG4uYmctZ3JleSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWUgIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZXk6Zm9jdXMsIGEuYmctZ3JleTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NTg1ODU7IH1cblxuLmJnLWdyZXktZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MTkxOTEgIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZXktZGFyazpmb2N1cywgYS5iZy1ncmV5LWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzg3ODc4OyB9XG5cbi5iZy1ncmV5LWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NTg1ODUgIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZXktZGFya2VyOmZvY3VzLCBhLmJnLWdyZXktZGFya2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZiNmI2YjsgfVxuXG4uYmctZ3JleS1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYmFiYWIgIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZXktbGlnaHQ6Zm9jdXMsIGEuYmctZ3JleS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MTkxOTE7IH1cblxuLmJnLWdyZXktbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiOGI4YjggIWltcG9ydGFudDsgfVxuXG5hLmJnLWdyZXktbGlnaHRlcjpmb2N1cywgYS5iZy1ncmV5LWxpZ2h0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllOyB9XG5cbi5iZy1ibHVlZ3JleSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MDdkOGIgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWVncmV5OmZvY3VzLCBhLmJnLWJsdWVncmV5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRiNjI2ZDsgfVxuXG4uYmctYmx1ZWdyZXktZGFyayB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NjZmN2MgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWVncmV5LWRhcms6Zm9jdXMsIGEuYmctYmx1ZWdyZXktZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MTU0NWU7IH1cblxuLmJnLWJsdWVncmV5LWRhcmtlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YjYyNmQgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWVncmV5LWRhcmtlcjpmb2N1cywgYS5iZy1ibHVlZ3JleS1kYXJrZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzY0NzRmOyB9XG5cbi5iZy1ibHVlZ3JleS1saWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2YjhhOTkgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWVncmV5LWxpZ2h0OmZvY3VzLCBhLmJnLWJsdWVncmV5LWxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2NmY3YzsgfVxuXG4uYmctYmx1ZWdyZXktbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Yjk2YTMgIWltcG9ydGFudDsgfVxuXG5hLmJnLWJsdWVncmV5LWxpZ2h0ZXI6Zm9jdXMsIGEuYmctYmx1ZWdyZXktbGlnaHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MDdkOGI7IH1cblxuLyogJFRleHRDb2xvciAqL1xuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAjNGM3ZmYwICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LXByaW1hcnk6Zm9jdXMsIGEudGV4dC1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICMxZDVkZWM7IH1cblxuLnRleHQtZGVmYXVsdCB7XG4gIGNvbG9yOiAjZThlOGU4ICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWRlZmF1bHQ6Zm9jdXMsIGEudGV4dC1kZWZhdWx0OmhvdmVyIHtcbiAgY29sb3I6ICNjZmNmY2Y7IH1cblxuLnRleHQtd2FybmluZyB7XG4gIGNvbG9yOiAjZjBjNTRjICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LXdhcm5pbmc6Zm9jdXMsIGEudGV4dC13YXJuaW5nOmhvdmVyIHtcbiAgY29sb3I6ICNlY2I2MWQ7IH1cblxuLnRleHQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjN2ZjMzVjICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LXN1Y2Nlc3M6Zm9jdXMsIGEudGV4dC1zdWNjZXNzOmhvdmVyIHtcbiAgY29sb3I6ICM2NWFkM2Y7IH1cblxuLnRleHQtaW5mbyB7XG4gIGNvbG9yOiAjNGNjM2YwICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWluZm86Zm9jdXMsIGEudGV4dC1pbmZvOmhvdmVyIHtcbiAgY29sb3I6ICMxZGIzZWM7IH1cblxuLnRleHQtd2hpdGUge1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDsgfVxuXG5hLnRleHQtd2hpdGU6Zm9jdXMsIGEudGV4dC13aGl0ZTpob3ZlciB7XG4gIGNvbG9yOiAjZTZlNmU2OyB9XG5cbi50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiAjZDI2ZDU0ICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWRhbmdlcjpmb2N1cywgYS50ZXh0LWRhbmdlcjpob3ZlciB7XG4gIGNvbG9yOiAjYzA0ZjMzOyB9XG5cbi50ZXh0LW11dGVkIHtcbiAgY29sb3I6ICNiM2IzYjMgIWltcG9ydGFudDsgfVxuXG5hLnRleHQtbXV0ZWQ6Zm9jdXMsIGEudGV4dC1tdXRlZDpob3ZlciB7XG4gIGNvbG9yOiAjOTk5OTk5OyB9XG5cbi50ZXh0LWNvbG9yIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KSAhaW1wb3J0YW50OyB9XG5cbmEudGV4dC1jb2xvcjpmb2N1cywgYS50ZXh0LWNvbG9yOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgfVxuXG4vKiBFeHRyYSB0ZXh0IGNvbG9ycyAqL1xuLnRleHQtcmVkIHtcbiAgY29sb3I6ICNmNDQzMzYgIWltcG9ydGFudDsgfVxuXG5hLnRleHQtcmVkOmZvY3VzLCBhLnRleHQtcmVkOmhvdmVyIHtcbiAgY29sb3I6ICNlYTFjMGQ7IH1cblxuLnRleHQtcGluayB7XG4gIGNvbG9yOiAjZTkxZTYzICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LXBpbms6Zm9jdXMsIGEudGV4dC1waW5rOmhvdmVyIHtcbiAgY29sb3I6ICNjMTEzNGU7IH1cblxuLnRleHQtcHVycGxlIHtcbiAgY29sb3I6ICM5YzI3YjAgIWltcG9ydGFudDsgfVxuXG5hLnRleHQtcHVycGxlOmZvY3VzLCBhLnRleHQtcHVycGxlOmhvdmVyIHtcbiAgY29sb3I6ICM3NzFlODY7IH1cblxuLnRleHQtZGVlcHB1cnBsZSB7XG4gIGNvbG9yOiAjNjczYWI3ICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWRlZXBwdXJwbGU6Zm9jdXMsIGEudGV4dC1kZWVwcHVycGxlOmhvdmVyIHtcbiAgY29sb3I6ICM1MTJlOTA7IH1cblxuLnRleHQtaW5kaWdvIHtcbiAgY29sb3I6ICMzZjUxYjUgIWltcG9ydGFudDsgfVxuXG5hLnRleHQtaW5kaWdvOmZvY3VzLCBhLnRleHQtaW5kaWdvOmhvdmVyIHtcbiAgY29sb3I6ICMzMjQwOGY7IH1cblxuLnRleHQtYmx1ZSB7XG4gIGNvbG9yOiAjMjE5NmYzICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWJsdWU6Zm9jdXMsIGEudGV4dC1ibHVlOmhvdmVyIHtcbiAgY29sb3I6ICMwYzdjZDU7IH1cblxuLnRleHQtbGlnaHRibHVlIHtcbiAgY29sb3I6ICMwM2E5ZjQgIWltcG9ydGFudDsgfVxuXG5hLnRleHQtbGlnaHRibHVlOmZvY3VzLCBhLnRleHQtbGlnaHRibHVlOmhvdmVyIHtcbiAgY29sb3I6ICMwMjg2YzI7IH1cblxuLnRleHQtY3lhbiB7XG4gIGNvbG9yOiAjMDBiY2Q0ICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWN5YW46Zm9jdXMsIGEudGV4dC1jeWFuOmhvdmVyIHtcbiAgY29sb3I6ICMwMDhmYTE7IH1cblxuLnRleHQtdGVhbCB7XG4gIGNvbG9yOiAjMDA5Njg4ICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LXRlYWw6Zm9jdXMsIGEudGV4dC10ZWFsOmhvdmVyIHtcbiAgY29sb3I6ICMwMDYzNWE7IH1cblxuLnRleHQtZ3JlZW4ge1xuICBjb2xvcjogIzRjYWY1MCAhaW1wb3J0YW50OyB9XG5cbmEudGV4dC1ncmVlbjpmb2N1cywgYS50ZXh0LWdyZWVuOmhvdmVyIHtcbiAgY29sb3I6ICMzZDhiNDA7IH1cblxuLnRleHQtbGlnaHRncmVlbiB7XG4gIGNvbG9yOiAjNzRkMTA4ICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWxpZ2h0Z3JlZW46Zm9jdXMsIGEudGV4dC1saWdodGdyZWVuOmhvdmVyIHtcbiAgY29sb3I6ICM1OWEwMDY7IH1cblxuLnRleHQtbGltZSB7XG4gIGNvbG9yOiAjY2RkYzM5ICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWxpbWU6Zm9jdXMsIGEudGV4dC1saW1lOmhvdmVyIHtcbiAgY29sb3I6ICNiMmMwMjI7IH1cblxuLnRleHQteWVsbG93IHtcbiAgY29sb3I6ICNmZmViM2IgIWltcG9ydGFudDsgfVxuXG5hLnRleHQteWVsbG93OmZvY3VzLCBhLnRleHQteWVsbG93OmhvdmVyIHtcbiAgY29sb3I6ICNmZmU2MDg7IH1cblxuLnRleHQtYW1iZXIge1xuICBjb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50OyB9XG5cbmEudGV4dC1hbWJlcjpmb2N1cywgYS50ZXh0LWFtYmVyOmhvdmVyIHtcbiAgY29sb3I6ICNkMzllMDA7IH1cblxuLnRleHQtb3JhbmdlIHtcbiAgY29sb3I6ICNmZjk4MDAgIWltcG9ydGFudDsgfVxuXG5hLnRleHQtb3JhbmdlOmZvY3VzLCBhLnRleHQtb3JhbmdlOmhvdmVyIHtcbiAgY29sb3I6ICNjYzdhMDA7IH1cblxuLnRleHQtZGVlcG9yYW5nZSB7XG4gIGNvbG9yOiAjZmY1NzIyICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWRlZXBvcmFuZ2U6Zm9jdXMsIGEudGV4dC1kZWVwb3JhbmdlOmhvdmVyIHtcbiAgY29sb3I6ICNlZTM5MDA7IH1cblxuLnRleHQtYnJvd24ge1xuICBjb2xvcjogIzc5NTU0OCAhaW1wb3J0YW50OyB9XG5cbmEudGV4dC1icm93bjpmb2N1cywgYS50ZXh0LWJyb3duOmhvdmVyIHtcbiAgY29sb3I6ICM1OTNmMzU7IH1cblxuLnRleHQtZ3JleSB7XG4gIGNvbG9yOiAjOWU5ZTllICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWdyZXk6Zm9jdXMsIGEudGV4dC1ncmV5OmhvdmVyIHtcbiAgY29sb3I6ICM4NTg1ODU7IH1cblxuLnRleHQtYmx1ZWdyZXkge1xuICBjb2xvcjogIzYwN2Q4YiAhaW1wb3J0YW50OyB9XG5cbmEudGV4dC1ibHVlZ3JleTpmb2N1cywgYS50ZXh0LWJsdWVncmV5OmhvdmVyIHtcbiAgY29sb3I6ICM0YjYyNmQ7IH1cblxuLyogJGJvb3RzdHJhcC51aVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKkNhcm91c2VsKi9cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLypEYXRlcGlja2VyKi9cbi51aS1kYXRlcGlja2VyIHRhYmxlIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuICAudWktZGF0ZXBpY2tlciB0YWJsZSB0aGVhZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAudWktZGF0ZXBpY2tlciB0YWJsZSAuaDYge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtOyB9XG4gIC51aS1kYXRlcGlja2VyIHRhYmxlIC5idG4ge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAudWktZGF0ZXBpY2tlciB0YWJsZSAuYnRuOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2U4ZThlODtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7IH1cbiAgICAudWktZGF0ZXBpY2tlciB0YWJsZSAuYnRuLmFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6ICM0YzdmZjA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgLnVpLWRhdGVwaWNrZXIgdGFibGUgLmJ0bi5hY3RpdmUgc3BhbiB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbi51aS1kYXRlcGlja2VyIC5kcm9wZG93bi1tZW51IHRhYmxlIHtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qVGltZXBpY2tlciovXG4udWktdGltZXBpY2tlciB0ZCB7XG4gIHBhZGRpbmc6IDAgNXB4OyB9XG5cbi5nbHlwaGljb24tc3Rhcixcbi5nbHlwaGljb24tc3Rhci1lbXB0eSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47IH1cblxuLmdseXBoaWNvbi1zdGFyLWVtcHR5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZzlJakJ3ZUNJZ2VUMGlNSEI0SWlCM2FXUjBhRDBpTWpCd2VDSWdhR1ZwWjJoMFBTSXlNSEI0SWlCMmFXVjNRbTk0UFNJd0lEQWdNakFnTWpBaUlHVnVZV0pzWlMxaVlXTnJaM0p2ZFc1a1BTSnVaWGNnTUNBd0lESXdJREl3SWlCNGJXdzZjM0JoWTJVOUluQnlaWE5sY25abElqNDhjRzlzZVdkdmJpQm1hV3hzUFNJalJFUkVSRVJFSWlCd2IybHVkSE05SWpFd0xEQWdNVE11TURrc05pNDFPRE1nTWpBc055NDJNemtnTVRVc01USXVOelkwSURFMkxqRTRMREl3SURFd0xERTJMalU0TXlBekxqZ3lMREl3SURVc01USXVOelkwSURBc055NDJNemtnTmk0NU1TdzJMalU0TXlBaUx6NDhMM04yWno0PVwiKSBuby1yZXBlYXQ7IH1cblxuLmdseXBoaWNvbi1zdGFyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZzlJakJ3ZUNJZ2VUMGlNSEI0SWlCM2FXUjBhRDBpTWpCd2VDSWdhR1ZwWjJoMFBTSXlNSEI0SWlCMmFXVjNRbTk0UFNJd0lEQWdNakFnTWpBaUlHVnVZV0pzWlMxaVlXTnJaM0p2ZFc1a1BTSnVaWGNnTUNBd0lESXdJREl3SWlCNGJXdzZjM0JoWTJVOUluQnlaWE5sY25abElqNDhjRzlzZVdkdmJpQm1hV3hzUFNJalJrWkVSamc0SWlCd2IybHVkSE05SWpFd0xEQWdNVE11TURrc05pNDFPRE1nTWpBc055NDJNemtnTVRVc01USXVOelkwSURFMkxqRTRMREl3SURFd0xERTJMalU0TXlBekxqZ3lMREl3SURVc01USXVOelkwSURBc055NDJNemtnTmk0NU1TdzJMalU0TXlBaUx6NDhMM04yWno0PVwiKSBuby1yZXBlYXQ7IH1cblxuLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjEwNCc7IH1cblxuLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYxMDUnOyB9XG5cbi8qICRzZXNzaW9uXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zZXNzaW9uLXBhbmVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoOyB9XG5cbi5zZXNzaW9uIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC1tb3otZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLnNlc3Npb24tY29udGVudCB7XG4gIHBhZGRpbmc6IDQwcHggMDtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbW96LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbW96LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4OiAxIDAgYXV0bztcbiAgLW1vei1ib3gtZmxleDogMTtcbiAgLW1vei1mbGV4OiAxIDAgYXV0bztcbiAgLW1zLWZsZXg6IDEgMCBhdXRvO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1vei1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG4uc2Vzc2lvbi13cmFwcGVyIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG8tM3JlbTsgfVxuICAuc2Vzc2lvbi13cmFwcGVyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2Vzc2lvbi13cmFwcGVyOjphZnRlciB7XG4gICAgaGVpZ2h0OiAzcmVtOyB9XG5cbi5hcHAuZXJyb3ItcGFnZSAuY2FyZCxcbi5hcHAubG9ja3NjcmVlbiAuY2FyZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMDBweCBhdXRvOyB9XG5cbi5hcHAubG9ja3NjcmVlbiAuY2FyZCB7XG4gIG1heC13aWR0aDogNDAwcHg7IH1cblxuLmZvcm0tbGF5b3V0IHtcbiAgLXdlYmtpdC1ib3gtZmxleDogbm9uZTtcbiAgLXdlYmtpdC1mbGV4OiBub25lO1xuICAtbW96LWJveC1mbGV4OiBub25lO1xuICAtbW96LWZsZXg6IG5vbmU7XG4gIC1tcy1mbGV4OiBub25lO1xuICBmbGV4OiBub25lO1xuICB3aWR0aDogNTQwcHg7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5mb3JtLWxheW91dCBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmZvcm0tbGF5b3V0IC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW4tdG9wOiAxLjU2M3JlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNTYzcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5mb3JtLWxheW91dCAuZGl2aWRlciBzcGFuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMCAuNzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuLyogJGxvY2tzY3JlZW5cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxvY2tjb2RlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMjgwcHg7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5sb2Nrc2NyZWVuLWF2YXRhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5sb2Nrc2NyZWVuLWF2YXRhciBpbWcge1xuICAgIGJvcmRlcjogNXB4IHNvbGlkIHdoaXRlOyB9XG5cbi8qICRlcnJvci1wYWdlc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZXJyb3ItbnVtYmVyIHtcbiAgZm9udC1zaXplOiAxNTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmVycm9yLW51bWJlciBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cblxuLmVycm9yLWljb24ge1xuICBmb250LXNpemU6IDEwMHB4O1xuICBsaW5lLWhlaWdodDogMTYwcHg7XG4gIHdpZHRoOiAxNjBweDtcbiAgaGVpZ2h0OiAxNjBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgY29sb3I6ICNkMjZkNTQ7XG4gIGJvcmRlcjogM3B4IHNvbGlkICNkMjZkNTQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4vKiAkY2FsZW5kYXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZjLXRvb2xiYXIge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwO1xuICBiYWNrZ3JvdW5kOiAjNGNjM2YwOyB9XG4gIC5mYy10b29sYmFyIC5mYy1sZWZ0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAuZmMtdG9vbGJhciAuZmMtbGVmdCBoMiB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZmMtdG9vbGJhciAuZmMgLmZjLXRvb2xiYXIgPiAqID4gKiB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmZjLXRvb2xiYXIgLmZjLWxlZnQgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9XG4gIC5mYy10b29sYmFyID4gLmZjLWNlbnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7IH1cblxuLmZjLXN0YXRlLWRlZmF1bHQuZmMtY29ybmVyLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDsgfVxuXG4uZmMtc3RhdGUtZGVmYXVsdC5mYy1jb3JuZXItcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4OyB9XG5cbi5mYy10LWV2ZW50cyB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLmZjIHRkLmZjLXdpZGdldC1oZWFkZXIge1xuICBwYWRkaW5nOiAuNXJlbSAwO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0YmJlZTsgfVxuXG4uZnVsbGNhbGVuZGFyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG4gIC5mdWxsY2FsZW5kYXIgdGguZmMtd2lkZ2V0LWhlYWRlciB7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cbiAgLmZ1bGxjYWxlbmRhciAuZmMgdGQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmZ1bGxjYWxlbmRhciAuZmMgdGQsXG4gIC5mdWxsY2FsZW5kYXIgLmZjIHRoIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgLmZ1bGxjYWxlbmRhciAuZmMtZGF5LWdyaWQgPiAuZmMtd2lkZ2V0LWNvbnRlbnQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLmZ1bGxjYWxlbmRhciAuZmMtZGF5LWdyaWQgPiAuZmMtd2lkZ2V0LWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAuZnVsbGNhbGVuZGFyIHRyID4gLmZjLWRheSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5mdWxsY2FsZW5kYXIgdHIgPiAuZmMtZGF5Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuZnVsbGNhbGVuZGFyIC5mYy1kYXktZ3JpZC1ldmVudCAuZmMtdGltZSB7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cbiAgICAuZnVsbGNhbGVuZGFyIC5mYy1kYXktZ3JpZC1ldmVudCAuZmMtdGltZTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29udGVudDogJzonOyB9XG4gIC5mdWxsY2FsZW5kYXIgLmZjLXdpZGdldC1jb250ZW50IHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLmZ1bGxjYWxlbmRhciAuZmMtc2xhdHMgLmZjLXdpZGdldC1jb250ZW50IHtcbiAgICBib3JkZXItd2lkdGg6IDFweDsgfVxuICAuZnVsbGNhbGVuZGFyIC5mYy11bnRoZW1lZCB0aCxcbiAgLmZ1bGxjYWxlbmRhciAuZmMtdW50aGVtZWQgdGQsXG4gIC5mdWxsY2FsZW5kYXIgLmZjLXVudGhlbWVkIGhyLFxuICAuZnVsbGNhbGVuZGFyIC5mYy11bnRoZW1lZCB0aGVhZCxcbiAgLmZ1bGxjYWxlbmRhciAuZmMtdW50aGVtZWQgdGJvZHksXG4gIC5mdWxsY2FsZW5kYXIgLmZjLXVudGhlbWVkIC5mYy1yb3csXG4gIC5mdWxsY2FsZW5kYXIgLmZjLXVudGhlbWVkIC5mYy1wb3BvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuZnVsbGNhbGVuZGFyIC5mYy11bnRoZW1lZCBocixcbiAgLmZ1bGxjYWxlbmRhciAuZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIgLmZjLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5mdWxsY2FsZW5kYXIgLmZjLXN0YXRlLWhvdmVyLFxuICAuZnVsbGNhbGVuZGFyIC5mYy1zdGF0ZS1kb3duLFxuICAuZnVsbGNhbGVuZGFyIC5mYy1zdGF0ZS1hY3RpdmUsXG4gIC5mdWxsY2FsZW5kYXIgLmZjLXN0YXRlLWRpc2FibGVkIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5mdWxsY2FsZW5kYXIgLmZjLXN0YXRlLWhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5mdWxsY2FsZW5kYXIgLmZjLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAwLjM3NXJlbSAxcmVtO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZTJlMWUxO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAgIC5mdWxsY2FsZW5kYXIgLmZjLWJ1dHRvbjpob3ZlciB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NmY2ZjZjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2M0YzJjMjsgfVxuICAgIC5mdWxsY2FsZW5kYXIgLmZjLWJ1dHRvbjpmb2N1cywgLmZ1bGxjYWxlbmRhciAuZmMtYnV0dG9uLmZvY3VzIHtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZjZmNmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjYzRjMmMyOyB9XG4gICAgLmZ1bGxjYWxlbmRhciAuZmMtYnV0dG9uOmFjdGl2ZSwgLmZ1bGxjYWxlbmRhciAuZmMtYnV0dG9uLmFjdGl2ZSxcbiAgICAub3BlbiA+IC5mdWxsY2FsZW5kYXIgLmZjLWJ1dHRvbi5kcm9wZG93bi10b2dnbGUge1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmNmY2Y7XG4gICAgICBib3JkZXItY29sb3I6ICNjNGMyYzI7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgICAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b246YWN0aXZlOmhvdmVyLCAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b246YWN0aXZlOmZvY3VzLCAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b246YWN0aXZlLmZvY3VzLCAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uYWN0aXZlOmhvdmVyLCAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uYWN0aXZlOmZvY3VzLCAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uYWN0aXZlLmZvY3VzLFxuICAgICAgLm9wZW4gPiAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgICAgLm9wZW4gPiAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgICAgLm9wZW4gPiAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JkYmRiZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYTNhMGEwOyB9XG4gICAgLmZ1bGxjYWxlbmRhciAuZmMtYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uZGlzYWJsZWQuZm9jdXMsIC5mdWxsY2FsZW5kYXIgLmZjLWJ1dHRvbjpkaXNhYmxlZDpmb2N1cywgLmZ1bGxjYWxlbmRhciAuZmMtYnV0dG9uOmRpc2FibGVkLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gICAgICBib3JkZXItY29sb3I6ICNlMmUxZTE7IH1cbiAgICAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5mdWxsY2FsZW5kYXIgLmZjLWJ1dHRvbjpkaXNhYmxlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZTJlMWUxOyB9XG4gICAgLmZ1bGxjYWxlbmRhciAuZmMtYnV0dG9uLmZjLXRvZGF5LWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTsgfVxuICAuZnVsbGNhbGVuZGFyIC5mYy1idXR0b24uZmMtc3RhdGUtZG93bixcbiAgLmZ1bGxjYWxlbmRhciAuZmMtYnV0dG9uLmZjLXN0YXRlLWFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzRjMmMyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmNmY2Y7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG5cbi5mYy13aWRnZXQtY29udGVudCB7XG4gIGJvcmRlcjogMDsgfVxuXG4uZmMgLmZjLXRvb2xiYXIgPiAqID4gKiB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5mYy1ldmVudCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogMnB4IDVweDtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5leHRlcm5hbC1ldmVudCB7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgLjA2MjVyZW0gMDtcbiAgcGFkZGluZzogNHB4O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5leHRlcm5hbC1ldmVudCAucmVtb3ZlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmV4dGVybmFsLWV2ZW50cyB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmV4dGVybmFsLWV2ZW50cyBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCA1cHggNXB4O1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTsgfVxuXG4uZXh0ZXJuYWwtZXZlbnRzIC5mb3JtLWNvbnRyb2wge1xuICBmb250LXNpemU6IC45cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmV2ZW50LXR5cGUge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmV2ZW50LXR5cGUgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5ldmVudC10eXBlIGxpIGE6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG4gICAgLmV2ZW50LXR5cGUgbGkgYTpob3ZlcixcbiAgICAuZXZlbnQtdHlwZSBsaSBhOmZvY3VzLFxuICAgIC5ldmVudC10eXBlIGxpIGEuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzRjN2ZmMDsgfVxuICAgIC5ldmVudC10eXBlIGxpIGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIHBhZGRpbmc6IDFweDtcbiAgICAgIGJvcmRlcjogLjA2MjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mYy10b29sYmFyIC5mYy1yaWdodCxcbiAgLmZjLXRvb2xiYXIgLmZjLWNlbnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtOyB9IH1cblxuLyogJGdhbGxlcnlcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1lZGlhLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuLm1lZGlhIC5jYXJkLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogLjJyZW07XG4gIHBhZGRpbmc6IC4zcmVtO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tZWRpYSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKiAkaW52b2ljZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaW52b2ljZS1sb2dvIHtcbiAgaGVpZ2h0OiA1MHB4OyB9XG5cbi5pbnZvaWNlLXRvdGFscyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5pbnZvaWNlLXRvdGFsczo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmludm9pY2UtdG90YWxzIC5pbnZvaWNlLXRvdGFscy1yb3cge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAuaW52b2ljZS10b3RhbHMgLmludm9pY2UtdG90YWxzLXRpdGxlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgLmludm9pY2UtdG90YWxzIC5pbnZvaWNlLXRvdGFscy12YWx1ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1pbi13aWR0aDogMTQwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4vKiAkbWVzc2FnZXNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbnRhY3RzLWNvbnRhaW5lciB7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDMuNDM4cmVtKTsgfVxuICAuY29udGFjdHMtY29udGFpbmVyIC5jb250YWN0cy1saXN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4OyB9XG4gICAgLmNvbnRhY3RzLWNvbnRhaW5lciAuY29udGFjdHMtbGlzdCBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuY29udGFjdHMtY29udGFpbmVyIC5jb250YWN0cy1saXN0IGEgLmNvbnRhY3QtYXZhdGFyIHtcbiAgICAgICAgd2lkdGg6IDM0cHg7IH1cbiAgICAgIC5jb250YWN0cy1jb250YWluZXIgLmNvbnRhY3RzLWxpc3QgYSAuY29udGFjdC1kZXRhaWxzID4gKiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuY29udGFjdHMtY29udGFpbmVyIC5jb250YWN0cy1saXN0IGE6Zm9jdXMsIC5jb250YWN0cy1jb250YWluZXIgLmNvbnRhY3RzLWxpc3QgYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cblxuLmhlYWRlci1zZWNvbmRhcnkgKyAubWFpbi1jb250ZW50ID4gLmNvbnRlbnQtdmlldyAuY29udGFjdHMtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNi44NzZyZW0pOyB9XG5cbi5tZXNzYWdlcy1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5tZXNzYWdlLWxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAubWVzc2FnZS1saXN0IC5tZXNzYWdlLWxpc3QtaXRlbSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgICAubWVzc2FnZS1saXN0IC5tZXNzYWdlLWxpc3QtaXRlbSBhOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZXNzYWdlLWxpc3QgLm1lc3NhZ2UtbGlzdC1pdGVtIGE6aG92ZXIsIC5tZXNzYWdlLWxpc3QgLm1lc3NhZ2UtbGlzdC1pdGVtIGE6Zm9jdXMsIC5tZXNzYWdlLWxpc3QgLm1lc3NhZ2UtbGlzdC1pdGVtIGE6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG4gICAgLm1lc3NhZ2UtbGlzdCAubWVzc2FnZS1saXN0LWl0ZW0gYSBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAubWVzc2FnZS1saXN0IC5tZXNzYWdlLWxpc3QtaXRlbSBhIC5tZXNzYWdlLWxpc3QtaXRlbS1oZWFkZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7IH1cbiAgICAgIC5tZXNzYWdlLWxpc3QgLm1lc3NhZ2UtbGlzdC1pdGVtIGEgLm1lc3NhZ2UtbGlzdC1pdGVtLWhlYWRlciBzcGFuIHtcbiAgICAgICAgY29sb3I6ICMzMzMzMzM7IH1cbiAgICAubWVzc2FnZS1saXN0IC5tZXNzYWdlLWxpc3QtaXRlbSBhIC50aW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgICBjb2xvcjogI2IzYjNiMztcbiAgICAgIGZsb2F0OiByaWdodCA7IH1cblxuLm1lc3NhZ2UtdmlldyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi5tZXNzYWdlLWhlYWRlcixcbi5jb250YWN0LWhlYWRlciB7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMy40MzhyZW07XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAubWVzc2FnZS1oZWFkZXIgLmxlYWQsXG4gIC5jb250YWN0LWhlYWRlciAubGVhZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5tZXNzYWdlLWhlYWRlciAuZGF0ZSxcbiAgLmNvbnRhY3QtaGVhZGVyIC5kYXRlIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICNiM2IzYjM7XG4gICAgZmxvYXQ6IHJpZ2h0IDsgfVxuICAubWVzc2FnZS1oZWFkZXIgLm1lc3NhZ2UtdG9vbGJhcixcbiAgLm1lc3NhZ2UtaGVhZGVyIC5jb250YWN0LXRvb2xiYXIsXG4gIC5jb250YWN0LWhlYWRlciAubWVzc2FnZS10b29sYmFyLFxuICAuY29udGFjdC1oZWFkZXIgLmNvbnRhY3QtdG9vbGJhciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDFyZW07IH1cbiAgICAubWVzc2FnZS1oZWFkZXIgLm1lc3NhZ2UtdG9vbGJhcjo6YWZ0ZXIsXG4gICAgLm1lc3NhZ2UtaGVhZGVyIC5jb250YWN0LXRvb2xiYXI6OmFmdGVyLFxuICAgIC5jb250YWN0LWhlYWRlciAubWVzc2FnZS10b29sYmFyOjphZnRlcixcbiAgICAuY29udGFjdC1oZWFkZXIgLmNvbnRhY3QtdG9vbGJhcjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVzc2FnZS1oZWFkZXIgLm1lc3NhZ2UtdG9vbGJhciBwLFxuICAgIC5tZXNzYWdlLWhlYWRlciAuY29udGFjdC10b29sYmFyIHAsXG4gICAgLmNvbnRhY3QtaGVhZGVyIC5tZXNzYWdlLXRvb2xiYXIgcCxcbiAgICAuY29udGFjdC1oZWFkZXIgLmNvbnRhY3QtdG9vbGJhciBwIHtcbiAgICAgIHBhZGRpbmc6IDhweCAwOyB9XG4gICAgLm1lc3NhZ2UtaGVhZGVyIC5tZXNzYWdlLXRvb2xiYXIgaW5wdXQsXG4gICAgLm1lc3NhZ2UtaGVhZGVyIC5jb250YWN0LXRvb2xiYXIgaW5wdXQsXG4gICAgLmNvbnRhY3QtaGVhZGVyIC5tZXNzYWdlLXRvb2xiYXIgaW5wdXQsXG4gICAgLmNvbnRhY3QtaGVhZGVyIC5jb250YWN0LXRvb2xiYXIgaW5wdXQge1xuICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNjk0cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC42OTRyZW07IH1cbiAgICAubWVzc2FnZS1oZWFkZXIgLm1lc3NhZ2UtdG9vbGJhciBhLFxuICAgIC5tZXNzYWdlLWhlYWRlciAuY29udGFjdC10b29sYmFyIGEsXG4gICAgLmNvbnRhY3QtaGVhZGVyIC5tZXNzYWdlLXRvb2xiYXIgYSxcbiAgICAuY29udGFjdC1oZWFkZXIgLmNvbnRhY3QtdG9vbGJhciBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbG9yOiByZ2JhKDI2LCAyNiwgMjYsIDAuNyk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjgxMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjgxMjVyZW07IH1cbiAgICAgIC5tZXNzYWdlLWhlYWRlciAubWVzc2FnZS10b29sYmFyIGE6aG92ZXIsXG4gICAgICAubWVzc2FnZS1oZWFkZXIgLmNvbnRhY3QtdG9vbGJhciBhOmhvdmVyLFxuICAgICAgLmNvbnRhY3QtaGVhZGVyIC5tZXNzYWdlLXRvb2xiYXIgYTpob3ZlcixcbiAgICAgIC5jb250YWN0LWhlYWRlciAuY29udGFjdC10b29sYmFyIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG5cbi5uby1tZXNzYWdlcyxcbi5uby1jb250YWN0cyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbW96LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24tY29udGVudDogY2VudGVyO1xuICAtbW96LWFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC1tb3otanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5jb250YWN0cy1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29udGFjdHMtc2lkZWJhciB7XG4gICAgd2lkdGg6IDI1MHB4OyB9XG4gIC5jb250YWN0cy1saXN0IHtcbiAgICBtaW4td2lkdGg6IDI0MHB4O1xuICAgIG1heC13aWR0aDogMjQwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLm1lc3NhZ2UtdmlldyxcbiAgLmNvbnRhY3QtdmlldyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDExMDA7XG4gICAgdG9wOiAzLjQzOHJlbTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk5KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gICAgLm1lc3NhZ2UtdmlldyAuc2Nyb2xsLFxuICAgIC5jb250YWN0LXZpZXcgLnNjcm9sbCB7XG4gICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5tZXNzYWdlLW9wZW4gLm1lc3NhZ2UtdmlldyxcbiAgLmNvbnRhY3Qtb3BlbiAuY29udGFjdC12aWV3IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIC5jb250YWN0cy1saXN0IHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gNi40MzhyZW0pOyB9XG4gICAgLmNvbnRhY3RzLWxpc3QgI2xpc3QxIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG5cbi8qICRzb2NpYWxcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnByb2ZpbGUtYmlvIC5iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHB4O1xuICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuXG4ucHJvZmlsZS1iaW8gLmF2YXRhciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IC0zMHB4IDVweCAwIDEwcHg7XG4gIHBhZGRpbmc6IDFweDtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBmbG9hdDogbGVmdCA7IH1cbiAgLnByb2ZpbGUtYmlvIC5hdmF0YXIgaW1nIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiA3MnB4O1xuICAgIGhlaWdodDogNzJweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG4ucHJvZmlsZS1iaW8gLnVzZXItZGV0YWlscyB7XG4gIG1hcmdpbjogNXB4IDAgMDsgfVxuICAucHJvZmlsZS1iaW8gLnVzZXItZGV0YWlscyAudXNlci1uYW1lIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMXJlbTsgfVxuXG4ucHJvZmlsZS1iaW8gLnVzZXItc3RhdHMge1xuICBtYXJnaW46IDEwcHg7XG4gIHBhZGRpbmc6IDEwcHggMDsgfVxuICAucHJvZmlsZS1iaW8gLnVzZXItc3RhdHMgPiB1bCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGFibGUtbGF5b3V0OiBhdXRvO1xuICAgIGxpc3Qtc3R5bGU6IG91dHNpZGUgbm9uZSBub25lOyB9XG4gIC5wcm9maWxlLWJpbyAudXNlci1zdGF0cyA+IHVsID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgcGFkZGluZzogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gIC5wcm9maWxlLWJpbyAudXNlci1zdGF0cyA+IHVsID4gbGkgPiBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLnByb2ZpbGUtYmlvIC51c2VyLXN0YXRzIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wMXJlbTsgfVxuXG4ucG9zdC1oZWFkZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC0xNDZweDtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cbiAgLnBvc3QtaGVhZGVyID4gKiB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuXG4ucHJvZmlsZS1oZWFkZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC0yMyU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB9XG4gIC5wcm9maWxlLWhlYWRlciA+ICoge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cblxuLnByb2ZpbGUtYXZhdGFyIHtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDUwLCA3MCwgNzUsIDAuMik7IH1cblxuLnByb2ZpbGUtc3RhdHMge1xuICB3aWR0aDogNDAlO1xuICBmbG9hdDogcmlnaHQgOyB9XG5cbi5wcm9maWxlLXVzZXIge1xuICB3aWR0aDogNjAlOyB9XG5cbi5wcm9maWxlLXNpZGViYXItaXRlbSB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbSAwOyB9XG4gIC5wcm9maWxlLXNpZGViYXItaXRlbTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnByb2ZpbGUtc2lkZWJhci1pdGVtIHAge1xuICAgIG1hcmdpbjogMDsgfVxuXG4ucHJvZmlsZS1zaWRlYmFyLWl0ZW0ucHJvZmlsZS1pbmZvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5wcm9maWxlLXJlY2NvbWVuZGF0aW9ucyAudXNlci1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAucHJvZmlsZS1yZWNjb21lbmRhdGlvbnMgLnVzZXItbWV0YSBsaSB7XG4gICAgcGFkZGluZzogNXB4IDA7IH1cblxuLnByb2ZpbGUtbnVtYmVycy1jb3VudCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5wcm9maWxlLW51bWJlcnMtY291bnQgbGkge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJvcmRlci1yaWdodDogMC4wNjI1cmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIC5wcm9maWxlLW51bWJlcnMtY291bnQgbGk6TGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgICAucHJvZmlsZS1udW1iZXJzLWNvdW50IGxpIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogIzRkNGQ0ZDsgfVxuXG4ucHJvZmlsZS10aW1lbGluZS1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgLnByb2ZpbGUtdGltZWxpbmUtaGVhZGVyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucHJvZmlsZS10aW1lbGluZS1oZWFkZXIgLnByb2ZpbGUtdGltZWxpbmUtdXNlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0IDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOXJlbTsgfVxuICAgIC5wcm9maWxlLXRpbWVsaW5lLWhlYWRlciAucHJvZmlsZS10aW1lbGluZS11c2VyIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDQ4cHg7IH1cbiAgLnByb2ZpbGUtdGltZWxpbmUtaGVhZGVyIC5wcm9maWxlLXRpbWVsaW5lLXVzZXItZGV0YWlscyB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA2M3B4OyB9XG5cbi5wcm9maWxlLXRpbWVsaW5lLWNvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogNjNweDsgfVxuXG4ucHJvZmlsZS10aW1lbGluZS1jb250cm9scyBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5wcm9maWxlLXRpbWVsaW5lLWltYWdlcyB7XG4gIG1hcmdpbi1yaWdodDogLTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7IH1cbiAgLnByb2ZpbGUtdGltZWxpbmUtaW1hZ2VzIC5pbWFnZS1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICBmbG9hdDogbGVmdCA7IH1cbiAgLnByb2ZpbGUtdGltZWxpbmUtaW1hZ2VzIC5pbWFnZS1saW5rLXNtYWxsZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgZmxvYXQ6IGxlZnQgOyB9XG5cbi5wcm9maWxlLXRpbWVsaW5lLWF1ZGlvIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZzogMDsgfVxuICAucHJvZmlsZS10aW1lbGluZS1hdWRpbyAuYXVkaW8ge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnByb2ZpbGUtdGltZWxpbmUtYXVkaW8gLmF1ZGlvIC5wbGF5X3BhdXNlLFxuICAgIC5wcm9maWxlLXRpbWVsaW5lLWF1ZGlvIC5hdWRpbyAuYXVkaW8tdGltZWxpbmUsXG4gICAgLnByb2ZpbGUtdGltZWxpbmUtYXVkaW8gLmF1ZGlvIC50aW1lIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAucHJvZmlsZS10aW1lbGluZS1hdWRpbyAuYXVkaW8gLnBsYXlfcGF1c2Uge1xuICAgICAgd2lkdGg6IDQwcHg7IH1cbiAgICAucHJvZmlsZS10aW1lbGluZS1hdWRpbyAuYXVkaW8gLnByb2dyZXNzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmbG9hdDogbGVmdCA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgICAucHJvZmlsZS10aW1lbGluZS1hdWRpbyAuYXVkaW8gLnByb2dyZXNzIC5kb25lIHtcbiAgICAgICAgd2lkdGg6IDM0JTtcbiAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDtcbiAgICAgICAgZmxvYXQ6IGxlZnQgO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC42cyBlYXNlOyB9XG4gICAgLnByb2ZpbGUtdGltZWxpbmUtYXVkaW8gLmF1ZGlvIC50aW1lIHtcbiAgICAgIHdpZHRoOiA4MHB4OyB9XG5cbi5wb3N0LWNvbW1lbnRzIHtcbiAgbWFyZ2luOiAyMHB4IDAgMCAwOyB9XG4gIC5wb3N0LWNvbW1lbnRzIC5tZWRpYSB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbi5wb3N0LWNvbW1lbnRzIC5jb21tZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1sZWZ0OiAwLjlyZW07IH1cblxuLnBvc3QtY29tbWVudHMgLmNvbW1lbnQtYXV0aG9yIGEge1xuICBjb2xvcjogIzMzMzMzMzsgfVxuXG4ucG9zdC1jb21tZW50cyAuY29tbWVudC1hdXRob3IgLnRpbWUge1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiByZ2JhKDY0LCA2NCwgNjQsIDAuNyk7IH1cblxuLnBvc3QtY29tbWVudHMgLmF2YXRhciB7XG4gIG1heC13aWR0aDogNDhweDsgfVxuXG4ucG9zdC1jb21tZW50cyAuY29tbWVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBvc3QtY29tbWVudHMgLmNvbW1lbnQtbWV0YSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZmxvYXQ6IHJpZ2h0IDsgfVxuXG4vKiAkdGltZWxpbmVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnRpbWVsaW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAzLjI1cmVtOyB9XG4gIC50aW1lbGluZTo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2cHg7XG4gICAgd2lkdGg6IDNweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBsZWZ0OiA5OHB4OyB9XG4gIC50aW1lbGluZSAudGltZWxpbmUtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxlZnQ6IDgwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZmZmZmZmOyB9XG4gICAgLnRpbWVsaW5lIC50aW1lbGluZS1pY29uID4gaSB7XG4gICAgICBsaW5lLWhlaWdodDogNDBweDsgfVxuICAudGltZWxpbmUgLnRpbWVsaW5lLWNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDQwcHggMDsgfVxuICAgIC50aW1lbGluZSAudGltZWxpbmUtY2FyZDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRpbWVsaW5lIC50aW1lbGluZS1jYXJkOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC50aW1lbGluZSAudGltZWxpbmUtaGVhZGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC50aW1lbGluZSAudGltZWxpbmUtaGVhZGluZzo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudGltZWxpbmUgLnRpbWVsaW5lLWhlYWRpbmcuYm9yZGVyOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDYpOyB9XG4gIC50aW1lbGluZSAudGltZWxpbmUtY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNTBweDsgfVxuICAgIC50aW1lbGluZSAudGltZWxpbmUtY29udGVudDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudGltZWxpbmUgLnRpbWVsaW5lLWNvbnRlbnQgLnRpbWVsaW5lLWJvZHkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSg2NCwgNjQsIDY5LCAwLjA4KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAudGltZWxpbmUgLnRpbWVsaW5lLWNvbnRlbnQgLnRpbWVsaW5lLWRhdGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA1cHggMCAxMHB4OyB9XG4gIC50aW1lbGluZSAudGltZWxpbmUtY29udGVudCAudGltZWxpbmUtYm9keTo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxM3B4O1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBjb250ZW50OiAnICc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLXdpZHRoOiA3cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICByaWdodDogMTAwJTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHJnYmEoMTUwLCAxNTAsIDE1MCwgMC4yKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAudGltZWxpbmUgLnRpbWVsaW5lLWNvbnRlbnQgLnRpbWVsaW5lLWJvZHk6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNHB4O1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBjb250ZW50OiAnICc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICByaWdodDogMTAwJTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHdoaXRlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGltZWxpbmU6bm90KC5zdGFja2VkKTo6YmVmb3JlIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0ycHg7IH1cbiAgLnRpbWVsaW5lOm5vdCguc3RhY2tlZCkgLnRpbWVsaW5lLWNhcmQ6bnRoLWNoaWxkKGV2ZW4pIC50aW1lbGluZS1jb250ZW50IHtcbiAgICBmbG9hdDogcmlnaHQgOyB9XG4gIC50aW1lbGluZTpub3QoLnN0YWNrZWQpIC50aW1lbGluZS1jYXJkOm50aC1jaGlsZChvZGQpIC50aW1lbGluZS1jb250ZW50IC50aW1lbGluZS1ib2R5IHtcbiAgICBmbG9hdDogcmlnaHQgOyB9XG4gIC50aW1lbGluZTpub3QoLnN0YWNrZWQpIC50aW1lbGluZS1jYXJkOm50aC1jaGlsZChvZGQpIC50aW1lbGluZS1jb250ZW50IC50aW1lbGluZS1ib2R5OjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgcmdiYSgxNTAsIDE1MCwgMTUwLCAwLjIpOyB9XG4gIC50aW1lbGluZTpub3QoLnN0YWNrZWQpIC50aW1lbGluZS1jYXJkOm50aC1jaGlsZChvZGQpIC50aW1lbGluZS1jb250ZW50IC50aW1lbGluZS1ib2R5OjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB3aGl0ZTsgfVxuICAudGltZWxpbmU6bm90KC5zdGFja2VkKSAudGltZWxpbmUtY2FyZDpudGgtY2hpbGQoZXZlbikgLnRpbWVsaW5lLWNvbnRlbnQgLnRpbWVsaW5lLWRhdGUge1xuICAgIHJpZ2h0OiAxMjIlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnRpbWVsaW5lOm5vdCguc3RhY2tlZCkgLnRpbWVsaW5lLWNhcmQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnRpbWVsaW5lOm5vdCguc3RhY2tlZCkgLnRpbWVsaW5lLWljb24ge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7IH1cbiAgLnRpbWVsaW5lOm5vdCguc3RhY2tlZCkgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgIHdpZHRoOiA0NSU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnRpbWVsaW5lIC50aW1lbGluZS1kYXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMTIyJTsgfVxuICAudGltZWxpbmUuc3RhY2tlZCAudGltZWxpbmUtZGF0ZSB7XG4gICAgbGVmdDogLTE1MHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC50aW1lbGluZSAudGltZWxpbmUtZGF0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IC0xNTBweDsgfSB9XG5cbi8qICRjaGFydHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZsb3QteC1heGlzID4gOmZpcnN0LWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2hhcnRfY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5yaWNrc2hhdy1jaGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ueV9heGlzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDQwcHg7IH1cblxuLmNoYXJ0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDsgfVxuXG4uY2hhcnQtc20ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5jaGFydC1sZWdlbmQuZmlyc3Qge1xuICBwYWRkaW5nLXRvcDogODBweDsgfVxuXG4uYzNjaGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5wcmljaW5nIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gIC5wcmljaW5nIC5wcmljaW5nLXBsYW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnByaWNpbmcgLnByaWNpbmctcGxhbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG4gIC5wcmljaW5nIC5wbGFuLXByaWNlIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgLnByaWNpbmcgLnBsYW4tcHJpY2Utc3ltYm9sIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgdmVydGljYWwtYWxpZ246IHN1cGVyOyB9XG4gIC5wcmljaW5nIC5wbGFuLXByaWNlLXBlcmlvZCB7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3BhY2l0eTogLjc7IH1cbiAgLnByaWNpbmcgLnBsYW4tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAxcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgLnByaWNpbmcgLnBsYW4tZmVhdHVyZXMge1xuICAgIGxpbmUtaGVpZ2h0OiAyLjU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5wcmljaW5nIC5wbGFuLWZlYXR1cmVzIGxpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgLnByaWNpbmcgLmJ0biB7XG4gICAgZm9udC1zaXplOiAuOXJlbTsgfVxuXG4vKiAkc3dpdGNoXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zd2l0Y2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgbWFyZ2luOiAwIDFyZW07XG4gIHBhZGRpbmc6IC4zMTI1cmVtIDA7XG4gIC8qIHNpemVzLiAqLyB9XG4gIC5zd2l0Y2ggc3BhbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICB3aWR0aDogMy4xMjVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94OyB9XG4gIC5zd2l0Y2ggaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnN3aXRjaCBzcGFuIGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIDIwMG1zOyB9XG4gIC5zd2l0Y2ggc3BhbiBpOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxLjg3NXJlbTtcbiAgICBoZWlnaHQ6IDEuODc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjA2MjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMC4wNjI1cmVtIDAuMTI1cmVtIHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cbiAgLnN3aXRjaCA6ZGlzYWJsZWQgKyBzcGFuIGk6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjsgfVxuICAuc3dpdGNoIDpjaGVja2VkICsgc3BhbiB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtczsgfVxuICAgIC5zd2l0Y2ggOmNoZWNrZWQgKyBzcGFuIGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4zMTNyZW07IH1cbiAgLnN3aXRjaC5zd2l0Y2gtc20ge1xuICAgIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07IH1cbiAgICAuc3dpdGNoLnN3aXRjaC1zbSBzcGFuIHtcbiAgICAgIHdpZHRoOiAyLjA2M3JlbTtcbiAgICAgIGhlaWdodDogLjYyNXJlbTsgfVxuICAgIC5zd2l0Y2guc3dpdGNoLXNtIHNwYW4gaTo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgICAgaGVpZ2h0OiAxLjI1cmVtOyB9XG4gICAgLnN3aXRjaC5zd2l0Y2gtc20gOmNoZWNrZWQgKyBzcGFuIGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjg3NXJlbTsgfVxuICAuc3dpdGNoLnN3aXRjaC1sZyB7XG4gICAgYm9yZGVyLXJhZGl1czogMi41cmVtOyB9XG4gICAgLnN3aXRjaC5zd2l0Y2gtbGcgc3BhbiB7XG4gICAgICB3aWR0aDogNC4xMjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTsgfVxuICAgIC5zd2l0Y2guc3dpdGNoLWxnIHNwYW4gaTo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTsgfVxuICAgIC5zd2l0Y2guc3dpdGNoLWxnIDpjaGVja2VkICsgc3BhbiBpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS42ODhyZW07IH1cblxuLmNlbnRlci10YWJsZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4vKiAkanF1ZXJ5LnVpXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4udWktc2xpZGVyIC51aS1zbGlkZXItcmFuZ2Uge1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLnVpLXNsaWRlciAudWktc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYm94LXNoYWRvdzogI2EzYTNhMyAwIDAgMCAxcHg7IH1cblxuLnVpLXNsaWRlciAudWktc2xpZGVyLWhhbmRsZS51aS1zdGF0ZS1hY3RpdmUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMiwgMik7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgyLCAyKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMiwgMik7XG4gIC1vLXRyYW5zZm9ybTogc2NhbGUoMiwgMik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMiwgMik7IH1cblxuLnVpLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcbiAgZm9udC1zaXplOiAuN2VtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuXG4vKiBzdXBwb3J0OiBJRTggLSBTZWUgIzY3MjcgKi9cbi51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1oYW5kbGUsXG4udWktc2xpZGVyLnVpLXN0YXRlLWRpc2FibGVkIC51aS1zbGlkZXItcmFuZ2Uge1xuICBmaWx0ZXI6IGluaGVyaXQ7IH1cblxuLnVpLXNsaWRlci1ob3Jpem9udGFsIHtcbiAgaGVpZ2h0OiA0cHg7IH1cblxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgdG9wOiAtNXB4O1xuICBtYXJnaW4tbGVmdDogLS42ZW07IH1cblxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2Uge1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1taW4ge1xuICBsZWZ0OiAwOyB9XG5cbi51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlLW1heCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi51aS1zbGlkZXItdmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogOS4zNzVyZW07XG4gIG1hcmdpbjogMCA4cHg7IH1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLWhhbmRsZSB7XG4gIGxlZnQ6IC01cHg7XG4gIG1hcmdpbi1ib3R0b206IC0uNmVtO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4udWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItcmFuZ2Uge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4udWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItcmFuZ2UtbWluIHtcbiAgYm90dG9tOiAwOyB9XG5cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1tYXgge1xuICB0b3A6IDA7IH1cblxuLnVpLXNsaWRlci1yYW5nZS1taW4sXG4udWktc2xpZGVyLXJhbmdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuXG4uc2xpZGVyLWluZm8gLnVpLXNsaWRlci1yYW5nZS1taW4sXG4uc2xpZGVyLWluZm8gLnVpLXNsaWRlci1yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2MzZjA7IH1cblxuLnNsaWRlci1pbmZvIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhZTNmODtcbiAgYm94LXNoYWRvdzogIzRjYzNmMCAwIDAgMCAxcHg7IH1cblxuLnNsaWRlci1pbmZvIC5zbGlkZXItaGFuZGxlLnRyaWFuZ2xlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzRjYzNmMDsgfVxuXG4uc2xpZGVyLXByaW1hcnkgLnVpLXNsaWRlci1yYW5nZS1taW4sXG4uc2xpZGVyLXByaW1hcnkgLnVpLXNsaWRlci1yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLnNsaWRlci1wcmltYXJ5IC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhYzJmODtcbiAgYm94LXNoYWRvdzogIzRjN2ZmMCAwIDAgMCAxcHg7IH1cblxuLnNsaWRlci1wcmltYXJ5IC5zbGlkZXItaGFuZGxlLnRyaWFuZ2xlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzRjN2ZmMDsgfVxuXG4uc2xpZGVyLXN1Y2Nlc3MgLnVpLXNsaWRlci1yYW5nZS1taW4sXG4uc2xpZGVyLXN1Y2Nlc3MgLnVpLXNsaWRlci1yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZmMzNWM7IH1cblxuLnNsaWRlci1zdWNjZXNzIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhZGVhNztcbiAgYm94LXNoYWRvdzogIzdmYzM1YyAwIDAgMCAxcHg7IH1cblxuLnNsaWRlci1zdWNjZXNzIC5zbGlkZXItaGFuZGxlLnRyaWFuZ2xlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzdmYzM1YzsgfVxuXG4uc2xpZGVyLXdhcm5pbmcgLnVpLXNsaWRlci1yYW5nZS1taW4sXG4uc2xpZGVyLXdhcm5pbmcgLnVpLXNsaWRlci1yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGM1NGM7IH1cblxuLnNsaWRlci13YXJuaW5nIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZTNhYTtcbiAgYm94LXNoYWRvdzogI2YwYzU0YyAwIDAgMCAxcHg7IH1cblxuLnNsaWRlci13YXJuaW5nIC5zbGlkZXItaGFuZGxlLnRyaWFuZ2xlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2YwYzU0YzsgfVxuXG4uc2xpZGVyLWRhbmdlciAudWktc2xpZGVyLXJhbmdlLW1pbixcbi5zbGlkZXItZGFuZ2VyIC51aS1zbGlkZXItcmFuZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDI2ZDU0OyB9XG5cbi5zbGlkZXItZGFuZ2VyIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U3YjJhNTtcbiAgYm94LXNoYWRvdzogI2QyNmQ1NCAwIDAgMCAxcHg7IH1cblxuLnNsaWRlci1kYW5nZXIgLnNsaWRlci1oYW5kbGUudHJpYW5nbGUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZDI2ZDU0OyB9XG5cbi5yb3VuZGVkLWhhbmRsZXIgLnVpLXNsaWRlci1oYW5kbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLyogJGJvb3RzdHJhcC10YWdzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmRpdi50YWdzaW5wdXQge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAuMzEyNXJlbSAuMzEyNXJlbSAwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYmFja2dyb3VuZDogd2hpdGU7IH1cblxuZGl2LnRhZ3NpbnB1dCBzcGFuLnRhZyB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBwYWRkaW5nOiAuMTI1cmVtIC4zMTI1cmVtO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMDtcbiAgYmFja2dyb3VuZDogIzRjN2ZmMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbmRpdi50YWdzaW5wdXQgc3Bhbi50YWcgYSB7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogd2hpdGU7IH1cblxuZGl2LnRhZ3NpbnB1dCBpbnB1dCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBjb2xvcjogd2hpdGU7IH1cblxuLm5vdF92YWxpZCB7XG4gIGNvbG9yOiAjOTgzZTI4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6ICNmMmQ0Y2QgIWltcG9ydGFudDsgfVxuXG4vKiAkYm9vdHN0cmFwLXRpbWVwaWNrZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJvb3RzdHJhcC10aW1lcGlja2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5ib290c3RyYXAtdGltZXBpY2tlci5wdWxsLXJpZ2h0IC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAgIC5ib290c3RyYXAtdGltZXBpY2tlci5wdWxsLXJpZ2h0IC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudTpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDEycHg7XG4gICAgICBsZWZ0OiBhdXRvOyB9XG4gICAgLmJvb3RzdHJhcC10aW1lcGlja2VyLnB1bGwtcmlnaHQgLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAxM3B4O1xuICAgICAgbGVmdDogYXV0bzsgfVxuICAuYm9vdHN0cmFwLXRpbWVwaWNrZXIgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuYm9vdHN0cmFwLXRpbWVwaWNrZXIgLmlucHV0LWdyb3VwLWFkZG9uIGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51IHtcbiAgcGFkZGluZzogNHB4OyB9XG4gIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudS5vcGVuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJvcmRlci1sZWZ0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC50aW1lcGlja2VyLW9yaWVudC1sZWZ0OmJlZm9yZSB7XG4gIGxlZnQ6IDZweDsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LnRpbWVwaWNrZXItb3JpZW50LWxlZnQ6YWZ0ZXIge1xuICBsZWZ0OiA3cHg7IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC50aW1lcGlja2VyLW9yaWVudC1yaWdodDpiZWZvcmUge1xuICByaWdodDogNnB4OyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQudGltZXBpY2tlci1vcmllbnQtcmlnaHQ6YWZ0ZXIge1xuICByaWdodDogN3B4OyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQudGltZXBpY2tlci1vcmllbnQtdG9wOmJlZm9yZSB7XG4gIHRvcDogLTdweDsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LnRpbWVwaWNrZXItb3JpZW50LXRvcDphZnRlciB7XG4gIHRvcDogLTZweDsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LnRpbWVwaWNrZXItb3JpZW50LWJvdHRvbTpiZWZvcmUge1xuICBib3R0b206IC03cHg7XG4gIGJvcmRlci10b3A6IDdweCBzb2xpZCAjOTk5O1xuICBib3JkZXItYm90dG9tOiAwOyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQudGltZXBpY2tlci1vcmllbnQtYm90dG9tOmFmdGVyIHtcbiAgYm90dG9tOiAtNnB4O1xuICBib3JkZXItdG9wOiA2cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IC5nbHlwaGljb24tY2hldnJvbi11cCxcbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgLmdseXBoaWNvbi1jaGV2cm9uLWRvd24ge1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCAuZ2x5cGhpY29uLWNoZXZyb24tdXA6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYxMDYnOyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgLmdseXBoaWNvbi1jaGV2cm9uLWRvd246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYxMDcnOyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgYS5idG4sXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IGlucHV0IHtcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwOyB9XG4gIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQge1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQ6bm90KC5zZXBhcmF0b3IpIHtcbiAgICAgIG1pbi13aWR0aDogMzBweDsgfVxuICAgIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgc3BhbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDhweCAwO1xuICAgICAgY29sb3I6ICMzMzM7XG4gICAgICBib3JkZXI6IDFweCB0cmFuc3BhcmVudCBzb2xpZDtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgYTpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxuICAgICAgLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBhIGkge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDJweDsgfVxuICAgIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgaW5wdXQge1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCAubW9kYWwtY29udGVudCB7XG4gIHBhZGRpbmc6IDRweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIHtcbiAgLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC5tb2RhbCB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTAwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmJvb3RzdHJhcC10aW1lcGlja2VyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ib290c3RyYXAtdGltZXBpY2tlciAuZHJvcGRvd24tbWVudSB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYm9vdHN0cmFwLXRpbWVwaWNrZXIucHVsbC1yaWdodCAuYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnUge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgICAuYm9vdHN0cmFwLXRpbWVwaWNrZXIucHVsbC1yaWdodCAuYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnU6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAuNzVyZW07XG4gICAgICBsZWZ0OiBhdXRvOyB9XG4gICAgLmJvb3RzdHJhcC10aW1lcGlja2VyLnB1bGwtcmlnaHQgLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAuODEyNXJlbTtcbiAgICAgIGxlZnQ6IGF1dG87IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51IHtcbiAgcGFkZGluZzogMXB4OyB9XG4gIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudTpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0OiAuNDM3NXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAwLjQzNzVyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJvcmRlci1sZWZ0OiAuNDM3NXJlbSBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnU6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0OiAuMzc1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IC4zNzVyZW0gc29saWQgI2ZmZjtcbiAgICBib3JkZXItbGVmdDogLjM3NXJlbSBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LnRpbWVwaWNrZXItb3JpZW50LWxlZnQ6YmVmb3JlIHtcbiAgbGVmdDogLjM3NXJlbTsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LnRpbWVwaWNrZXItb3JpZW50LWxlZnQ6YWZ0ZXIge1xuICBsZWZ0OiAuNDM3NXJlbTsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0LnRpbWVwaWNrZXItb3JpZW50LXJpZ2h0OmJlZm9yZSB7XG4gIHJpZ2h0OiAuMzc1cmVtOyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQudGltZXBpY2tlci1vcmllbnQtcmlnaHQ6YWZ0ZXIge1xuICByaWdodDogLjQzNzVyZW07IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC50aW1lcGlja2VyLW9yaWVudC10b3A6YmVmb3JlIHtcbiAgdG9wOiAtLjQzNzVyZW07IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC50aW1lcGlja2VyLW9yaWVudC10b3A6YWZ0ZXIge1xuICB0b3A6IC0uMzc1cmVtOyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQudGltZXBpY2tlci1vcmllbnQtYm90dG9tOmJlZm9yZSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAtLjQzNzVyZW07XG4gIGJvcmRlci10b3A6IC40Mzc1cmVtIHNvbGlkICM5OTk7XG4gIGJvcmRlci1ib3R0b206IDA7IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldC50aW1lcGlja2VyLW9yaWVudC1ib3R0b206YWZ0ZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogLS4zNzVyZW07XG4gIGJvcmRlci10b3A6IC4zNzVyZW0gc29saWQgI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IGEuYnRuLFxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCBpbnB1dCB7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLnNlcGFyYXRvciB7XG4gIHdpZHRoOiAuMTI1cmVtO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgYSB7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBhOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgYSBpIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICBzcGVhazogbm9uZTtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBhIGk6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAuODc1cmVtO1xuICAgICAgaGVpZ2h0OiAuODc1cmVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIGEgLmljb24tY2hldnJvbi1kb3duOjphZnRlciB7XG4gICAgbGluZS1oZWlnaHQ6IC41NjI1cmVtO1xuICAgIGNvbnRlbnQ6ICdcXGYwZGQnOyB9XG4gIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgYSAuaWNvbi1jaGV2cm9uLXVwOjphZnRlciB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgY29udGVudDogJ1xcZjBkZSc7IH1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBpbnB1dCB7XG4gIGJvcmRlcjogMDsgfVxuXG4uYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0IC5tb2RhbC1jb250ZW50IHtcbiAgcGFkZGluZzogLjI1cmVtOyB9XG5cbi8qICRjMy1jaGFydHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmMzIHN2ZyB0ZXh0LFxuLmMzIHN2ZyB7XG4gIGZvbnQ6IDAuNjI1cmVtIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG5cbi5jMyBwYXRoLFxuLmMzIGxpbmUge1xuICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uYzMgLmMzLXRvb2x0aXAge1xuICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5jMyAuYzMtdG9vbHRpcCB0ciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwOyB9XG4gIC5jMyAuYzMtdG9vbHRpcCB0aCB7XG4gICAgZm9udC1zaXplOiAuODEyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG4gIC5jMyAuYzMtdG9vbHRpcCB0ZCB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICM0YzdmZjA7IH1cblxuLyogJGNoYXJ0anNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNhbnZhcy1ob2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uZG91Z2hudXQtbGVnZW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAuNXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAuZG91Z2hudXQtbGVnZW5kIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogLjI1cmVtO1xuICAgIHBhZGRpbmc6IC4xMjVyZW0gLjVyZW0gLjEyNXJlbSAxLjc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5kb3VnaG51dC1sZWdlbmQgbGk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7IH1cbiAgLmRvdWdobnV0LWxlZ2VuZCBsaSBzcGFuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi8qICRjbG9jay1waWNrZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNsb2NrcGlja2VyLXBvcG92ZXIgLnBvcG92ZXItdGl0bGUge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5jbG9ja3BpY2tlci1wb3BvdmVyIC5wb3BvdmVyLXRpdGxlIHNwYW4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uY2xvY2twaWNrZXItcG9wb3ZlciAucG9wb3Zlci1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cbiAgLmNsb2NrcGlja2VyLXBvcG92ZXIgLnBvcG92ZXItY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDsgfVxuXG4uY2xvY2twaWNrZXItcG9wb3ZlciAuY2xvY2twaWNrZXItcGxhdGUge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLmNsb2NrcGlja2VyLXBvcG92ZXIgLmNsb2NrcGlja2VyLWJ1dHRvbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogLjYyNXJlbSAwO1xuICBib3JkZXItd2lkdGg6IC4wNjI1cmVtIDAgMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7IH1cblxuLyogJGNvbG9yLXBpY2tlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY29sb3JwaWNrZXIge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBtaW4td2lkdGg6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgcGFkZGluZzogLjMxMjVyZW07XG4gIG9wYWNpdHk6IDE7XG4gIGJveC1zaGFkb3c6IDAgMC4wNjI1cmVtIDFweCB0cmFuc3BhcmVudDsgfVxuXG4vKiAkZGF0ZXBpY2tlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY2VudGVyLWJsb2NrID4gLmRhdGVwaWNrZXIge1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uZGF0ZXBpY2tlci5kcm9wZG93bi1tZW51IHtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBvcGFjaXR5OiAxO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJveC1zaGFkb3c6IDAgMC4wNjI1cmVtIDFweCB0cmFuc3BhcmVudDsgfVxuXG4uZGF0ZXBpY2tlci1pbmxpbmUge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLmRhdGVwaWNrZXIge1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmRhdGVwaWNrZXItZHJvcGRvd24ge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJveC1zaGFkb3c6IDAgMC4wNjI1cmVtIDFweCB0cmFuc3BhcmVudDsgfVxuICAgIC5kYXRlcGlja2VyLWRyb3Bkb3duOmJlZm9yZSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgICAuZGF0ZXBpY2tlci1kcm9wZG93bi5kYXRlcGlja2VyLW9yaWVudC1ib3R0b206YmVmb3JlIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCxcbiAgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGgge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXNoYWRvdzogMCAtMC4wNjI1cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDtcbiAgICBib3JkZXItY29sb3I6ICM0YzdmZjA7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgICAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXIsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlcjpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYztcbiAgICAgIGJvcmRlci1jb2xvcjogIzE0NTdlYjsgfVxuICAgIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXI6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlci5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQuZm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcjpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDVkZWM7XG4gICAgICBib3JkZXItY29sb3I6ICMxNDU3ZWI7IH1cbiAgICAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6YWN0aXZlLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuYWN0aXZlLFxuICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRyb3Bkb3duLXRvZ2dsZSwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyOmFjdGl2ZSwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmFjdGl2ZSxcbiAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlci5kcm9wZG93bi10b2dnbGUsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4gICAgLm9wZW4gPiAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQuZHJvcGRvd24tdG9nZ2xlLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlLFxuICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQ1ZGVjO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTQ1N2ViO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAgICAgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmFjdGl2ZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyOmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyOmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyOmFjdGl2ZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmFjdGl2ZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyOmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyOmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyOmFjdGl2ZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzEyNGVkNDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMGY0MGFlOyB9XG4gICAgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQuZm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpkaXNhYmxlZDpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmRpc2FibGVkLmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXIuZGlzYWJsZWQ6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlci5kaXNhYmxlZC5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyOmRpc2FibGVkOmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXI6ZGlzYWJsZWQuZm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZC5kaXNhYmxlZDpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmRpc2FibGVkLmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6ZGlzYWJsZWQ6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpkaXNhYmxlZC5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRpc2FibGVkOmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQuZm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjpkaXNhYmxlZDpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyOmRpc2FibGVkLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7XG4gICAgICBib3JkZXItY29sb3I6ICM0YzdmZjA7IH1cbiAgICAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpkaXNhYmxlZDpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmRpc2FibGVkOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXI6ZGlzYWJsZWQ6aG92ZXIsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZC5kaXNhYmxlZDpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmRpc2FibGVkOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQ6aG92ZXIsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjpkaXNhYmxlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwOyB9XG4gIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAgIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtc2hhZG93OiAwIC0wLjA2MjVyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDtcbiAgICAgIGJvcmRlci1jb2xvcjogIzRjN2ZmMDtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gICAgICAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6aG92ZXIsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTQ1N2ViOyB9XG4gICAgICAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyOmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcjpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZm9jdXMge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDVkZWM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE0NTdlYjsgfVxuICAgICAgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6YWN0aXZlLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5hY3RpdmUsXG4gICAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRyb3Bkb3duLXRvZ2dsZSwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmUsXG4gICAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZSwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4gICAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmRyb3Bkb3duLXRvZ2dsZSwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmUsXG4gICAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTQ1N2ViO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAgICAgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6YWN0aXZlOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTphY3RpdmU6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmFjdGl2ZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuYWN0aXZlOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5hY3RpdmU6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmFjdGl2ZS5mb2N1cyxcbiAgICAgICAgLm9wZW4gPiAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgICAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcjphY3RpdmU6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyOmFjdGl2ZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuYWN0aXZlOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmU6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmFjdGl2ZS5mb2N1cyxcbiAgICAgICAgLm9wZW4gPiAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgICAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmU6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmFjdGl2ZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuYWN0aXZlOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmU6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmFjdGl2ZS5mb2N1cyxcbiAgICAgICAgLm9wZW4gPiAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgICAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmU6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyOmFjdGl2ZS5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmU6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLmFjdGl2ZS5mb2N1cyxcbiAgICAgICAgLm9wZW4gPiAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgICAgIC5vcGVuID4gLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgICAgICAub3BlbiA+IC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjRlZDQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMGY0MGFlOyB9XG4gICAgICAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuZm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmRpc2FibGVkOmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpkaXNhYmxlZC5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuZGlzYWJsZWQ6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmRpc2FibGVkLmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcjpkaXNhYmxlZDpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6ZGlzYWJsZWQuZm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmRpc2FibGVkOmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5kaXNhYmxlZC5mb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6ZGlzYWJsZWQ6Zm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmRpc2FibGVkLmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5kaXNhYmxlZDpmb2N1cywgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQuZm9jdXMsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyOmRpc2FibGVkOmZvY3VzLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjpkaXNhYmxlZC5mb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzRjN2ZmMDsgfVxuICAgICAgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmRpc2FibGVkOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5kaXNhYmxlZDpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6ZGlzYWJsZWQ6aG92ZXIsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmRpc2FibGVkOmhvdmVyLCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpkaXNhYmxlZDpob3ZlciwgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQ6aG92ZXIsIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyOmRpc2FibGVkOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi5pbnB1dC1kYXRlcmFuZ2UgaW5wdXQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAycHggMCAwIDJweDsgfVxuXG4uaW5wdXQtZGF0ZXJhbmdlIGlucHV0Omxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDJweCAycHggMDsgfVxuXG4uaW5wdXQtZGF0ZXJhbmdlIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIGJvcmRlcjogc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMsIDMsIDMsIDAuMSk7IH1cblxuLyogJGRhdGVyYW5nZXBpY2tlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZGF0ZXJhbmdlcGlja2VyIHtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG1hcmdpbi10b3A6IC0uMDYyNXJlbTtcbiAgb3BhY2l0eTogMTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAwIDAuMDYyNXJlbSAxcHggdHJhbnNwYXJlbnQ7IH1cbiAgLmRhdGVyYW5nZXBpY2tlciAucmFuZ2VzIC5pbnB1dC1taW5pIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAuZGF0ZXJhbmdlcGlja2VyIC5jYWxlbmRhci1kYXRlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmRhdGVyYW5nZXBpY2tlciB0ZC5hdmFpbGFibGUgKyB0ZC5zdGFydC1kYXRlIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHggMCAwIDJweDsgfVxuICAuZGF0ZXJhbmdlcGlja2VyIHRkLmluLXJhbmdlICsgdGQuZW5kLWRhdGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwOyB9XG4gIC5kYXRlcmFuZ2VwaWNrZXIgdGQuYXZhaWxhYmxlOmhvdmVyLFxuICAuZGF0ZXJhbmdlcGlja2VyIHRoLmF2YWlsYWJsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2U4ZThlODsgfVxuICAuZGF0ZXJhbmdlcGlja2VyIHRkLmFjdGl2ZSxcbiAgLmRhdGVyYW5nZXBpY2tlciB0ZC5hY3RpdmU6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogIzRjN2ZmMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG4gIC5kYXRlcmFuZ2VwaWNrZXIgdGQsXG4gIC5kYXRlcmFuZ2VwaWNrZXIgdGgge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAuZGF0ZXJhbmdlcGlja2VyIC5jYWxlbmRhciB0aCxcbiAgLmRhdGVyYW5nZXBpY2tlciAuY2FsZW5kYXIgdGQge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG4gIC5kYXRlcmFuZ2VwaWNrZXIgdGQuc3RhcnQtZGF0ZS5lbmQtZGF0ZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5kYXRlcmFuZ2VwaWNrZXIgLnJhbmdlcyBsaSB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5kYXRlcmFuZ2VwaWNrZXIgLnJhbmdlcyBsaS5hY3RpdmUsXG4gIC5kYXRlcmFuZ2VwaWNrZXIgLnJhbmdlcyBsaTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwO1xuICAgIGJhY2tncm91bmQ6ICM0YzdmZjA7IH1cblxuLmRyb3AtYm94IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgcGFkZGluZzogMS41NjNyZW0gMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDAuMDYyNXJlbSBkYXNoZWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuXG4uZHJhZ292ZXIge1xuICBib3JkZXItY29sb3I6ICM0YzdmZjA7IH1cblxuLmRyb3B6b25lIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmRyb3B6b25lIC5kei1tZXNzYWdlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmRyb3B6b25lIC5kei1wcmV2aWV3LmR6LWZpbGUtcHJldmlldyAuZHotaW1hZ2Uge1xuICAgIGJhY2tncm91bmQ6ICNlOGU4ZTg7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5kcm9wem9uZSAuZHotcHJldmlldyAuZHotZXJyb3ItbWVzc2FnZSB7XG4gICAgYmFja2dyb3VuZDogI2QyNmQ1NDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmRyb3B6b25lIC5kei1wcmV2aWV3IC5kei1lcnJvci1tZXNzYWdlOmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZDI2ZDU0OyB9XG4gIC5kcm9wem9uZSAuZHotcHJldmlldyAuZHotcHJvZ3Jlc3Mge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5kcm9wem9uZSAuZHotcHJldmlldyAuZHotcHJvZ3Jlc3MgLmR6LXVwbG9hZCB7XG4gICAgYmFja2dyb3VuZDogIzRjN2ZmMDsgfVxuICAuZHJvcHpvbmUgLmR6LXByZXZpZXcgLmR6LWRldGFpbHMgLmR6LWZpbGVuYW1lOmhvdmVyIHNwYW4ge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5kcm9wem9uZSAuZHotcHJldmlldyAuZHotZGV0YWlscyAuZHotZmlsZW5hbWUgc3BhbixcbiAgLmRyb3B6b25lIC5kei1wcmV2aWV3IC5kei1kZXRhaWxzIC5kei1zaXplIHNwYW4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubXktZHJvcC16b25lIHtcbiAgbWluLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZzogMS4xODhyZW07XG4gIGJvcmRlcjogZGFzaGVkIDAuMDYyNXJlbSByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLm52LWZpbGUtb3ZlciB7XG4gIGJvcmRlci1jb2xvcjogI2QyNmQ1NDsgfVxuXG4uYW5vdGhlci1maWxlLW92ZXItY2xhc3Mge1xuICBib3JkZXItY29sb3I6ICM3ZmMzNWM7IH1cblxuLyogJGVhc3lwaWVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBpZWNoYXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5waWVjaGFydCBjYW52YXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuICAucGllY2hhcnQgPiBkaXYge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucGllY2hhcnQgPiBkaXYgPiBkaXYge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAucGllY2hhcnQgLnBlcmNlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7IH1cbiAgICAucGllY2hhcnQgLnBlcmNlbnQ6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgR2VvcmdpYSwgc2VyaWY7XG4gICAgICBmb250LXNpemU6IC41ZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb250ZW50OiAnJSc7IH1cblxuLyogJGZsb3QtY2hhcnRcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI3Rvb2x0aXAge1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAuMzEyNXJlbSAuNjI1cmVtO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuICAjdG9vbHRpcDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC4yNXJlbTtcbiAgICByaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXdpZHRoOiAuMzc1cmVtO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjNGM3ZmYwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbnRkLmxlZ2VuZENvbG9yQm94ID4gZGl2IHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuXG50ZC5sZWdlbmRDb2xvckJveCA+IGRpdiA+IGRpdiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07IH1cblxudGQubGVnZW5kTGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IC4zMTI1cmVtOyB9XG5cbi8qICRnb29nbGUtbWFwXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNjZC1nb29nbGUtbWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiNnb29nbGUtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDI1cmVtOyB9XG5cbi5nb29nbGUtbWFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLmdvb2dsZS1tYXAgaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmdtLXN0eWxlLWNjIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qICRpbnRsLXRlbC1pbnB1dFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaXRpLWZsYWcge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAuNjg3NXJlbTtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uaW50bC10ZWwtaW5wdXQge1xuICB3aWR0aDogMTAwJTsgfVxuICAuaW50bC10ZWwtaW5wdXQgLmZsYWctZHJvcGRvd246aG92ZXIgLnNlbGVjdGVkLWZsYWcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMyLCAyMzIsIDIzMiwgMC41KTsgfVxuICAuaW50bC10ZWwtaW5wdXQgLnNlbGVjdGVkLWZsYWcgLmFycm93IHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLmludGwtdGVsLWlucHV0IC5zZWxlY3RlZC1mbGFnIC5hcnJvdy51cCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IHtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3QgLmRpdmlkZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuY291bnRyeSAuZGlhbC1jb2RlIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5jb3VudHJ5LmhpZ2hsaWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzIsIDIzMiwgMjMyLCAwLjUpOyB9XG5cbi8qICRqdmVjdG9ybWFwXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5qdmVjdG9ybWFwLXRpcCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBib3JkZXI6IHNvbGlkIDAuMDYyNXJlbSAjNGM3ZmYwO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5qdmVjdG9ybWFwLWxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IC4xODc1cmVtO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5qdmVjdG9ybWFwLXpvb21pbixcbi5qdmVjdG9ybWFwLXpvb21vdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBib3JkZXItcmFkaXVzOiAwLjEyNXJlbTsgfVxuICAuanZlY3Rvcm1hcC16b29taW46OmJlZm9yZSxcbiAgLmp2ZWN0b3JtYXAtem9vbW91dDo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICB3aWR0aDogLjEyNXJlbTtcbiAgICBoZWlnaHQ6IC42MjVyZW07XG4gICAgbWFyZ2luLXRvcDogLS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0uMDYyNXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgLmp2ZWN0b3JtYXAtem9vbWluOjphZnRlcixcbiAgLmp2ZWN0b3JtYXAtem9vbW91dDo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNTAlO1xuICAgIHdpZHRoOiAuNjI1cmVtO1xuICAgIGhlaWdodDogLjEyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0uMzEyNXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cblxuLmp2ZWN0b3JtYXAtem9vbWluIHtcbiAgdG9wOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOyB9XG5cbi5qdmVjdG9ybWFwLXpvb21vdXQge1xuICB0b3A6IDMuMDYzcmVtO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuICAuanZlY3Rvcm1hcC16b29tb3V0OjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogJGxhYmVsYXV0eVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5pbnB1dC5sYWJlbGF1dHkgKyBsYWJlbCB7XG4gIHBhZGRpbmc6IC41NjI1cmVtIC42MjVyZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG5pbnB1dC5sYWJlbGF1dHk6bm90KDpjaGVja2VkKTpub3QoW2Rpc2FibGVkXSkgKyBsYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlM2UzZTM7IH1cblxuaW5wdXQubGFiZWxhdXR5OmNoZWNrZWQgKyBsYWJlbCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuXG5pbnB1dC5sYWJlbGF1dHk6Y2hlY2tlZDpub3QoW2Rpc2FibGVkXSkgKyBsYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDZlZWU7IH1cblxuaW5wdXQuYnRuLWJsb2NrICsgbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuaW5wdXQudG8tbGFiZWxhdXR5LWljb24gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAuMzEyNXJlbTsgfVxuXG4vKiAkbXVsdGlzZWxlY3RcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuc2VsZWN0LmNlbnRlci1ibG9jayArIC5tcy1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0byAxLjVyZW07IH1cblxuLm1zLWNvbnRhaW5lciAubXMtc2VsZWN0YWJsZSxcbi5tcy1jb250YWluZXIgLm1zLXNlbGVjdGlvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cblxuLm1zLWNvbnRhaW5lciAubXMtbGlzdCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLm1zLWNvbnRhaW5lciAubXMtbGlzdC5tcy1mb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMDtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ubXMtY29udGFpbmVyIC5tcy1zZWxlY3RhYmxlIGxpLm1zLWVsZW0tc2VsZWN0YWJsZSxcbi5tcy1jb250YWluZXIgLm1zLXNlbGVjdGlvbiBsaS5tcy1lbGVtLXNlbGVjdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLm1zLWNvbnRhaW5lciAubXMtc2VsZWN0YWJsZSBsaS5tcy1ob3Zlcixcbi5tcy1jb250YWluZXIgLm1zLXNlbGVjdGlvbiBsaS5tcy1ob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuXG4ubXMtY29udGFpbmVyIC5tcy1zZWxlY3RhYmxlIGxpLmRpc2FibGVkLFxuLm1zLWNvbnRhaW5lciAubXMtc2VsZWN0aW9uIGxpLmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODsgfVxuXG4vKiAkbmVzdGFibGVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5kZC1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5kZC1saXN0IC5kZC1saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfVxuXG4uZGQtY29sbGFwc2VkIC5kZC1saXN0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZGQtaXRlbSxcbi5kZC1lbXB0eSxcbi5kZC1wbGFjZWhvbGRlciB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmRkLWhhbmRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IC4zMTI1cmVtIDA7XG4gIHBhZGRpbmc6IC42MjVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uZGQtaGFuZGxlOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4uZGQtaXRlbSA+IC5kZC1oYW5kbGUge1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTsgfVxuXG4uZGQtaXRlbSA+IGJ1dHRvbiB7XG4gIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAyLjE4OHJlbTtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtaW5kZW50OiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5kZC1pdGVtID4gYnV0dG9uOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogNTAlO1xuICB3aWR0aDogLjEyNXJlbTtcbiAgaGVpZ2h0OiAuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAtLjMxMjVyZW07XG4gIG1hcmdpbi1yaWdodDogLS4wNjI1cmVtO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG5cbi5kZC1pdGVtID4gYnV0dG9uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA1MCU7XG4gIHdpZHRoOiAuNjI1cmVtO1xuICBoZWlnaHQ6IC4xMjVyZW07XG4gIG1hcmdpbi10b3A6IC0uMDYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtLjMxMjVyZW07XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cblxuLmRkLWl0ZW0gPiBidXR0b25bZGF0YS1hY3Rpb249J2NvbGxhcHNlJ106YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZGQtcGxhY2Vob2xkZXIsXG4uZGQtZW1wdHkge1xuICBtaW4taGVpZ2h0OiAxLjg3NXJlbTtcbiAgbWFyZ2luOiAuMzEyNXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IC4wNjI1cmVtIGRhc2hlZCAjZGRkO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uZGQtZW1wdHkge1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgYm9yZGVyOiAuMDYyNXJlbSBkYXNoZWQgI2JiYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZmYgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgI2ZmZiA3NSUsICNmZmYpLCAtd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgI2ZmZiAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNzUlLCAjZmZmIDc1JSwgI2ZmZik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZmZmIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsICNmZmYgNzUlLCAjZmZmKSwgLW1vei1saW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZmYgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgI2ZmZiA3NSUsICNmZmYpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZmYgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgI2ZmZiA3NSUsICNmZmYpLCBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZmYgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgI2ZmZiA3NSUsICNmZmYpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAsIDMwcHggMzBweDtcbiAgYmFja2dyb3VuZC1zaXplOiA2MHB4IDYwcHg7IH1cblxuLmRkLWRyYWdlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLmRkLWRyYWdlbCA+IC5kZC1pdGVtIC5kZC1oYW5kbGUge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmRkLWRyYWdlbCAuZGQtaGFuZGxlIHtcbiAgICBib3gtc2hhZG93OiAwLjEyNXJlbSAwLjI1cmVtIDAuMzc1cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi8qKlxuICogTmVzdGFibGUgRHJhZ2dhYmxlIEhhbmRsZXNcbiAqL1xuLmRkMy1jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogLjMxMjVyZW0gMDtcbiAgcGFkZGluZzogLjYyNXJlbSAuNjI1cmVtIC42MjVyZW0gMy4xMjVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLmRkMy1jb250ZW50OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5kZC1kcmFnZWwgPiAuZGQzLWl0ZW0gPiAuZGQzLWNvbnRlbnQge1xuICBtYXJnaW46IDA7IH1cblxuLmRkMy1pdGVtID4gYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTsgfVxuXG4uZGQzLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMi4zNzVyZW07XG4gIG1hcmdpbjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWluZGVudDogMTAwJTtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLmRkMy1oYW5kbGU6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29udGVudDogJ1xcZjBjOSc7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtaW5kZW50OiAwO1xuICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHNwZWFrOiBub25lO1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgLmRkMy1oYW5kbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNlOGU4ZTg7IH1cblxuLyogJG5vdHlcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xubGkuYXBwLW5vdHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxubGkuYXBwLW5vdHk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm5vdHlfbWVzc2FnZVtzdHlsZV0ge1xuICBmb250LXNpemU6IDAuODEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5hcHAtbm90eSAubm90eV9iYXIge1xuICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gIGJvcmRlcjogLjA2MjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDFweDsgfVxuXG4uYXBwLW5vdHktdG9wLWxlZnQgLmFwcC1ub3R5IC5ub3R5X2Jhcixcbi5hcHAtbm90eS10b3AtcmlnaHQgLmFwcC1ub3R5IC5ub3R5X2Jhcixcbi5hcHAtbm90eS10b3AgLmFwcC1ub3R5IC5ub3R5X2JhciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlSW4gMTUwbXM7XG4gIGFuaW1hdGlvbjogZmFkZUluIDE1MG1zOyB9XG5cbi5hcHAtbm90eS10b3AtbGVmdCAuYXBwLW5vdHkuaS1hbS1jbG9zaW5nLW5vdyAubm90eV9iYXIsXG4uYXBwLW5vdHktdG9wLXJpZ2h0IC5hcHAtbm90eS5pLWFtLWNsb3Npbmctbm93IC5ub3R5X2Jhcixcbi5hcHAtbm90eS10b3AgLmFwcC1ub3R5LmktYW0tY2xvc2luZy1ub3cgLm5vdHlfYmFyIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVPdXQgMTUwbXM7XG4gIGFuaW1hdGlvbjogZmFkZU91dCAxNTBtczsgfVxuXG4uYXBwLW5vdHktYm90dG9tLWxlZnQgLmFwcC1ub3R5IC5ub3R5X2Jhcixcbi5hcHAtbm90eS1ib3R0b20tcmlnaHQgLmFwcC1ub3R5IC5ub3R5X2Jhcixcbi5hcHAtbm90eS1ib3R0b20gLmFwcC1ub3R5IC5ub3R5X2JhciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlSW4gMTUwbXM7XG4gIGFuaW1hdGlvbjogZmFkZUluIDE1MG1zOyB9XG5cbi5hcHAtbm90eS1ib3R0b20tbGVmdCAuYXBwLW5vdHkuaS1hbS1jbG9zaW5nLW5vdyAubm90eV9iYXIsXG4uYXBwLW5vdHktYm90dG9tLXJpZ2h0IC5hcHAtbm90eS5pLWFtLWNsb3Npbmctbm93IC5ub3R5X2Jhcixcbi5hcHAtbm90eS1ib3R0b20gLmFwcC1ub3R5LmktYW0tY2xvc2luZy1ub3cgLm5vdHlfYmFyIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVPdXQgMTUwbXM7XG4gIGFuaW1hdGlvbjogZmFkZU91dCAxNTBtczsgfVxuXG4uYXBwLW5vdHktYm90dG9tLFxuLmFwcC1ub3R5LWJvdHRvbS1yaWdodCxcbi5hcHAtbm90eS1ib3R0b20tbGVmdCxcbi5hcHAtbm90eS10b3AsXG4uYXBwLW5vdHktdG9wLXJpZ2h0LFxuLmFwcC1ub3R5LXRvcC1sZWZ0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTsgfVxuXG4vKiBCb3R0b20gbm90aWZpY2F0aW9uICovXG4uYXBwLW5vdHktYm90dG9tIHtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmFwcC1ub3R5LWJvdHRvbSBsaS5hcHAtbm90eSB7XG4gICAgbWFyZ2luLXRvcDogLS4wNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmFwcC1ub3R5LWJvdHRvbSAubm90eV9iYXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5hcHAtbm90eS1ib3R0b20ge1xuICAgIHBhZGRpbmctbGVmdDogMThyZW07IH1cbiAgLmV4cGFuZGluZyB+IC5hcHAtbm90eS1ib3R0b20ge1xuICAgIHBhZGRpbmctbGVmdDogNHJlbTsgfVxuICAuaG9yaXpvbnRhbCB+IC5hcHAtbm90eS1ib3R0b20sXG4gIC5vZmZjYW52YXMgfiAuYXBwLW5vdHktYm90dG9tLFxuICAuYm94ZWQgfiAuYXBwLW5vdHktYm90dG9tIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi8qIEJvdHRvbSByaWdodCBub3RpZmljYXRpb24gKi9cbi5hcHAtbm90eS1ib3R0b20tcmlnaHQge1xuICByaWdodDogMS41cmVtO1xuICBib3R0b206IDQuNXJlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmJveGVkIH4gLmFwcC1ub3R5LWJvdHRvbS1yaWdodCB7XG4gICAgcmlnaHQ6IDEuNXJlbTsgfSB9XG5cbi8qIEJvdHRvbSBsZWZ0IG5vdGlmaWNhdGlvbiAqL1xuLmFwcC1ub3R5LWJvdHRvbS1sZWZ0IHtcbiAgYm90dG9tOiA0LjVyZW07XG4gIGxlZnQ6IDEuNXJlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmFwcC1ub3R5LWJvdHRvbS1sZWZ0IHtcbiAgICBsZWZ0OiAxOS41cmVtOyB9XG4gIC5leHBhbmRpbmcgfiAuYXBwLW5vdHktYm90dG9tLWxlZnQge1xuICAgIGxlZnQ6IDUuNXJlbTsgfVxuICAuaG9yaXpvbnRhbCB+IC5hcHAtbm90eS1ib3R0b20tbGVmdCxcbiAgLm9mZmNhbnZhcyB+IC5hcHAtbm90eS1ib3R0b20tbGVmdCxcbiAgLmJveGVkIH4gLmFwcC1ub3R5LWJvdHRvbS1sZWZ0LFxuICAuYm94ZWQuZXhwYW5kaW5nIH4gLmFwcC1ub3R5LWJvdHRvbS1sZWZ0IHtcbiAgICBsZWZ0OiAxLjVyZW07IH0gfVxuXG4vKiBUb3Agbm90aWZpY2F0aW9uICovXG4uYXBwLW5vdHktdG9wIHtcbiAgdG9wOiA0LjkzOHJlbTtcbiAgcmlnaHQ6IDEuNXJlbTsgfVxuXG4uYXBwLW5vdHktdG9wIHtcbiAgdG9wOiAzLjQzOHJlbTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5hcHAtbm90eS10b3AgbGkuYXBwLW5vdHkge1xuICAgIG1hcmdpbi10b3A6IC0uMDYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5hcHAtbm90eS10b3AgLm5vdHlfYmFyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYXBwLW5vdHktdG9wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cmVtOyB9XG4gIC5leHBhbmRpbmcgfiAuYXBwLW5vdHktdG9wIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtOyB9XG4gIC5ob3Jpem9udGFsIH4gLmFwcC1ub3R5LXRvcCxcbiAgLm9mZmNhbnZhcyB+IC5hcHAtbm90eS10b3AsXG4gIC5ib3hlZCB+IC5hcHAtbm90eS10b3Age1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLyogVG9wIHJpZ2h0IG5vdGlmaWNhdGlvbiAqL1xuLmFwcC1ub3R5LXRvcC1yaWdodCB7XG4gIHRvcDogNC45MzhyZW07XG4gIHJpZ2h0OiAxLjVyZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5ib3hlZCB+IC5hcHAtbm90eS10b3AtcmlnaHQsXG4gIC5ib3hlZC5leHBhbmRpbmcgfiAuYXBwLW5vdHktdG9wLXJpZ2h0IHtcbiAgICByaWdodDogMS41cmVtOyB9IH1cblxuLyogVG9wIGxlZnQgbm90aWZpY2F0aW9uICovXG4uYXBwLW5vdHktdG9wLWxlZnQge1xuICB0b3A6IDQuOTM4cmVtO1xuICBsZWZ0OiAxLjVyZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5hcHAtbm90eS10b3AtbGVmdCB7XG4gICAgbGVmdDogMTkuNXJlbTsgfVxuICAuZXhwYW5kaW5nIH4gLmFwcC1ub3R5LXRvcC1sZWZ0IHtcbiAgICBsZWZ0OiA1LjVyZW07IH1cbiAgLmhvcml6b250YWwgfiAuYXBwLW5vdHktdG9wLWxlZnQsXG4gIC5vZmZjYW52YXMgfiAuYXBwLW5vdHktdG9wLWxlZnQsXG4gIC5ib3hlZCB+IC5hcHAtbm90eS10b3AtbGVmdCxcbiAgLmJveGVkLmV4cGFuZGluZyB+IC5hcHAtbm90eS10b3AtbGVmdCB7XG4gICAgbGVmdDogMS41cmVtOyB9IH1cblxuLyogTm90aWZpY2F0aW9uIGNvbG9ycyAqL1xuLm5vdHlfY29udGFpbmVyX3R5cGVfc3VjY2VzcyAubm90eV9iYXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ZjMzVjICFpbXBvcnRhbnQ7IH1cblxuYS5ub3R5X2NvbnRhaW5lcl90eXBlX3N1Y2Nlc3MgLm5vdHlfYmFyOmZvY3VzLCBhLm5vdHlfY29udGFpbmVyX3R5cGVfc3VjY2VzcyAubm90eV9iYXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjVhZDNmOyB9XG5cbi5ub3R5X2NvbnRhaW5lcl90eXBlX2luZm9ybWF0aW9uIC5ub3R5X2JhciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Y2MzZjAgIWltcG9ydGFudDsgfVxuXG5hLm5vdHlfY29udGFpbmVyX3R5cGVfaW5mb3JtYXRpb24gLm5vdHlfYmFyOmZvY3VzLCBhLm5vdHlfY29udGFpbmVyX3R5cGVfaW5mb3JtYXRpb24gLm5vdHlfYmFyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkYjNlYzsgfVxuXG4ubm90eV9jb250YWluZXJfdHlwZV93YXJuaW5nIC5ub3R5X2JhciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGM1NGMgIWltcG9ydGFudDsgfVxuXG5hLm5vdHlfY29udGFpbmVyX3R5cGVfd2FybmluZyAubm90eV9iYXI6Zm9jdXMsIGEubm90eV9jb250YWluZXJfdHlwZV93YXJuaW5nIC5ub3R5X2Jhcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2I2MWQ7IH1cblxuLm5vdHlfY29udGFpbmVyX3R5cGVfZXJyb3IgLm5vdHlfYmFyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NCAhaW1wb3J0YW50OyB9XG5cbmEubm90eV9jb250YWluZXJfdHlwZV9lcnJvciAubm90eV9iYXI6Zm9jdXMsIGEubm90eV9jb250YWluZXJfdHlwZV9lcnJvciAubm90eV9iYXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzA0ZjMzOyB9XG5cbi5ub3R5X2NvbnRhaW5lcl90eXBlX2NvbmZpcm0gLm5vdHlfYmFyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMCAhaW1wb3J0YW50OyB9XG5cbmEubm90eV9jb250YWluZXJfdHlwZV9jb25maXJtIC5ub3R5X2Jhcjpmb2N1cywgYS5ub3R5X2NvbnRhaW5lcl90eXBlX2NvbmZpcm0gLm5vdHlfYmFyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkNWRlYzsgfVxuXG4vKiFcbiAqIHVpLXNlbGVjdFxuICogaHR0cDovL2dpdGh1Yi5jb20vYW5ndWxhci11aS91aS1zZWxlY3RcbiAqIFZlcnNpb246IDAuMTMuMSAtIDIwMTUtMDktMzBUMDU6Mzk6MjYuNjU5WlxuICogTGljZW5zZTogTUlUXG4gKi9cbi51aS1zZWxlY3QtY2hvaWNlcy1yb3c6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4OyB9XG5cbi8qIFNlbGVjdDIgdGhlbWUgKi9cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzRweDtcbiAgcGFkZGluZzogMCAwIDAgOHB4O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgY29udGVudDogJyAnO1xuICAgIGJvcmRlci13aWR0aDogNXB4IDVweCAwIDVweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzgwODA4MCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uOjphZnRlciB7XG4gIG1hcmdpbi10b3A6IC00cHg7XG4gIGJvcmRlci13aWR0aDogMCA1cHggNXB4IDVweDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODA4MDgwIHRyYW5zcGFyZW50OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci5zZWxlY3QyLWRyb3AtYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMnB4IDJweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4uc2VsZWN0Mi1kcm9wZG93biB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMnB4IDJweDtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uc2VsZWN0Mi1kcm9wZG93bi5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4sXG4uc2VsZWN0Mi1kcm9wZG93bi5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZS5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMDsgfVxuXG4uc2VsZWN0Mi1kcm9wLWF1dG8td2lkdGgge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAwIDJweCAycHggMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLWFjdGl2ZSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItYWN0aXZlIC5zZWxlY3QyLWNob2ljZXMge1xuICBib3JkZXItY29sb3I6ICM0YzdmZjA7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnNlbGVjdDItZHJvcGRvd24tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uc2VsZWN0Mi1kcm9wZG93bi1vcGVuLnNlbGVjdDItZHJvcC1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1kcm9wZG93bi1vcGVuLnNlbGVjdDItZHJvcC1hYm92ZSAuc2VsZWN0Mi1jaG9pY2VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci1tdWx0aSAuc2VsZWN0Mi1jaG9pY2VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlLFxuLnNlbGVjdDItY29udGFpbmVyLW11bHRpLnNlbGVjdDItY29udGFpbmVyLWFjdGl2ZSAuc2VsZWN0Mi1jaG9pY2VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwO1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlLFxuLnNlbGVjdDItY29udGFpbmVyLW11bHRpIC5zZWxlY3QyLWNob2ljZXMgLnNlbGVjdDItc2VhcmNoLWNob2ljZSB7XG4gIGJvcmRlci1jb2xvcjogI2U4ZThlODtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLFxuLnNlbGVjdDItcmVzdWx0cyAuc2VsZWN0Mi1oaWdobGlnaHRlZCB7XG4gIGJhY2tncm91bmQ6ICM0YzdmZjA7IH1cblxuLnNlbGVjdDItc2VhcmNoLWNob2ljZS1jbG9zZSB7XG4gIHRvcDogMnB4OyB9XG5cbi5zZWxlY3QyLXNlYXJjaCBpbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDA7IH1cblxuLyogTWFyayBpbnZhbGlkIFNlbGVjdDIgKi9cbi5uZy1kaXJ0eS5uZy1pbnZhbGlkID4gYS5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1jb2xvcjogI2QyNmQ1NDsgfVxuXG4vKiBIYW5kbGUgdXAgZGlyZWN0aW9uIFNlbGVjdDIgKi9cbi5zZWxlY3QyLWNvbnRhaW5lci1tdWx0aSAuc2VsZWN0Mi1jaG9pY2VzIC5zZWxlY3QyLXNlYXJjaC1maWVsZCBpbnB1dCB7XG4gIHBhZGRpbmc6IDAuNnJlbSAwLjMxMjVyZW07XG4gIG1hcmdpbjogMDsgfVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddLmRpcmVjdGlvbi11cCAudWktc2VsZWN0LW1hdGNoIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddLmRpcmVjdGlvbi11cCAudWktc2VsZWN0LWRyb3Bkb3duIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItY2hvaWNlLFxuLnVpLXNlbGVjdC1jb250YWluZXJbdGhlbWU9J3NlbGVjdDInXSAuc2VsZWN0Mi1jaG9pY2Uge1xuICBsaW5lLWhlaWdodDogMzhweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLnNlbGVjdDItZHJvcC1hY3RpdmUsXG4uc2VsZWN0Mi1jb250YWluZXItYWN0aXZlIC5zZWxlY3QyLWNob2ljZSwgLnNlbGVjdDItY29udGFpbmVyLWFjdGl2ZSAuc2VsZWN0Mi1jaG9pY2VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwO1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1jaG9pY2UgLnNlbGVjdDItYXJyb3csXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddIC5zZWxlY3QyLWNob2ljZSAuc2VsZWN0Mi1hcnJvdyB7XG4gIHdpZHRoOiAzOHB4O1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwIDJweCAycHggMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItY2hvaWNlIC5zZWxlY3QyLWFycm93OjphZnRlcixcbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10gLnNlbGVjdDItY2hvaWNlIC5zZWxlY3QyLWFycm93OjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCAwIDVweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjODA4MDgwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1jaG9pY2UgLnNlbGVjdDItYXJyb3cgYixcbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10gLnNlbGVjdDItY2hvaWNlIC5zZWxlY3QyLWFycm93IGIge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLnVpLXNlbGVjdC1jb250YWluZXJbdGhlbWU9J3NlbGVjdDInXS5zZWxlY3QyLWNvbnRhaW5lci1hY3RpdmUgLnNlbGVjdDItY2hvaWNlLFxuLnVpLXNlbGVjdC1jb250YWluZXJbdGhlbWU9J3NlbGVjdDInXS5zZWxlY3QyLWNvbnRhaW5lci1hY3RpdmUgLnNlbGVjdDItY2hvaWNlcyB7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMDtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddLnNlbGVjdDItZHJvcGRvd24tb3BlbiAuc2VsZWN0Mi1jaG9pY2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddIC5zZWxlY3QyLWRyb3AtYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10uZGlyZWN0aW9uLXVwLnNlbGVjdDItZHJvcGRvd24tb3BlbiAudWktc2VsZWN0LW1hdGNoIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzRjN2ZmMDsgfVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddIC5zZWxlY3QyLXNlYXJjaCBpbnB1dCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgbWluLWhlaWdodDogMzhweDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJhY2tncm91bmQ6IHdoaXRlOyB9XG5cbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10gLnNlbGVjdDItcmVzdWx0cyAuc2VsZWN0Mi1oaWdobGlnaHRlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjNGM3ZmYwOyB9XG5cbi8qIFNlbGVjdGl6ZSB0aGVtZSAqL1xuLnNlbGVjdGl6ZS1jb250cm9sLm11bHRpIC5zZWxlY3RpemUtaW5wdXQuaGFzLWl0ZW1zIHtcbiAgcGFkZGluZzogN3B4IDhweCA0cHg7IH1cblxuLnNlbGVjdGl6ZS1pbnB1dCB7XG4gIHBhZGRpbmc6IDlweCA4cHg7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLnNlbGVjdGl6ZS1kcm9wZG93bi1oZWFkZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwO1xuICBiYWNrZ3JvdW5kOiAjZThlOGU4OyB9XG5cbi5zZWxlY3RpemUtaW5wdXQuZm9jdXMge1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5zZWxlY3RpemUtaW5wdXQuZHJvcGRvd24tYWN0aXZlIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7IH1cblxuLnNlbGVjdGl6ZS1kcm9wZG93biB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5zZWxlY3RpemUtZHJvcGRvd24gLmNyZWF0ZSB7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbi8qIEhlbHBlciBjbGFzcyB0byBzaG93IHN0eWxlcyB3aGVuIGZvY3VzICovXG4uc2VsZWN0aXplLWlucHV0LnNlbGVjdGl6ZS1mb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMCAhaW1wb3J0YW50OyB9XG5cbi8qIE1hcmsgaW52YWxpZCBTZWxlY3RpemUgKi9cbi5uZy1kaXJ0eS5uZy1pbnZhbGlkID4gZGl2LnNlbGVjdGl6ZS1pbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogI2QyNmQ1NDsgfVxuXG4vKiBIYW5kbGUgdXAgZGlyZWN0aW9uIFNlbGVjdGl6ZSAqL1xuLnVpLXNlbGVjdC1jb250YWluZXJbdGhlbWU9J3NlbGVjdGl6ZSddLmRpcmVjdGlvbi11cCAudWktc2VsZWN0LWRyb3Bkb3duIHtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0aXplJ10gLnNlbGVjdGl6ZS1pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nOiAwLjQzNzVyZW0gMXJlbTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3RpemUnXSAuc2VsZWN0aXplLWRyb3Bkb3duIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5zZWxlY3RpemUtZHJvcGRvd24gLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi8qIEJvb3RzdHJhcCB0aGVtZSAqL1xuLyogSGVscGVyIGNsYXNzIHRvIHNob3cgc3R5bGVzIHdoZW4gZm9jdXMgKi9cbi5idG4tZGVmYXVsdC1mb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMDtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uaW5wdXQtZ3JvdXAgPiAudWktc2VsZWN0LWJvb3RzdHJhcCA+IGlucHV0LnVpLXNlbGVjdC1zZWFyY2guZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cblxuLmlucHV0LWdyb3VwID4gLnVpLXNlbGVjdC1ib290c3RyYXAgPiBpbnB1dC51aS1zZWxlY3Qtc2VhcmNoLmZvcm0tY29udHJvbC5kaXJlY3Rpb24tdXAge1xuICBib3JkZXItcmFkaXVzOiAycHggIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDsgfVxuXG4udWktc2VsZWN0LW11bHRpcGxlIC51aS1zZWxlY3QtbWF0Y2gtaXRlbS5kcm9wcGluZy1iZWZvcmU6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi51aS1zZWxlY3QtbXVsdGlwbGUgLnVpLXNlbGVjdC1tYXRjaC1pdGVtLmRyb3BwaW5nLWFmdGVyOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi51aS1zZWxlY3QtYm9vdHN0cmFwIC51aS1zZWxlY3QtY2hvaWNlcy1yb3cuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLnVpLXNlbGVjdC1ib290c3RyYXAgLnVpLXNlbGVjdC1jaG9pY2VzIHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyB9XG5cbi8qIE1hcmsgaW52YWxpZCBCb290c3RyYXAgKi9cbi51aS1zZWxlY3QtYm9vdHN0cmFwLm5nLWRpcnR5Lm5nLWludmFsaWQgPiBidXR0b24uYnRuLnVpLXNlbGVjdC1tYXRjaCB7XG4gIGJvcmRlci1jb2xvcjogI2QyNmQ1NDsgfVxuXG4vKiBIYW5kbGUgdXAgZGlyZWN0aW9uIEJvb3RzdHJhcCAqL1xuLnVpLXNlbGVjdC1jb250YWluZXJbdGhlbWU9J2Jvb3RzdHJhcCddLmRpcmVjdGlvbi11cCAudWktc2VsZWN0LWRyb3Bkb3duIHtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4vKlxuICogIFVzYWdlOlxuICpcbiAgICAgPGRpdiBjbGFzcz1cInNrLXJvdGF0aW5nLXBsYW5lXCI+PC9kaXY+XG4gKlxuICovXG4uc2stcm90YXRpbmctcGxhbmUge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stcm90YXRlUGxhbmUgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay1yb3RhdGVQbGFuZSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1yb3RhdGVQbGFuZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoMGRlZykgcm90YXRlWSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKDBkZWcpIHJvdGF0ZVkoMGRlZyk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoLTE4MC4xZGVnKSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoLTE4MC4xZGVnKSByb3RhdGVZKDBkZWcpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwZGVnKSByb3RhdGVZKC0xNzkuOWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwZGVnKSByb3RhdGVZKC0xNzkuOWRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLXJvdGF0ZVBsYW5lIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgwZGVnKSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoMGRlZykgcm90YXRlWSgwZGVnKTsgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwLjFkZWcpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwLjFkZWcpIHJvdGF0ZVkoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKC0xODBkZWcpIHJvdGF0ZVkoLTE3OS45ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKC0xODBkZWcpIHJvdGF0ZVkoLTE3OS45ZGVnKTsgfSB9XG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLWRvdWJsZS1ib3VuY2VcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNoaWxkIHNrLWRvdWJsZS1ib3VuY2UxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3VibGUtYm91bmNlMlwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG4uc2stZG91YmxlLWJvdW5jZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDsgfVxuXG4uc2stZG91YmxlLWJvdW5jZSAuc2stY2hpbGQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLWRvdWJsZUJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay1kb3VibGVCb3VuY2UgMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIG9wYWNpdHk6IC42O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLnNrLWRvdWJsZS1ib3VuY2UgLnNrLWRvdWJsZS1ib3VuY2UyIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjBzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjBzOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1kb3VibGVCb3VuY2Uge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbkBrZXlmcmFtZXMgc2stZG91YmxlQm91bmNlIHtcbiAgMCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG4vKlxuICogIFVzYWdlOlxuICpcbiAgICAgIDxkaXYgY2xhc3M9XCJzay13YXZlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1yZWN0IHNrLXJlY3QxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1yZWN0IHNrLXJlY3QyXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1yZWN0IHNrLXJlY3QzXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1yZWN0IHNrLXJlY3Q0XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1yZWN0IHNrLXJlY3Q1XCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqXG4gKi9cbi5zay13YXZlIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnNrLXdhdmUgLnNrLXJlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLXdhdmVTdHJldGNoRGVsYXkgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay13YXZlU3RyZXRjaERlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLnNrLXdhdmUgLnNrLXJlY3QxIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjJzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjJzOyB9XG5cbi5zay13YXZlIC5zay1yZWN0MiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMS4xczsgfVxuXG4uc2std2F2ZSAuc2stcmVjdDMge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTFzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xczsgfVxuXG4uc2std2F2ZSAuc2stcmVjdDQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS45cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjlzOyB9XG5cbi5zay13YXZlIC5zay1yZWN0NSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjhzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uOHM7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLXdhdmVTdHJldGNoRGVsYXkge1xuICAwJSxcbiAgNDAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDAuNCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC40KTsgfVxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLXdhdmVTdHJldGNoRGVsYXkge1xuICAwJSxcbiAgNDAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDAuNCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC40KTsgfVxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7IH0gfVxuXG4vKlxuICogIFVzYWdlOlxuICpcbiAgICAgIDxkaXYgY2xhc3M9XCJzay13YW5kZXJpbmctY3ViZXNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTFcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTJcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICpcbiAqL1xuLnNrLXdhbmRlcmluZy1jdWJlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDsgfVxuXG4uc2std2FuZGVyaW5nLWN1YmVzIC5zay1jdWJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay13YW5kZXJpbmdDdWJlIDEuOHMgZWFzZS1pbi1vdXQgLTEuOHMgaW5maW5pdGUgYm90aDtcbiAgYW5pbWF0aW9uOiBzay13YW5kZXJpbmdDdWJlIDEuOHMgZWFzZS1pbi1vdXQgLTEuOHMgaW5maW5pdGUgYm90aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuXG4uc2std2FuZGVyaW5nLWN1YmVzIC5zay1jdWJlMiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjlzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uOXM7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLXdhbmRlcmluZ0N1YmUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAyNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHJvdGF0ZSgtOTBkZWcpIHNjYWxlKDAuNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHJvdGF0ZSgtOTBkZWcpIHNjYWxlKDAuNSk7IH1cbiAgNTAlIHtcbiAgICAvKiBIYWNrIHRvIG1ha2UgRkYgcm90YXRlIGluIHRoZSByaWdodCBkaXJlY3Rpb24gKi9cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KSB0cmFuc2xhdGVZKDMwcHgpIHJvdGF0ZSgtMTc5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCkgdHJhbnNsYXRlWSgzMHB4KSByb3RhdGUoLTE3OWRlZyk7IH1cbiAgNTAuMSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0xODBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KSB0cmFuc2xhdGVZKDMwcHgpIHJvdGF0ZSgtMTgwZGVnKTsgfVxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0yNzBkZWcpIHNjYWxlKDAuNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0yNzBkZWcpIHNjYWxlKDAuNSk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgc2std2FuZGVyaW5nQ3ViZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCkgcm90YXRlKC05MGRlZykgc2NhbGUoMC41KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCkgcm90YXRlKC05MGRlZykgc2NhbGUoMC41KTsgfVxuICA1MCUge1xuICAgIC8qIEhhY2sgdG8gbWFrZSBGRiByb3RhdGUgaW4gdGhlIHJpZ2h0IGRpcmVjdGlvbiAqL1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0xNzlkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KSB0cmFuc2xhdGVZKDMwcHgpIHJvdGF0ZSgtMTc5ZGVnKTsgfVxuICA1MC4xJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCkgdHJhbnNsYXRlWSgzMHB4KSByb3RhdGUoLTE4MGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0xODBkZWcpOyB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgzMHB4KSByb3RhdGUoLTI3MGRlZykgc2NhbGUoMC41KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgzMHB4KSByb3RhdGUoLTI3MGRlZykgc2NhbGUoMC41KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpOyB9IH1cblxuLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2stc3Bpbm5lciBzay1zcGlubmVyLXB1bHNlXCI+PC9kaXY+XG4gKlxuICovXG4uc2stc3Bpbm5lci1wdWxzZSB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1wdWxzZVNjYWxlT3V0IDFzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb246IHNrLXB1bHNlU2NhbGVPdXQgMXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLXB1bHNlU2NhbGVPdXQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgc2stcHVsc2VTY2FsZU91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2stY2hhc2luZy1kb3RzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3QxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3QyXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqXG4gKi9cbi5zay1jaGFzaW5nLWRvdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1jaGFzaW5nRG90c1JvdGF0ZSAycyBpbmZpbml0ZSBsaW5lYXI7XG4gIGFuaW1hdGlvbjogc2stY2hhc2luZ0RvdHNSb3RhdGUgMnMgaW5maW5pdGUgbGluZWFyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnNrLWNoYXNpbmctZG90cyAuc2stY2hpbGQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNjAlO1xuICBoZWlnaHQ6IDYwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLWNoYXNpbmdEb3RzQm91bmNlIDJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb246IHNrLWNoYXNpbmdEb3RzQm91bmNlIDJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi5zay1jaGFzaW5nLWRvdHMgLnNrLWRvdDIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMXM7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLWNoYXNpbmdEb3RzUm90YXRlIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLWNoYXNpbmdEb3RzUm90YXRlIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2stY2hhc2luZ0RvdHNCb3VuY2Uge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbkBrZXlmcmFtZXMgc2stY2hhc2luZ0RvdHNCb3VuY2Uge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLXRocmVlLWJvdW5jZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hpbGQgc2stYm91bmNlMVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hpbGQgc2stYm91bmNlMlwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hpbGQgc2stYm91bmNlM1wiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG4uc2stdGhyZWUtYm91bmNlIHtcbiAgd2lkdGg6IDgwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uc2stdGhyZWUtYm91bmNlIC5zay1jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLXRocmVlLWJvdW5jZSAxLjRzIGVhc2UtaW4tb3V0IDBzIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogc2stdGhyZWUtYm91bmNlIDEuNHMgZWFzZS1pbi1vdXQgMHMgaW5maW5pdGUgYm90aDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuXG4uc2stdGhyZWUtYm91bmNlIC5zay1ib3VuY2UxIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uMzJzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uMzJzOyB9XG5cbi5zay10aHJlZS1ib3VuY2UgLnNrLWJvdW5jZTIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS4xNnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS4xNnM7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLXRocmVlLWJvdW5jZSB7XG4gIDAlLFxuICA4MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLXRocmVlLWJvdW5jZSB7XG4gIDAlLFxuICA4MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG4vKlxuICogIFVzYWdlOlxuICpcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTEgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTIgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTMgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTQgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTUgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTYgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTcgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTggc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTkgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTEwIHNrLWNoaWxkXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUxMSBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMTIgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICpcbiAqL1xuLnNrLWNpcmNsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDsgfVxuXG4uc2stY2lyY2xlIC5zay1jaGlsZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zay1jaXJjbGUgLnNrLWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTUlO1xuICBoZWlnaHQ6IDE1JTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGNvbnRlbnQ6ICcnO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stY2lyY2xlQm91bmNlRGVsYXkgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuICBhbmltYXRpb246IHNrLWNpcmNsZUJvdW5jZURlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjN2ZmMDsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGUyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzMGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGUzIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU1IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMjBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTIwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTIwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxNTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTUwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTUwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU3IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU4IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjEwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjEwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU5IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyNDBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjQwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjQwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGUxMCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7IH1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlMTEge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDMwMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzMDBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzMDBkZWcpOyB9XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTEyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzMzBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzMwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzMwZGVnKTsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGUyOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMS4xczsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGUzOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTFzOyB9XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTQ6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uOXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS45czsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU1OmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjhzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uOHM7IH1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlNjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS43cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjdzOyB9XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTc6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uNnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS42czsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU4OmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjVzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uNXM7IH1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlOTpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS40cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjRzOyB9XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTEwOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjNzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uM3M7IH1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlMTE6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uMnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS4yczsgfVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGUxMjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS4xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjFzOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1jaXJjbGVCb3VuY2VEZWxheSB7XG4gIDAlLFxuICA4MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLWNpcmNsZUJvdW5jZURlbGF5IHtcbiAgMCUsXG4gIDgwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUtZ3JpZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlMVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlMlwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlM1wiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlNFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlNVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlNlwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlN1wiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlOFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlOVwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG4uc2stY3ViZS1ncmlkIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgLypcbiAgICogU3Bpbm5lciBwb3NpdGlvbnNcbiAgICogMSAyIDNcbiAgICogNCA1IDZcbiAgICogNyA4IDlcbiAgICovIH1cblxuLnNrLWN1YmUtZ3JpZCAuc2stY3ViZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzMlO1xuICBoZWlnaHQ6IDMzJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLWN1YmVHcmlkU2NhbGVEZWxheSAxLjNzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb246IHNrLWN1YmVHcmlkU2NhbGVEZWxheSAxLjNzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmUxIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4ycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMnM7IH1cblxuLnNrLWN1YmUtZ3JpZCAuc2stY3ViZTIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjNzO1xuICBhbmltYXRpb24tZGVsYXk6IC4zczsgfVxuXG4uc2stY3ViZS1ncmlkIC5zay1jdWJlMyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuNHM7XG4gIGFuaW1hdGlvbi1kZWxheTogLjRzOyB9XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmU0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMXM7IH1cblxuLnNrLWN1YmUtZ3JpZCAuc2stY3ViZTUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjJzO1xuICBhbmltYXRpb24tZGVsYXk6IC4yczsgfVxuXG4uc2stY3ViZS1ncmlkIC5zay1jdWJlNiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuM3M7XG4gIGFuaW1hdGlvbi1kZWxheTogLjNzOyB9XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmU3IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4wcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMHM7IH1cblxuLnNrLWN1YmUtZ3JpZCAuc2stY3ViZTgge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjFzO1xuICBhbmltYXRpb24tZGVsYXk6IC4xczsgfVxuXG4uc2stY3ViZS1ncmlkIC5zay1jdWJlOSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuMnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLjJzOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1jdWJlR3JpZFNjYWxlRGVsYXkge1xuICAwJSxcbiAgNzAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzRCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM0QoMSwgMSwgMSk7IH1cbiAgMzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzRCgwLCAwLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM0QoMCwgMCwgMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLWN1YmVHcmlkU2NhbGVEZWxheSB7XG4gIDAlLFxuICA3MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNEKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzRCgxLCAxLCAxKTsgfVxuICAzNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNEKDAsIDAsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzRCgwLCAwLCAxKTsgfSB9XG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLWZhZGluZy1jaXJjbGVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTEgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUyIHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMyBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTQgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGU1IHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlNiBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTcgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGU4IHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlOSBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTEwIHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMTEgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUxMiBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICpcbiAqL1xuLnNrLWZhZGluZy1jaXJjbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGU6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxNSU7XG4gIGhlaWdodDogMTUlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgY29udGVudDogJyc7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1jaXJjbGVGYWRlRGVsYXkgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuICBhbmltYXRpb246IHNrLWNpcmNsZUZhZGVEZWxheSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzBkZWcpOyB9XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGUzIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTsgfVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEyMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxMjBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxMjBkZWcpOyB9XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGU2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxNTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTUwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTUwZGVnKTsgfVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTgge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDIxMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyMTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyMTBkZWcpOyB9XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGU5IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyNDBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjQwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjQwZGVnKTsgfVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlMTAge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyB9XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGUxMSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzAwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDMwMGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDMwMGRlZyk7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTEyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzMzBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzMwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzMwZGVnKTsgfVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlMjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTEuMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTEuMXM7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTM6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMXM7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTQ6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uOXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS45czsgfVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNTpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS44cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjhzOyB9XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGU2OmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjdzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uN3M7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTc6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uNnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS42czsgfVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlODpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS41cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjVzOyB9XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGU5OmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjRzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uNHM7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTEwOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjNzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uM3M7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTExOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjJzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uMnM7IH1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTEyOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjFzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uMXM7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLWNpcmNsZUZhZGVEZWxheSB7XG4gIDAlLFxuICAzOSUsXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQGtleWZyYW1lcyBzay1jaXJjbGVGYWRlRGVsYXkge1xuICAwJSxcbiAgMzklLFxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5zay1mb2xkaW5nLWN1YmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVaKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGVaKDQ1ZGVnKTsgfVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDUwJTtcbiAgaGVpZ2h0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cblxuLnNrLWZvbGRpbmctY3ViZSAuc2stY3ViZTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgY29udGVudDogJyc7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1mb2xkQ3ViZUFuZ2xlIDIuNHMgaW5maW5pdGUgbGluZWFyIGJvdGg7XG4gIGFuaW1hdGlvbjogc2stZm9sZEN1YmVBbmdsZSAyLjRzIGluZmluaXRlIGxpbmVhciBib3RoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGM3ZmYwOyB9XG5cbi5zay1mb2xkaW5nLWN1YmUgLnNrLWN1YmUyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlWig5MGRlZyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGVaKDkwZGVnKTsgfVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlMyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMTgwZGVnKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMTgwZGVnKTsgfVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlNCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMjcwZGVnKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMjcwZGVnKTsgfVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlMjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjNzO1xuICBhbmltYXRpb24tZGVsYXk6IC4zczsgfVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlMzpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjZzO1xuICBhbmltYXRpb24tZGVsYXk6IC42czsgfVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlNDpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjlzO1xuICBhbmltYXRpb24tZGVsYXk6IC45czsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2stZm9sZEN1YmVBbmdsZSB7XG4gIDAlLFxuICAxMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgtMTgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKC0xODBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMjUlLFxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgOTAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVkoMTgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVZKDE4MGRlZyk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgc2stZm9sZEN1YmVBbmdsZSB7XG4gIDAlLFxuICAxMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgtMTgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKC0xODBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMjUlLFxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgOTAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVkoMTgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVZKDE4MGRlZyk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi8qICRqcXVlcnktdmFsaWRhdGlvblxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5pbnB1dC52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzdmYzM1YztcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuICBpbnB1dC52YWxpZDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNjVhZDNmO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuaW5wdXQuZXJyb3Ige1xuICBib3JkZXItY29sb3I6ICNkMjZkNTQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgaW5wdXQuZXJyb3I6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2MwNGYzMztcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbmxhYmVsLmVycm9yIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICNkMjZkNTQ7IH1cblxuLyogJHBvcnRsZXRzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5kcmFnZ2FibGUtcG9ydGxldHMtd3JhcHBlciAuZHJhZ2dhYmxlLXBvcnRsZXRzIHtcbiAgbWluLWhlaWdodDogMy4xMjVyZW07IH1cbiAgLmRyYWdnYWJsZS1wb3J0bGV0cy13cmFwcGVyIC5kcmFnZ2FibGUtcG9ydGxldHMgLnBvcnRsZXQge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNpdGlvbiwgdHJhbnNmb3JtIDIwMG1zIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2l0aW9uLCB0cmFuc2Zvcm0gMjAwbXMgbGluZWFyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDEpOyB9XG4gICAgLmRyYWdnYWJsZS1wb3J0bGV0cy13cmFwcGVyIC5kcmFnZ2FibGUtcG9ydGxldHMgLnBvcnRsZXQgLnBvcnRsZXQtaGVhZGluZyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmRyYWdnYWJsZS1wb3J0bGV0cy13cmFwcGVyIC5kcmFnZ2FibGUtcG9ydGxldHMgLnVpLXNvcnRhYmxlLXBsYWNlaG9sZGVyIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwLjA2MjVyZW0gZGFzaGVkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDEpOyB9XG5cbi5kcmFnZ2FibGUtcG9ydGxldHMtd3JhcHBlci5kcmFnZ2luZyAucG9ydGxldC51aS1zb3J0YWJsZS1oZWxwZXIge1xuICBvcGFjaXR5OiAwLjg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSwgMS4xKTtcbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xLCAxLjEpOyB9XG5cbi8qICRyaWNrc2hhd1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucmlja3NoYXdfZ3JhcGgge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmlja3NoYXdfZ3JhcGggLmRldGFpbCAueF9sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLnJpY2tzaGF3X2dyYXBoIC5kZXRhaWwgLml0ZW0ge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5yaWNrc2hhd19ncmFwaCAueF90aWNrIHtcbiAgYm9yZGVyLWxlZnQ6IDAuMDYyNXJlbSBkYXNoZWQgcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5yaWNrc2hhd19ncmFwaCAueF90aWNrIC50aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBjb2xvcjogYmxhY2s7IH1cblxuLnJpY2tzaGF3X2Fubm90YXRpb25fdGltZWxpbmUgLmFubm90YXRpb24gLmNvbnRlbnQge1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLnJpY2tzaGF3X2xlZ2VuZCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5yaWNrc2hhd19sZWdlbmQgbGk6aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLnJpY2tzaGF3X2xlZ2VuZCBsaTphY3RpdmUge1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLyogJHNvY2lhbC1idXR0b25cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJ0bi1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiAyLjM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAzLjM3NXJlbTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgLmJ0bi1pY29uIDpmaXJzdC1jaGlsZCB7XG4gICAgbGluZS1oZWlnaHQ6IDIuMzc1cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDIuMzc1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7IH1cbiAgLmJ0bi1pY29uLmJ0bi1sZyB7XG4gICAgbWluLWhlaWdodDogMy4yNXJlbTsgfVxuICAgIC5idG4taWNvbi5idG4tbGcgOmZpcnN0LWNoaWxkIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjI1cmVtO1xuICAgICAgd2lkdGg6IDMuMjVyZW07IH1cbiAgLmJ0bi1pY29uLmJ0bi1zbSB7XG4gICAgbWluLWhlaWdodDogMi4xMjVyZW07IH1cbiAgICAuYnRuLWljb24uYnRuLXNtIDpmaXJzdC1jaGlsZCB7XG4gICAgICBsaW5lLWhlaWdodDogMi4xMjVyZW07XG4gICAgICB3aWR0aDogMi4xMjVyZW07IH1cblxuLmJ0bi1sZy5idG4taWNvbixcbi5idG4tZ3JvdXAtbGcgPiAuYnRuLmJ0bi1pY29uIHtcbiAgcGFkZGluZy1sZWZ0OiA0LjI1cmVtOyB9XG5cbi5idG4tc20uYnRuLWljb24sXG4uYnRuLWdyb3VwLXNtID4gLmJ0bi5idG4taWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMi43NXJlbTsgfVxuXG4uYnRuLWljb24taWNvbiB7XG4gIHdpZHRoOiAyLjM3NXJlbTtcbiAgaGVpZ2h0OiAyLjM3NXJlbTtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiAyLjM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAzLjM3NXJlbTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgLmJ0bi1pY29uLWljb24gOmZpcnN0LWNoaWxkIHtcbiAgICBsaW5lLWhlaWdodDogMi4zNzVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMi4zNzVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTsgfVxuICAuYnRuLWljb24taWNvbi5idG4tbGcge1xuICAgIG1pbi1oZWlnaHQ6IDMuMjVyZW07IH1cbiAgICAuYnRuLWljb24taWNvbi5idG4tbGcgOmZpcnN0LWNoaWxkIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjI1cmVtO1xuICAgICAgd2lkdGg6IDMuMjVyZW07IH1cbiAgLmJ0bi1pY29uLWljb24uYnRuLXNtIHtcbiAgICBtaW4taGVpZ2h0OiAyLjEyNXJlbTsgfVxuICAgIC5idG4taWNvbi1pY29uLmJ0bi1zbSA6Zmlyc3QtY2hpbGQge1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtO1xuICAgICAgd2lkdGg6IDIuMTI1cmVtOyB9XG4gIC5idG4taWNvbi1pY29uIDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4taWNvbi1pY29uLmJ0bi1sZyB7XG4gICAgd2lkdGg6IDMuMjVyZW07XG4gICAgaGVpZ2h0OiAzLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5idG4taWNvbi1pY29uLmJ0bi1zbSB7XG4gICAgd2lkdGg6IDIuMTI1cmVtO1xuICAgIGhlaWdodDogMi4xMjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmJ0bi1hZG4ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDg3YTY4O1xuICBib3JkZXItY29sb3I6ICNkODdhNjg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4tYWRuOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZTU2M2Y7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2I0ZjM3OyB9XG4gIC5idG4tYWRuOmZvY3VzLCAuYnRuLWFkbi5mb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2U1NjNmO1xuICAgIGJvcmRlci1jb2xvcjogI2NiNGYzNzsgfVxuICAuYnRuLWFkbjphY3RpdmUsIC5idG4tYWRuLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWFkbi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NlNTYzZjtcbiAgICBib3JkZXItY29sb3I6ICNjYjRmMzc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLWFkbjphY3RpdmU6aG92ZXIsIC5idG4tYWRuOmFjdGl2ZTpmb2N1cywgLmJ0bi1hZG46YWN0aXZlLmZvY3VzLCAuYnRuLWFkbi5hY3RpdmU6aG92ZXIsIC5idG4tYWRuLmFjdGl2ZTpmb2N1cywgLmJ0bi1hZG4uYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1hZG4uZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1hZG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1hZG4uZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjk0NjMwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOTkzYTI4OyB9XG4gIC5idG4tYWRuLmRpc2FibGVkOmZvY3VzLCAuYnRuLWFkbi5kaXNhYmxlZC5mb2N1cywgLmJ0bi1hZG46ZGlzYWJsZWQ6Zm9jdXMsIC5idG4tYWRuOmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDg3YTY4O1xuICAgIGJvcmRlci1jb2xvcjogI2Q4N2E2ODsgfVxuICAuYnRuLWFkbi5kaXNhYmxlZDpob3ZlciwgLmJ0bi1hZG46ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkODdhNjg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDg3YTY4OyB9XG5cbi5idG4tYml0YnVja2V0IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIwNTA4MTtcbiAgYm9yZGVyLWNvbG9yOiAjMjA1MDgxO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLWJpdGJ1Y2tldDpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTYzNzU4O1xuICAgIGJvcmRlci1jb2xvcjogIzE0MzI1MDsgfVxuICAuYnRuLWJpdGJ1Y2tldDpmb2N1cywgLmJ0bi1iaXRidWNrZXQuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE2Mzc1ODtcbiAgICBib3JkZXItY29sb3I6ICMxNDMyNTA7IH1cbiAgLmJ0bi1iaXRidWNrZXQ6YWN0aXZlLCAuYnRuLWJpdGJ1Y2tldC5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1iaXRidWNrZXQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNjM3NTg7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTQzMjUwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi1iaXRidWNrZXQ6YWN0aXZlOmhvdmVyLCAuYnRuLWJpdGJ1Y2tldDphY3RpdmU6Zm9jdXMsIC5idG4tYml0YnVja2V0OmFjdGl2ZS5mb2N1cywgLmJ0bi1iaXRidWNrZXQuYWN0aXZlOmhvdmVyLCAuYnRuLWJpdGJ1Y2tldC5hY3RpdmU6Zm9jdXMsIC5idG4tYml0YnVja2V0LmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tYml0YnVja2V0LmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tYml0YnVja2V0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tYml0YnVja2V0LmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmMjUzYztcbiAgICAgIGJvcmRlci1jb2xvcjogIzA3MTExYjsgfVxuICAuYnRuLWJpdGJ1Y2tldC5kaXNhYmxlZDpmb2N1cywgLmJ0bi1iaXRidWNrZXQuZGlzYWJsZWQuZm9jdXMsIC5idG4tYml0YnVja2V0OmRpc2FibGVkOmZvY3VzLCAuYnRuLWJpdGJ1Y2tldDpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIwNTA4MTtcbiAgICBib3JkZXItY29sb3I6ICMyMDUwODE7IH1cbiAgLmJ0bi1iaXRidWNrZXQuZGlzYWJsZWQ6aG92ZXIsIC5idG4tYml0YnVja2V0OmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjA1MDgxO1xuICAgIGJvcmRlci1jb2xvcjogIzIwNTA4MTsgfVxuXG4uYnRuLWRyb3Bib3gge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTA4N2RkO1xuICBib3JkZXItY29sb3I6ICMxMDg3ZGQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4tZHJvcGJveDpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2YWFkO1xuICAgIGJvcmRlci1jb2xvcjogIzBjNjRhNDsgfVxuICAuYnRuLWRyb3Bib3g6Zm9jdXMsIC5idG4tZHJvcGJveC5mb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2YWFkO1xuICAgIGJvcmRlci1jb2xvcjogIzBjNjRhNDsgfVxuICAuYnRuLWRyb3Bib3g6YWN0aXZlLCAuYnRuLWRyb3Bib3guYWN0aXZlLFxuICAub3BlbiA+IC5idG4tZHJvcGJveC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmFhZDtcbiAgICBib3JkZXItY29sb3I6ICMwYzY0YTQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLWRyb3Bib3g6YWN0aXZlOmhvdmVyLCAuYnRuLWRyb3Bib3g6YWN0aXZlOmZvY3VzLCAuYnRuLWRyb3Bib3g6YWN0aXZlLmZvY3VzLCAuYnRuLWRyb3Bib3guYWN0aXZlOmhvdmVyLCAuYnRuLWRyb3Bib3guYWN0aXZlOmZvY3VzLCAuYnRuLWRyb3Bib3guYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1kcm9wYm94LmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tZHJvcGJveC5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRyb3Bib3guZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGE1NjhjO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDczZTY2OyB9XG4gIC5idG4tZHJvcGJveC5kaXNhYmxlZDpmb2N1cywgLmJ0bi1kcm9wYm94LmRpc2FibGVkLmZvY3VzLCAuYnRuLWRyb3Bib3g6ZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZHJvcGJveDpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzEwODdkZDtcbiAgICBib3JkZXItY29sb3I6ICMxMDg3ZGQ7IH1cbiAgLmJ0bi1kcm9wYm94LmRpc2FibGVkOmhvdmVyLCAuYnRuLWRyb3Bib3g6ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMDg3ZGQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTA4N2RkOyB9XG5cbi5idG4tZmFjZWJvb2sge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I1OTk4O1xuICBib3JkZXItY29sb3I6ICMzYjU5OTg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4tZmFjZWJvb2s6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkNDM3MztcbiAgICBib3JkZXItY29sb3I6ICMyYTNmNmM7IH1cbiAgLmJ0bi1mYWNlYm9vazpmb2N1cywgLmJ0bi1mYWNlYm9vay5mb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQ0MzczO1xuICAgIGJvcmRlci1jb2xvcjogIzJhM2Y2YzsgfVxuICAuYnRuLWZhY2Vib29rOmFjdGl2ZSwgLmJ0bi1mYWNlYm9vay5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1mYWNlYm9vay5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJkNDM3MztcbiAgICBib3JkZXItY29sb3I6ICMyYTNmNmM7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLWZhY2Vib29rOmFjdGl2ZTpob3ZlciwgLmJ0bi1mYWNlYm9vazphY3RpdmU6Zm9jdXMsIC5idG4tZmFjZWJvb2s6YWN0aXZlLmZvY3VzLCAuYnRuLWZhY2Vib29rLmFjdGl2ZTpob3ZlciwgLmJ0bi1mYWNlYm9vay5hY3RpdmU6Zm9jdXMsIC5idG4tZmFjZWJvb2suYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1mYWNlYm9vay5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLWZhY2Vib29rLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZmFjZWJvb2suZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMzNDVhO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTcyMzNjOyB9XG4gIC5idG4tZmFjZWJvb2suZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZmFjZWJvb2suZGlzYWJsZWQuZm9jdXMsIC5idG4tZmFjZWJvb2s6ZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZmFjZWJvb2s6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYjU5OTg7XG4gICAgYm9yZGVyLWNvbG9yOiAjM2I1OTk4OyB9XG4gIC5idG4tZmFjZWJvb2suZGlzYWJsZWQ6aG92ZXIsIC5idG4tZmFjZWJvb2s6ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYjU5OTg7XG4gICAgYm9yZGVyLWNvbG9yOiAjM2I1OTk4OyB9XG5cbi5idG4tZmxpY2tyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDA4NDtcbiAgYm9yZGVyLWNvbG9yOiAjZmYwMDg0O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLWZsaWNrcjpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2MwMDZhO1xuICAgIGJvcmRlci1jb2xvcjogI2MyMDA2NDsgfVxuICAuYnRuLWZsaWNrcjpmb2N1cywgLmJ0bi1mbGlja3IuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjMDA2YTtcbiAgICBib3JkZXItY29sb3I6ICNjMjAwNjQ7IH1cbiAgLmJ0bi1mbGlja3I6YWN0aXZlLCAuYnRuLWZsaWNrci5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1mbGlja3IuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzAwNmE7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzIwMDY0O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi1mbGlja3I6YWN0aXZlOmhvdmVyLCAuYnRuLWZsaWNrcjphY3RpdmU6Zm9jdXMsIC5idG4tZmxpY2tyOmFjdGl2ZS5mb2N1cywgLmJ0bi1mbGlja3IuYWN0aXZlOmhvdmVyLCAuYnRuLWZsaWNrci5hY3RpdmU6Zm9jdXMsIC5idG4tZmxpY2tyLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZmxpY2tyLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tZmxpY2tyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZmxpY2tyLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E4MDA1NztcbiAgICAgIGJvcmRlci1jb2xvcjogIzgwMDA0MjsgfVxuICAuYnRuLWZsaWNrci5kaXNhYmxlZDpmb2N1cywgLmJ0bi1mbGlja3IuZGlzYWJsZWQuZm9jdXMsIC5idG4tZmxpY2tyOmRpc2FibGVkOmZvY3VzLCAuYnRuLWZsaWNrcjpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDA4NDtcbiAgICBib3JkZXItY29sb3I6ICNmZjAwODQ7IH1cbiAgLmJ0bi1mbGlja3IuZGlzYWJsZWQ6aG92ZXIsIC5idG4tZmxpY2tyOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwMDg0O1xuICAgIGJvcmRlci1jb2xvcjogI2ZmMDA4NDsgfVxuXG4uYnRuLWZvdXJzcXVhcmUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk0ODc3O1xuICBib3JkZXItY29sb3I6ICNmOTQ4Nzc7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4tZm91cnNxdWFyZTpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjcxNzUyO1xuICAgIGJvcmRlci1jb2xvcjogI2Y3MGQ0YjsgfVxuICAuYnRuLWZvdXJzcXVhcmU6Zm9jdXMsIC5idG4tZm91cnNxdWFyZS5mb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjcxNzUyO1xuICAgIGJvcmRlci1jb2xvcjogI2Y3MGQ0YjsgfVxuICAuYnRuLWZvdXJzcXVhcmU6YWN0aXZlLCAuYnRuLWZvdXJzcXVhcmUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tZm91cnNxdWFyZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3MTc1MjtcbiAgICBib3JkZXItY29sb3I6ICNmNzBkNGI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLWZvdXJzcXVhcmU6YWN0aXZlOmhvdmVyLCAuYnRuLWZvdXJzcXVhcmU6YWN0aXZlOmZvY3VzLCAuYnRuLWZvdXJzcXVhcmU6YWN0aXZlLmZvY3VzLCAuYnRuLWZvdXJzcXVhcmUuYWN0aXZlOmhvdmVyLCAuYnRuLWZvdXJzcXVhcmUuYWN0aXZlOmZvY3VzLCAuYnRuLWZvdXJzcXVhcmUuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1mb3Vyc3F1YXJlLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tZm91cnNxdWFyZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWZvdXJzcXVhcmUuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMwNzQyO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjYmIwNjM2OyB9XG4gIC5idG4tZm91cnNxdWFyZS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1mb3Vyc3F1YXJlLmRpc2FibGVkLmZvY3VzLCAuYnRuLWZvdXJzcXVhcmU6ZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZm91cnNxdWFyZTpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5NDg3NztcbiAgICBib3JkZXItY29sb3I6ICNmOTQ4Nzc7IH1cbiAgLmJ0bi1mb3Vyc3F1YXJlLmRpc2FibGVkOmhvdmVyLCAuYnRuLWZvdXJzcXVhcmU6ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOTQ4Nzc7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjk0ODc3OyB9XG5cbi5idG4tZ2l0aHViIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NDtcbiAgYm9yZGVyLWNvbG9yOiAjNDQ0O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLWdpdGh1Yjpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmIyYjJiO1xuICAgIGJvcmRlci1jb2xvcjogIzI1MjUyNTsgfVxuICAuYnRuLWdpdGh1Yjpmb2N1cywgLmJ0bi1naXRodWIuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJiMmIyYjtcbiAgICBib3JkZXItY29sb3I6ICMyNTI1MjU7IH1cbiAgLmJ0bi1naXRodWI6YWN0aXZlLCAuYnRuLWdpdGh1Yi5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1naXRodWIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYjJiMmI7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjUyNTI1O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi1naXRodWI6YWN0aXZlOmhvdmVyLCAuYnRuLWdpdGh1YjphY3RpdmU6Zm9jdXMsIC5idG4tZ2l0aHViOmFjdGl2ZS5mb2N1cywgLmJ0bi1naXRodWIuYWN0aXZlOmhvdmVyLCAuYnRuLWdpdGh1Yi5hY3RpdmU6Zm9jdXMsIC5idG4tZ2l0aHViLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZ2l0aHViLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tZ2l0aHViLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZ2l0aHViLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE5MTkxOTtcbiAgICAgIGJvcmRlci1jb2xvcjogIzA0MDQwNDsgfVxuICAuYnRuLWdpdGh1Yi5kaXNhYmxlZDpmb2N1cywgLmJ0bi1naXRodWIuZGlzYWJsZWQuZm9jdXMsIC5idG4tZ2l0aHViOmRpc2FibGVkOmZvY3VzLCAuYnRuLWdpdGh1YjpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NDtcbiAgICBib3JkZXItY29sb3I6ICM0NDQ7IH1cbiAgLmJ0bi1naXRodWIuZGlzYWJsZWQ6aG92ZXIsIC5idG4tZ2l0aHViOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0O1xuICAgIGJvcmRlci1jb2xvcjogIzQ0NDsgfVxuXG4uYnRuLWdvb2dsZSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDRiMzk7XG4gIGJvcmRlci1jb2xvcjogI2RkNGIzOTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmJ0bi1nb29nbGU6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MyMzMyMTtcbiAgICBib3JkZXItY29sb3I6ICNiOTMxMjA7IH1cbiAgLmJ0bi1nb29nbGU6Zm9jdXMsIC5idG4tZ29vZ2xlLmZvY3VzIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMjMzMjE7XG4gICAgYm9yZGVyLWNvbG9yOiAjYjkzMTIwOyB9XG4gIC5idG4tZ29vZ2xlOmFjdGl2ZSwgLmJ0bi1nb29nbGUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tZ29vZ2xlLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMzIxO1xuICAgIGJvcmRlci1jb2xvcjogI2I5MzEyMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAgIC5idG4tZ29vZ2xlOmFjdGl2ZTpob3ZlciwgLmJ0bi1nb29nbGU6YWN0aXZlOmZvY3VzLCAuYnRuLWdvb2dsZTphY3RpdmUuZm9jdXMsIC5idG4tZ29vZ2xlLmFjdGl2ZTpob3ZlciwgLmJ0bi1nb29nbGUuYWN0aXZlOmZvY3VzLCAuYnRuLWdvb2dsZS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWdvb2dsZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLWdvb2dsZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWdvb2dsZS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhMzJiMWM7XG4gICAgICBib3JkZXItY29sb3I6ICM4MDIyMTY7IH1cbiAgLmJ0bi1nb29nbGUuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZ29vZ2xlLmRpc2FibGVkLmZvY3VzLCAuYnRuLWdvb2dsZTpkaXNhYmxlZDpmb2N1cywgLmJ0bi1nb29nbGU6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDRiMzk7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGQ0YjM5OyB9XG4gIC5idG4tZ29vZ2xlLmRpc2FibGVkOmhvdmVyLCAuYnRuLWdvb2dsZTpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkNGIzOTtcbiAgICBib3JkZXItY29sb3I6ICNkZDRiMzk7IH1cblxuLmJ0bi1pbnN0YWdyYW0ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y3MjliO1xuICBib3JkZXItY29sb3I6ICMzZjcyOWI7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4taW5zdGFncmFtOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMDU3Nzc7XG4gICAgYm9yZGVyLWNvbG9yOiAjMmQ1MjZmOyB9XG4gIC5idG4taW5zdGFncmFtOmZvY3VzLCAuYnRuLWluc3RhZ3JhbS5mb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzA1Nzc3O1xuICAgIGJvcmRlci1jb2xvcjogIzJkNTI2ZjsgfVxuICAuYnRuLWluc3RhZ3JhbTphY3RpdmUsIC5idG4taW5zdGFncmFtLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWluc3RhZ3JhbS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMwNTc3NztcbiAgICBib3JkZXItY29sb3I6ICMyZDUyNmY7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLWluc3RhZ3JhbTphY3RpdmU6aG92ZXIsIC5idG4taW5zdGFncmFtOmFjdGl2ZTpmb2N1cywgLmJ0bi1pbnN0YWdyYW06YWN0aXZlLmZvY3VzLCAuYnRuLWluc3RhZ3JhbS5hY3RpdmU6aG92ZXIsIC5idG4taW5zdGFncmFtLmFjdGl2ZTpmb2N1cywgLmJ0bi1pbnN0YWdyYW0uYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1pbnN0YWdyYW0uZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1pbnN0YWdyYW0uZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1pbnN0YWdyYW0uZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjY0NTVkO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMWEyZjQwOyB9XG4gIC5idG4taW5zdGFncmFtLmRpc2FibGVkOmZvY3VzLCAuYnRuLWluc3RhZ3JhbS5kaXNhYmxlZC5mb2N1cywgLmJ0bi1pbnN0YWdyYW06ZGlzYWJsZWQ6Zm9jdXMsIC5idG4taW5zdGFncmFtOmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y3MjliO1xuICAgIGJvcmRlci1jb2xvcjogIzNmNzI5YjsgfVxuICAuYnRuLWluc3RhZ3JhbS5kaXNhYmxlZDpob3ZlciwgLmJ0bi1pbnN0YWdyYW06ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjcyOWI7XG4gICAgYm9yZGVyLWNvbG9yOiAjM2Y3MjliOyB9XG5cbi5idG4tbGlua2VkaW4ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmI2O1xuICBib3JkZXItY29sb3I6ICMwMDdiYjY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4tbGlua2VkaW46aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTk4MztcbiAgICBib3JkZXItY29sb3I6ICMwMDUyNzk7IH1cbiAgLmJ0bi1saW5rZWRpbjpmb2N1cywgLmJ0bi1saW5rZWRpbi5mb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1OTgzO1xuICAgIGJvcmRlci1jb2xvcjogIzAwNTI3OTsgfVxuICAuYnRuLWxpbmtlZGluOmFjdGl2ZSwgLmJ0bi1saW5rZWRpbi5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1saW5rZWRpbi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTk4MztcbiAgICBib3JkZXItY29sb3I6ICMwMDUyNzk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLWxpbmtlZGluOmFjdGl2ZTpob3ZlciwgLmJ0bi1saW5rZWRpbjphY3RpdmU6Zm9jdXMsIC5idG4tbGlua2VkaW46YWN0aXZlLmZvY3VzLCAuYnRuLWxpbmtlZGluLmFjdGl2ZTpob3ZlciwgLmJ0bi1saW5rZWRpbi5hY3RpdmU6Zm9jdXMsIC5idG4tbGlua2VkaW4uYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1saW5rZWRpbi5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLWxpbmtlZGluLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tbGlua2VkaW4uZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0MDVmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDAyNTM3OyB9XG4gIC5idG4tbGlua2VkaW4uZGlzYWJsZWQ6Zm9jdXMsIC5idG4tbGlua2VkaW4uZGlzYWJsZWQuZm9jdXMsIC5idG4tbGlua2VkaW46ZGlzYWJsZWQ6Zm9jdXMsIC5idG4tbGlua2VkaW46ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdiYjY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA3YmI2OyB9XG4gIC5idG4tbGlua2VkaW4uZGlzYWJsZWQ6aG92ZXIsIC5idG4tbGlua2VkaW46ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdiYjY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA3YmI2OyB9XG5cbi5idG4tbWljcm9zb2Z0IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI2NzJlYztcbiAgYm9yZGVyLWNvbG9yOiAjMjY3MmVjO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLW1pY3Jvc29mdDpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI1YWNkO1xuICAgIGJvcmRlci1jb2xvcjogIzExNTZjNDsgfVxuICAuYnRuLW1pY3Jvc29mdDpmb2N1cywgLmJ0bi1taWNyb3NvZnQuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzEyNWFjZDtcbiAgICBib3JkZXItY29sb3I6ICMxMTU2YzQ7IH1cbiAgLmJ0bi1taWNyb3NvZnQ6YWN0aXZlLCAuYnRuLW1pY3Jvc29mdC5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1taWNyb3NvZnQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjVhY2Q7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTE1NmM0O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi1taWNyb3NvZnQ6YWN0aXZlOmhvdmVyLCAuYnRuLW1pY3Jvc29mdDphY3RpdmU6Zm9jdXMsIC5idG4tbWljcm9zb2Z0OmFjdGl2ZS5mb2N1cywgLmJ0bi1taWNyb3NvZnQuYWN0aXZlOmhvdmVyLCAuYnRuLW1pY3Jvc29mdC5hY3RpdmU6Zm9jdXMsIC5idG4tbWljcm9zb2Z0LmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tbWljcm9zb2Z0LmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tbWljcm9zb2Z0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tbWljcm9zb2Z0LmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmNGJhYztcbiAgICAgIGJvcmRlci1jb2xvcjogIzBjM2I4NzsgfVxuICAuYnRuLW1pY3Jvc29mdC5kaXNhYmxlZDpmb2N1cywgLmJ0bi1taWNyb3NvZnQuZGlzYWJsZWQuZm9jdXMsIC5idG4tbWljcm9zb2Z0OmRpc2FibGVkOmZvY3VzLCAuYnRuLW1pY3Jvc29mdDpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI2NzJlYztcbiAgICBib3JkZXItY29sb3I6ICMyNjcyZWM7IH1cbiAgLmJ0bi1taWNyb3NvZnQuZGlzYWJsZWQ6aG92ZXIsIC5idG4tbWljcm9zb2Z0OmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjY3MmVjO1xuICAgIGJvcmRlci1jb2xvcjogIzI2NzJlYzsgfVxuXG4uYnRuLW9kbm9rbGFzc25pa2kge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjQ3MzFjO1xuICBib3JkZXItY29sb3I6ICNmNDczMWM7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG4gIC5idG4tb2Rub2tsYXNzbmlraTpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDM1YjBhO1xuICAgIGJvcmRlci1jb2xvcjogI2M5NTcwYTsgfVxuICAuYnRuLW9kbm9rbGFzc25pa2k6Zm9jdXMsIC5idG4tb2Rub2tsYXNzbmlraS5mb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDM1YjBhO1xuICAgIGJvcmRlci1jb2xvcjogI2M5NTcwYTsgfVxuICAuYnRuLW9kbm9rbGFzc25pa2k6YWN0aXZlLCAuYnRuLW9kbm9rbGFzc25pa2kuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tb2Rub2tsYXNzbmlraS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QzNWIwYTtcbiAgICBib3JkZXItY29sb3I6ICNjOTU3MGE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYnRuLW9kbm9rbGFzc25pa2k6YWN0aXZlOmhvdmVyLCAuYnRuLW9kbm9rbGFzc25pa2k6YWN0aXZlOmZvY3VzLCAuYnRuLW9kbm9rbGFzc25pa2k6YWN0aXZlLmZvY3VzLCAuYnRuLW9kbm9rbGFzc25pa2kuYWN0aXZlOmhvdmVyLCAuYnRuLW9kbm9rbGFzc25pa2kuYWN0aXZlOmZvY3VzLCAuYnRuLW9kbm9rbGFzc25pa2kuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1vZG5va2xhc3NuaWtpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tb2Rub2tsYXNzbmlraS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLW9kbm9rbGFzc25pa2kuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjE0YzA5O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOGEzYzA3OyB9XG4gIC5idG4tb2Rub2tsYXNzbmlraS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1vZG5va2xhc3NuaWtpLmRpc2FibGVkLmZvY3VzLCAuYnRuLW9kbm9rbGFzc25pa2k6ZGlzYWJsZWQ6Zm9jdXMsIC5idG4tb2Rub2tsYXNzbmlraTpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0NzMxYztcbiAgICBib3JkZXItY29sb3I6ICNmNDczMWM7IH1cbiAgLmJ0bi1vZG5va2xhc3NuaWtpLmRpc2FibGVkOmhvdmVyLCAuYnRuLW9kbm9rbGFzc25pa2k6ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNDczMWM7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjQ3MzFjOyB9XG5cbi5idG4tb3BlbmlkIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3OTMxZTtcbiAgYm9yZGVyLWNvbG9yOiAjZjc5MzFlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLW9wZW5pZDpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGE3OTA4O1xuICAgIGJvcmRlci1jb2xvcjogI2QwNzQwNzsgfVxuICAuYnRuLW9wZW5pZDpmb2N1cywgLmJ0bi1vcGVuaWQuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RhNzkwODtcbiAgICBib3JkZXItY29sb3I6ICNkMDc0MDc7IH1cbiAgLmJ0bi1vcGVuaWQ6YWN0aXZlLCAuYnRuLW9wZW5pZC5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1vcGVuaWQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkYTc5MDg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDA3NDA3O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi1vcGVuaWQ6YWN0aXZlOmhvdmVyLCAuYnRuLW9wZW5pZDphY3RpdmU6Zm9jdXMsIC5idG4tb3BlbmlkOmFjdGl2ZS5mb2N1cywgLmJ0bi1vcGVuaWQuYWN0aXZlOmhvdmVyLCAuYnRuLW9wZW5pZC5hY3RpdmU6Zm9jdXMsIC5idG4tb3BlbmlkLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tb3BlbmlkLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tb3BlbmlkLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tb3BlbmlkLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2I4NjYwNztcbiAgICAgIGJvcmRlci1jb2xvcjogIzkwNTAwNTsgfVxuICAuYnRuLW9wZW5pZC5kaXNhYmxlZDpmb2N1cywgLmJ0bi1vcGVuaWQuZGlzYWJsZWQuZm9jdXMsIC5idG4tb3BlbmlkOmRpc2FibGVkOmZvY3VzLCAuYnRuLW9wZW5pZDpkaXNhYmxlZC5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3OTMxZTtcbiAgICBib3JkZXItY29sb3I6ICNmNzkzMWU7IH1cbiAgLmJ0bi1vcGVuaWQuZGlzYWJsZWQ6aG92ZXIsIC5idG4tb3BlbmlkOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjc5MzFlO1xuICAgIGJvcmRlci1jb2xvcjogI2Y3OTMxZTsgfVxuXG4uYnRuLXBpbnRlcmVzdCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYjIwMjc7XG4gIGJvcmRlci1jb2xvcjogI2NiMjAyNztcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmJ0bi1waW50ZXJlc3Q6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzlmMTkxZjtcbiAgICBib3JkZXItY29sb3I6ICM5NjE4MWQ7IH1cbiAgLmJ0bi1waW50ZXJlc3Q6Zm9jdXMsIC5idG4tcGludGVyZXN0LmZvY3VzIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZjE5MWY7XG4gICAgYm9yZGVyLWNvbG9yOiAjOTYxODFkOyB9XG4gIC5idG4tcGludGVyZXN0OmFjdGl2ZSwgLmJ0bi1waW50ZXJlc3QuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tcGludGVyZXN0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWYxOTFmO1xuICAgIGJvcmRlci1jb2xvcjogIzk2MTgxZDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAgIC5idG4tcGludGVyZXN0OmFjdGl2ZTpob3ZlciwgLmJ0bi1waW50ZXJlc3Q6YWN0aXZlOmZvY3VzLCAuYnRuLXBpbnRlcmVzdDphY3RpdmUuZm9jdXMsIC5idG4tcGludGVyZXN0LmFjdGl2ZTpob3ZlciwgLmJ0bi1waW50ZXJlc3QuYWN0aXZlOmZvY3VzLCAuYnRuLXBpbnRlcmVzdC5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXBpbnRlcmVzdC5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLXBpbnRlcmVzdC5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXBpbnRlcmVzdC5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4MDE0MTk7XG4gICAgICBib3JkZXItY29sb3I6ICM1ZDBmMTI7IH1cbiAgLmJ0bi1waW50ZXJlc3QuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tcGludGVyZXN0LmRpc2FibGVkLmZvY3VzLCAuYnRuLXBpbnRlcmVzdDpkaXNhYmxlZDpmb2N1cywgLmJ0bi1waW50ZXJlc3Q6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYjIwMjc7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2IyMDI3OyB9XG4gIC5idG4tcGludGVyZXN0LmRpc2FibGVkOmhvdmVyLCAuYnRuLXBpbnRlcmVzdDpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NiMjAyNztcbiAgICBib3JkZXItY29sb3I6ICNjYjIwMjc7IH1cblxuLmJ0bi1yZWRkaXQge1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjdmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZWZmN2ZmO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLXJlZGRpdDpob3ZlciB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjZGVmZjtcbiAgICBib3JkZXItY29sb3I6ICNiMmQ4ZmY7IH1cbiAgLmJ0bi1yZWRkaXQ6Zm9jdXMsIC5idG4tcmVkZGl0LmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNkZWZmO1xuICAgIGJvcmRlci1jb2xvcjogI2IyZDhmZjsgfVxuICAuYnRuLXJlZGRpdDphY3RpdmUsIC5idG4tcmVkZGl0LmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXJlZGRpdC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2RlZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjYjJkOGZmO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi1yZWRkaXQ6YWN0aXZlOmhvdmVyLCAuYnRuLXJlZGRpdDphY3RpdmU6Zm9jdXMsIC5idG4tcmVkZGl0OmFjdGl2ZS5mb2N1cywgLmJ0bi1yZWRkaXQuYWN0aXZlOmhvdmVyLCAuYnRuLXJlZGRpdC5hY3RpdmU6Zm9jdXMsIC5idG4tcmVkZGl0LmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tcmVkZGl0LmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tcmVkZGl0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tcmVkZGl0LmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OGNjZmY7XG4gICAgICBib3JkZXItY29sb3I6ICM3MGI3ZmY7IH1cbiAgLmJ0bi1yZWRkaXQuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tcmVkZGl0LmRpc2FibGVkLmZvY3VzLCAuYnRuLXJlZGRpdDpkaXNhYmxlZDpmb2N1cywgLmJ0bi1yZWRkaXQ6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmY3ZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZWZmN2ZmOyB9XG4gIC5idG4tcmVkZGl0LmRpc2FibGVkOmhvdmVyLCAuYnRuLXJlZGRpdDpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjdmZjtcbiAgICBib3JkZXItY29sb3I6ICNlZmY3ZmY7IH1cblxuLmJ0bi1zb3VuZGNsb3VkIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1MDtcbiAgYm9yZGVyLWNvbG9yOiAjZjUwO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLXNvdW5kY2xvdWQ6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNDQwMDtcbiAgICBib3JkZXItY29sb3I6ICNjMjQxMDA7IH1cbiAgLmJ0bi1zb3VuZGNsb3VkOmZvY3VzLCAuYnRuLXNvdW5kY2xvdWQuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNDQwMDtcbiAgICBib3JkZXItY29sb3I6ICNjMjQxMDA7IH1cbiAgLmJ0bi1zb3VuZGNsb3VkOmFjdGl2ZSwgLmJ0bi1zb3VuZGNsb3VkLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXNvdW5kY2xvdWQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzQ0MDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzI0MTAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi1zb3VuZGNsb3VkOmFjdGl2ZTpob3ZlciwgLmJ0bi1zb3VuZGNsb3VkOmFjdGl2ZTpmb2N1cywgLmJ0bi1zb3VuZGNsb3VkOmFjdGl2ZS5mb2N1cywgLmJ0bi1zb3VuZGNsb3VkLmFjdGl2ZTpob3ZlciwgLmJ0bi1zb3VuZGNsb3VkLmFjdGl2ZTpmb2N1cywgLmJ0bi1zb3VuZGNsb3VkLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tc291bmRjbG91ZC5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLXNvdW5kY2xvdWQuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1zb3VuZGNsb3VkLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E4MzgwMDtcbiAgICAgIGJvcmRlci1jb2xvcjogIzgwMmIwMDsgfVxuICAuYnRuLXNvdW5kY2xvdWQuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tc291bmRjbG91ZC5kaXNhYmxlZC5mb2N1cywgLmJ0bi1zb3VuZGNsb3VkOmRpc2FibGVkOmZvY3VzLCAuYnRuLXNvdW5kY2xvdWQ6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNTA7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjUwOyB9XG4gIC5idG4tc291bmRjbG91ZC5kaXNhYmxlZDpob3ZlciwgLmJ0bi1zb3VuZGNsb3VkOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjUwO1xuICAgIGJvcmRlci1jb2xvcjogI2Y1MDsgfVxuXG4uYnRuLXR1bWJsciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYzQ3NjI7XG4gIGJvcmRlci1jb2xvcjogIzJjNDc2MjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmJ0bi10dW1ibHI6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMmUzZjtcbiAgICBib3JkZXItY29sb3I6ICMxOTI4Mzg7IH1cbiAgLmJ0bi10dW1ibHI6Zm9jdXMsIC5idG4tdHVtYmxyLmZvY3VzIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzJlM2Y7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTkyODM4OyB9XG4gIC5idG4tdHVtYmxyOmFjdGl2ZSwgLmJ0bi10dW1ibHIuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tdHVtYmxyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMyZTNmO1xuICAgIGJvcmRlci1jb2xvcjogIzE5MjgzODtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAgIC5idG4tdHVtYmxyOmFjdGl2ZTpob3ZlciwgLmJ0bi10dW1ibHI6YWN0aXZlOmZvY3VzLCAuYnRuLXR1bWJscjphY3RpdmUuZm9jdXMsIC5idG4tdHVtYmxyLmFjdGl2ZTpob3ZlciwgLmJ0bi10dW1ibHIuYWN0aXZlOmZvY3VzLCAuYnRuLXR1bWJsci5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXR1bWJsci5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLXR1bWJsci5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXR1bWJsci5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMTFjMjY7XG4gICAgICBib3JkZXItY29sb3I6ICMwNDA3MGE7IH1cbiAgLmJ0bi10dW1ibHIuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tdHVtYmxyLmRpc2FibGVkLmZvY3VzLCAuYnRuLXR1bWJscjpkaXNhYmxlZDpmb2N1cywgLmJ0bi10dW1ibHI6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzQ3NjI7XG4gICAgYm9yZGVyLWNvbG9yOiAjMmM0NzYyOyB9XG4gIC5idG4tdHVtYmxyLmRpc2FibGVkOmhvdmVyLCAuYnRuLXR1bWJscjpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjNDc2MjtcbiAgICBib3JkZXItY29sb3I6ICMyYzQ3NjI7IH1cblxuLmJ0bi10d2l0dGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1YWNlZTtcbiAgYm9yZGVyLWNvbG9yOiAjNTVhY2VlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLXR3aXR0ZXI6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI3OTVlOTtcbiAgICBib3JkZXItY29sb3I6ICMxZDkxZTg7IH1cbiAgLmJ0bi10d2l0dGVyOmZvY3VzLCAuYnRuLXR3aXR0ZXIuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI3OTVlOTtcbiAgICBib3JkZXItY29sb3I6ICMxZDkxZTg7IH1cbiAgLmJ0bi10d2l0dGVyOmFjdGl2ZSwgLmJ0bi10d2l0dGVyLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXR3aXR0ZXIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzk1ZTk7XG4gICAgYm9yZGVyLWNvbG9yOiAjMWQ5MWU4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi10d2l0dGVyOmFjdGl2ZTpob3ZlciwgLmJ0bi10d2l0dGVyOmFjdGl2ZTpmb2N1cywgLmJ0bi10d2l0dGVyOmFjdGl2ZS5mb2N1cywgLmJ0bi10d2l0dGVyLmFjdGl2ZTpob3ZlciwgLmJ0bi10d2l0dGVyLmFjdGl2ZTpmb2N1cywgLmJ0bi10d2l0dGVyLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tdHdpdHRlci5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLXR3aXR0ZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi10d2l0dGVyLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE1ODNkNztcbiAgICAgIGJvcmRlci1jb2xvcjogIzEyNmRiMjsgfVxuICAuYnRuLXR3aXR0ZXIuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tdHdpdHRlci5kaXNhYmxlZC5mb2N1cywgLmJ0bi10d2l0dGVyOmRpc2FibGVkOmZvY3VzLCAuYnRuLXR3aXR0ZXI6ZGlzYWJsZWQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NWFjZWU7XG4gICAgYm9yZGVyLWNvbG9yOiAjNTVhY2VlOyB9XG4gIC5idG4tdHdpdHRlci5kaXNhYmxlZDpob3ZlciwgLmJ0bi10d2l0dGVyOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTVhY2VlO1xuICAgIGJvcmRlci1jb2xvcjogIzU1YWNlZTsgfVxuXG4uYnRuLXZpbWVvIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFhYjdlYTtcbiAgYm9yZGVyLWNvbG9yOiAjMWFiN2VhO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLXZpbWVvOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjk1YmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTE4ZWI2OyB9XG4gIC5idG4tdmltZW86Zm9jdXMsIC5idG4tdmltZW8uZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzEyOTViZjtcbiAgICBib3JkZXItY29sb3I6ICMxMThlYjY7IH1cbiAgLmJ0bi12aW1lbzphY3RpdmUsIC5idG4tdmltZW8uYWN0aXZlLFxuICAub3BlbiA+IC5idG4tdmltZW8uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjk1YmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTE4ZWI2O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi12aW1lbzphY3RpdmU6aG92ZXIsIC5idG4tdmltZW86YWN0aXZlOmZvY3VzLCAuYnRuLXZpbWVvOmFjdGl2ZS5mb2N1cywgLmJ0bi12aW1lby5hY3RpdmU6aG92ZXIsIC5idG4tdmltZW8uYWN0aXZlOmZvY3VzLCAuYnRuLXZpbWVvLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tdmltZW8uZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi12aW1lby5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXZpbWVvLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmN2I5ZjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzBiNWU3OTsgfVxuICAuYnRuLXZpbWVvLmRpc2FibGVkOmZvY3VzLCAuYnRuLXZpbWVvLmRpc2FibGVkLmZvY3VzLCAuYnRuLXZpbWVvOmRpc2FibGVkOmZvY3VzLCAuYnRuLXZpbWVvOmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWFiN2VhO1xuICAgIGJvcmRlci1jb2xvcjogIzFhYjdlYTsgfVxuICAuYnRuLXZpbWVvLmRpc2FibGVkOmhvdmVyLCAuYnRuLXZpbWVvOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWFiN2VhO1xuICAgIGJvcmRlci1jb2xvcjogIzFhYjdlYTsgfVxuXG4uYnRuLXZrIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4N2VhMztcbiAgYm9yZGVyLWNvbG9yOiAjNTg3ZWEzO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLXZrOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NjY0ODI7XG4gICAgYm9yZGVyLWNvbG9yOiAjNDM1ZjdiOyB9XG4gIC5idG4tdms6Zm9jdXMsIC5idG4tdmsuZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ2NjQ4MjtcbiAgICBib3JkZXItY29sb3I6ICM0MzVmN2I7IH1cbiAgLmJ0bi12azphY3RpdmUsIC5idG4tdmsuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tdmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NjY0ODI7XG4gICAgYm9yZGVyLWNvbG9yOiAjNDM1ZjdiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi12azphY3RpdmU6aG92ZXIsIC5idG4tdms6YWN0aXZlOmZvY3VzLCAuYnRuLXZrOmFjdGl2ZS5mb2N1cywgLmJ0bi12ay5hY3RpdmU6aG92ZXIsIC5idG4tdmsuYWN0aXZlOmZvY3VzLCAuYnRuLXZrLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tdmsuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi12ay5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXZrLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNhNTI2YjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzJiM2U1MDsgfVxuICAuYnRuLXZrLmRpc2FibGVkOmZvY3VzLCAuYnRuLXZrLmRpc2FibGVkLmZvY3VzLCAuYnRuLXZrOmRpc2FibGVkOmZvY3VzLCAuYnRuLXZrOmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg3ZWEzO1xuICAgIGJvcmRlci1jb2xvcjogIzU4N2VhMzsgfVxuICAuYnRuLXZrLmRpc2FibGVkOmhvdmVyLCAuYnRuLXZrOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg3ZWEzO1xuICAgIGJvcmRlci1jb2xvcjogIzU4N2VhMzsgfVxuXG4uYnRuLXlhaG9vIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzcyMGU5ZTtcbiAgYm9yZGVyLWNvbG9yOiAjNzIwZTllO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuYnRuLXlhaG9vOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MDBhNmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjNDkwOTY2OyB9XG4gIC5idG4teWFob286Zm9jdXMsIC5idG4teWFob28uZm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzUwMGE2ZjtcbiAgICBib3JkZXItY29sb3I6ICM0OTA5NjY7IH1cbiAgLmJ0bi15YWhvbzphY3RpdmUsIC5idG4teWFob28uYWN0aXZlLFxuICAub3BlbiA+IC5idG4teWFob28uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MDBhNmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjNDkwOTY2O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG4gICAgLmJ0bi15YWhvbzphY3RpdmU6aG92ZXIsIC5idG4teWFob286YWN0aXZlOmZvY3VzLCAuYnRuLXlhaG9vOmFjdGl2ZS5mb2N1cywgLmJ0bi15YWhvby5hY3RpdmU6aG92ZXIsIC5idG4teWFob28uYWN0aXZlOmZvY3VzLCAuYnRuLXlhaG9vLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4teWFob28uZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi15YWhvby5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXlhaG9vLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM5MDc0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogIzFkMDQyOTsgfVxuICAuYnRuLXlhaG9vLmRpc2FibGVkOmZvY3VzLCAuYnRuLXlhaG9vLmRpc2FibGVkLmZvY3VzLCAuYnRuLXlhaG9vOmRpc2FibGVkOmZvY3VzLCAuYnRuLXlhaG9vOmRpc2FibGVkLmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzIwZTllO1xuICAgIGJvcmRlci1jb2xvcjogIzcyMGU5ZTsgfVxuICAuYnRuLXlhaG9vLmRpc2FibGVkOmhvdmVyLCAuYnRuLXlhaG9vOmRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzIwZTllO1xuICAgIGJvcmRlci1jb2xvcjogIzcyMGU5ZTsgfVxuXG4uYnRuLFxuLmZ1bGxjYWxlbmRhciAuZmMtYnV0dG9uIHtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4vKiAkc29ydGFibGVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNvcnRhYmxlLWxpc3Qge1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLnNvcnRhYmxlLWxpc3QgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAtLjA2MjVyZW07XG4gICAgcGFkZGluZzogLjkzNzVyZW07XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTsgfVxuICAgIC5zb3J0YWJsZS1saXN0IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7IH1cbiAgICAuc29ydGFibGUtbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7IH1cbiAgLnNvcnRhYmxlLWxpc3QgbGkudWktc3RhdGUtaGlnaGxpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAzLjEyNXJlbTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMSk7IH1cblxuLyogJHN1bW1lcm5vdGVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm5vdGUtYWlyLWVkaXRvciB7XG4gIG1pbi1oZWlnaHQ6IDkuMzc1cmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLm5vdGUtZWRpdG9yLm5vdGUtZnJhbWUge1xuICBib3JkZXI6IDA7IH1cblxuLm5vdGUtZWRpdG9yIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5ub3RlLWVkaXRvciAuYnRuLWdyb3VwIC5idG4ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLm5vdGUtZWRpdG9yIC5ub3RlLXRvb2xiYXIge1xuICAgIHBhZGRpbmc6IDAgMC43NXJlbSAwLjc1cmVtO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5ub3RlLWVkaXRvciAuZHJvcGRvd24tbWVudSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG4gICAgLm5vdGUtZWRpdG9yIC5kcm9wZG93bi1tZW51IGxpID4gYSB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDNweCAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBjb2xvcjogIzM3M2EzYztcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgLm5vdGUtZWRpdG9yIC5ub3RlLWVkaXRhYmxlIHtcbiAgICBtaW4taGVpZ2h0OiA5LjM3NXJlbTtcbiAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuLm5vdGUtcG9wb3ZlciAucG9wb3Zlci1jb250ZW50ID4gLmJ0bi1ncm91cCxcbi5wYW5lbC1oZWFkaW5nLm5vdGUtdG9vbGJhciA+IC5idG4tZ3JvdXAge1xuICBtYXJnaW4tdG9wOiAwLjc1cmVtOyB9XG5cbi5ub3RlLWljb24tY2FyZXQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5ub3RlLXBvcG92ZXIgLnBvcG92ZXIgLnBvcG92ZXItY29udGVudCAubm90ZS1wYXJhIC5kcm9wZG93bi1tZW51LFxuLnBhbmVsLWhlYWRpbmcubm90ZS10b29sYmFyIC5ub3RlLXBhcmEgLmRyb3Bkb3duLW1lbnUge1xuICBtaW4td2lkdGg6IDI1N3B4OyB9XG5cbi8qICRzd2VldC1hbGVydFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uc3dlZXQtYWxlcnQge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLnN3ZWV0LWFsZXJ0IGgyIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5zd2VldC1hbGVydCBwIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5zd2VldC1hbGVydCBidXR0b24ge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLnN3ZWV0LWFsZXJ0IC5pY29uLmVycm9yIHtcbiAgICBib3JkZXItY29sb3I6ICNkMjZkNTQ7IH1cbiAgLnN3ZWV0LWFsZXJ0IC5zYS1pbnB1dC1lcnJvcjo6YmVmb3JlLFxuICAuc3dlZXQtYWxlcnQgLnNhLWlucHV0LWVycm9yOjphZnRlcixcbiAgLnN3ZWV0LWFsZXJ0IC5zYS1lcnJvci1jb250YWluZXIgLmljb24sXG4gIC5zd2VldC1hbGVydCAuaWNvbi5lcnJvciAubGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QyNmQ1NDsgfVxuICAuc3dlZXQtYWxlcnQgLmljb24ud2FybmluZyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjBjNTRjOyB9XG4gIC5zd2VldC1hbGVydCAuaWNvbi53YXJuaW5nIC5ib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBjNTRjOyB9XG4gIC5zd2VldC1hbGVydCAuaWNvbi53YXJuaW5nIC5kb3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGM1NGM7IH1cbiAgLnN3ZWV0LWFsZXJ0IC5pY29uLmluZm8ge1xuICAgIGJvcmRlci1jb2xvcjogIzRjYzNmMDsgfVxuICAuc3dlZXQtYWxlcnQgLmljb24uaW5mbzo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGNjM2YwOyB9XG4gIC5zd2VldC1hbGVydCAuaWNvbi5pbmZvOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjYzNmMDsgfVxuICAuc3dlZXQtYWxlcnQgLmljb24uc3VjY2VzcyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjN2ZjMzVjOyB9XG4gIC5zd2VldC1hbGVydCAuaWNvbi5zdWNjZXNzIC5wbGFjZWhvbGRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEyNywgMTk1LCA5MiwgMC4yKTsgfVxuICAuc3dlZXQtYWxlcnQgLmljb24uc3VjY2VzcyAubGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdmYzM1YzsgfVxuICAuc3dlZXQtYWxlcnQgLnNhLWlucHV0LWVycm9yIHtcbiAgICB0b3A6IDEuNDM4cmVtOyB9XG5cbi8qICR0b3VjaC1zcGluXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ib290c3RyYXAtdG91Y2hzcGluIGlucHV0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5idG4uYm9vdHN0cmFwLXRvdWNoc3Bpbi1kb3duLFxuLmJ0bi5ib290c3RyYXAtdG91Y2hzcGluLXVwIHtcbiAgZm9udC1zaXplOiBpbml0aWFsICFpbXBvcnRhbnQ7IH1cblxuLypcbiAqIHR3aXR0ZXIgdHlwZWFoZWFkXG4gKlxuICovXG4udHdpdHRlci10eXBlYWhlYWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnR0LXF1ZXJ5IHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwLjA2MjVyZW0gMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOyB9XG5cbi50dC1tZW51IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogLTAuMDYyNXJlbSAwIDEuNXJlbTtcbiAgcGFkZGluZzogMXJlbSAwO1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjNGM3ZmYwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLnR0LXN1Z2dlc3Rpb24ge1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMXJlbTsgfVxuXG4udHQtc3VnZ2VzdGlvbjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLnR0LXN1Z2dlc3Rpb24udHQtY3Vyc29yIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzdmZjA7IH1cblxuLnR0LXN1Z2dlc3Rpb24gcCB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiAkVXRpbGl0aWVzIENsYXNzZXMgKi9cbi5pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmwtaCB7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4OyB9XG5cbi8qIE1hcmdpbnMgKi9cbi5tLXgtbiB7XG4gIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tci1uIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLWwtbiB7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLXQtbiB7XG4gIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tYi1uIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDsgfVxuXG4ubS14LW4tZyB7XG4gIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLXItbi1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tbC1uLWcge1xuICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLXQtbi1nIHtcbiAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLWItbi1nIHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLWEteHMge1xuICBtYXJnaW46IDAuNXJlbSAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubS10LXhzIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tci14cyB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tYi14cyB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLWwteHMge1xuICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm0teC14cyB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubS15LXhzIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wLWEteHMge1xuICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnAtdC14cyB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucC1yLXhzIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnAtYi14cyB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucC1sLXhzIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucC14LXhzIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnAteS14cyB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi8qIG5vIGJhY2tncm91bmQgY29sb3IqL1xuLm5vLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuXG4uc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLm5vLXNoYWRvdyB7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnYtYWxpZ24tbWlkZGxlLFxuLmFsaWduLW1pZGRsZSB0ZCxcbnRkLmFsaWduLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuXG4vKiBQb3NpdGlvbiAqL1xuLnJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ubHQge1xuICBsZWZ0OiAwOyB9XG5cbi5ydCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi5idCB7XG4gIGJvdHRvbTogMDsgfVxuXG4udHAge1xuICB0b3A6IDA7IH1cblxuLyogUmFkaXVzICovXG4ubm8tcmFkaXVzIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi5icnRsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4OyB9XG5cbi5icnRyIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDsgfVxuXG4uYnJibCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDsgfVxuXG4uYnJiciB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7IH1cblxuLmJybGcge1xuICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDsgfVxuXG4vKiBPdmVyZmxvdyAqL1xuLm92ZXJmbG93LWhpZGRlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm92ZXJmbG93LXZpc2libGUge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4ub3ZlcmZsb3ctYXV0byB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qIEJvcmRlcnMgKi9cbi5uby1ib3JkZXIsXG4uYi1hLTAge1xuICBib3JkZXI6IDA7IH1cblxuLmItYSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uYi1iIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uYi10IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uYi1sIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLmItciB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uYi10LTAge1xuICBib3JkZXItdG9wOiAwOyB9XG5cbi5iLXItMCB7XG4gIGJvcmRlci1yaWdodDogMDsgfVxuXG4uYi1iLTAge1xuICBib3JkZXItYm90dG9tOiAwOyB9XG5cbi5iLWwtMCB7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi8qIGJvcmRlciBjb2xvcnMgKi9cbi5ib3JkZXItcHJpbWFyeSB7XG4gIGJvcmRlci1jb2xvcjogIzRjN2ZmMCAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItZGVmYXVsdCB7XG4gIGJvcmRlci1jb2xvcjogI2U4ZThlOCAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItd2FybmluZyB7XG4gIGJvcmRlci1jb2xvcjogI2YwYzU0YyAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItc3VjY2VzcyB7XG4gIGJvcmRlci1jb2xvcjogIzdmYzM1YyAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItaW5mbyB7XG4gIGJvcmRlci1jb2xvcjogIzRjYzNmMCAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci1kYW5nZXIge1xuICBib3JkZXItY29sb3I6ICNkMjZkNTQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1vdmVyZmxvdyB7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qXG4gKiAgRGVtbyBzcGVjaWZpYyBzdHlsZXMuXG4gKiAgVGhlc2UgY2FuIGJlIHJlbW92ZWRcbiAqL1xuLndkZW1vLWxheW91dC1jb2x1bW4ge1xuICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAtd2Via2l0LWZsZXgtZ3JvdzogMDtcbiAgLW1vei1mbGV4LWdyb3c6IDA7XG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAwO1xuICBmbGV4LWdyb3c6IDA7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6IDE7XG4gIC1tb3otZmxleC1zaHJpbms6IDE7XG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAxO1xuICBmbGV4LXNocmluazogMTtcbiAgLXdlYmtpdC1mbGV4LWJhc2lzOiAyMDBweDtcbiAgLW1vei1mbGV4LWJhc2lzOiAyMDBweDtcbiAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDIwMHB4O1xuICBmbGV4LWJhc2lzOiAyMDBweDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1vei1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uY29sb3ItYnJhbmRzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNvbG9yLWJyYW5kczo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmNvbG9yLWJyYW5kcy5oZWFkZXItYnJhbmRzID4gZGl2IHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuY29sb3ItYnJhbmRzID4gZGl2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgLmNvbG9yLWJyYW5kcyAuY29sb3ItYnJhbmQge1xuICAgIGxpbmUtaGVpZ2h0OiAxNTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmNvbG9yLWJyYW5kcyAuY29sb3ItYnJhbmQuaGVhZGVyLWJyYW5kIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMHB4OyB9XG4gICAgLmNvbG9yLWJyYW5kcyAuY29sb3ItYnJhbmQgZGl2IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDUwcHg7IH1cbiAgLmNvbG9yLWJyYW5kcyA+IC5jb2xvci1icmFuZCB7XG4gICAgd2lkdGg6IDEwJTtcbiAgICBoZWlnaHQ6IDEwMHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuY29sb3ItYnJhbmRzID4gZGl2IHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5jb2xvci1icmFuZHMgPiAuY29sb3ItYnJhbmQge1xuICAgIHdpZHRoOiAyNSU7IH0gfVxuXG4jZm9jdXNlZElucHV0IHtcbiAgYm9yZGVyLWNvbG9yOiAjODRhN2Y1O1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5kZW1vLWJ1dHRvbiAuYnRuIHtcbiAgbWluLXdpZHRoOiAxMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG4uZGVtby1idXR0b24yIGJ1dHRvbiB7XG4gIG1hcmdpbjogMCA1cHggMTBweCAwOyB9XG5cbi5kZW1vLWJ1dHRvbjMgLmJ0biB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmRlbW8tbGlua3MgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxMTBweDsgfVxuXG4uZm9udGF3ZXNvbWUtbGlzdCAuZmEtaG92ZXIge1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuXG4uZm9udGF3ZXNvbWUtbGlzdCAuZmEsXG4uZm9udGF3ZXNvbWUtbGlzdCAubWF0ZXJpYWwtaWNvbnMge1xuICBtaW4td2lkdGg6IDMwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmZvbnRhd2Vzb21lLWxpc3QgLmZhLWhvdmVyOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzRjN2ZmMDsgfVxuXG4uZm9udGF3ZXNvbWUtaWNvbi1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuXG4ub3B0aW9uIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVyZW0gMDsgfVxuICAub3B0aW9uID4gZGl2IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm9wdGlvbiA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDIwMHB4OyB9XG5cbi5kZW1vLXNraW4ge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLmRlbW8tc2tpbiBzcGFuIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGhlaWdodDogMjVweDtcbiAgICBib3JkZXItdG9wOiAwLjA2MjVyZW0gc29saWQgZmFkZShibGFjaywgNyUpO1xuICAgIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCBmYWRlKGJsYWNrLCA3JSk7IH1cbiAgLmRlbW8tc2tpbiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMC4wNjI1cmVtIHNvbGlkIGZhZGUoYmxhY2ssIDclKTsgfVxuICAuZGVtby1za2luIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwLjA2MjVyZW0gc29saWQgZmFkZShibGFjaywgNyUpOyB9XG5cbi5zaWRlYmFyLXNraW5zID4gZGl2IC5mYSxcbi5oZWFkZXItc2tpbnMgPiBkaXYgLmZhIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zaWRlYmFyLXNraW5zID4gZGl2OmhvdmVyLFxuLmhlYWRlci1za2lucyA+IGRpdjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uc2lkZWJhci1za2lucyA+IGRpdjpob3ZlciAuZmEsXG4uaGVhZGVyLXNraW5zID4gZGl2OmhvdmVyIC5mYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uc2lkZWJhci1za2lucyA+IGRpdi5hY3RpdmUgLmZhLFxuLmhlYWRlci1za2lucyA+IGRpdi5hY3RpdmUgLmZhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBjb2xvcjogIzdmYzM1YzsgfVxuXG4uY29uZmlndXJhdGlvbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTk7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQwMHB4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICAuY29uZmlndXJhdGlvbiAuY29uZmlndXJhdGlvbi1vcHRpb25zIHtcbiAgICBwYWRkaW5nOiAzcmVtOyB9XG5cbi5jb25maWd1cmF0aW9uLmFjdGl2ZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLmNvbmZpZ3VyYXRpb24tY29nIHtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogODtcbiAgdG9wOiAxNTBweDtcbiAgbGVmdDogLTU1cHg7XG4gIHdpZHRoOiA1NXB4O1xuICBoZWlnaHQ6IDU1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYm94LXNoYWRvdzogLTZweCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgbGluZS1oZWlnaHQ6IDU1cHg7IH1cbiAgLmNvbmZpZ3VyYXRpb24tY29nIGltZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIGhlaWdodDogMzBweDsgfVxuXG4uY29uZmlndXJhdGlvbi1vcHRpb25zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OyB9XG5cbi5jb25maWd1cmF0aW9uIC50aXRsZSB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uY29uZmlndXJhdGlvbiAub3B0aW9uLnN0eWxlcyBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW46IDAgNXB4IDAgMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uY29uZmlndXJhdGlvbiAub3B0aW9uLnN0eWxlcyBpbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTAwJTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5jb25maWd1cmF0aW9uIC5vcHRpb24uc3R5bGVzIGRpdiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jb25maWd1cmF0aW9uIC5vcHRpb24uc3R5bGVzIGRpdjpudGgtY2hpbGQoMykge1xuICBoZWlnaHQ6IDlweDsgfVxuXG4uY29uZmlndXJhdGlvbiAub3B0aW9uLnN0eWxlcyBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgaGVpZ2h0OiAxcHg7IH1cblxuLmNvbmZpZ3VyYXRpb24gLm9wdGlvbi5zdHlsZXMgZGl2Omxhc3QtY2hpbGQge1xuICBoZWlnaHQ6IDIwcHg7IH1cblxuLmNvbmZpZ3VyYXRpb24gLm9wdGlvbi5zdHlsZXMgLmZhIHtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBmYWRlKHdoaXRlLCAzMCUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5jb25maWd1cmF0aW9uIC5vcHRpb24uc3R5bGVzIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyAuZmEge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zd2F0Y2hlcyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uc3dhdGNoZXMgPiBkaXYge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDsgfVxuXG4uc3dhdGNoZXMgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7IH1cblxuLnN3YXRjaGVzID4gZGl2Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7IH1cblxuLnN3YXRjaGVzID4gZGl2ID4gc3BhbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmRlbW8tc3Bpbm5lcnMgLmxvYWRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtaW4taGVpZ2h0OiA3MHB4O1xuICBtYXJnaW46IDFyZW0gYXV0bzsgfVxuXG4uZGVtby1zcGlua2l0IC5jYXJkLWJsb2NrID4gW2NsYXNzXj0nc2stJ10ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxcmVtIGF1dG87IH1cblxuLnRoZW1lLW9wdGlvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA2MnB4O1xuICBoZWlnaHQ6IDYycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1MzVhNmM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udGhlbWUtb3B0aW9ucyBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC50aGVtZS1vcHRpb25zIGxhYmVsLCAudGhlbWUtb3B0aW9ucyBsYWJlbDpmb2N1cywgLnRoZW1lLW9wdGlvbnMgbGFiZWw6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAudGhlbWUtb3B0aW9ucyBsYWJlbCBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAudGhlbWUtb3B0aW9ucyBsYWJlbCAubWF0ZXJpYWwtaWNvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLW1vei1vcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtb3BhY2l0eTogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDsgfVxuICAudGhlbWUtb3B0aW9ucyBsYWJlbCBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgLm1hdGVyaWFsLWljb25zIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC50aGVtZS1vcHRpb25zIGxhYmVsID4gZGl2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAudGhlbWUtb3B0aW9ucyBsYWJlbCA+IGRpdiA+IHNwYW4ge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAudGhlbWUtb3B0aW9ucyBsYWJlbCA+IGRpdiA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7IH1cbiAgICAgIC50aGVtZS1vcHRpb25zIGxhYmVsID4gZGl2ID4gc3BhbjpmaXJzdC1jaGlsZCA+IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLnRoZW1lLW9wdGlvbnMgbGFiZWwgPiBkaXYgPiBzcGFuOmZpcnN0LWNoaWxkID4gc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwcHg7IH1cbiAgICAgIC50aGVtZS1vcHRpb25zIGxhYmVsID4gZGl2ID4gc3BhbjpmaXJzdC1jaGlsZCA+IHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNjBweDsgfVxuICAgIC50aGVtZS1vcHRpb25zIGxhYmVsID4gZGl2ID4gc3BhbjpudGgtY2hpbGQoMikge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7IH1cblxuLm9wdGlvbnMgbGFiZWwsIC5vcHRpb25zIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAuMzsgfVxuICAub3B0aW9ucyBsYWJlbCArIGRpdiwgLm9wdGlvbnMgYSArIGRpdiB7XG4gICAgb3BhY2l0eTogLjM7IH1cbiAgLm9wdGlvbnMgbGFiZWwuYWN0aXZlLCAub3B0aW9ucyBsYWJlbC5hY3RpdmUgKyBkaXYsIC5vcHRpb25zIGEuYWN0aXZlLCAub3B0aW9ucyBhLmFjdGl2ZSArIGRpdiB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAub3B0aW9ucyBsYWJlbCwgLm9wdGlvbnMgbGFiZWw6Zm9jdXMsIC5vcHRpb25zIGxhYmVsOmhvdmVyLCAub3B0aW9ucyBhLCAub3B0aW9ucyBhOmZvY3VzLCAub3B0aW9ucyBhOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm9wdGlvbnMgbGFiZWwgaW5wdXQsIC5vcHRpb25zIGEgaW5wdXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5vcHRpb25zIGxhYmVsIC5tYXRlcmlhbC1pY29ucywgLm9wdGlvbnMgYSAubWF0ZXJpYWwtaWNvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDkycHg7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZm9udC1zaXplOiA1MHB4OyB9XG4gIC5vcHRpb25zIGxhYmVsIGlucHV0OmNoZWNrZWQgKyAubWF0ZXJpYWwtaWNvbnMsIC5vcHRpb25zIGEgaW5wdXQ6Y2hlY2tlZCArIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uYnRuLWJ1eSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI2MjYyNjtcbiAgY29sb3I6ICM5OTk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYnRuLWJ1eTpmb2N1cywgLmJ0bi1idXk6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4iLCIvKlxuKiAgIFRlbXBsYXRlIG5hbWU6IE1pbGVzdG9uZSBCb290c3RyYXAgNCBEYXNoYm9hcmQgVGVtcGxhdGVcbiogICBEZW1vIFVSTDogaHRwOi8vbWlsZXN0b25lLm55YXNoYS5tZVxuKi9cblxuLyogVGFibGUgb2YgQ29udGVudHNcbiAgICBVc2UgKENNRC9DVFJMICsgRiAkW1NFQ1RJT05dKSB0byBxdWlja2x5IGZpbmQgd2hhdCB5b3UgYXJlIGxvb2tpbmcgZm9yXG4gICAgW1NFQ1RJT05dXG5cdDEuXHRzY2FmZm9sZGluZ1xuXHQyLlx0dHlwb2dyYXBoeVxuXHQzLlx0YXZhdGFyXG5cdDQuXHRzaWRlYmFyLXBhbmVsXG5cdDUuXHRoZWFkZXJcblx0Ni5cdGJyYW5kXG5cdDcuXHRtYWluLXBhbmVsXG5cdDguXHRmb290ZXJcblx0OS5cdGNoYXQtcGFuZWxcblx0MTAuXHRvZmZzY3JlZW4tbWVudVxuXHQxMS5cdHdpZGdldFxuXHQxMi5cdGxheW91dC1vcHRpb25zXG5cdDEzLlx0bW9kYWwtcGFuZWxcblx0MTQuXHRhbGVydHNcblx0MTUuXHRicmVhZGNydW1ic1xuXHQxNi5cdGJ1dHRvbnNcblx0MTcuXHRjYXJkc1xuXHQxOC5cdGRyb3Bkb3duXG5cdDE5Llx0Zm9ybXNcblx0MjAuXHRpbnB1dC1ncm91cHNcblx0MjEuXHRsYWJlbHNcblx0MjIuXHRsaXN0Z3JvdXBcblx0MjMuXHRtb2RhbFxuXHQyNC5cdG5hdmJhclxuXHQyNS5cdG5hdnNcblx0MjYuXHRwaWxsc1xuXHQyNy5cdHRhYnNcblx0MjguXHRwYWdpbmF0aW9uXG5cdDI5Llx0cG9wb3ZlclxuXHQzMC5cdHByb2dyZXNzLWJhclxuXHQzMS5cdHRhYmxlc1xuXHQzMi5cdHRvb2x0aXBcblx0MzMuXHRjb2xvcnNcblx0MzQuXHRib290c3RyYXAudWlcblx0MzUuXHRzZXNzaW9uXG5cdDM2Llx0bG9ja3NjcmVlblxuXHQzNy5cdGVycm9yLXBhZ2VzXG5cdDM4Llx0Y2FsZW5kYXJcblx0MzkuXHRnYWxsZXJ5XG5cdDQwLlx0aW52b2ljZVxuXHQ0MS5cdG1lc3NhZ2VzXG5cdDQyLlx0c29jaWFsXG5cdDQzLlx0dGltZWxpbmVcblx0NDQuXHRjaGFydHNcblx0NDUuXHRqcXVlcnkudWlcblx0NDYuXHRib290c3RyYXAtdGFnc1xuXHQ0Ny5cdGJvb3RzdGFwLXRpbWVwaWNrZXJcblx0NDguXHRjMy1jaGFydHNcblx0NDkuXHRjaGFydGpzXG5cdDUwLlx0Y2xvY2stcGlja2VyXG5cdDUxLlx0Y29sb3ItcGlja2VyXG5cdDUyLlx0ZGF0ZXBpY2tlclxuXHQ1My5cdGRhdGVyYW5nZXBpY2tlclxuXHQ1NC5cdGVhc3lwaWVcblx0NTUuXHRmbG90LWNoYXJ0XG5cdDU2Llx0Z29vZ2xlLW1hcFxuXHQ1Ny5cdGlucHV0LXNlbGVjdFxuXHQ1OC5cdGludGwtdGVsLWlucHV0XG5cdDU5Llx0anZlY3Rvcm1hcFxuXHQ2MC5cdGxhYmVsYXV0eVxuXHQ2MS5cdG11bHRpc2VsZWN0XG5cdDYyLlx0bmVzdGFibGVcblx0NjMuXHRub3R5XG5cdDY0Llx0bnZkXG5cdDY1Llx0anF1ZXJ5LXZhbGlkYXRpb25cblx0NjYuXHRwb3J0bGV0c1xuXHQ2Ny5cdHJpY2tzaGF3XG5cdDY4Llx0c29jaWFsLWJ1dHRvblxuXHQ2OS5cdHNvcnRhYmxlXG5cdDcwLlx0c3VtbWVybm90ZVxuXHQ3MS5cdHN3ZWV0LWFsZXJ0XG5cdDcyLlx0dG91Y2gtc3BpblxuXHQ3My5cdHV0aWxpdGllc1xuKi9cblxuQGltcG9ydCBcIm1peGlucy9iaS1hcHAvYmktYXBwLWx0clwiO1xuXG4vLyBDb3JlIFZhcmlhYmxlcyBhbmQgTWl4aW5zXG5AaW1wb3J0IFwiYXBwLnZhcmlhYmxlc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuLy8gQ29yZSBTdHlsZXNcbkBpbXBvcnQgXCJjb3JlXCI7XG4vLyBCb290c3RyYXAgRWxlbWVudHNcbkBpbXBvcnQgXCJic1wiO1xuLy8gUGFnZXNcbkBpbXBvcnQgXCJwYWdlc1wiO1xuLy8gUGx1Z2luc1xuQGltcG9ydCBcInBsdWdpbnNcIjtcbi8vIFV0aWxpdHkgY2xhc3Nlc1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuLy8gRGVtbyBzcGVjaWZpY1xuQGltcG9ydCBcImRlbW9cIjtcbiIsIi8qICRzY2FmZm9sZGluZ1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBzcmM6IGxvY2FsKCdNYXRlcmlhbCBJY29ucycpLCBsb2NhbCgnTWF0ZXJpYWxJY29ucy1SZWd1bGFyJyksIHVybCguLi9mb250cy9tYXRlcmlhbC9NYXRlcmlhbEljb25zLVJlZ3VsYXIud29mZjIpIGZvcm1hdCgnd29mZjInKSwgdXJsKC4uL2ZvbnRzL21hdGVyaWFsL01hdGVyaWFsSWNvbnMtUmVndWxhci53b2ZmKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKC4uL2ZvbnRzL21hdGVyaWFsL01hdGVyaWFsSWNvbnMtUmVndWxhci50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbn1cblxuLm1hdGVyaWFsLWljb25zIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgd2lkdGg6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC8qIFByZWZlcnJlZCBpY29uIHNpemUgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIGRpcmVjdGlvbjogbHRyO1xuICAvKiBTdXBwb3J0IGZvciBhbGwgV2ViS2l0IGJyb3dzZXJzLiAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLyogU3VwcG9ydCBmb3IgU2FmYXJpIGFuZCBDaHJvbWUuICovXG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC8qIFN1cHBvcnQgZm9yIEZpcmVmb3guICovXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC8qIFN1cHBvcnQgZm9yIElFLiAqL1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcbn1cbi5idG4tc206bm90KC5idG4taWNvbiApID4gLm1hdGVyaWFsLWljb25zIHtcbiAgbGluZS1oZWlnaHQ6IDIxcHghaW1wb3J0YW50O1xufVxuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5wYWNlIHtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAucGFjZS1wcm9ncmVzcyB7XG4gICAgaGVpZ2h0OiAycHg7XG4gIH1cbiAgLnBhY2UtcHJvZ3Jlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICB9XG4gIC5wYWNlLWFjdGl2aXR5IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbmJvZHksXG5odG1sIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZS13ZWJmb250LCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDFEMUQyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLmFwcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogJG1haW4tcGFuZWwtYmc7XG4gIEBpbmNsdWRlIGZsZXhib3g7XG4gIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKHJvdyk7XG59XG5cbi5hcHA6bm90KC5sYXlvdXQtc3RhdGljKSB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLnRvdWNoIHtcbiAgbGk6aG92ZXIsXG4gIGxpOmZvY3VzLFxuICBhOmhvdmVyLFxuICBhOmZvY3VzLFxuICB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvL1xuLy8gR2VuZXJhbFxuLy9cblxuJHRyYW5zaXRpb24tZHVyYXRpb246IDIwMG1zO1xuJG1haW4tcGFuZWwtYmc6IHJnYmEoMjQ3LCAyNDAsIDI0MCwgMSk7XG4kYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4kZ3V0dGVyOiAxLjVyZW07XG5cbi8vXG4vLyBXaWR0aHNcbi8vXG4kc2lkZWJhci13aWR0aDogMThyZW07XG4kc2lkZWJhci1zbWFsbC1tZW51LXdpZHRoOiA0cmVtO1xuJHNpZGViYXItd2lkdGgtbW9iaWxlOiAxOHJlbTtcblxuLy9cbi8vIEhlaWdodHNcbi8vXG4kaGVhZGVyLWhlaWdodDogMy40MzhyZW07XG4kaGVhZGVyLWhlaWdodC1weDogNTZweDtcbiRmb290ZXItaGVpZ2h0OiAzcmVtO1xuXG4vL1xuLy8gQnJhbmRpbmdcbi8vXG4kbWFpbi1jb2xvcjogcmdiKDc2LCAxMjcsIDI0MCk7XG4kYnJhbmQtZGFyazogcmdiKDgzLCA5MCwgMTA4KTtcbiRicmFuZC1kZWZhdWx0OiByZ2IoMjMyLCAyMzIsIDIzMik7XG4kYnJhbmQtcHJpbWFyeTogJG1haW4tY29sb3I7XG4kYnJhbmQtc3VjY2VzczogcmdiKDEyNywgMTk1LCA5Mik7XG4kYnJhbmQtd2FybmluZzogcmdiKDI0MCwgMTk3LCA3Nik7XG4kYnJhbmQtZGFuZ2VyOiByZ2IoMjEwLCAxMDksIDg0KTtcbiRicmFuZC1pbmZvOiByZ2IoNzYsIDE5NSwgMjQwKTtcbiRicmFuZC13aGl0ZTogcmdiKDI1NSwgMjU1LCAyNTUpO1xuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cbiRmb250LXNpemUtYmFzZTogMC44MTI1cmVtO1xuJGZvbnQtd2VpZ2h0LWJhc2U6IDQwMDtcbiRmb250LXdlaWdodC1tZWRpdW06IDUwMDtcbiRmb250LXdlaWdodC1ib2xkOiA2MDA7XG4kdGV4dC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuJGxpbmstY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuJGxpbmstaG92ZXItY29sb3I6IHJnYig2OCwgNjgsIDY4KTtcbiRmb250LWZhbWlseS1iYXNlLXdlYmZvbnQ6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWhlYWRpbmctd2ViZm9udDogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG5cbi8vXG4vLyBSYWRpdXNcbi8vXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAycHg7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogNHB4O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6IDFweDtcblxuLy9cbi8vIFNpZGViYXIgU2tpblxuLy9cbiRzaWRlYmFyLXNraW4tYmFja2dyb3VuZDogd2hpdGU7XG4kc2lkZWJhci1za2luLWNvbG9yOiAkdGV4dC1jb2xvcjtcbiRzaWRlYmFyLXNraW4taG92ZXI6IHJnYigwLCAwLCAwKTtcbiRzaWRlYmFyLXNraW4tYnJhbmQtYmFja2dyb3VuZDogJHNpZGViYXItc2tpbi1iYWNrZ3JvdW5kO1xuJHNpZGViYXItc2tpbi1icmFuZC1jb2xvcjogJHRleHQtY29sb3I7XG5cbi8vXG4vLyBIZWFkZXIgU2tpblxuLy9cbiRoZWFkZXItc2tpbi1iYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiRoZWFkZXItc2tpbi1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNyk7XG4kaGVhZGVyLXNraW4taG92ZXI6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiIsIi8vIEZsZXhib3ggTWl4aW5zXG4vLyBodHRwOi8vcGhpbGlwd2FsdG9uLmdpdGh1Yi5pby9zb2x2ZWQtYnktZmxleGJveC9cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vc29sdmVkLWJ5LWZsZXhib3hcbi8vIFxuLy8gQ29weXJpZ2h0IChjKSAyMDEzIEJyaWFuIEZyYW5jb1xuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhXG4vLyBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlXG4vLyBcIlNvZnR3YXJlXCIpLCB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmdcbi8vIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCxcbi8vIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0b1xuLy8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvXG4vLyB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZFxuLy8gaW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTXG4vLyBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GXG4vLyBNRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuXG4vLyBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWVxuLy8gQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCxcbi8vIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFXG4vLyBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS5cbi8vXG4vLyBUaGlzIGlzIGEgc2V0IG9mIG1peGlucyBmb3IgdGhvc2Ugd2hvIHdhbnQgdG8gbWVzcyBhcm91bmQgd2l0aCBmbGV4Ym94XG4vLyB1c2luZyB0aGUgbmF0aXZlIHN1cHBvcnQgb2YgY3VycmVudCBicm93c2Vycy4gRm9yIGZ1bGwgc3VwcG9ydCB0YWJsZVxuLy8gY2hlY2s6IGh0dHA6Ly9jYW5pdXNlLmNvbS9mbGV4Ym94XG4vL1xuLy8gQmFzaWNhbGx5IHRoaXMgd2lsbCB1c2U6XG4vL1xuLy8gKiBGYWxsYmFjaywgb2xkIHN5bnRheCAoSUUxMCwgbW9iaWxlIHdlYmtpdCBicm93c2VycyAtIG5vIHdyYXBwaW5nKVxuLy8gKiBGaW5hbCBzdGFuZGFyZHMgc3ludGF4IChGRiwgU2FmYXJpLCBDaHJvbWUsIElFMTEsIE9wZXJhKVxuLy9cbi8vIFRoaXMgd2FzIGluc3BpcmVkIGJ5OlxuLy8gXG4vLyAqIGh0dHA6Ly9kZXYub3BlcmEuY29tL2FydGljbGVzL3ZpZXcvYWR2YW5jZWQtY3Jvc3MtYnJvd3Nlci1mbGV4Ym94L1xuLy8gXG4vLyBXaXRoIGhlbHAgZnJvbTpcbi8vIFxuLy8gKiBodHRwOi8vdzMub3JnL3RyL2NzczMtZmxleGJveC9cbi8vICogaHR0cDovL3RoZS1lY2hvcGxleC5uZXQvZmxleHlib3hlcy9cbi8vICogaHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L2llL2hoNzcyMDY5KHY9dnMuODUpLmFzcHhcbi8vICogaHR0cDovL2Nzcy10cmlja3MuY29tL3VzaW5nLWZsZXhib3gvXG4vLyAqIGh0dHA6Ly9kZXYub3BlcmEuY29tL2FydGljbGVzL3ZpZXcvYWR2YW5jZWQtY3Jvc3MtYnJvd3Nlci1mbGV4Ym94L1xuLy8gKiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi11cy9kb2NzL3dlYi9ndWlkZS9jc3MvZmxleGlibGVfYm94ZXNcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZsZXhib3ggQ29udGFpbmVyc1xuLy9cbi8vIFRoZSAnZmxleCcgdmFsdWUgY2F1c2VzIGFuIGVsZW1lbnQgdG8gZ2VuZXJhdGUgYSBibG9jay1sZXZlbCBmbGV4XG4vLyBjb250YWluZXIgYm94LlxuLy9cbi8vIFRoZSAnaW5saW5lLWZsZXgnIHZhbHVlIGNhdXNlcyBhbiBlbGVtZW50IHRvIGdlbmVyYXRlIGEgaW5saW5lLWxldmVsXG4vLyBmbGV4IGNvbnRhaW5lciBib3guIFxuLy9cbi8vIGRpc3BsYXk6IGZsZXggfCBpbmxpbmUtZmxleFxuLy9cbi8vIGh0dHA6Ly93My5vcmcvdHIvY3NzMy1mbGV4Ym94LyNmbGV4LWNvbnRhaW5lcnNcbi8vXG4vLyAoUGxhY2Vob2xkZXIgc2VsZWN0b3JzIGZvciBlYWNoIHR5cGUsIGZvciB0aG9zZSB3aG8gcmF0aGVyIEBleHRlbmQpXG5cbkBtaXhpbiBmbGV4Ym94IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuJWZsZXhib3ggeyBAaW5jbHVkZSBmbGV4Ym94OyB9XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWl4aW4gaW5saW5lLWZsZXgge1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otaW5saW5lLWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbiVpbmxpbmUtZmxleCB7IEBpbmNsdWRlIGlubGluZS1mbGV4OyB9XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBGbGV4Ym94IERpcmVjdGlvblxuLy9cbi8vIFRoZSAnZmxleC1kaXJlY3Rpb24nIHByb3BlcnR5IHNwZWNpZmllcyBob3cgZmxleCBpdGVtcyBhcmUgcGxhY2VkIGluXG4vLyB0aGUgZmxleCBjb250YWluZXIsIGJ5IHNldHRpbmcgdGhlIGRpcmVjdGlvbiBvZiB0aGUgZmxleCBjb250YWluZXInc1xuLy8gbWFpbiBheGlzLiBUaGlzIGRldGVybWluZXMgdGhlIGRpcmVjdGlvbiB0aGF0IGZsZXggaXRlbXMgYXJlIGxhaWQgb3V0IGluLiBcbi8vXG4vLyBWYWx1ZXM6IHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2Vcbi8vIERlZmF1bHQ6IHJvd1xuLy9cbi8vIGh0dHA6Ly93My5vcmcvdHIvY3NzMy1mbGV4Ym94LyNmbGV4LWRpcmVjdGlvbi1wcm9wZXJ0eVxuXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJHZhbHVlOiByb3cpIHtcbiAgQGlmICR2YWx1ZSA9PSByb3ctcmV2ZXJzZSB7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gY29sdW1uIHtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBjb2x1bW4tcmV2ZXJzZSB7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIH0gQGVsc2Uge1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgfVxuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiAkdmFsdWU7XG4gIC1tb3otZmxleC1kaXJlY3Rpb246ICR2YWx1ZTtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkdmFsdWU7XG4gIGZsZXgtZGlyZWN0aW9uOiAkdmFsdWU7XG59XG4gIC8vIFNob3J0ZXIgdmVyc2lvbjpcbiAgQG1peGluIGZsZXgtZGlyKCRhcmdzLi4uKSB7IEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRhcmdzLi4uKTsgfVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRmxleGJveCBXcmFwXG4vL1xuLy8gVGhlICdmbGV4LXdyYXAnIHByb3BlcnR5IGNvbnRyb2xzIHdoZXRoZXIgdGhlIGZsZXggY29udGFpbmVyIGlzIHNpbmdsZS1saW5lXG4vLyBvciBtdWx0aS1saW5lLCBhbmQgdGhlIGRpcmVjdGlvbiBvZiB0aGUgY3Jvc3MtYXhpcywgd2hpY2ggZGV0ZXJtaW5lc1xuLy8gdGhlIGRpcmVjdGlvbiBuZXcgbGluZXMgYXJlIHN0YWNrZWQgaW4uIFxuLy9cbi8vIFZhbHVlczogbm93cmFwIHwgd3JhcCB8IHdyYXAtcmV2ZXJzZVxuLy8gRGVmYXVsdDogbm93cmFwXG4vL1xuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2ZsZXgtd3JhcC1wcm9wZXJ0eVxuXG5AbWl4aW4gZmxleC13cmFwKCR2YWx1ZTogbm93cmFwKSB7XG4gIC8vIE5vIFdlYmtpdCBCb3ggZmFsbGJhY2suXG4gIC13ZWJraXQtZmxleC13cmFwOiAkdmFsdWU7XG4gIC1tb3otZmxleC13cmFwOiAkdmFsdWU7XG4gIEBpZiAkdmFsdWUgPT0gbm93cmFwIHtcbiAgICAtbXMtZmxleC13cmFwOiBub25lO1xuICB9IEBlbHNlIHsgXG4gICAgLW1zLWZsZXgtd3JhcDogJHZhbHVlOyBcbiAgfVxuICBmbGV4LXdyYXA6ICR2YWx1ZTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZsZXhib3ggRmxvdyAoc2hvcnRoYW5kKVxuLy9cbi8vIFRoZSAnZmxleC1mbG93JyBwcm9wZXJ0eSBpcyBhIHNob3J0aGFuZCBmb3Igc2V0dGluZyB0aGUgJ2ZsZXgtZGlyZWN0aW9uJ1xuLy8gYW5kICdmbGV4LXdyYXAnIHByb3BlcnRpZXMsIHdoaWNoIHRvZ2V0aGVyIGRlZmluZSB0aGUgZmxleCBjb250YWluZXInc1xuLy8gbWFpbiBhbmQgY3Jvc3MgYXhlcy5cbi8vXG4vLyBWYWx1ZXM6IDxmbGV4LWRpcmVjdGlvbj4gfCA8ZmxleC13cmFwPiBcbi8vIERlZmF1bHQ6IHJvdyBub3dyYXBcbi8vXG4vLyBodHRwOi8vdzMub3JnL3RyL2NzczMtZmxleGJveC8jZmxleC1mbG93LXByb3BlcnR5XG5cbkBtaXhpbiBmbGV4LWZsb3coJHZhbHVlczogKHJvdyBub3dyYXApKSB7XG4gIC8vIE5vIFdlYmtpdCBCb3ggZmFsbGJhY2suXG4gIC13ZWJraXQtZmxleC1mbG93OiAkdmFsdWVzO1xuICAtbW96LWZsZXgtZmxvdzogJHZhbHVlcztcbiAgLW1zLWZsZXgtZmxvdzogJHZhbHVlcztcbiAgZmxleC1mbG93OiAkdmFsdWVzO1xufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRmxleGJveCBPcmRlclxuLy9cbi8vIFRoZSAnb3JkZXInIHByb3BlcnR5IGNvbnRyb2xzIHRoZSBvcmRlciBpbiB3aGljaCBmbGV4IGl0ZW1zIGFwcGVhciB3aXRoaW5cbi8vIHRoZWlyIGZsZXggY29udGFpbmVyLCBieSBhc3NpZ25pbmcgdGhlbSB0byBvcmRpbmFsIGdyb3Vwcy5cbi8vXG4vLyBEZWZhdWx0OiAwXG4vL1xuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI29yZGVyLXByb3BlcnR5XG5cbkBtaXhpbiBvcmRlcigkaW50OiAwKSB7XG4gIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6ICRpbnQgKyAxO1xuICAtd2Via2l0LW9yZGVyOiAkaW50O1xuICAtbW96LW9yZGVyOiAkaW50O1xuICAtbXMtZmxleC1vcmRlcjogJGludDtcbiAgb3JkZXI6ICRpbnQ7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBGbGV4Ym94IEdyb3dcbi8vXG4vLyBUaGUgJ2ZsZXgtZ3JvdycgcHJvcGVydHkgc2V0cyB0aGUgZmxleCBncm93IGZhY3Rvci4gTmVnYXRpdmUgbnVtYmVyc1xuLy8gYXJlIGludmFsaWQuXG4vL1xuLy8gRGVmYXVsdDogMFxuLy9cbi8vIGh0dHA6Ly93My5vcmcvdHIvY3NzMy1mbGV4Ym94LyNmbGV4LWdyb3ctcHJvcGVydHlcblxuQG1peGluIGZsZXgtZ3JvdygkaW50OiAwKSB7XG4gIC13ZWJraXQtYm94LWZsZXg6ICRpbnQ7XG4gIC13ZWJraXQtZmxleC1ncm93OiAkaW50O1xuICAtbW96LWZsZXgtZ3JvdzogJGludDtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6ICRpbnQ7XG4gIGZsZXgtZ3JvdzogJGludDtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZsZXhib3ggU2hyaW5rXG4vL1xuLy8gVGhlICdmbGV4LXNocmluaycgcHJvcGVydHkgc2V0cyB0aGUgZmxleCBzaHJpbmsgZmFjdG9yLiBOZWdhdGl2ZSBudW1iZXJzXG4vLyBhcmUgaW52YWxpZC5cbi8vXG4vLyBEZWZhdWx0OiAxXG4vL1xuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2ZsZXgtc2hyaW5rLXByb3BlcnR5XG5cbkBtaXhpbiBmbGV4LXNocmluaygkaW50OiAxKSB7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6ICRpbnQ7XG4gIC1tb3otZmxleC1zaHJpbms6ICRpbnQ7XG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAkaW50O1xuICBmbGV4LXNocmluazogJGludDtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZsZXhib3ggQmFzaXNcbi8vXG4vLyBUaGUgJ2ZsZXgtYmFzaXMnIHByb3BlcnR5IHNldHMgdGhlIGZsZXggYmFzaXMuIE5lZ2F0aXZlIGxlbmd0aHMgYXJlIGludmFsaWQuIFxuLy9cbi8vIFZhbHVlczogTGlrZSBcIndpZHRoXCIgXG4vLyBEZWZhdWx0OiBhdXRvXG4vL1xuLy8gaHR0cDovL3d3dy53My5vcmcvVFIvY3NzMy1mbGV4Ym94LyNmbGV4LWJhc2lzLXByb3BlcnR5XG5cbkBtaXhpbiBmbGV4LWJhc2lzKCR2YWx1ZTogYXV0bykge1xuICAtd2Via2l0LWZsZXgtYmFzaXM6ICR2YWx1ZTtcbiAgLW1vei1mbGV4LWJhc2lzOiAkdmFsdWU7XG4gIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAkdmFsdWU7XG4gIGZsZXgtYmFzaXM6ICR2YWx1ZTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZsZXhib3ggXCJGbGV4XCIgKHNob3J0aGFuZClcbi8vXG4vLyBUaGUgJ2ZsZXgnIHByb3BlcnR5IHNwZWNpZmllcyB0aGUgY29tcG9uZW50cyBvZiBhIGZsZXhpYmxlIGxlbmd0aDogdGhlXG4vLyBmbGV4IGdyb3cgZmFjdG9yIGFuZCBmbGV4IHNocmluayBmYWN0b3IsIGFuZCB0aGUgZmxleCBiYXNpcy4gV2hlbiBhblxuLy8gZWxlbWVudCBpcyBhIGZsZXggaXRlbSwgJ2ZsZXgnIGlzIGNvbnN1bHRlZCBpbnN0ZWFkIG9mIHRoZSBtYWluIHNpemVcbi8vIHByb3BlcnR5IHRvIGRldGVybWluZSB0aGUgbWFpbiBzaXplIG9mIHRoZSBlbGVtZW50LiBJZiBhbiBlbGVtZW50IGlzXG4vLyBub3QgYSBmbGV4IGl0ZW0sICdmbGV4JyBoYXMgbm8gZWZmZWN0LlxuLy9cbi8vIFZhbHVlczogbm9uZSB8IDxmbGV4LWdyb3c+IDxmbGV4LXNocmluaz4gfHwgPGZsZXgtYmFzaXM+XG4vLyBEZWZhdWx0OiBTZWUgaW5kaXZpZHVhbCBwcm9wZXJ0aWVzICgxIDEgMCkuXG4vL1xuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2ZsZXgtcHJvcGVydHlcblxuQG1peGluIGZsZXgoJGZnOiAxLCAkZnM6IG51bGwsICRmYjogbnVsbCkge1xuICAgIFxuICAvLyBTZXQgYSB2YXJpYWJsZSB0byBiZSB1c2VkIGJ5IGJveC1mbGV4IHByb3BlcnRpZXNcbiAgJGZnLWJveGZsZXg6ICRmZztcblxuICAvLyBCb3gtRmxleCBvbmx5IHN1cHBvcnRzIGEgZmxleC1ncm93IHZhbHVlIHNvIGxldCdzIGdyYWIgdGhlXG4gIC8vIGZpcnN0IGl0ZW0gaW4gdGhlIGxpc3QgYW5kIGp1c3QgcmV0dXJuIHRoYXQuXG4gIEBpZiB0eXBlLW9mKCRmZykgPT0gJ2xpc3QnIHtcbiAgICAkZmctYm94ZmxleDogbnRoKCRmZywgMSk7XG4gIH1cblxuICAtd2Via2l0LWJveC1mbGV4OiAkZmctYm94ZmxleDtcbiAgLXdlYmtpdC1mbGV4OiAkZmcgJGZzICRmYjtcbiAgLW1vei1ib3gtZmxleDogJGZnLWJveGZsZXg7XG4gIC1tb3otZmxleDogJGZnICRmcyAkZmI7XG4gIC1tcy1mbGV4OiAkZmcgJGZzICRmYjtcbiAgZmxleDogJGZnICRmcyAkZmI7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBGbGV4Ym94IEp1c3RpZnkgQ29udGVudFxuLy9cbi8vIFRoZSAnanVzdGlmeS1jb250ZW50JyBwcm9wZXJ0eSBhbGlnbnMgZmxleCBpdGVtcyBhbG9uZyB0aGUgbWFpbiBheGlzXG4vLyBvZiB0aGUgY3VycmVudCBsaW5lIG9mIHRoZSBmbGV4IGNvbnRhaW5lci4gVGhpcyBpcyBkb25lIGFmdGVyIGFueSBmbGV4aWJsZVxuLy8gbGVuZ3RocyBhbmQgYW55IGF1dG8gbWFyZ2lucyBoYXZlIGJlZW4gcmVzb2x2ZWQuIFR5cGljYWxseSBpdCBoZWxwcyBkaXN0cmlidXRlXG4vLyBleHRyYSBmcmVlIHNwYWNlIGxlZnRvdmVyIHdoZW4gZWl0aGVyIGFsbCB0aGUgZmxleCBpdGVtcyBvbiBhIGxpbmUgYXJlXG4vLyBpbmZsZXhpYmxlLCBvciBhcmUgZmxleGlibGUgYnV0IGhhdmUgcmVhY2hlZCB0aGVpciBtYXhpbXVtIHNpemUuIEl0IGFsc29cbi8vIGV4ZXJ0cyBzb21lIGNvbnRyb2wgb3ZlciB0aGUgYWxpZ25tZW50IG9mIGl0ZW1zIHdoZW4gdGhleSBvdmVyZmxvdyB0aGUgbGluZS5cbi8vXG4vLyBOb3RlOiAnc3BhY2UtKicgdmFsdWVzIG5vdCBzdXBwb3J0ZWQgaW4gb2xkZXIgc3ludGF4ZXMuXG4vL1xuLy8gVmFsdWVzOiBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4vLyBEZWZhdWx0OiBmbGV4LXN0YXJ0XG4vL1xuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2p1c3RpZnktY29udGVudC1wcm9wZXJ0eVxuXG5AbWl4aW4ganVzdGlmeS1jb250ZW50KCR2YWx1ZTogZmxleC1zdGFydCkge1xuICBAaWYgJHZhbHVlID09IGZsZXgtc3RhcnQge1xuICAgIC13ZWJraXQtYm94LXBhY2s6IHN0YXJ0O1xuICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBmbGV4LWVuZCB7XG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xuICAgIC1tcy1mbGV4LXBhY2s6IGVuZDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gc3BhY2UtYmV0d2VlbiB7XG4gICAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTtcbiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBzcGFjZS1hcm91bmQge1xuICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGU7ICAgIFxuICB9IEBlbHNlIHtcbiAgICAtd2Via2l0LWJveC1wYWNrOiAkdmFsdWU7XG4gICAgLW1zLWZsZXgtcGFjazogJHZhbHVlO1xuICB9XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiAkdmFsdWU7XG4gIC1tb3otanVzdGlmeS1jb250ZW50OiAkdmFsdWU7XG4gIGp1c3RpZnktY29udGVudDogJHZhbHVlO1xufVxuICAvLyBTaG9ydGVyIHZlcnNpb246XG4gIEBtaXhpbiBmbGV4LWp1c3QoJGFyZ3MuLi4pIHsgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KCRhcmdzLi4uKTsgfVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRmxleGJveCBBbGlnbiBJdGVtc1xuLy9cbi8vIEZsZXggaXRlbXMgY2FuIGJlIGFsaWduZWQgaW4gdGhlIGNyb3NzIGF4aXMgb2YgdGhlIGN1cnJlbnQgbGluZSBvZiB0aGVcbi8vIGZsZXggY29udGFpbmVyLCBzaW1pbGFyIHRvICdqdXN0aWZ5LWNvbnRlbnQnIGJ1dCBpbiB0aGUgcGVycGVuZGljdWxhclxuLy8gZGlyZWN0aW9uLiAnYWxpZ24taXRlbXMnIHNldHMgdGhlIGRlZmF1bHQgYWxpZ25tZW50IGZvciBhbGwgb2YgdGhlIGZsZXhcbi8vIGNvbnRhaW5lcidzIGl0ZW1zLCBpbmNsdWRpbmcgYW5vbnltb3VzIGZsZXggaXRlbXMuICdhbGlnbi1zZWxmJyBhbGxvd3Ncbi8vIHRoaXMgZGVmYXVsdCBhbGlnbm1lbnQgdG8gYmUgb3ZlcnJpZGRlbiBmb3IgaW5kaXZpZHVhbCBmbGV4IGl0ZW1zLiAoRm9yXG4vLyBhbm9ueW1vdXMgZmxleCBpdGVtcywgJ2FsaWduLXNlbGYnIGFsd2F5cyBtYXRjaGVzIHRoZSB2YWx1ZSBvZiAnYWxpZ24taXRlbXMnXG4vLyBvbiB0aGVpciBhc3NvY2lhdGVkIGZsZXggY29udGFpbmVyLikgXG4vL1xuLy8gVmFsdWVzOiBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbi8vIERlZmF1bHQ6IHN0cmV0Y2hcbi8vXG4vLyBodHRwOi8vdzMub3JnL3RyL2NzczMtZmxleGJveC8jYWxpZ24taXRlbXMtcHJvcGVydHlcblxuQG1peGluIGFsaWduLWl0ZW1zKCR2YWx1ZTogc3RyZXRjaCkge1xuICBAaWYgJHZhbHVlID09IGZsZXgtc3RhcnQge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IGZsZXgtZW5kIHtcbiAgICAtd2Via2l0LWJveC1hbGlnbjogZW5kO1xuICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7XG4gIH0gQGVsc2Uge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiAkdmFsdWU7XG4gICAgLW1zLWZsZXgtYWxpZ246ICR2YWx1ZTtcbiAgfVxuICAtd2Via2l0LWFsaWduLWl0ZW1zOiAkdmFsdWU7XG4gIC1tb3otYWxpZ24taXRlbXM6ICR2YWx1ZTtcbiAgYWxpZ24taXRlbXM6ICR2YWx1ZTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZsZXhib3ggQWxpZ24gU2VsZlxuLy9cbi8vIFZhbHVlczogYXV0byB8IGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaFxuLy8gRGVmYXVsdDogYXV0b1xuXG5AbWl4aW4gYWxpZ24tc2VsZigkdmFsdWU6IGF1dG8pIHtcbiAgLy8gTm8gV2Via2l0IEJveCBGYWxsYmFjay5cbiAgLXdlYmtpdC1hbGlnbi1zZWxmOiAkdmFsdWU7XG4gIC1tb3otYWxpZ24tc2VsZjogJHZhbHVlO1xuICBAaWYgJHZhbHVlID09IGZsZXgtc3RhcnQge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0YXJ0O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBmbGV4LWVuZCB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kO1xuICB9IEBlbHNlIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiAkdmFsdWU7XG4gIH1cbiAgYWxpZ24tc2VsZjogJHZhbHVlO1xufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRmxleGJveCBBbGlnbiBDb250ZW50XG4vL1xuLy8gVGhlICdhbGlnbi1jb250ZW50JyBwcm9wZXJ0eSBhbGlnbnMgYSBmbGV4IGNvbnRhaW5lcidzIGxpbmVzIHdpdGhpbiB0aGVcbi8vIGZsZXggY29udGFpbmVyIHdoZW4gdGhlcmUgaXMgZXh0cmEgc3BhY2UgaW4gdGhlIGNyb3NzLWF4aXMsIHNpbWlsYXIgdG9cbi8vIGhvdyAnanVzdGlmeS1jb250ZW50JyBhbGlnbnMgaW5kaXZpZHVhbCBpdGVtcyB3aXRoaW4gdGhlIG1haW4tYXhpcy4gTm90ZSxcbi8vIHRoaXMgcHJvcGVydHkgaGFzIG5vIGVmZmVjdCB3aGVuIHRoZSBmbGV4Ym94IGhhcyBvbmx5IGEgc2luZ2xlIGxpbmUuXG4vL1xuLy8gVmFsdWVzOiBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kIHwgc3RyZXRjaFxuLy8gRGVmYXVsdDogc3RyZXRjaFxuLy9cbi8vIGh0dHA6Ly93My5vcmcvdHIvY3NzMy1mbGV4Ym94LyNhbGlnbi1jb250ZW50LXByb3BlcnR5XG5cbkBtaXhpbiBhbGlnbi1jb250ZW50KCR2YWx1ZTogc3RyZXRjaCkge1xuICAvLyBObyBXZWJraXQgQm94IEZhbGxiYWNrLlxuICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6ICR2YWx1ZTtcbiAgLW1vei1hbGlnbi1jb250ZW50OiAkdmFsdWU7XG4gIEBpZiAkdmFsdWUgPT0gZmxleC1zdGFydCB7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdGFydDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gZmxleC1lbmQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZW5kO1xuICB9IEBlbHNlIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6ICR2YWx1ZTtcbiAgfVxuICBhbGlnbi1jb250ZW50OiAkdmFsdWU7XG59IiwiQG1peGluIGhvdmVyIHtcbiAgQGlmICRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnkge1xuICAgIC8vIFNlZSBNZWRpYSBRdWVyaWVzIExldmVsIDQ6IGh0dHA6Ly9kcmFmdHMuY3Nzd2cub3JnL21lZGlhcXVlcmllcy8jaG92ZXJcbiAgICAvLyBDdXJyZW50bHkgc2hpbW1lZCBieSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9tcTQtaG92ZXItc2hpbVxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAmOmhvdmVyIHsgQGNvbnRlbnQgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJjpob3ZlciB7IEBjb250ZW50IH1cbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMge1xuICBAaWYgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeSB7XG4gICAgJjpmb2N1cyB7IEBjb250ZW50IH1cbiAgICBAaW5jbHVkZSBob3ZlciB7IEBjb250ZW50IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gIEBpZiAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5IHtcbiAgICAmLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGNvbnRlbnRcbiAgICB9XG4gICAgQGluY2x1ZGUgaG92ZXIgeyBAY29udGVudCB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICYsXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICBAaWYgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeSB7XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAY29udGVudFxuICAgIH1cbiAgICBAaW5jbHVkZSBob3ZlciB7IEBjb250ZW50IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICB9XG59XG4iLCIvKiAkdHlwb2dyYXBoeVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbi5oMSxcbi5oMixcbi5oMyxcbi5oNCxcbi5oNSxcbi5oNiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaGVhZGluZy13ZWJmb250O1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG59XG5cbmR0LFxuLmJvbGQge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG59XG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiAuNjg3NXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5wdWxscXVvdGUge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDU1JTtcbiAgQGluY2x1ZGUgZmxvYXQobGVmdCk7XG4gICY6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IEdlb3JnaWEsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjb250ZW50OiAn4oCcJztcbiAgICBjb2xvcjogI2UyZTRlOTtcbiAgfVxufVxuXG5ociB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjEpO1xufVxuXG5vbC5saXN0LXN0eWxlLW5vbmUsXG51bC5saXN0LXN0eWxlLW5vbmUge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5jb2RlIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGVmYXVsdDtcbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gYmkgYXBwIG1peGluc1xuLy8gYXV0aG9yczogXG4vLyB0d2l0dGVyLmNvbS9hbmFzbmFrYXdhXG4vLyB0d2l0dGVyLmNvbS92aWN0b3J6YW1maXJcbi8vIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBcbi8vIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUYWJsZSBvZiBjb250ZW50c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBwYWRkaW5nXG4vLyBtYXJnaW5cbi8vIGZsb2F0XG4vLyB0ZXh0IGFsaWduXG4vLyBjbGVhclxuLy8gbGVmdCAvIHJpZ2h0XG4vLyBib3JkZXJcbi8vICAtIHdpZHRoXG4vLyAgLSBzdHlsZVxuLy8gIC0gY29sb3Jcbi8vICAtIGdlbmVyaWNcbi8vICAtIHJhZGl1c1xuLy8gbHRyIC8gcnRsIGNvbnRlbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gZ2VuZXJpYyBtaXhpbiBmb3IgcHJvcGVydGllcyB3aXRoIHZhbHVlc1xuLy8gKHRvcCByaWdodCBib3R0b20gbGVmdClcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGJpLWFwcC1jb21wYWN0KCRwcm9wZXJ0eSwgJHRvcCwgJHJpZ2h0LCAkYm90dG9tLCAkbGVmdCkge1xuICBAaWYgJGJpLWFwcC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgICAjeyRwcm9wZXJ0eX06ICR0b3AgJHJpZ2h0ICRib3R0b20gJGxlZnQ7XG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3BlcnR5fTogJHRvcCAkbGVmdCAkYm90dG9tICRyaWdodDtcbiAgfVxufVxuXG4vLyBwYWRkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBwYWRkaW5nLWxlZnQoJGRpc3RhbmNlKSB7XG4gIHBhZGRpbmctI3skYmktYXBwLWxlZnR9OiAkZGlzdGFuY2U7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXJpZ2h0KCRkaXN0YW5jZSkge1xuICBwYWRkaW5nLSN7JGJpLWFwcC1yaWdodH06ICRkaXN0YW5jZTtcbn1cblxuQG1peGluIHBhZGRpbmcoJHRvcCwgJHJpZ2h0LCAkYm90dG9tLCAkbGVmdCkge1xuICBAaW5jbHVkZSBiaS1hcHAtY29tcGFjdChwYWRkaW5nLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gbWFyZ2luXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBtYXJnaW4tbGVmdCgkZGlzdGFuY2UpIHtcbiAgbWFyZ2luLSN7JGJpLWFwcC1sZWZ0fTogJGRpc3RhbmNlO1xufVxuXG5AbWl4aW4gbWFyZ2luLXJpZ2h0KCRkaXN0YW5jZSkge1xuICBtYXJnaW4tI3skYmktYXBwLXJpZ2h0fTogJGRpc3RhbmNlO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgQGluY2x1ZGUgYmktYXBwLWNvbXBhY3QobWFyZ2luLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gZmxvYXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGJpLWFwcC1mbG9hdC1sZWZ0KCRpbXBvcnRhbnQ6ICcnKSB7XG4gIGZsb2F0OiAkYmktYXBwLWxlZnQgdW5xdW90ZSgkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIGJpLWFwcC1mbG9hdC1yaWdodCgkaW1wb3J0YW50OiAnJykge1xuICBmbG9hdDogJGJpLWFwcC1yaWdodCB1bnF1b3RlKCRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gZmxvYXQoJGRpcmVjdGlvbiwgJGltcG9ydGFudDogJycpIHtcbiAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgQGluY2x1ZGUgYmktYXBwLWZsb2F0LWxlZnQoJGltcG9ydGFudCk7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgQGluY2x1ZGUgYmktYXBwLWZsb2F0LXJpZ2h0KCRpbXBvcnRhbnQpO1xuICB9IEBlbHNlIHtcbiAgICBmbG9hdDogJGRpcmVjdGlvbjtcbiAgfVxufVxuXG4vLyB0ZXh0IGFsaWduXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBiaS1hcHAtdGV4dC1hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogJGJpLWFwcC1sZWZ0O1xufVxuXG5AbWl4aW4gYmktYXBwLXRleHQtYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiAkYmktYXBwLXJpZ2h0O1xufVxuXG5AbWl4aW4gdGV4dC1hbGlnbigkZGlyZWN0aW9uKSB7XG4gIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgIEBpbmNsdWRlIGJpLWFwcC10ZXh0LWFsaWduLWxlZnQ7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgQGluY2x1ZGUgYmktYXBwLXRleHQtYWxpZ24tcmlnaHQ7XG4gIH0gQGVsc2Uge1xuICAgIHRleHQtYWxpZ246ICRkaXJlY3Rpb247XG4gIH1cbn1cblxuLy8gY2xlYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGJpLWFwcC1jbGVhci1sZWZ0IHtcbiAgY2xlYXI6ICRiaS1hcHAtbGVmdDtcbn1cblxuQG1peGluIGJpLWFwcC1jbGVhci1yaWdodCB7XG4gIGNsZWFyOiAkYmktYXBwLXJpZ2h0O1xufVxuXG5AbWl4aW4gY2xlYXIoJGRpcmVjdGlvbikge1xuICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICBAaW5jbHVkZSBiaS1hcHAtY2xlYXItbGVmdDtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICBAaW5jbHVkZSBiaS1hcHAtY2xlYXItcmlnaHQ7XG4gIH0gQGVsc2Uge1xuICAgIGNsZWFyOiAkZGlyZWN0aW9uO1xuICB9XG59XG5cbi8vIGxlZnQgLyByaWdodFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWl4aW4gbGVmdCgkZGlzdGFuY2UpIHtcbiAgQGlmICRiaS1hcHAtZGlyZWN0aW9uID09IGx0ciB7XG4gICAgbGVmdDogJGRpc3RhbmNlO1xuICB9IEBlbHNlIGlmICRiaS1hcHAtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgcmlnaHQ6ICRkaXN0YW5jZTtcbiAgfVxufVxuXG5AbWl4aW4gcmlnaHQoJGRpc3RhbmNlKSB7XG4gIEBpZiAkYmktYXBwLWRpcmVjdGlvbiA9PSBsdHIge1xuICAgIHJpZ2h0OiAkZGlzdGFuY2U7XG4gIH0gQGVsc2UgaWYgJGJpLWFwcC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICBsZWZ0OiAkZGlzdGFuY2U7XG4gIH1cbn1cblxuLy8gYm9yZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gd2lkdGhcbkBtaXhpbiBib3JkZXItbGVmdC13aWR0aCgkd2lkdGgpIHtcbiAgYm9yZGVyLSN7JGJpLWFwcC1sZWZ0fS13aWR0aDogJHdpZHRoO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXdpZHRoKCR3aWR0aCkge1xuICBib3JkZXItI3skYmktYXBwLXJpZ2h0fS13aWR0aDogJHdpZHRoO1xufVxuXG5AbWl4aW4gYm9yZGVyLXdpZHRoKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgQGluY2x1ZGUgYmktYXBwLWNvbXBhY3QoYm9yZGVyLXdpZHRoLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gc3R5bGVcbkBtaXhpbiBib3JkZXItbGVmdC1zdHlsZSgkc3R5bGUpIHtcbiAgYm9yZGVyLSN7JGJpLWFwcC1sZWZ0fS1zdHlsZTogJHN0eWxlO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXN0eWxlKCRzdHlsZSkge1xuICBib3JkZXItI3skYmktYXBwLXJpZ2h0fS1zdHlsZTogJHN0eWxlO1xufVxuXG5AbWl4aW4gYm9yZGVyLXN0eWxlKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgQGluY2x1ZGUgYmktYXBwLWNvbXBhY3QoYm9yZGVyLXN0eWxlLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gY29sb3JcbkBtaXhpbiBib3JkZXItbGVmdC1jb2xvcigkY29sb3IpIHtcbiAgYm9yZGVyLSN7JGJpLWFwcC1sZWZ0fS1jb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LWNvbG9yKCRjb2xvcikge1xuICBib3JkZXItI3skYmktYXBwLXJpZ2h0fS1jb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gYm9yZGVyLWNvbG9yKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgQGluY2x1ZGUgYmktYXBwLWNvbXBhY3QoYm9yZGVyLWNvbG9yLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gZ2VuZXJpY1xuQG1peGluIGJvcmRlci1sZWZ0KCRib3JkZXItc3R5bGUpIHtcbiAgYm9yZGVyLSN7JGJpLWFwcC1sZWZ0fTogJGJvcmRlci1zdHlsZTtcbn1cblxuQG1peGluIGJvcmRlci1yaWdodCgkYm9yZGVyLXN0eWxlKSB7XG4gIGJvcmRlci0jeyRiaS1hcHAtcmlnaHR9OiAkYm9yZGVyLXN0eWxlO1xufVxuXG4vLyByYWRpdXNcbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JGJpLWFwcC1sZWZ0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXRvcCN7JGJpLWFwcC1sZWZ0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLXRvcC0jeyRiaS1hcHAtbGVmdH0tcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci10b3AtI3skYmktYXBwLXJpZ2h0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXRvcCN7JGJpLWFwcC1yaWdodH0tcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci10b3AtI3skYmktYXBwLXJpZ2h0fS1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JGJpLWFwcC1sZWZ0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLWJvdHRvbSN7JGJpLWFwcC1sZWZ0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRiaS1hcHAtbGVmdH0tcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skYmktYXBwLXJpZ2h0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLWJvdHRvbSN7JGJpLWFwcC1yaWdodH0tcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tI3skYmktYXBwLXJpZ2h0fS1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cyk7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpO1xufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKTtcbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cyk7XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cyk7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkdG9wTGVmdCwgJHRvcFJpZ2h0OiBudWxsLCAkYm90dG9tUmlnaHQ6IG51bGwsICRib3R0b21MZWZ0OiBudWxsKSB7XG4gIEBpZiAkdG9wUmlnaHQgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkdG9wTGVmdCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHRvcFJpZ2h0KTtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkYm90dG9tUmlnaHQpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJGJvdHRvbUxlZnQpO1xuICB9IEBlbHNlIHtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICR0b3BMZWZ0O1xuICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogJHRvcExlZnQ7XG4gICAgICAgIC1tcy1ib3JkZXItcmFkaXVzOiAkdG9wTGVmdDtcbiAgICAgICAgIC1vLWJvcmRlci1yYWRpdXM6ICR0b3BMZWZ0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHRvcExlZnQ7XG4gIH1cbn1cblxuLy8gUmV0dXJucyBcImVuXCIgb3IgXCJhclwiLCB1c2VmdWwgZm9yIGltYWdlIHN1ZmZpeGVzLlxuLy8gVXNhZ2U6IGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1nL2hlYWRlci0je2xhbmcoKX0ucG5nKTtcbkBmdW5jdGlvbiBsYW5nKCkge1xuICBAaWYgJGJpLWFwcC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgICBAcmV0dXJuICdlbic7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJ2FyJztcbiAgfVxufVxuXG4vLyBTdXBwb3J0IGZvciBcImRpcmVjdGlvblwiIGRlY2xhcmF0aW9uIChyZW5kZXJzIGx0ci9ydGwpLlxuLy8gVXNlZnVsIGZvciBmb3JtIGVsZW1lbnRzIGFzIHRoZXkgc3dhcCB0aGUgdGV4dC1pbmRlbnQgcHJvcGVydHkgYW5kIGFsaWduIHRoZSB0ZXh0IGFjY29yZGluZ2x5LlxuQG1peGluIGRpcmVjdGlvbiB7XG4gIGRpcmVjdGlvbjogJGJpLWFwcC1kaXJlY3Rpb247XG59XG5cbi8vIEludmVydHMgYSBwZXJjZW50YWdlIHZhbHVlLiBFeGFtcGxlOiA5NyUgYmVjYW1lcyAzJS5cbi8vIFVzZWZ1bCBmb3IgYmFja2dyb3VuZC1wb3NpdGlvbi5cbkBmdW5jdGlvbiBiaS1hcHAtaW52ZXJ0LXBlcmNlbnRhZ2UoJHBlcmNlbnRhZ2UpIHtcbiAgQGlmICRiaS1hcHAtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgQHJldHVybiAxMDAlIC0gJHBlcmNlbnRhZ2U7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHBlcmNlbnRhZ2U7XG4gIH1cbn1cblxuLy8gbHRyIC8gcnRsIGNvbnRlbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBsdHIge1xuICBAaWYgJGJpLWFwcC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcnRsIHtcbiAgQGlmICRiaS1hcHAtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8qICRhdmF0YXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYXZhdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xufVxuXG4uaW1nLXJvdW5kZWQge1xuICBAaW5jbHVkZSByb3VuZGVkKC4xMjVyZW0pO1xufVxuXG5cbi8qIHNpemVzICovXG5cbi5hdmF0YXIteGxnIHtcbiAgd2lkdGg6IDMycmVtO1xufVxuXG4uYXZhdGFyLXhsZyB7XG4gIHdpZHRoOiAxNnJlbTtcbn1cblxuLmF2YXRhci1sZyB7XG4gIHdpZHRoOiA4cmVtO1xufVxuXG4uYXZhdGFyLW1kIHtcbiAgd2lkdGg6IDRyZW07XG59XG5cbi5hdmF0YXItc20ge1xuICB3aWR0aDogM3JlbTtcbn1cblxuLmF2YXRhci14cyB7XG4gIHdpZHRoOiAyLjEyNXJlbTtcbn1cblxuLmF2YXRhci14eHMge1xuICB3aWR0aDogMS4zNzVyZW07XG59XG4iLCIvL1xuQG1peGluIGZvbnQtYXdlc29tZSgpIHtcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xICRmb250YXdlc29tZS1mYW1pbHktaWNvbjtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIHNwZWFrOiBub25lO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigkcGFyZW50LWhlaWdodCwgJGVsZW1lbnQtaGVpZ2h0KSB7XG4gIG1hcmdpbi10b3A6ICgoJHBhcmVudC1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgoJHBhcmVudC1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbi1wYWRkaW5nKCRwYXJlbnQtaGVpZ2h0LCAkZWxlbWVudC1oZWlnaHQpIHtcbiAgcGFkZGluZy10b3A6ICgoJHBhcmVudC1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG4gIHBhZGRpbmctYm90dG9tOiAoKCRwYXJlbnQtaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xufVxuXG5AbWl4aW4gcm91bmRlZCgkcmFkaXVzOiAycHgpIHtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbn1cblxuQG1peGluIGJveC1zaGFkb3coJGFyZ3VtZW50cy4uLikge1xuICBib3gtc2hhZG93OiAkYXJndW1lbnRzO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtKCRhcmd1bWVudHMuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06ICRhcmd1bWVudHM7XG4gIC1tb3otdHJhbnNmb3JtOiAkYXJndW1lbnRzO1xuICAtbXMtdHJhbnNmb3JtOiAkYXJndW1lbnRzO1xuICAtby10cmFuc2Zvcm06ICRhcmd1bWVudHM7XG4gIHRyYW5zZm9ybTogJGFyZ3VtZW50cztcbn1cblxuQG1peGluIHJvdGF0ZSgkZGVnOiA1ZGVnKSB7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoJGRlZykpO1xufVxuXG5AbWl4aW4gdHJhbnNsYXRlKCR4OiAwLCAkeTowKSB7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoJHgsICR5KSk7XG59XG5cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeDogMCwgJHk6MCwgJHo6MCkge1xuICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlM2QoJHgsICR5LCAkeikpO1xufVxuXG5AbWl4aW4gc2NhbGUoJHg6IDAsICR5OjApIHtcbiAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKCR4LCAkeSkpO1xufVxuXG5AbWl4aW4gc2NhbGUzZCgkeDogMCwgJHk6MCwgJHo6MCkge1xuICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUzZCgkeCwgJHksICR6KSk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR2YWx1ZS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR2YWx1ZTtcbiAgdHJhbnNpdGlvbjogJHZhbHVlO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbn1cblxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZykge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG59XG5cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRtb2RlKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJG1vZGU7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRtb2RlO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XG4gIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbjogLjJzKSB7XG4gIC1tb3otdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAtby10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJGFyZ3VtZW50OiBub25lKSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRhcmd1bWVudDtcbiAgLW1vei11c2VyLXNlbGVjdDogJGFyZ3VtZW50O1xuICAtbXMtdXNlci1zZWxlY3Q6ICRhcmd1bWVudDtcbiAgdXNlci1zZWxlY3Q6ICRhcmd1bWVudDtcbn1cblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHk6IC41KSB7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xufVxuIiwiLyogJHNpZGViYXItcGFuZWxcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uc2lkZWJhci1wYW5lbCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHotaW5kZXg6IDYwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KTtcbiAgQGluY2x1ZGUgZmxleGJveDtcbiAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgQGluY2x1ZGUgbGVmdCgwKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAzMDBtcyBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKSk7XG4gIC5icmFuZCB7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAuZXhwYW5kaW5nLXZpc2libGUge1xuICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuZXhwYW5kaW5nLWhpZGRlbiB7XG4gIH1cbiAgLm5hdi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAuNTEyNXJlbSAkZ3V0dGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wMXJlbTtcbiAgfVxuICAubmF2LXByb2ZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIC51aWItZHJvcGRvd24tbWVudSxcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWFpbi1wYW5lbC1iZztcbiAgICAgIGJveC1zaGFkb3c6IDAgLjM3NXJlbSAuNzVyZW0gcmdiYSgwLCAwLCAwLCAuMSk7XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDNweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICA+IGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIGEuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogLjUxMjVyZW0gJGd1dHRlcjtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiAnYXJyb3dfZHJvcF9kb3duJztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIEBpbmNsdWRlIHJpZ2h0KCRndXR0ZXIpO1xuICAgICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgICAgLyogU3VwcG9ydCBmb3IgYWxsIFdlYktpdCBicm93c2Vycy4gKi9cbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC8qIFN1cHBvcnQgZm9yIFNhZmFyaSBhbmQgQ2hyb21lLiAqL1xuICAgICAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgICAgICAvKiBTdXBwb3J0IGZvciBGaXJlZm94LiAqL1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAvKiBTdXBwb3J0IGZvciBJRS4gKi9cbiAgICAgICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gICAgICB9XG4gICAgICAudXNlci1pbWFnZSB7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmctcmlnaHQoLjVyZW0pO1xuICAgICAgICAuYXZhdGFyIHtcbiAgICAgICAgICB3aWR0aDogMi44cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudXNlci1pbmZvLFxuICAgICAgLnVzZXItaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgICAudXNlci1pbmZvIHNtYWxsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAudXNlci1pbmZvIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgfVxuICAgICAgPiAqIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiBuYXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdy15OiBvdmVybGF5O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgQGluY2x1ZGUgZmxleCgxKTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMzVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICB1bCA+IGxpID4gYSxcbiAgICAubWVudS1saW5rIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCAkdHJhbnNpdGlvbi1kdXJhdGlvbiwgY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24pO1xuICAgICAgPiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgICAgPiAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBtYXJnaW4tcmlnaHQoLjVlbSk7XG4gICAgICB9XG4gICAgfVxuICAgIC51c2VyLWltYWdlLFxuICAgIC51c2VyLWluZm8sXG4gICAgLm5hdi1wcm9maWxlIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICAgIC51c2VyLWluZm8ge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZy1sZWZ0KDFyZW0pO1xuICAgICAgc21hbGwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIHBhZGRpbmc6IDAgLjNyZW07XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBAaW5jbHVkZSByb3VuZGVkKC41MTI1cmVtKTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgdWwuc3ViLW1lbnUgbGkgYSB7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoLjUxMjVyZW0sICRndXR0ZXIsIC41MTI1cmVtLCA0LjAxcmVtKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbnUtY2FyZXQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gICAgICBAaW5jbHVkZSBmbG9hdChyaWdodCk7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4tbGVmdCguMzEyNXJlbSk7XG4gICAgfVxuICAgIHVsLm5hdiA+IGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgPiBhOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIHBhZGRpbmc6IC41MTI1cmVtICRndXR0ZXI7XG4gICAgICAgID4gKiB7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNXMgY3ViaWMtYmV6aWVyKC4zNSwgMCwgLjI1LCAxKTtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAuNXMgY3ViaWMtYmV6aWVyKC4zNSwgMCwgLjI1LCAxKTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjVzIGN1YmljLWJlemllciguMzUsIDAsIC4yNSwgMSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogbWF4LWhlaWdodDtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiBtYXgtaGVpZ2h0O1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBtYXgtaGVpZ2h0O1xuICAgICAgfVxuICAgICAgJi5vcGVuID4gYSA+IC5tZW51LWNhcmV0LFxuICAgICAgbGkub3BlbiA+IGEgPiAubWVudS1jYXJldCB7XG4gICAgICAgIEBpbmNsdWRlIHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgIH1cbiAgICAgICYub3BlbiA+IHVsLFxuICAgICAgbGkub3BlbiA+IHVsIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICAgICAgfVxuICAgICAgJi5vcGVuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMDUpO1xuICAgICAgfVxuICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgfVxuICAgICAgPiAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZy1sZWZ0KCRndXR0ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5zaWRlYmFyLXBhbmVsIHtcbiAgICB6LWluZGV4OiAxMDMwO1xuICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgICA+IC5icmFuZCxcbiAgICA+IC5uYXYtcHJvZmlsZSxcbiAgICA+IG5hdiB7XG4gICAgICBtaW4td2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xuICAgIH1cbiAgfVxuICAvKiBDb2xsYXBzZWQgc2lkZWJhciAqL1xuICAuZXhwYW5kaW5nIHtcbiAgICAuc2lkZWJhci1wYW5lbCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICAgIC5tYWluLXBhbmVsIHtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi1sZWZ0KCRzaWRlYmFyLXNtYWxsLW1lbnUtd2lkdGgpO1xuICAgIH1cbiAgICAuc2lkZWJhci1wYW5lbDpub3QoOmhvdmVyKSB7XG4gICAgICB3aWR0aDogJHNpZGViYXItc21hbGwtbWVudS13aWR0aDtcbiAgICAgID4gLmJyYW5kLFxuICAgICAgPiAubmF2LXByb2ZpbGUsXG4gICAgICA+IG5hdiB7XG4gICAgICAgIG1pbi13aWR0aDogJHNpZGViYXItc21hbGwtbWVudS13aWR0aDtcbiAgICAgIH1cbiAgICAgID4gLmJyYW5kIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC5icmFuZC1sb2dvIHtcbiAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbi1wYWRkaW5nKCRoZWFkZXItaGVpZ2h0LXB4LCA0MHB4KTtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5uYXYtcHJvZmlsZSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgJi5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC51c2VyLWltYWdlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMCFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnNtYWxsLW1lbnUtaGlkZGVuLFxuICAgICAgLm5hdi10aXRsZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgICAuZXhwYW5kaW5nLXZpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgICAuZXhwYW5kaW5nLWhpZGRlbixcbiAgICAgIC5zdWItbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB9XG4gICAgICA+IG5hdiB7XG4gICAgICAgID4gdWwgPiBsaSB7XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gYSA+IHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gIC5zaWRlYmFyLXBhbmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbn1cblxuXG4vKiBkZWZhdWx0IHNpZGViYXIgc2tpbiAqL1xuXG5AaW5jbHVkZSBzaWRlYmFyLXZhcmlhbnQoJHNpZGViYXItc2tpbi1iYWNrZ3JvdW5kLCAkc2lkZWJhci1za2luLWNvbG9yLCAkc2lkZWJhci1za2luLWhvdmVyLCAkc2lkZWJhci1za2luLWJyYW5kLWJhY2tncm91bmQsICRzaWRlYmFyLXNraW4tYnJhbmQtY29sb3IpO1xuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTQ0cHgsIG1kOiA3NjhweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NDRweCwgbWQ6IDc2OHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NDRweCwgbWQ6IDc2OHB4KSlcbi8vICAgIDU0NHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjEuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU0NHB4LCBtZDogNzY4cHgpKVxuLy8gICAgNzY3cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIDFweCwgbnVsbCk7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBTaWRlYmFyIHNraW4gZ2VuZXJhdG9yXG5AbWl4aW4gc2lkZWJhci12YXJpYW50KCRiYWNrZ3JvdW5kLCAkY29sb3IsICRob3Zlci1hY3RpdmUtY29sb3IsICRicmFuZC1iYWNrZ3JvdW5kLCAkYnJhbmQtY29sb3IpIHtcbiAgLnNpZGViYXItcGFuZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgID4gLmJyYW5kIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1iYWNrZ3JvdW5kO1xuICAgICAgPiBhIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogbGlnaHRlbigkYnJhbmQtY29sb3IsIDUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubmF2LXByb2ZpbGUgPiAuZHJvcGRvd24tdG9nZ2xlLFxuICAgIC5uYXYtdGl0bGUge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gICAgPiBuYXYge1xuICAgICAgPiB1bCA+IGxpID4gYTpob3ZlcixcbiAgICAgID4gdWwgPiBsaS5vcGVuID4gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMyUpO1xuICAgICAgfVxuICAgICAgbGkub3BlbiA+IGEsXG4gICAgICBsaS5hY3RpdmUgPiBhIHtcbiAgICAgICAgY29sb3I6ICRob3Zlci1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgICA+IHVsID4gbGkub3BlbjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBAaW5jbHVkZSBsZWZ0KDApO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICRob3Zlci1hY3RpdmUtY29sb3IhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEhlYWRlciBza2luIGdlbmVyYXRvclxuQG1peGluIGhlYWRlci12YXJpYW50KCRiYWNrZ3JvdW5kLCAkY29sb3IsICRob3Zlci1hY3RpdmUtY29sb3IpIHtcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIC5uYXZiYXItbmF2IC5uYXYtbGluay5kcm9wZG93biA+IGEsXG4gICAgLm5hdiA+IGxpID4gYSxcbiAgICAubmF2YmFyLWhlYWRpbmcsXG4gICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNlYXJjaC1mb3JtID4gaW5wdXQge1xuICAgICAgJjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWFyY2gtZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgICAubmF2ID4gbGkgPiBhOmhvdmVyLFxuICAgIC5uYXYgPiBsaSA+IGE6Zm9jdXMsXG4gICAgLm5hdiAub3BlbiA+IGEsXG4gICAgLm5hdiAub3BlbiA+IGE6aG92ZXIsXG4gICAgLm5hdiAub3BlbiA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRob3Zlci1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvKiAkaGVhZGVyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSxcbi5tYWluLXBhbmVsID4gLmhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlcjtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgQGluY2x1ZGUgcm91bmRlZCgwKTtcbiAgLyogRWxlbWVudCBhbGlnbm1lbnRzICovXG4gIC5oZWFkZXItaW5uZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgZmxleGJveDtcbiAgfVxuICAubmF2YmFyLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSBmbGV4LWdyb3coMCk7XG4gICAgQGluY2x1ZGUgZmxleC1zaHJpbmsoMCk7XG4gICAgQGluY2x1ZGUgZmxleC1iYXNpcyhhdXRvKTtcbiAgICAvL0BpbmNsdWRlIGZsZXgoMCAwIGF1dG8pO1xuICB9XG4gIC5uYXZiYXItc3BhY2VyLXJpZ2h0IHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyb3coMSk7XG4gICAgQGluY2x1ZGUgZmxleC1zaHJpbmsoMSk7XG4gICAgQGluY2x1ZGUgZmxleC1iYXNpcygwKTtcbiAgICAvL0BpbmNsdWRlIGZsZXgoMSAxIDApO1xuICAgIHRyYW5zaXRpb246IGZsZXggJHRyYW5zaXRpb24tZHVyYXRpb24sIHdpZHRoICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICB9XG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLm5hdi1saW5rLmRyb3Bkb3duID4gYSB7XG4gICAgICBsaW5lLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduLXBhZGRpbmcoJGhlYWRlci1oZWlnaHQsIDEuODc1cmVtKTtcbiAgfVxuICAubmF2YmFyLXRleHQge1xuICAgIG1hcmdpbi1yaWdodDogJHBhZGRpbmctYmFzZTtcbiAgICBtYXJnaW4tbGVmdDogJHBhZGRpbmctYmFzZTtcbiAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbigkaGVhZGVyLWhlaWdodCwgMS4xODhyZW0pO1xuICB9XG4gIC5uYXZiYXItaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCRoZWFkZXItaGVpZ2h0LCAxLjYyNXJlbSk7XG4gICAgQGluY2x1ZGUgbWFyZ2luLXJpZ2h0KCRwYWRkaW5nLWJhc2UpO1xuICB9XG4gIC5uYXZiYXItYnRuIHtcbiAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbigkaGVhZGVyLWhlaWdodCwgMi4xMjVyZW0pO1xuICB9XG4gIC5idG4tbGcubmF2YmFyLWJ0biB7XG4gICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oJGhlYWRlci1oZWlnaHQsIDIuODEzcmVtKTtcbiAgfVxuICAuYnRuLXNtLm5hdmJhci1idG4ge1xuICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCRoZWFkZXItaGVpZ2h0LCAxLjg3NXJlbSk7XG4gIH1cbiAgLmJ0bi14cy5uYXZiYXItYnRuIHtcbiAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbigkaGVhZGVyLWhlaWdodCwgMS4zNzVyZW0pO1xuICB9XG4gIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAubmF2YmFyLW5hdiB7XG4gICAgbWFyZ2luOiAwO1xuICAgID4gbGkgPiBhIHtcbiAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduLXBhZGRpbmcoJGhlYWRlci1oZWlnaHQsIDEuMTg4cmVtKTtcbiAgICB9XG4gICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICA+ICoge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgICAgPiAubGFiZWwge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgLjM3NXJlbSAuNzVyZW0gdHJhbnNwYXJlbnRpemUoYmxhY2ssIC45KSk7XG4gICAgICAmLm5vdGlmaWNhdGlvbnMge1xuICAgICAgICBtaW4td2lkdGg6IDM2MHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIC5ub3RpZmljYXRpb24tZm9vdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGVmYXVsdDtcbiAgICAgICAgfVxuICAgICAgICAuZHJvcGRvd24taXRlbTpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm5hdmJhci1zZWFyY2gge1xuICAgIHRyYW5zaXRpb246IGZsZXggJHRyYW5zaXRpb24tZHVyYXRpb24sIHdpZHRoICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIC5zZWFyY2gtZm9ybSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4xKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCRoZWFkZXItaGVpZ2h0LCAyLjI1cmVtKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICBtYXJnaW4tbGVmdDogJHBhZGRpbmctYmFzZTtcbiAgICAgIG1hcmdpbi1yaWdodDogJHBhZGRpbmctYmFzZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICBwYWRkaW5nOiAuNTM1cmVtIC43NXJlbTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgY3Vyc29yOiB0ZXh0O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDMwcHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG59XG5cbi5tYWluLXBhbmVsID4gLmhlYWRlciAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnkge1xuICAubmF2ID4gbGkgPiBhOmhvdmVyLFxuICAubmF2ID4gbGkgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlci1zZWNvbmRhcnksXG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciB7XG4gICAgLnNlYXJjaC1mb2N1cywgLnNlYXJjaC1mb2N1cy1hY3RpdmUge1xuICAgICAgLm5hdmJhci1zcGFjZXItcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyb3coMCk7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtc2hyaW5rKDApO1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWJhc2lzKGF1dG8pO1xuICAgICAgICAvL0BpbmNsdWRlIGZsZXgoMCAwIGF1dG8pO1xuICAgICAgfVxuICAgICAgLm5hdmJhci1zZWFyY2gge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyb3coMSk7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtc2hyaW5rKDEpO1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWJhc2lzKDEpO1xuICAgICAgICAvL0BpbmNsdWRlIGZsZXgoMSAxIDApO1xuICAgICAgICAuc2VhcmNoLWZvcm0ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMSk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgfVxuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQhaW1wb3J0YW50O1xuICAgICAgICAgICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSxcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIHtcbiAgICAubmF2YmFyLXNlYXJjaCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjVzIGN1YmljLWJlemllciguMzUsIDAsIC4yNSwgMSk7XG4gICAgLW1vei10cmFuc2l0aW9uOiAuNXMgY3ViaWMtYmV6aWVyKC4zNSwgMCwgLjI1LCAxKTtcbiAgICB0cmFuc2l0aW9uOiAuNXMgY3ViaWMtYmV6aWVyKC4zNSwgMCwgLjI1LCAxKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IG1heC1oZWlnaHQ7XG4gICAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiBtYXgtaGVpZ2h0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG1heC1oZWlnaHQ7XG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nLWJhc2U7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmctYmFzZTtcbiAgICB9XG4gIH1cbiAgLm9mZnNjcmVlbiAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXgtaGVpZ2h0OiAyMDAwcHg7XG4gIH1cbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyLXNlY29uZGFyeSB7XG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5uYXZiYXItbmF2IC5uYXYtaXRlbSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgLm5hdi1saW5rLFxuICAgICAgLm5hdi1saW5rLmRyb3Bkb3duID4gYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgICsgLm5hdi1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luLWxlZnQoMCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgLm1haW4tcGFuZWwgPiAuaGVhZGVyIHtcbiAgICAuZHJvcGRvd24ge1xuICAgICAgcG9zaXRpb246IHN0YXRpYyFpbXBvcnRhbnQ7XG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDAgJHBhZGRpbmctYmFzZTtcbiAgICAgICAgJi5ub3RpZmljYXRpb25zIHtcbiAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogJHBhZGRpbmctYmFzZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLyogZGVmYXVsdCBoZWFkZXIgc2tpbiAqL1xuXG5AaW5jbHVkZSBoZWFkZXItdmFyaWFudCgkaGVhZGVyLXNraW4tYmFja2dyb3VuZCwgJGhlYWRlci1za2luLWNvbG9yLCAkaGVhZGVyLXNraW4taG92ZXIpO1xuIiwiJGVuYWJsZS1mbGV4OiAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG5cbiRncmlkLWd1dHRlci13aWR0aDogJGd1dHRlcjtcbiRoZWFkZXItZm9vdGVyLWhlaWdodDogKCRoZWFkZXItaGVpZ2h0ICsgJGZvb3Rlci1oZWlnaHQpO1xuJGZvbnRhd2Vzb21lLWZhbWlseS1pY29uOiAgICAgICBGb250QXdlc29tZTtcbiR0aW1lbGluZS1ib3JkZXItY29sb3I6ICAgICAgICAgICNmZmZmZmY7XG4vLyBCb290c3RyYXAgdmFyaWFibGVzLi4uIEZvciBtb3JlIGluZm9ybWF0aW9uIHJlZmVyIHRvIHRoZSB2YXJpYWJsZXMubGVzcyBmaWxlIHRoYXQgY29tZXMgd2l0aCBCb290c3RyYXAgM1xuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyO1xuJGdyYXktYmFzZTogICAgICAgICAgICAgICAgICAgICAjMDAwO1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKTsgLy8gIzIyMlxuJGdyYXktZGFyazogICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSk7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKTsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjclKTsgLy8gIzc3N1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKTsgLy8gI2VlZVxuXG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMzgpKTtcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC45KSk7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgICAgMS41Mzg0NjE1Mzg0NjE1NDtcbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSk7XG5cbiRwYWRkaW5nLWJhc2U6ICAgICAgICAgICAgICAgICAgMXJlbTtcbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICAgICAgMC4zNzVyZW07XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgICAgICRwYWRkaW5nLWJhc2U7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAgICAgMC42MjVyZW07XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgICAgIDFyZW07XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICAgICAgMC4zMTI1cmVtO1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogICAgICAwLjYyNXJlbTtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgICAgICAwLjA2MjVyZW07XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgICAgIDAuMzEyNXJlbTtcblxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAxLjMzO1xuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAxLjU7XG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgMC4zMTI1cmVtO1xuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICAwLjI1cmVtO1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgbGlnaHRlbigkYm9yZGVyLWNvbG9yLCA2JSk7XG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICR0YWJsZS1iZy1hY2NlbnQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlcjtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGJvcmRlci1jb2xvcjtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgJHRleHQtY29sb3I7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNlMmUxZTE7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgIHdoaXRlO1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICAkYnRuLXByaW1hcnktYmc7XG5cbiRidG4tc2Vjb25kYXJ5LWNvbG9yOiAgICAgICAgICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1zZWNvbmRhcnktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tc2Vjb25kYXJ5LWJvcmRlcjogICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgIHdoaXRlO1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3M7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICAkYnRuLXN1Y2Nlc3MtYmc7XG5cbiRidG4td2FybmluZy1jb2xvcjogICAgICAgICAgICAgIHdoaXRlO1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmc7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICAkYnRuLXdhcm5pbmctYmc7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgIHdoaXRlO1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlcjtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgICRidG4tZGFuZ2VyLWJnO1xuXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICB3aGl0ZTtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvO1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgJGJ0bi1pbmZvLWJnO1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICBkYXJrZW4od2hpdGUsIDUwJSk7O1xuXG4kaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI6ICAgICAgICBsaWdodGVuKCR0ZXh0LWNvbG9yLCAxNSUpO1xuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGJvcmRlci1jb2xvcjtcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXByaW1hcnksIDEyJSk7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICBsaWdodGVuKCRpbnB1dC1ib3JkZXIsIDElKTtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXI7XG5cbiRkcm9wZG93bi1ib3JkZXI6ICAgICAgICAgICAgICAgICRib3JkZXItY29sb3I7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICBkYXJrZW4oJGRyb3Bkb3duLWJvcmRlciwgNSUpO1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgbGlnaHRlbigkZHJvcGRvd24tYm9yZGVyLCA4JSk7XG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkdGV4dC1jb2xvcjtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgIHdoaXRlO1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuXG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAkYm9yZGVyLWNvbG9yO1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgbGlnaHRlbigkYm9yZGVyLWNvbG9yLCA1JSk7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgIHdoaXRlO1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgICdcXGYxMDUnO1xuXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudGl6ZShibGFjaywgMC40KTtcbiR0b29sdGlwLXJhZGl1czogICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR0ZXh0LWNvbG9yO1xuXG4kcG9wb3Zlci1oZWFkZXI6ICAgICAgICAgICAgICAgICAjRkFGQkZEO1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgI0M0RDFERjtcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgICAgd2hpdGU7XG4kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAgICBsaWdodGVuKCRib3JkZXItY29sb3IsIDMlKTtcbiRwYW5lbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2U7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAgICAjZmNmY2ZjO1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAgICAkdGV4dC1jb2xvcjtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICRicmFuZC1kZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZzogICAgICAgJGJyYW5kLWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICAgIHdoaXRlO1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeTtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgJGJyYW5kLXdoaXRlO1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3M7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAgICAkYnJhbmQtc3VjY2VzcztcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgJGJyYW5kLXdoaXRlO1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgJGJyYW5kLXdhcm5pbmc7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAgICAkYnJhbmQtd2FybmluZztcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgJGJyYW5kLXdoaXRlO1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgJGJyYW5kLWRhbmdlcjtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICAgICRicmFuZC1kYW5nZXI7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICRicmFuZC13aGl0ZTtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICRicmFuZC1pbmZvO1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgICAgJGJyYW5kLWluZm87XG5cbiRhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2U7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAkZm9udC13ZWlnaHQtYm9sZDtcblxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtc3VjY2VzcywgMzAlKTtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgIGRhcmtlbigkYnJhbmQtc3VjY2VzcywgMjAlKTtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbigkYWxlcnQtc3VjY2Vzcy1iZywgMyUpO1xuXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAgICBsaWdodGVuKCRicmFuZC1pbmZvLCAzMCUpO1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgICAgZGFya2VuKCRicmFuZC1pbmZvLCAyMCUpO1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRhbGVydC1pbmZvLWJnLCAzJSk7XG5cbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXdhcm5pbmcsIDI1JSk7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAgICBkYXJrZW4oJGJyYW5kLXdhcm5pbmcsIDE1JSk7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oJGFsZXJ0LXdhcm5pbmctYmcsIDMlKTtcblxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtZGFuZ2VyLCAzMCUpO1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgZGFya2VuKCRicmFuZC1kYW5nZXIsIDIwJSk7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJGFsZXJ0LWRhbmdlci1iZywgMyUpO1xuXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAgICAkYnJhbmQtZGVmYXVsdDtcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5O1xuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3M7XG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbztcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nO1xuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlcjtcbiRsYWJlbC13aGl0ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC13aGl0ZTtcblxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgd2hpdGU7XG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAgICB3aGl0ZTtcblxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgJGJvcmRlci1jb2xvcjtcblxuJHppbmRleC1oZWFkZXI6ICAgICAgICAgICAgICAgICAgMTAyMDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgIDEwMDA7XG4kemluZGV4LWJyYW5kLXNtOiAgICAgICAgICAgICAgICAxMDIwO1xuJHppbmRleC1zaWRlYmFyLXBhbmVsOiAgICAgICAgICAgMTA1MDtcbiR6aW5kZXgtY2hhdDogICAgICAgICAgICAgICAgICAgIDExMDA7XG4kemluZGV4LXN1Yi1tZW51OiAgICAgICAgICAgICAgICAxMDAwO1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgMjAyMDtcbiR6aW5kZXgtcG9wdXA6ICAgICAgICAgICAgICAgICAgICR6aW5kZXgtbW9kYWw7XG4kemluZGV4LXByZWxvYWRlcjogICAgICAgICAgICAgICAzMDAwO1xuXG4vLyBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGFuZCBtYXhpbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIC8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4gIHhzOiAwLFxuICAvLyBTbWFsbCBzY3JlZW4gLyBwaG9uZVxuICBzbTogNTQ0cHgsXG4gIC8vIE1lZGl1bSBzY3JlZW4gLyB0YWJsZXRcbiAgbWQ6IDc2OHB4LFxuICAvLyBMYXJnZSBzY3JlZW4gLyBkZXNrdG9wXG4gIGxnOiA5OTJweCxcbiAgLy8gRXh0cmEgbGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTQwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbiIsIi8qICRicmFuZFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5icmFuZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAudG9nZ2xlLW9mZnNjcmVlbiB7XG4gICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24tcGFkZGluZygkaGVhZGVyLWhlaWdodC1weCwgMjRweCk7XG4gICAgQGluY2x1ZGUgZmxvYXQobGVmdCk7XG4gICAgQGluY2x1ZGUgbWFyZ2luLXJpZ2h0KDFyZW0pO1xuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuICAuYnJhbmQtbG9nbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduLXBhZGRpbmcoJGhlYWRlci1oZWlnaHQtcHgsIDE2cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICAgIGltZyB7XG4gICAgICBtYXgtaGVpZ2h0OiAxNnB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2lkZWJhci1wYW5lbCAuYnJhbmQge1xuICBtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1weDtcbiAgQGluY2x1ZGUgcGFkZGluZy1sZWZ0KCRndXR0ZXIpO1xuICBAaW5jbHVkZSBwYWRkaW5nLXJpZ2h0KCRndXR0ZXIpO1xufSIsIi8qICRtYWluLXBhbmVsXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLm1haW4tcGFuZWwge1xuICBiYWNrZ3JvdW5kOiAkbWFpbi1wYW5lbC1iZztcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgQGluY2x1ZGUgZmxleGJveDtcbiAgQGluY2x1ZGUgZmxleCgxKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICA+IC5tYWluLWNvbnRlbnQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICBAaW5jbHVkZSBmbGV4Ym94O1xuICAgIEBpbmNsdWRlIGZsZXgoMSk7XG4gICAgPiAuY29udGVudC12aWV3IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBwYWRkaW5nOiAkZ3V0dGVyO1xuICAgICAgQGluY2x1ZGUgZmxleCgxIDAgYXV0byk7XG4gICAgfVxuICB9XG59XG5cbi5uby1wYWRkaW5nIC5jb250ZW50LXZpZXcge1xuICBwYWRkaW5nOiAwIWltcG9ydGFudDtcbn1cblxuXG4vKk1hcmdpbnMqL1xuXG4ucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAoJGd1dHRlciAvIC0yKTtcbiAgbWFyZ2luLWxlZnQ6ICgkZ3V0dGVyIC8gLTIpO1xufVxuXG5AbWl4aW4gZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgfVxufVxuXG5AaW5jbHVkZSBncmlkLWNvbHVtbnMoKTtcbiIsIi8qICRmb290ZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uY29udGVudC1mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAkZm9vdGVyLWhlaWdodDtcbiAgcGFkZGluZzogMCAkZ3V0dGVyO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAuZm9vdGVyLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZy1iYXNlO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmctYmFzZTtcbiAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbigkZm9vdGVyLWhlaWdodCwgMS4xODhyZW0pO1xuICAgIEBpbmNsdWRlIGZsb2F0KGxlZnQpO1xuICAgICYuc21hbGwge1xuICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oJGZvb3Rlci1oZWlnaHQsIC45Mzc1cmVtKTtcbiAgICB9XG4gIH1cbiAgLmZvb3Rlci1yaWdodCB7XG4gICAgQGluY2x1ZGUgZmxvYXQocmlnaHQpO1xuICAgIEBpbmNsdWRlIG1hcmdpbi1yaWdodCgwKTtcbiAgfVxuICBuYXYge1xuICAgIEBpbmNsdWRlIG1hcmdpbi1yaWdodCgkcGFkZGluZy1iYXNlKTtcbiAgfVxuICBuYXYgdWwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IC13ZWJraXQtYmFzZWxpbmUtbWlkZGxlO1xuICAgICAgYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LWhlaWdodDogJGZvb3Rlci1oZWlnaHQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogLjYyNXJlbTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbi1wYWRkaW5nKCRmb290ZXItaGVpZ2h0LCAxLjE4OHJlbSk7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDUlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbi1sZWZ0KDApO1xuICAgICAgICBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBwYWRkaW5nLWxlZnQoMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgbGk6aG92ZXIsXG4gIGxpIGE6aG92ZXIsXG4gIGxpIGE6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4uc2Vzc2lvbi1mb290ZXIge1xuICBwYWRkaW5nOiAwIDRyZW07XG59XG5cbi5uby1mb290ZXIgLmNvbnRlbnQtZm9vdGVyLFxuLm5vLWZvb3RlciAuc2Vzc2lvbi1mb290ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvKiAkY2hhdC1wYW5lbFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5jaGF0LXBhbmVsIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSk7XG4gIH1cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRoZWFkZXItaGVpZ2h0LXB4fSk7XG4gIH1cbn1cblxuLmNoYXQtcGFuZWwsXG4uY2hhdC1tZXNzYWdlIHtcbiAgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6ICRndXR0ZXIvMiAwO1xuICB9XG4gIC5jaGF0LWlubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLmNoYXQtaGVhZGVyIHtcbiAgICBtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1weDtcbiAgICBwYWRkaW5nOiAwICRndXR0ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUoYmxhY2ssIC45NSk7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICAuY2hhdC1oZWFkZXItdGl0bGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24tcGFkZGluZygkaGVhZGVyLWhlaWdodCwgMS4wNjNyZW0pO1xuICAgIH1cbiAgICAuY2hhdC1jb252ZXJzYXRpb24tdGl0bGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24tcGFkZGluZygkaGVhZGVyLWhlaWdodCwgMi4zNzVyZW0pO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICA+IGEsXG4gICAgPiAuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24tcGFkZGluZygkaGVhZGVyLWhlaWdodCwgMS42ODhyZW0pO1xuICAgIH1cbiAgICA+IC5kcm9wZG93biA+IGE6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5jaGF0LXJpZ2h0LFxuICAgIC5jaGF0LWJhY2sge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYm9yZGVyOiAuMDYyNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctbGVmdCgkcGFkZGluZy1iYXNlKTtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctcmlnaHQoJHBhZGRpbmctYmFzZSk7XG4gICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbi1wYWRkaW5nKCRoZWFkZXItaGVpZ2h0LCAxLjQzOHJlbSk7XG4gICAgfVxuICAgIC5jaGF0LXJpZ2h0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIEBpbmNsdWRlIHJpZ2h0KDApO1xuICAgIH1cbiAgICAuY2hhdC1iYWNrIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgdGV4dC1zaGFkb3c6IDAgLjA2MjVyZW0gMCB3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGxlZnQoMCk7XG4gICAgICBAaW5jbHVkZSBvcGFjaXR5KC40KTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNoYXQtbWVzc2FnZSB7XG4gIC8vZGlzcGxheTogYmxvY2s7XG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpO1xuICAgIHBhZGRpbmc6ICRndXR0ZXIvMjtcbiAgfVxuICAubW9kYWwtY29udGVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5jaGF0LWJhY2tkcm9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLmNoYXQtbWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpO1xufVxuXG4uY2hhdC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLWJhc2U7XG4gIC5jaGF0LWdyb3VwLWhlYWRlciB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5jaGF0LWdyb3VwLWhlYWRlcixcbiAgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IC42MTI1cmVtICRndXR0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxuICAuc3RhdHVzLW9ubGluZSxcbiAgLnN0YXR1cy1hd2F5LFxuICAuc3RhdHVzLW5vLWRpc3R1cmIsXG4gIC5zdGF0dXMtaW52aXNpYmxlLFxuICAuc3RhdHVzLW9mZmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRlZmF1bHQ7XG4gICAgQGluY2x1ZGUgbWFyZ2luLXJpZ2h0KC4zMTI1cmVtKTtcbiAgICBAaW5jbHVkZSByb3VuZGVkKDVweCk7XG4gIH1cbiAgLnN0YXR1cy1vbmxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICB9XG4gIC5zdGF0dXMtYXdheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gIH1cbiAgLnN0YXR1cy1uby1kaXN0dXJiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICB9XG4gIC5zdGF0dXMtaW52aXNpYmxlLFxuICAuc3RhdHVzLW9mZmxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kZWZhdWx0O1xuICB9XG59XG5cbi5jaGF0LWNvbnZlcnNhdGlvbi1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICRoZWFkZXItaGVpZ2h0O1xuICByaWdodDogMDtcbiAgYm90dG9tOiAkaGVhZGVyLWhlaWdodDtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlO1xufVxuXG4uY2hhdC1jb252ZXJzYXRpb24tZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG5cbi5jaGF0LWNvbnZlcnNhdGlvbi11c2VyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIHBhZGRpbmc6IDAgNHJlbTtcbiAgQGluY2x1ZGUgZmxleGJveDtcbn1cblxuLm1lIHtcbiAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KGZsZXgtZW5kKTtcbn1cblxuLm1lIC5jaGF0LWNvbnZlcnNhdGlvbi1hdmF0YXIge1xuICBAaW5jbHVkZSBtYXJnaW4tbGVmdCgkcGFkZGluZy1iYXNlKTtcbiAgQGluY2x1ZGUgb3JkZXIoMik7XG59XG5cbi5tZSAuY2hhdC1jb252ZXJzYXRpb24tbWVzc2FnZSB7XG4gIEBpbmNsdWRlIG9yZGVyKDEpO1xufVxuXG4ubWUgLmNoYXQtY29udmVyc2F0aW9uLW1lc3NhZ2U6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXI6IDVweCBzb2xpZCAkYnJhbmQtaW5mbztcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIHJpZ2h0KC03cHgpO1xufVxuXG4udGhlbSAuY2hhdC1jb252ZXJzYXRpb24tYXZhdGFyIHtcbiAgQGluY2x1ZGUgbWFyZ2luLXJpZ2h0KCRwYWRkaW5nLWJhc2UpO1xufVxuXG4udGhlbSAuY2hhdC1jb252ZXJzYXRpb24tbWVzc2FnZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlcjogNXB4IHNvbGlkICRicmFuZC1kZWZhdWx0O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgbGVmdCgtN3B4KTtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtY29sb3IodHJhbnNwYXJlbnQpO1xufVxuXG4uY2hhdC1jb252ZXJzYXRpb24tYXZhdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMzZweDtcbiAgQGluY2x1ZGUgZmxleC1zaHJpbmsoMCk7XG4gIEBpbmNsdWRlIGZsZXgtZ3JvdygwKTtcbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB9XG59XG5cbi5jaGF0LWNvbnZlcnNhdGlvbi1tZXNzYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAuNjI1cmVtICRwYWRkaW5nLWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kZWZhdWx0O1xuICBAaW5jbHVkZSByb3VuZGVkKDRweCk7XG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uY2hhdC1jb252ZXJzYXRpb24tdXNlci5tZSAuY2hhdC1jb252ZXJzYXRpb24tbWVzc2FnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWluZm87XG4gIEBpbmNsdWRlIGZsb2F0KHJpZ2h0KTtcbiAgcCB7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG59XG5cbi5jaGF0LWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAzcmVtO1xuICBsZWZ0OiAzcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gIHJlc2l6ZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbi1wYWRkaW5nKCRmb290ZXItaGVpZ2h0LCAxcmVtKTtcbiAgQGluY2x1ZGUgcm91bmRlZCgwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLmNoYXQtaW5wdXQ6ZW1wdHk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdTZW5kIGEgbWVzc2FnZSc7XG59XG5cbi5jaGF0LWlucHV0OmZvY3VzOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbn1cblxuLmNoYXQtbGVmdCB7XG4gIHBhZGRpbmc6IC42MjVyZW0gJHBhZGRpbmctYmFzZTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCRmb290ZXItaGVpZ2h0LCAyLjU2M3JlbSk7XG4gIEBpbmNsdWRlIGZsb2F0KGxlZnQpO1xufVxuXG4uY2hhdC1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogLjYyNXJlbSAkcGFkZGluZy1iYXNlO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbigkZm9vdGVyLWhlaWdodCwgMi41NjNyZW0pO1xuICBAaW5jbHVkZSBmbG9hdChyaWdodCk7XG59XG5cbi5jaGF0LXNlbmQgPiBpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuIiwiLyogJG9mZnNjcmVlbi1tZW51XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpO1xufVxuXG4ub2ZmY2FudmFzIHtcbiAgLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxuICAuc2lkZWJhci1wYW5lbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoLW1vYmlsZTtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgJi5vZmZzY3JlZW4tcmlnaHQge1xuICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgfVxuICB9XG4gIC5tYWluLXBhbmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfVxuICAubWFpbi1wYW5lbCxcbiAgLnNpZGViYXItcGFuZWwge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguNywgMCwgLjMsIDEpO1xuICB9XG4gIC5oZWFkZXIgLmJyYW5kLFxuICAudG9nZ2xlLW9mZnNjcmVlbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudDtcbiAgfVxuICAubmF2YmFyLWhlYWRpbmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gICYub2Zmc2NyZWVuIHtcbiAgICAub2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gICAgLnNpZGViYXItcGFuZWwge1xuICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuICB9XG4gICYubW92ZS1yaWdodCAuc2lkZWJhci1wYW5lbCA+IG5hdiB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLm9mZmNhbnZhcy5mdWxsLXdpZHRoIC5tYWluLXBhbmVsID4gLm1haW4tY29udGVudCA+IC5jb250ZW50LXZpZXcsXG4uZnVsbC13aWR0aCAuaGVhZGVyLXNlY29uZGFyeSArIC5tYWluLWNvbnRlbnQgPiAuY29udGVudC12aWV3ICB7XG4gIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAub2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC41KSFpbXBvcnRhbnQ7XG4gIH1cbiAgLm9mZmNhbnZhcyAubWFpbi1wYW5lbCA+IC5tYWluLWNvbnRlbnQgPiAuY29udGVudC12aWV3LFxuICAuaGVhZGVyLXNlY29uZGFyeSArIC5tYWluLWNvbnRlbnQgPiAuY29udGVudC12aWV3IHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuNSkhaW1wb3J0YW50O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAqIHtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnNpZGViYXItcGFuZWwge1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoLW1vYmlsZTtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgJi5vZmZzY3JlZW4tcmlnaHQge1xuICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgfVxuICB9XG4gIC5tYWluLXBhbmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfVxuICAubWFpbi1wYW5lbCxcbiAgLnNpZGViYXItcGFuZWwgLmJyYW5kIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc2lkZWJhci1wYW5lbCAuYnJhbmQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG4gIC5tYWluLXBhbmVsLFxuICAuc2lkZWJhci1wYW5lbCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguNywgMCwgLjMsIDEpO1xuICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gIH1cbiAgLm9mZnNjcmVlbiB7XG4gICAgLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuICAgIC5zaWRlYmFyLXBhbmVsIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbiAgfVxuICAubW92ZS1yaWdodCAuc2lkZWJhci1wYW5lbCA+IG5hdiB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8qICRXaWRnZXRcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qTm90aWZpY2F0aW9ucyovXG5cbkBtaXhpbiBub3RpZmljYXRpb24oJGNvbG9yKSB7XG4gIC5ub3RpZmljYXRpb24tYmFyLWljb24gaSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi5ub3RpZmljYXRpb24tYmFyLWljb24sXG4ubm90aWZpY2F0aW9uLWJhci1kZXRhaWxzIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgZmxvYXQ6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5ub3RpZmljYXRpb24tYmFyLWljb24ge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBkaXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDEuODc1cmVtO1xuICAgIGhlaWdodDogMS44NzVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICAgIEBpbmNsdWRlIGxlZnQoNTAlKTtcbiAgICBAaW5jbHVkZSBtYXJnaW4oLS45Mzc1cmVtLCAwLCAwLCAtLjkzNzVyZW0pO1xuICB9XG59XG5cbi5ub3RpZmljYXRpb24tYmFyLWRldGFpbHMge1xuICBAaW5jbHVkZSBwYWRkaW5nLWxlZnQoLjlyZW0pO1xuICAubm90aWZpY2F0aW9uLWJhci10aXRsZSB7XG4gICAgZm9udC1zaXplOiAuODVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLm5vdGlmaWNhdGlvbi1iYXItc3VjY2VzcyB7XG4gIEBpbmNsdWRlIG5vdGlmaWNhdGlvbigkYnJhbmQtc3VjY2Vzcyk7XG59XG5cbi5ub3RpZmljYXRpb24tYmFyLWZhaWwge1xuICBAaW5jbHVkZSBub3RpZmljYXRpb24oJGJyYW5kLWRhbmdlcik7XG59XG5cbi5ub3RpZmljYXRpb24tYmFyLWluZm8ge1xuICBAaW5jbHVkZSBub3RpZmljYXRpb24oJGJyYW5kLWluZm8pO1xufVxuXG4uZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25zIHtcbiAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5ub3RpZmljYXRpb24taWNvbiB7XG4gICAgd2lkdGg6IDJyZW07XG4gIH1cbiAgLm5vdGlmaWNhdGlvbi1tZXNzYWdlIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLWxlZnQoLjYyNXJlbSk7XG4gIH1cbiAgLm5vdGlmaWNhdGlvbnMtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwICRwYWRkaW5nLWJhc2U7XG4gIH1cbiAgLm5vdGlmaWNhdGlvbnMtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgbGkgYSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYzcmVtO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICB9XG4gIC5ub3RpZmljYXRpb24taWNvbixcbiAgLm5vdGlmaWNhdGlvbi1tZXNzYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAudGltZSB7XG4gICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50aXplKCMwMDAsIC41KTtcbiAgfVxuICAuYXZhdGFyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBhOmhvdmVyLFxuICBhOmFjdGl2ZSB7XG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgNSUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIC5ub3RpZmljYXRpb25zLXdyYXBwZXIge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICB9XG4gIC5ub3RpZmljYXRpb25zLWxpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAwICRndXR0ZXI7XG4gICAgfVxuICAgIGxpIGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctYmFzZSAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogLjA2MjVyZW0gc29saWQgI2YxZjFmMTtcbiAgICB9XG4gICAgbGk6bGFzdC1jaGlsZCBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5ub3RpZmljYXRpb24tZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlICRndXR0ZXI7XG4gIH1cbn1cblxuLmNpcmNsZS1pY29uIHtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBmbG9hdChsZWZ0KTtcbiAgQGluY2x1ZGUgcm91bmRlZCg1MCUpO1xuICA+IGkge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG4iLCIvKiAkbGF5b3V0LW9wdGlvbnNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qRmxleCBMYXlvdXQqL1xuXG4ubGF5b3V0LFxuLy8ubGF5b3V0LWNvbHVtbixcbi5sYXlvdXQtcm93IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGZsZXhib3g7XG59XG5cbi5sYXlvdXQtY29sdW1uIHtcbiAgQGluY2x1ZGUgZmxleDtcbiAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbn1cblxuLmxheW91dC1yb3cge1xuICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpO1xuICA+ICoge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZmxleGJveCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIEBpbmNsdWRlIGZsZXhib3g7XG59XG5cbi5mbGV4IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgQGluY2x1ZGUgZmxleCgxKTtcbn1cblxuXG4vKkhlaWdodHMqL1xuLmZ1bGwtaGVpZ2h0IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmZpbGwtY29udGFpbmVyLFxuLnBhZ2UtaGVpZ2h0IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skaGVhZGVyLWZvb3Rlci1oZWlnaHR9KTtcbn1cblxuLmhlYWRlci1zZWNvbmRhcnkgKyAubWFpbi1jb250ZW50ID4gLmNvbnRlbnQtdmlldyB7XG4gIC5maWxsLWNvbnRhaW5lcixcbiAgLnBhZ2UtaGVpZ2h0IHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRoZWFkZXItaGVpZ2h0ICsgJGhlYWRlci1oZWlnaHQgKyAkZm9vdGVyLWhlaWdodH0pO1xuICB9XG59XG5cblxuLypUYWJsZSBlcXVhbCBjb2x1bW5zKi9cblxuLmNvbHVtbi1lcXVhbCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgLmNvbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG59XG5cblxuLypTY3JvbGwqL1xuXG4uc2Nyb2xsLXkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuXG4vKiBGaXhlZCBoZWFkZXIgbGF5b3V0Ki9cblxuLmZpeGVkLWhlYWRlciB7XG4gIC5tYWluLXBhbmVsIHtcbiAgICBvdmVyZmxvdy14OiBpbml0aWFsO1xuICAgIG92ZXJmbG93LXk6IGluaXRpYWw7XG4gIH1cbiAgLm1haW4tY29udGVudCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuXG4vKiBTdGF0aWMgc2lkZWJhciBsYXlvdXQqL1xuLmFwcC5sYXlvdXQtc3RhdGljIHtcbiAgbWF4LWhlaWdodDogaW5pdGlhbCFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xuICBoZWlnaHQ6IGluaXRpYWwhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xufVxuLmFwcC5zdGF0aWMge1xuICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICBoZWlnaHQ6IGluaXRpYWw7XG4gIC5tYWluLXBhbmVsIHtcbiAgICBvdmVyZmxvdy14OiBpbml0aWFsO1xuICAgIG92ZXJmbG93LXk6IGluaXRpYWw7XG4gIH1cbiAgLm1haW4tY29udGVudCB7XG4gICAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG4gIC5jb250YWN0cy1jb250YWluZXIge1xuICAgIGhlaWdodDogaW5pdGlhbCFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZ1bGwtaGVpZ2h0IHtcbiAgICBoZWlnaHQ6IGluaXRpYWxcbiAgfVxuICAuZmlsbC1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgfVxuICAjZ29vZ2xlLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlIWltcG9ydGFudDtcbiAgfVxufVxuXG5cbi8qIEJveGVkIGxheW91dCovXG5cbi5hcHAuYm94ZWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAmLmV4cGFuZGluZyAuc2lkZWJhci1wYW5lbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hcHAuYm94ZWQge1xuICAgIG1heC13aWR0aDogNDYuODhyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYycmVtKSB7XG4gIC5hcHAuYm94ZWQge1xuICAgIG1heC13aWR0aDogNjAuNjNyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc1cmVtKSB7XG4gIC5hcHAuYm94ZWQge1xuICAgIG1heC13aWR0aDogNzMuMTNyZW07XG4gIH1cbn1cbiIsIi8qICRtb2RhbC1wYW5lbFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5zaWRlYmFyLW1vZGFsLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguNywgMCwgLjMsIDEpO1xuICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbn1cblxuLnNpZGViYXItbW9kYWwubW9kYWwuaW4gLm1vZGFsLWRpYWxvZyB7XG4gIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2lkZWJhci1tb2RhbCAubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LWNoYXQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyMHJlbTtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGVmYXVsdDtcbiAgQGluY2x1ZGUgcmlnaHQoMCk7XG4gIC5tb2RhbC1oZWFkZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgfVxuICAubW9kYWwtY29udGVudCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG4iLCIvKiAkYWxlcnRzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmFsZXJ0IHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLmFsZXJ0LXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1zdWNjZXNzLWJnLCAkYWxlcnQtc3VjY2Vzcy1ib3JkZXIsICRhbGVydC1zdWNjZXNzLXRleHQpO1xufVxuXG4uYWxlcnQtaW5mbyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWluZm8tYmcsICRhbGVydC1pbmZvLWJvcmRlciwgJGFsZXJ0LWluZm8tdGV4dCk7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtd2FybmluZy1iZywgJGFsZXJ0LXdhcm5pbmctYm9yZGVyLCAkYWxlcnQtd2FybmluZy10ZXh0KTtcbn1cblxuLmFsZXJ0LWRhbmdlciB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWRhbmdlci1iZywgJGFsZXJ0LWRhbmdlci1ib3JkZXIsICRhbGVydC1kYW5nZXItdGV4dCk7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRib2R5LWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkYm9keS1jb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLyogJGJyZWFkY3J1bWJzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmJyZWFkY3J1bWIge1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICA+IGxpICsgbGk6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250YXdlc29tZS1mYW1pbHktaWNvbjtcbiAgICBjb250ZW50OiAnI3skYnJlYWRjcnVtYi1zZXBhcmF0b3J9JztcbiAgfVxufVxuIiwiLyogJGJ1dHRvbnNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYnRuIHtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgJHRyYW5zaXRpb24tZHVyYXRpb24gbGluZWFyKTtcbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKiBSb3VuZGVkIGJ1dHRvbiBzdHlsZXMgKi9cblxuLmJ0bi1yb3VuZCxcbi5idG4tcm91bmQgYSxcbi5idG4tcm91bmQgLmJ0bixcbi5pbnB1dC1yb3VuZCB7XG4gIEBpbmNsdWRlIHJvdW5kZWQoMi41cmVtKTtcbiAgJjo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSByb3VuZGVkKDIuNXJlbSk7XG4gIH1cbn1cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuLmJ0bi1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kZWZhdWx0LWNvbG9yLCAkYnRuLWRlZmF1bHQtYmcsICRidG4tZGVmYXVsdC1ib3JkZXIpO1xufVxuXG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG5cbi5idG4tc2Vjb25kYXJ5IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zZWNvbmRhcnktY29sb3IsICRidG4tc2Vjb25kYXJ5LWJnLCAkYnRuLXNlY29uZGFyeS1ib3JkZXIpO1xufVxuXG4uYnRuLWluZm8ge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XG59XG5cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cblxuLmJ0bi13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi13YXJuaW5nLWNvbG9yLCAkYnRuLXdhcm5pbmctYmcsICRidG4td2FybmluZy1ib3JkZXIpO1xufVxuXG4uYnRuLWRhbmdlciB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGFuZ2VyLWNvbG9yLCAkYnRuLWRhbmdlci1iZywgJGJ0bi1kYW5nZXItYm9yZGVyKTtcbn1cblxuLy8gUmVtb3ZlIGFsbCBiYWNrZ3JvdW5kc1xuLmJ0bi1kZWZhdWx0LW91dGxpbmUge1xuICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCRidG4tZGVmYXVsdC1iZyk7XG59XG5cbi5idG4tcHJpbWFyeS1vdXRsaW5lIHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLXByaW1hcnktYmcpO1xufVxuXG4uYnRuLXNlY29uZGFyeS1vdXRsaW5lIHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLXNlY29uZGFyeS1ib3JkZXIpO1xufVxuXG4uYnRuLWluZm8tb3V0bGluZSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1pbmZvLWJnKTtcbn1cblxuLmJ0bi1zdWNjZXNzLW91dGxpbmUge1xuICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCRidG4tc3VjY2Vzcy1iZyk7XG59XG5cbi5idG4td2FybmluZy1vdXRsaW5lIHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLXdhcm5pbmctYmcpO1xufVxuXG4uYnRuLWRhbmdlci1vdXRsaW5lIHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLWRhbmdlci1iZyk7XG59XG5cbi5idG4tbGluayB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbn1cblxuXG4vKiBGbG9hdGluIEJ1dHRvbiAqL1xuXG4uYnRuLWZsb2F0IHtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMjtcbiAgYm90dG9tOiAkZ3V0dGVyKjM7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIEBpbmNsdWRlIHJpZ2h0KCRndXR0ZXIpO1xuICA+IC5tYXRlcmlhbC1pY29ucyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgICAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgICAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICAgIC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxNyUpO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgfVxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAyMCUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAyMCUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbn1cbiIsIi8qICRjYXJkc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4kY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuJGNhcmQtc3BhY2VyLXk6ICRndXR0ZXIgLyAyO1xuJGNhcmQtc3BhY2VyLXg6ICRwYWRkaW5nLWJhc2U7XG4uY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgLjA1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA1KTtcbiAgQGluY2x1ZGUgcm91bmRlZCgkY2FyZC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtYmxvY2sge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtKCRjYXJkLXNwYWNlci15IC8gMik7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICArIC5jYXJkLWxpbmsge1xuICAgIEBpbmNsdWRlIG1hcmdpbi1sZWZ0KCRjYXJkLXNwYWNlci14KTtcbiAgfVxufVxuXG4uY2FyZCB7XG4gID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGNhcmQtYm9yZGVyLXJhZGl1cyAkY2FyZC1ib3JkZXItcmFkaXVzIDAgMDtcbiAgICB9XG4gIH1cbiAgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwICRjYXJkLWJvcmRlci1yYWRpdXMgJGNhcmQtYm9yZGVyLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgZm9udC1zaXplOiAuODZyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIHJvdW5kZWQoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lciAkY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLm5vLWJnICsgLmNhcmQtYmxvY2sge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgwIDAgJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lciAkY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyKTtcbiAgfVxufVxuXG4vLyBDYXJkIGltYWdlIGNhcHNcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSByb3VuZGVkKCRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXIgJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lciAwIDApO1xufVxuXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgcm91bmRlZCgwIDAgJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lciAkY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyKTtcbn1cblxuXG4vKkJhY2tncm91bmQgdmFyaWF0aW9ucyovXG5cbi5jYXJkLXByaW1hcnkge1xuICBAaW5jbHVkZSBjYXJkLXZhcmlhbnQoJGJyYW5kLXByaW1hcnksICRicmFuZC1wcmltYXJ5KTtcbn1cblxuLmNhcmQtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGNhcmQtdmFyaWFudCgkYnJhbmQtc3VjY2VzcywgJGJyYW5kLXN1Y2Nlc3MpO1xufVxuXG4uY2FyZC1pbmZvIHtcbiAgQGluY2x1ZGUgY2FyZC12YXJpYW50KCRicmFuZC1pbmZvLCAkYnJhbmQtaW5mbyk7XG59XG5cbi5jYXJkLXdhcm5pbmcge1xuICBAaW5jbHVkZSBjYXJkLXZhcmlhbnQoJGJyYW5kLXdhcm5pbmcsICRicmFuZC13YXJuaW5nKTtcbn1cblxuLmNhcmQtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgY2FyZC12YXJpYW50KCRicmFuZC1kYW5nZXIsICRicmFuZC1kYW5nZXIpO1xufVxuXG5cbi8qUmVtb3ZlIGFsbCBiYWNrZ3JvdW5kcyovXG5cbi5jYXJkLXByaW1hcnktb3V0bGluZSB7XG4gIEBpbmNsdWRlIGNhcmQtb3V0bGluZS12YXJpYW50KCRicmFuZC1wcmltYXJ5KTtcbn1cblxuLmNhcmQtc2Vjb25kYXJ5LW91dGxpbmUge1xuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgjZmZmKTtcbn1cblxuLmNhcmQtaW5mby1vdXRsaW5lIHtcbiAgQGluY2x1ZGUgY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGJyYW5kLWluZm8pO1xufVxuXG4uY2FyZC1zdWNjZXNzLW91dGxpbmUge1xuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnJhbmQtc3VjY2Vzcyk7XG59XG5cbi5jYXJkLXdhcm5pbmctb3V0bGluZSB7XG4gIEBpbmNsdWRlIGNhcmQtb3V0bGluZS12YXJpYW50KCRicmFuZC13YXJuaW5nKTtcbn1cblxuLmNhcmQtZGFuZ2VyLW91dGxpbmUge1xuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnJhbmQtZGFuZ2VyKTtcbn1cblxuLmNhcmQtaW52ZXJzZSAuY2FyZC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuXG4vKkNhcmQgY29udHJvbHMqL1xuXG4uY2FyZC1jb250cm9scyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgQGluY2x1ZGUgcmlnaHQoJHBhZGRpbmctYmFzZSk7XG4gIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIG1hcmdpbi1sZWZ0KC42MjVyZW0pO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgfVxuICAuY2FyZC1jb2xsYXBzZSwuY2FyZC1yZWZyZXNoLCAuY2FyZC1yZW1vdmUge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIEBpbmNsdWRlIHJpZ2h0KCRndXR0ZXIpO1xuICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAvKiBTdXBwb3J0IGZvciBhbGwgV2ViS2l0IGJyb3dzZXJzLiAqL1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAvKiBTdXBwb3J0IGZvciBTYWZhcmkgYW5kIENocm9tZS4gKi9cbiAgICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gICAgICAvKiBTdXBwb3J0IGZvciBGaXJlZm94LiAqL1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIC8qIFN1cHBvcnQgZm9yIElFLiAqL1xuICAgICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gICAgfVxuICB9XG4gIC5jYXJkLWNvbGxhcHNlOjphZnRlciB7XG4gICAgY29udGVudDogJ2Fycm93X2Ryb3BfZG93bic7XG4gIH1cbiAgLmNhcmQtcmVmcmVzaDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdyZWZyZXNoJztcbiAgfVxuICAuY2FyZC1yZW1vdmU6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnY2xvc2UnO1xuICB9XG59XG5cbi5jYXJkLWNvbGxhcHNlZCB7XG4gID4gLmNhcmQtYmxvY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuY2FyZC1oZWFkZXIgLmNhcmQtY29sbGFwc2U6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnYXJyb3dfZHJvcF91cCc7XG4gIH1cbn1cblxuLmNhcmQtcmVmcmVzaGluZzo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSh3aGl0ZSwgLjQpO1xufVxuXG4uY2FyZC1yZWZyZXNoaW5nOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGNvbnRlbnQ6ICcnO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stcHVsc2VTY2FsZU91dCAxcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay1wdWxzZVNjYWxlT3V0IDFzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgQGluY2x1ZGUgbGVmdCg1MCUpO1xuICBAaW5jbHVkZSBtYXJnaW4oLTEwcHgsIDAsIDAsIC0xMHB4KTtcbn1cbiIsIi8vIENhcmQgdmFyaWFudHNcblxuQG1peGluIGNhcmQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xufVxuXG5AbWl4aW4gY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cblxuLy9cbi8vIEludmVyc2UgdGV4dCB3aXRoaW4gYSBjYXJkIGZvciB1c2Ugd2l0aCBkYXJrIGJhY2tncm91bmRzXG4vL1xuXG5AbWl4aW4gY2FyZC1pbnZlcnNlIHtcbiAgLmNhcmQtaGVhZGVyLFxuICAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtcbiAgfVxuICAuY2FyZC1oZWFkZXIsXG4gIC5jYXJkLWZvb3RlcixcbiAgLmNhcmQtdGl0bGUsXG4gIC5jYXJkLWJsb2NrcXVvdGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5jYXJkLWxpbmssXG4gIC5jYXJkLXRleHQsXG4gIC5jYXJkLWJsb2NrcXVvdGUgPiBmb290ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC42NSk7XG4gIH1cbiAgLmNhcmQtbGluayB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRjYXJkLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvKiAkZHJvcGRvd25cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmRyb3Bkb3duLW1lbnUge1xuICBib3JkZXItY29sb3I6ICRkcm9wZG93bi1ib3JkZXI7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgLjA3KSAwIDJweCA1cHggMCwgcmdiYSgwLCAwLCAwLCAuMDgpIDAgMnB4IDEwcHggMDtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0KTtcbn1cblxuLmRyb3Bkb3duLWl0ZW0ge1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmctYmFzZTtcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy1iYXNlO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmctYmFzZTtcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy1iYXNlO1xufVxuXG4ubWVnYS1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiBzdGF0aWMhaW1wb3J0YW50O1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwICRwYWRkaW5nLWJhc2U7XG4gICAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICBtYXJnaW4tdG9wOiAkcGFkZGluZy1iYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5tZWdhLWRyb3Bkb3duIHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qICRjLWZvcm1zXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmMtaW5wdXQge1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gID4gaW5wdXQge1xuICAgICY6Y2hlY2tlZCB+IC5jLWluZGljYXRvciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgfVxuICAgICY6Zm9jdXMgfiAuYy1pbmRpY2F0b3Ige1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgLjA3NXJlbSAjZmZmLCAwIDAgMCAuMTVyZW0gJGJyYW5kLXByaW1hcnk7XG4gICAgfVxuICAgICY6YWN0aXZlIH4gLmMtaW5kaWNhdG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vKkluZGljYXRvciovXG5cbi5jLWluZGljYXRvciB7XG4gIHRvcDogMXB4O1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kZWZhdWx0O1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAwIC4wNXJlbSByZ2JhKDAsIDAsIDAsIC4yNSkpO1xufVxuXG5cbi8qQ2hlY2tib3hlcyovXG5cbi5jLWNoZWNrYm94IHtcbiAgLmMtaW5kaWNhdG9yIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICB9XG59XG5cblxuLypTZWxlY3QqL1xuXG4uYy1zZWxlY3Qge1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgcGFkZGluZyguNTM0cmVtLCAxLjc1cmVtLCAuNTM0cmVtLCAuNzVyZW0pO1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vKkZpbGUqL1xuXG4uZmlsZS1jdXN0b20ge1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLmZpbGUtY3VzdG9tOjpiZWZvcmUge1xuICBjb250ZW50OiAnQnJvd3NlJztcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDAgJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kZWZhdWx0O1xufVxuXG4vLyBGb2N1cyBzdGF0ZVxuLmZpbGUgaW5wdXQ6Zm9jdXMgfiAuZmlsZS1jdXN0b20ge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAwIC4wNzVyZW0gI2ZmZiwgMCAwIDAgLjE1cmVtICRicmFuZC1wcmltYXJ5KTtcbn1cblxuLnNwaW5uZXIgLmZvcm0tY29udHJvbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8qICRmb3Jtc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG59XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlcjtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI7XG4gIH1cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kZWZhdWx0O1xuICB9XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLypGb3JtIHZhbGlkYXRpb24gc3RhdGVzKi9cblxuLmhhcy1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJGJyYW5kLXN1Y2Nlc3MpO1xufVxuXG4uaGFzLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkYnJhbmQtd2FybmluZyk7XG59XG5cbi5oYXMtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJGJyYW5kLWRhbmdlcik7XG59XG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4vL1xuLy8gVXNlZCBpbiBfZm9ybXMuc2NzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkY29sb3IpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLnRleHQtaGVscCxcbiAgLmZvcm0tY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIC8vIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgICAgLy8gJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xuICAgICAgLy8gQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgNDAlKTtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgQGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoKSB7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRpbnB1dC1ib3gtc2hhZG93LWZvY3VzO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG5cbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvKiAkaW5wdXQtZ3JvdXBzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICB6LWluZGV4OiAyO1xufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwIHtcbiAgbWFyZ2luLXJpZ2h0OiAtLjEyNXJlbTtcbn1cblxuLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbn1cbiIsIi8qICRsYWJlbHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubGFiZWwge1xuXHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG5cbi5sYWJlbC1kZWZhdWx0IHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kZWZhdWx0LWJnKTtcbn1cblxuLmxhYmVsLXByaW1hcnkge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1wcmltYXJ5LWJnKTtcbn1cblxuLmxhYmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1zdWNjZXNzLWJnKTtcbn1cblxuLmxhYmVsLWluZm8ge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1pbmZvLWJnKTtcbn1cblxuLmxhYmVsLXdhcm5pbmcge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC13YXJuaW5nLWJnKTtcbn1cblxuLmxhYmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRhbmdlci1iZyk7XG59XG4iLCIvLyBMYWJlbHNcblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAmW2hyZWZdIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLyogJGxpc3Rncm91cFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgYm9yZGVyOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICB9XG59XG5cbmEubGlzdC1ncm91cC1pdGVtOmhvdmVyLFxuYS5saXN0LWdyb3VwLWl0ZW06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRicmFuZC1kZWZhdWx0LCA1JSlcbn1cblxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgbGlnaHRlbigkYnJhbmQtc3VjY2VzcywgMzAlKSwgZGFya2VuKCRicmFuZC1zdWNjZXNzLCAyMCUpKTtcbkBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KGluZm8sIGxpZ2h0ZW4oJGJyYW5kLWluZm8sIDMwJSksIGRhcmtlbigkYnJhbmQtaW5mbywgMjAlKSk7XG5AaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCh3YXJuaW5nLCBsaWdodGVuKCRicmFuZC13YXJuaW5nLCAzMCUpLCBkYXJrZW4oJGJyYW5kLXdhcm5pbmcsIDIwJSkpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCBsaWdodGVuKCRicmFuZC1kYW5nZXIsIDMwJSksIGRhcmtlbigkYnJhbmQtZGFuZ2VyLCAyMCUpKTtcbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIH1cblxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogJG1vZGFsXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLm1vZGFsLWNvbnRlbnQge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWxhcmdlKTtcbn1cbiIsIi8qICRuYXZiYXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuIiwiLyogJG5hdnNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qIE5hdnMgKi9cblxuLm5hdiA+IGxpID4gYTpob3Zlcixcbi5uYXYgPiBsaSA+IGE6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cblxuLyogUGlsbHMgKi9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0ub3BlbiAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIH1cbiAgfVxufVxuXG5cbi8qIFRhYnMgKi9cblxuLm5hdi10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgYm9yZGVyOiAwO1xuICAubmF2LWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAubmF2LWxpbmsge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHBhZGRpbmc6ICRndXR0ZXIvMiAkcGFkZGluZy1iYXNlO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAoJGJvcmRlci1yYWRpdXMtYmFzZSArIDEpICgkYm9yZGVyLXJhZGl1cy1iYXNlICsgMSkgMCAwO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIH1cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFiLWNvbnRlbnQge1xuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlO1xuICBib3JkZXItcmFkaXVzOiAwIDAgJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgLjA1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA1KTtcbn1cbiIsIi8qICRwYWdpbmF0aW9uXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnBhZ2luYXRpb24ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgfVxuICB9XG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICB9XG4gIH1cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGVmYXVsdDtcbiAgICB9XG4gIH1cbn1cblxuLnBhZ2UtbGluayB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gIH1cbn1cblxuLm5nLXRhYmxlLXBhZ2luYXRpb24ge1xuICBtYXJnaW46IDA7XG59XG4iLCIvKiAkcG9wb3ZlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5wb3BvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgLjA2MjVyZW0gLjA2MjVyZW0gcmdiYSgwLCAwLCAwLCAuMDUpKTtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbn1cblxuLnBvcG92ZXItdGl0bGUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyO1xufVxuXG4ucG9wb3Zlci1jb250ZW50Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cbiIsIi8qICRwcm9ncmVzcy1iYXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHJvZ3Jlc3Mge1xuICBoZWlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG59XG5cbi5wcm9ncmVzcy1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtdmFyaWFudCgkYnJhbmQtc3VjY2Vzcyk7XG59XG5cbi5wcm9ncmVzcy1pbmZvIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtdmFyaWFudCgkYnJhbmQtaW5mbyk7XG59XG5cbi5wcm9ncmVzcy13YXJuaW5nIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtdmFyaWFudCgkYnJhbmQtd2FybmluZyk7XG59XG5cbi5wcm9ncmVzcy1kYW5nZXIge1xuICBAaW5jbHVkZSBwcm9ncmVzcy12YXJpYW50KCRicmFuZC1kYW5nZXIpO1xufVxuIiwiLy8gUHJvZ3Jlc3MgYmFyc1xuXG5AbWl4aW4gcHJvZ3Jlc3MtdmFyaWFudCgkY29sb3IpIHtcbiAgJlt2YWx1ZV06Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICZbdmFsdWVdOjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLy8gSUU5XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIC5wcm9ncmVzcy1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLyogJHRhYmxlc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi50YWJsZSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nLWJhc2U7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmctYmFzZTtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuXG4gIHRoZWFkIHRoLFxuICB0Zm9vdCB0aCB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuLnRhYmxlLWhvdmVyIHtcbiAgPiB0Ym9keSA+IHRyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctaG92ZXI7XG4gIH1cbn1cblxuLnRhYmxlLXN0cmlwZWQge1xuICA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctYWNjZW50O1xuICB9XG59XG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICB9XG4gIH1cbn1cblxuXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkYnJhbmQtZGVmYXVsdCk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChzdWNjZXNzLCAkYnJhbmQtc3VjY2Vzcyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChpbmZvLCAkYnJhbmQtaW5mbyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCh3YXJuaW5nLCAkYnJhbmQtd2FybmluZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChkYW5nZXIsICRicmFuZC1kYW5nZXIpO1xuXG5cbi8qIE5vIE1vcmUgdGFibGVzICovXG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAvKiBTb3VyY2U6OiBodHRwOi8vZWx2ZXJ5Lm5ldC9kZW1vL3Jlc3BvbnNpdmUtdGFibGVzLyNuby1tb3JlLXRhYmxlcyAqL1xuICAvKiBGb3JjZSB0YWJsZSB0byBub3QgYmUgbGlrZSB0YWJsZXMgYW55bW9yZSAqL1xuICAubm8tbW9yZS10YWJsZXMgdGFibGUsXG4gIC5uby1tb3JlLXRhYmxlcyB0aGVhZCxcbiAgLm5vLW1vcmUtdGFibGVzIHRib2R5LFxuICAubm8tbW9yZS10YWJsZXMgdGgsXG4gIC5uby1tb3JlLXRhYmxlcyB0ZCxcbiAgLm5vLW1vcmUtdGFibGVzIHRyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAvKiBIaWRlIHRhYmxlIGhlYWRlcnMgKGJ1dCBub3QgZGlzcGxheTogbm9uZTssIGZvciBhY2Nlc3NpYmlsaXR5KSAqL1xuICAubm8tbW9yZS10YWJsZXMgdGhlYWQgdHIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC05OTk5cHg7XG4gICAgQGluY2x1ZGUgbGVmdCgtOTk5OXB4KTtcbiAgfVxuICAubm8tbW9yZS10YWJsZXMgdHIge1xuICAgIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbiAgLm5vLW1vcmUtdGFibGVzIHRkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgcGFkZGluZy1sZWZ0KDUwJSFpbXBvcnRhbnQpO1xuICAgIC8qIEJlaGF2ZSAgbGlrZSBhIFwicm93XCIgKi9cbiAgICBib3JkZXItdG9wOiAwIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSB0ZXh0LWFsaWduKGxlZnQpO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbiAgLm5vLW1vcmUtdGFibGVzIHRkOmJlZm9yZSB7XG4gICAgLyogTm93IGxpa2UgYSB0YWJsZSBoZWFkZXIgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLyogVG9wL2xlZnQgdmFsdWVzIG1pbWljIHBhZGRpbmcgKi9cbiAgICB0b3A6IDAuMzc1cmVtO1xuICAgIEBpbmNsdWRlIGxlZnQoMC4zNzVyZW0pO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctcmlnaHQoMC42MjVyZW0pO1xuICAgIHdpZHRoOiA0NSU7XG4gICAgQGluY2x1ZGUgdGV4dC1hbGlnbihsZWZ0KTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgfVxuICAvKiBMYWJlbCB0aGUgZGF0YSAqL1xuICAubm8tbW9yZS10YWJsZXMgdGQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtdGl0bGUpO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gbGVmdCB0byByaWdodCB2YXJpYWJsZXMgdG8gYmUgdXNlZCBieSBiaS1hcHAgbWl4aW5zXG4vLyBhdXRob3JzOlxuLy8gdHdpdHRlci5jb20vYW5hc25ha2F3YVxuLy8gdHdpdHRlci5jb20vdmljdG9yemFtZmlyXG4vLyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2Vcbi8vIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gbmFtZXNwYWNpbmcgdmFyaWFibGVzIHdpdGggYmktYXBwIHRvXG4vLyBhdm9pZCBjb25mbGljdGluZyB3aXRoIG90aGVyIGdsb2JhbCB2YXJpYWJsZXNcbiRiaS1hcHAtbGVmdCBcdFx0XHRcdCAgICA6IGxlZnQ7XG4kYmktYXBwLXJpZ2h0IFx0XHRcdFx0ICBcdDogcmlnaHQ7XG4kYmktYXBwLWRpcmVjdGlvbiBcdFx0XHRcdDogbHRyO1xuJGJpLWFwcC1pbnZlcnQtZGlyZWN0aW9uXHRcdDogcnRsO1xuJGltcCAgICAgICAgICAgICAgICAgICAgXHRcdDogIWltcG9ydGFudDsiLCIvKiAkdG9vbHRpcFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4iLCIvKiAkY29sb3JzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1peGluIHNoYWRlcygkbmFtZSwgJGJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLSN7JG5hbWV9JywgJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBiZy12YXJpYW50KCcuYmctI3skbmFtZX0tZGFyaycsIGRhcmtlbigkYmFja2dyb3VuZCwgNSUpKTtcbiAgQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLSN7JG5hbWV9LWRhcmtlcicsIGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSk7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy0jeyRuYW1lfS1saWdodCcsIGxpZ2h0ZW4oJGJhY2tncm91bmQsIDUlKSk7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy0jeyRuYW1lfS1saWdodGVyJywgbGlnaHRlbigkYmFja2dyb3VuZCwgMTAlKSk7XG59XG5cblxuLyogQ29sb3IgVmFyaWFudDogRGFyayAqL1xuXG5AaW5jbHVkZSBzaGFkZXMoZGFyaywgJGJyYW5kLWRhcmspO1xuXG4vKiBDb2xvciBWYXJpYW50OiBQcmltYXJ5ICovXG5cbkBpbmNsdWRlIHNoYWRlcyhwcmltYXJ5LCAkYnJhbmQtcHJpbWFyeSk7XG5cbi8qIENvbG9yIFZhcmlhbnQ6IERlZmF1bHQgKi9cblxuQGluY2x1ZGUgc2hhZGVzKGRlZmF1bHQsICRicmFuZC1kZWZhdWx0KTtcblxuLyogQ29sb3IgVmFyaWFudDogV2FybmluZyAqL1xuXG5AaW5jbHVkZSBzaGFkZXMod2FybmluZywgJGJyYW5kLXdhcm5pbmcpO1xuXG4vKiBDb2xvciBWYXJpYW50OiBTdWNjZXNzICovXG5cbkBpbmNsdWRlIHNoYWRlcyhzdWNjZXNzLCAkYnJhbmQtc3VjY2Vzcyk7XG5cbi8qIENvbG9yIFZhcmlhbnQ6IEluZm8gKi9cblxuQGluY2x1ZGUgc2hhZGVzKGluZm8sICRicmFuZC1pbmZvKTtcblxuLyogQ29sb3IgVmFyaWFudDogRGFuZ2VyICovXG5cbkBpbmNsdWRlIHNoYWRlcyhkYW5nZXIsICRicmFuZC1kYW5nZXIpO1xuXG4vKiBDb2xvciBWYXJpYW50OiBXaGl0ZSAqL1xuXG4vL0BpbmNsdWRlIHNoYWRlcyh3aGl0ZSwgd2hpdGUpO1xuLmJnLXdoaXRlIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuXG4vKiBFeHRyYSBwYWxldHRlIGNvbG9ycyAqL1xuXG5AaW5jbHVkZSBzaGFkZXMocmVkLCAjZjQ0MzM2KTtcbkBpbmNsdWRlIHNoYWRlcyhwaW5rLCAjZTkxZTYzKTtcbkBpbmNsdWRlIHNoYWRlcyhwdXJwbGUsICM5YzI3YjApO1xuQGluY2x1ZGUgc2hhZGVzKGRlZXBwdXJwbGUsICM2NzNhYjcpO1xuQGluY2x1ZGUgc2hhZGVzKGluZGlnbywgIzNmNTFiNSk7XG5AaW5jbHVkZSBzaGFkZXMoYmx1ZSwgIzIxOTZmMyk7XG5AaW5jbHVkZSBzaGFkZXMobGlnaHRibHVlLCAjMDNhOWY0KTtcbkBpbmNsdWRlIHNoYWRlcyhjeWFuLCAjMDBiY2Q0KTtcbkBpbmNsdWRlIHNoYWRlcyh0ZWFsLCAjMDA5Njg4KTtcbkBpbmNsdWRlIHNoYWRlcyhncmVlbiwgIzRjYWY1MCk7XG5AaW5jbHVkZSBzaGFkZXMobGlnaHRncmVlbiwgIzc0ZDEwOCk7XG5AaW5jbHVkZSBzaGFkZXMobGltZSwgI2NkZGMzOSk7XG5AaW5jbHVkZSBzaGFkZXMoeWVsbG93LCAjZmZlYjNiKTtcbkBpbmNsdWRlIHNoYWRlcyhhbWJlciwgI2ZmYzEwNyk7XG5AaW5jbHVkZSBzaGFkZXMob3JhbmdlLCAjZmY5ODAwKTtcbkBpbmNsdWRlIHNoYWRlcyhkZWVwb3JhbmdlLCAjZmY1NzIyKTtcbkBpbmNsdWRlIHNoYWRlcyhicm93biwgIzc5NTU0OCk7XG5AaW5jbHVkZSBzaGFkZXMoZ3JleSwgIzllOWU5ZSk7XG5AaW5jbHVkZSBzaGFkZXMoYmx1ZWdyZXksICM2MDdkOGIpO1xuXG4vKiAkVGV4dENvbG9yICovXG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZGVmYXVsdCcsICRicmFuZC1kZWZhdWx0KTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtd2FybmluZycsICRicmFuZC13YXJuaW5nKTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtc3VjY2VzcycsICRicmFuZC1zdWNjZXNzKTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRicmFuZC1pbmZvKTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtd2hpdGUnLCAkYnJhbmQtd2hpdGUpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkYnJhbmQtZGFuZ2VyKTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtbXV0ZWQnLCBkYXJrZW4oI2ZmZiwgMzAlKSk7XG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWNvbG9yJywgJHRleHQtY29sb3IpO1xuXG4vKiBFeHRyYSB0ZXh0IGNvbG9ycyAqL1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXJlZCcsICNmNDQzMzYpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1waW5rJywgI2U5MWU2Myk7XG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXB1cnBsZScsICM5YzI3YjApO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kZWVwcHVycGxlJywgIzY3M2FiNyk7XG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWluZGlnbycsICMzZjUxYjUpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1ibHVlJywgIzIxOTZmMyk7XG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWxpZ2h0Ymx1ZScsICMwM2E5ZjQpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1jeWFuJywgIzAwYmNkNCk7XG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXRlYWwnLCAjMDA5Njg4KTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZ3JlZW4nLCAjNGNhZjUwKTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtbGlnaHRncmVlbicsICM3NGQxMDgpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1saW1lJywgI2NkZGMzOSk7XG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXllbGxvdycsICNmZmViM2IpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1hbWJlcicsICNmZmMxMDcpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1vcmFuZ2UnLCAjZmY5ODAwKTtcbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZGVlcG9yYW5nZScsICNmZjU3MjIpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1icm93bicsICM3OTU1NDgpO1xuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1ncmV5JywgIzllOWU5ZSk7XG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWJsdWVncmV5JywgIzYwN2Q4Yik7XG4iLCIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLyogJGJvb3RzdHJhcC51aVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLypDYXJvdXNlbCovXG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cblxuLypEYXRlcGlja2VyKi9cblxuLnVpLWRhdGVwaWNrZXIge1xuICB0YWJsZSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctYmFzZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgdGhlYWQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgfVxuICAgIC5oNiB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICB9XG4gICAgLmJ0biB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtZGVmYXVsdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRlZmF1bHQ7XG4gICAgICB9XG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5kcm9wZG93bi1tZW51IHRhYmxlIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuXG4vKlRpbWVwaWNrZXIqL1xuXG4udWktdGltZXBpY2tlciB0ZCB7XG4gIHBhZGRpbmc6IDAgNXB4O1xufVxuXG4uZ2x5cGhpY29uLXN0YXIsXG4uZ2x5cGhpY29uLXN0YXItZW1wdHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuXG4uZ2x5cGhpY29uLXN0YXItZW1wdHkge1xuICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjJaWEp6YVc5dVBTSXhMakVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSGc5SWpCd2VDSWdlVDBpTUhCNElpQjNhV1IwYUQwaU1qQndlQ0lnYUdWcFoyaDBQU0l5TUhCNElpQjJhV1YzUW05NFBTSXdJREFnTWpBZ01qQWlJR1Z1WVdKc1pTMWlZV05yWjNKdmRXNWtQU0p1WlhjZ01DQXdJREl3SURJd0lpQjRiV3c2YzNCaFkyVTlJbkJ5WlhObGNuWmxJajQ4Y0c5c2VXZHZiaUJtYVd4c1BTSWpSRVJFUkVSRUlpQndiMmx1ZEhNOUlqRXdMREFnTVRNdU1Ea3NOaTQxT0RNZ01qQXNOeTQyTXprZ01UVXNNVEl1TnpZMElERTJMakU0TERJd0lERXdMREUyTGpVNE15QXpMamd5TERJd0lEVXNNVEl1TnpZMElEQXNOeTQyTXprZ05pNDVNU3cyTGpVNE15QWlMejQ4TDNOMlp6ND0nKSBuby1yZXBlYXQ7XG59XG5cbi5nbHlwaGljb24tc3RhciB7XG4gIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZzlJakJ3ZUNJZ2VUMGlNSEI0SWlCM2FXUjBhRDBpTWpCd2VDSWdhR1ZwWjJoMFBTSXlNSEI0SWlCMmFXVjNRbTk0UFNJd0lEQWdNakFnTWpBaUlHVnVZV0pzWlMxaVlXTnJaM0p2ZFc1a1BTSnVaWGNnTUNBd0lESXdJREl3SWlCNGJXdzZjM0JoWTJVOUluQnlaWE5sY25abElqNDhjRzlzZVdkdmJpQm1hV3hzUFNJalJrWkVSamc0SWlCd2IybHVkSE05SWpFd0xEQWdNVE11TURrc05pNDFPRE1nTWpBc055NDJNemtnTVRVc01USXVOelkwSURFMkxqRTRMREl3SURFd0xERTJMalU0TXlBekxqZ3lMREl3SURVc01USXVOelkwSURBc055NDJNemtnTmk0NU1TdzJMalU0TXlBaUx6NDhMM04yWno0PScpIG5vLXJlcGVhdDtcbn1cblxuLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5nbHlwaGljb24tY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYxMDQnO1xufVxuXG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjEwNSc7XG59XG4iLCIvKiAkc2Vzc2lvblxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5zZXNzaW9uLXBhbmVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4uc2Vzc2lvbiB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBAaW5jbHVkZSBmbGV4Ym94O1xuICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xufVxuXG4uc2Vzc2lvbi1jb250ZW50IHtcbiAgcGFkZGluZzogNDBweCAwO1xuICBAaW5jbHVkZSBmbGV4Ym94O1xuICBAaW5jbHVkZSBhbGlnbi1pdGVtcyhjZW50ZXIpO1xuICBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoY2VudGVyKTtcbiAgQGluY2x1ZGUgZmxleCgxIDAgYXV0byk7XG4gIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKGNvbHVtbik7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbi5zZXNzaW9uLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDAgYXV0byAtJGZvb3Rlci1oZWlnaHQ7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICY6OmFmdGVyIHtcbiAgICBoZWlnaHQ6ICRmb290ZXItaGVpZ2h0O1xuICB9XG59XG5cbi5hcHAuZXJyb3ItcGFnZSAuY2FyZCxcbi5hcHAubG9ja3NjcmVlbiAuY2FyZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMDBweCBhdXRvO1xufVxuXG4uYXBwLmxvY2tzY3JlZW4gLmNhcmQge1xuICBtYXgtd2lkdGg6IDQwMHB4O1xufVxuXG4uZm9ybS1sYXlvdXQge1xuICAvL2Rpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIGZsZXgobm9uZSk7XG4gIHdpZHRoOiA1NDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZGl2aWRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luLXRvcDogMS41NjNyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtJHBhZGRpbmctYmFzZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjU2M3JlbTtcbiAgICBtYXJnaW4tbGVmdDogLSRwYWRkaW5nLWJhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICRib3JkZXItY29sb3I7XG4gIH1cbiAgLmRpdmlkZXIgc3BhbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgLjc1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB9XG59XG4iLCIvKiAkbG9ja3NjcmVlblxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5sb2NrY29kZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDI4MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmxvY2tzY3JlZW4tYXZhdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGltZyB7XG4gICAgYm9yZGVyOiA1cHggc29saWQgd2hpdGU7XG4gIH1cbn1cbiIsIi8qICRlcnJvci1wYWdlc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5lcnJvci1udW1iZXIge1xuICBmb250LXNpemU6IDE1MHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICB9XG59XG5cbi5lcnJvci1pY29uIHtcbiAgZm9udC1zaXplOiAxMDBweDtcbiAgbGluZS1oZWlnaHQ6IDE2MHB4O1xuICB3aWR0aDogMTYwcHg7XG4gIGhlaWdodDogMTYwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gIGNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICBib3JkZXI6IDNweCBzb2xpZCAkYnJhbmQtZGFuZ2VyO1xuICBAaW5jbHVkZSByb3VuZGVkKDUwJSk7XG59XG4iLCIvKiAkY2FsZW5kYXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZmMtdG9vbGJhciB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogJGd1dHRlci8yICRwYWRkaW5nLWJhc2U7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICBiYWNrZ3JvdW5kOiAkYnJhbmQtaW5mbztcbiAgLmZjLWxlZnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gICAgaDIge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5mYyAuZmMtdG9vbGJhciA+ICogPiAqIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuICAuZmMtbGVmdCBoMiB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbiAgPiAuZmMtY2VudGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxufVxuXG4uZmMtc3RhdGUtZGVmYXVsdC5mYy1jb3JuZXItbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi5mYy1zdGF0ZS1kZWZhdWx0LmZjLWNvcm5lci1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLmZjLXQtZXZlbnRzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZjIHRkLmZjLXdpZGdldC1oZWFkZXIge1xuICBwYWRkaW5nOiAuNXJlbSAwO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRicmFuZC1pbmZvLCA1JSk7XG59XG5cbi5mdWxsY2FsZW5kYXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpO1xuICB0aC5mYy13aWRnZXQtaGVhZGVyIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICB9XG4gIC5mYyB0ZCB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICB9XG4gIC5mYyB0ZCxcbiAgLmZjIHRoIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cbiAgLmZjLWRheS1ncmlkID4gLmZjLXdpZGdldC1jb250ZW50IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgfVxuICAuZmMtZGF5LWdyaWQgPiAuZmMtd2lkZ2V0LWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxuICB0ciA+IC5mYy1kYXkge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIH1cbiAgdHIgPiAuZmMtZGF5Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuICAuZmMtZGF5LWdyaWQtZXZlbnQgLmZjLXRpbWUge1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbnRlbnQ6ICc6JztcbiAgICB9XG4gIH1cbiAgLmZjLXdpZGdldC1jb250ZW50IHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICB9XG4gIC5mYy1zbGF0cyAuZmMtd2lkZ2V0LWNvbnRlbnQge1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICB9XG4gIC5mYy11bnRoZW1lZCB0aCxcbiAgLmZjLXVudGhlbWVkIHRkLFxuICAuZmMtdW50aGVtZWQgaHIsXG4gIC5mYy11bnRoZW1lZCB0aGVhZCxcbiAgLmZjLXVudGhlbWVkIHRib2R5LFxuICAuZmMtdW50aGVtZWQgLmZjLXJvdyxcbiAgLmZjLXVudGhlbWVkIC5mYy1wb3BvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIH1cbiAgLmZjLXVudGhlbWVkIGhyLFxuICAuZmMtdW50aGVtZWQgLmZjLXBvcG92ZXIgLmZjLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgfVxuICAuZmMtc3RhdGUtaG92ZXIsXG4gIC5mYy1zdGF0ZS1kb3duLFxuICAuZmMtc3RhdGUtYWN0aXZlLFxuICAuZmMtc3RhdGUtZGlzYWJsZWQge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDUlKTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib3JkZXItY29sb3I7XG4gIH1cbiAgLmZjLXN0YXRlLWhvdmVyIHtcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCA1JSk7XG4gIH1cbiAgLmZjLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAuMzc1cmVtICRwYWRkaW5nLWJhc2U7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcbiAgICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uIGxpbmVhcik7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgJi5mYy10b2RheS1idXR0b24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyO1xuICAgIH1cbiAgfVxuICAuZmMtYnV0dG9uLmZjLXN0YXRlLWRvd24sXG4gIC5mYy1idXR0b24uZmMtc3RhdGUtYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6ICNjNGMyYzI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NmY2ZjZjtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KTtcbiAgfVxufVxuXG4uZmMtd2lkZ2V0LWNvbnRlbnQge1xuICBib3JkZXI6IDA7XG59XG5cbi5mYyAuZmMtdG9vbGJhciA+ICogPiAqIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5mYy1ldmVudCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogMnB4IDVweDtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSByb3VuZGVkKDApO1xufVxuXG4uZXh0ZXJuYWwtZXZlbnQge1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIC4wNjI1cmVtIDA7XG4gIHBhZGRpbmc6IDRweDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLnJlbW92ZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5leHRlcm5hbC1ldmVudHMge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCA1cHggNXB4O1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpO1xuICB9XG59XG5cbi5leHRlcm5hbC1ldmVudHMgLmZvcm0tY29udHJvbCB7XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmV2ZW50LXR5cGUge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYTo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIH1cbiAgICBhOmhvdmVyLFxuICAgIGE6Zm9jdXMsXG4gICAgYS5hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgcGFkZGluZzogMXB4O1xuICAgICAgYm9yZGVyOiAuMDYyNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gIC5mYy10b29sYmFyIHtcbiAgICAuZmMtcmlnaHQsXG4gICAgLmZjLWNlbnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gJGd1dHRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8qICRnYWxsZXJ5XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLm1lZGlhLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xufVxuXG4ubWVkaWEge1xuICAuY2FyZC1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjJyZW07XG4gICAgcGFkZGluZzogLjNyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIvKiAkaW52b2ljZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pbnZvaWNlLWxvZ28ge1xuICBoZWlnaHQ6IDUwcHg7XG59XG5cbi5pbnZvaWNlLXRvdGFscyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIEBpbmNsdWRlIHRleHQtYWxpZ24ocmlnaHQpO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAuaW52b2ljZS10b3RhbHMtcm93IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbiAgLmludm9pY2UtdG90YWxzLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4tcmlnaHQoMTVweCk7XG4gIH1cbiAgLmludm9pY2UtdG90YWxzLXZhbHVlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWluLXdpZHRoOiAxNDBweDtcbiAgICBAaW5jbHVkZSB0ZXh0LWFsaWduKGxlZnQpO1xuICB9XG59XG4iLCIvKiAkbWVzc2FnZXNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uY29udGFjdHMtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skaGVhZGVyLWhlaWdodH0pO1xuICAuY29udGFjdHMtbGlzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRlZmF1bHQ7XG4gICAgYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2U7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIC5jb250YWN0LWF2YXRhciB7XG4gICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgfVxuICAgICAgLmNvbnRhY3QtZGV0YWlscyA+ICoge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkYnJhbmQtZGVmYXVsdCwgMSUpO1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItc2Vjb25kYXJ5ICsgLm1haW4tY29udGVudCA+IC5jb250ZW50LXZpZXcge1xuICAuY29udGFjdHMtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRoZWFkZXItaGVpZ2h0ICsgJGhlYWRlci1oZWlnaHR9KTtcbiAgfVxufVxuXG4ubWVzc2FnZXMtbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1lc3NhZ2UtbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAubWVzc2FnZS1saXN0LWl0ZW0ge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAoJGd1dHRlciAvMikgJHBhZGRpbmctYmFzZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4wNSk7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIC5tZXNzYWdlLWxpc3QtaXRlbS1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogZGFya2VuKCNmZmYsIDgwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50aW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgICAgY29sb3I6IGRhcmtlbigjZmZmLCAzMCUpO1xuICAgICAgICBAaW5jbHVkZSBmbG9hdChyaWdodCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tZXNzYWdlLXZpZXcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cblxuLm1lc3NhZ2UtaGVhZGVyLFxuLmNvbnRhY3QtaGVhZGVyIHtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAuMSk7XG4gIC5sZWFkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbiAgLmRhdGUge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjb2xvcjogZGFya2VuKCNmZmYsIDMwJSk7XG4gICAgQGluY2x1ZGUgZmxvYXQocmlnaHQpO1xuICB9XG4gIC5tZXNzYWdlLXRvb2xiYXIsXG4gIC5jb250YWN0LXRvb2xiYXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMCAkcGFkZGluZy1iYXNlO1xuICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgcCB7XG4gICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCRoZWFkZXItaGVpZ2h0LCAyLjA1cmVtKTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMTAlKTtcbiAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCRoZWFkZXItaGVpZ2h0LCAxLjgxM3JlbSk7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubm8tbWVzc2FnZXMsXG4ubm8tY29udGFjdHMge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XG4gIEBpbmNsdWRlIGFsaWduLWNvbnRlbnQoY2VudGVyKTtcbiAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KGNlbnRlcik7XG59XG5cbi5jb250YWN0cy1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5jb250YWN0cy1zaWRlYmFyIHtcbiAgICB3aWR0aDogMjUwcHg7XG4gIH1cbiAgLmNvbnRhY3RzLWxpc3Qge1xuICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgLm1lc3NhZ2UtdmlldyxcbiAgLmNvbnRhY3QtdmlldyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtY2hhdDtcbiAgICB0b3A6ICRoZWFkZXItaGVpZ2h0O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguNywgMCwgLjMsIDEpO1xuICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUod2hpdGUsIC4wMSk7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKDEwMCUsIDApO1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIC5zY3JvbGwge1xuICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLm1lc3NhZ2Utb3BlbiAubWVzc2FnZS12aWV3LFxuICAuY29udGFjdC1vcGVuIC5jb250YWN0LXZpZXcge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAwKTtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICAuY29udGFjdHMtbGlzdCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtICN7JGhlYWRlci1mb290ZXItaGVpZ2h0fSk7XG4gICAgI2xpc3QxIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qICRzb2NpYWxcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHJvZmlsZS1iaW8ge1xuICAuYmFja2dyb3VuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICB9XG4gIC5hdmF0YXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAtMzBweCA1cHggMCAxMHB4O1xuICAgIHBhZGRpbmc6IDFweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICBAaW5jbHVkZSBmbG9hdChsZWZ0KTtcbiAgICBpbWcge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiA3MnB4O1xuICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgQGluY2x1ZGUgcm91bmRlZCg0cHgpO1xuICAgIH1cbiAgfVxuICAudXNlci1kZXRhaWxzIHtcbiAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgLnVzZXItbmFtZSB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgfVxuICB9XG4gIC51c2VyLXN0YXRzIHtcbiAgICBtYXJnaW46IDEwcHg7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgID4gdWwge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGF1dG87XG4gICAgICBsaXN0LXN0eWxlOiBvdXRzaWRlIG5vbmUgbm9uZTtcbiAgICB9XG4gICAgPiB1bCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG4gICAgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgIC5zbWFsbCB7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnBvc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAtMTQ2cHg7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICA+ICoge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cbn1cblxuLnByb2ZpbGUtaGVhZGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAtMjMlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgPiAqIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi5wcm9maWxlLWF2YXRhciB7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgLjEyNXJlbSAuMjVyZW0gcmdiYSg1MCwgNzAsIDc1LCAuMikpO1xufVxuXG4ucHJvZmlsZS1zdGF0cyB7XG4gIHdpZHRoOiA0MCU7XG4gIEBpbmNsdWRlIGZsb2F0KHJpZ2h0KTtcbn1cblxuLnByb2ZpbGUtdXNlciB7XG4gIHdpZHRoOiA2MCU7XG59XG5cbi5wcm9maWxlLXNpZGViYXItaXRlbSB7XG4gIG1hcmdpbjogMCAwICRndXR0ZXIgMDtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5wcm9maWxlLXNpZGViYXItaXRlbS5wcm9maWxlLWluZm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wcm9maWxlLXJlY2NvbWVuZGF0aW9ucyAudXNlci1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGkge1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICB9XG59XG5cbi5wcm9maWxlLW51bWJlcnMtY291bnQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodCguMDYyNXJlbSBzb2xpZCAkYm9yZGVyLWNvbG9yKTtcbiAgICAmOkxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0KDApO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6IGRhcmtlbigjZmZmLCA3MCUpO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZmlsZS10aW1lbGluZS1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gIC5wcm9maWxlLXRpbWVsaW5lLXVzZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBmbG9hdChsZWZ0KTtcbiAgICBAaW5jbHVkZSBtYXJnaW4tcmlnaHQoLjlyZW0pO1xuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDQ4cHg7XG4gICAgfVxuICB9XG4gIC5wcm9maWxlLXRpbWVsaW5lLXVzZXItZGV0YWlscyB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIEBpbmNsdWRlIG1hcmdpbi1sZWZ0KDYzcHgpO1xuICB9XG59XG5cbi5wcm9maWxlLXRpbWVsaW5lLWNvbnRlbnQge1xuICBAaW5jbHVkZSBtYXJnaW4tbGVmdCg2M3B4KTtcbn1cblxuLnByb2ZpbGUtdGltZWxpbmUtY29udHJvbHMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnByb2ZpbGUtdGltZWxpbmUtaW1hZ2VzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMnB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBtYXJnaW4tbGVmdDogLTJweDtcbiAgLmltYWdlLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgIEBpbmNsdWRlIGZsb2F0KGxlZnQpO1xuICB9XG4gIC5pbWFnZS1saW5rLXNtYWxsZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgQGluY2x1ZGUgZmxvYXQobGVmdCk7XG4gIH1cbn1cblxuLnByb2ZpbGUtdGltZWxpbmUtYXVkaW8ge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nOiAwO1xuICAuYXVkaW8ge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5wbGF5X3BhdXNlLFxuICAgIC5hdWRpby10aW1lbGluZSxcbiAgICAudGltZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICAucGxheV9wYXVzZSB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICB9XG4gICAgLnByb2dyZXNzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBAaW5jbHVkZSBmbG9hdChsZWZ0KTtcbiAgICAgIEBpbmNsdWRlIHJvdW5kZWQoMCk7XG4gICAgICAuZG9uZSB7XG4gICAgICAgIHdpZHRoOiAzNCU7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBAaW5jbHVkZSBmbG9hdChsZWZ0KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAuNnMgZWFzZSk7XG4gICAgICB9XG4gICAgfVxuICAgIC50aW1lIHtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucG9zdC1jb21tZW50cyB7XG4gIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgLm1lZGlhIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLnBvc3QtY29tbWVudHMgLmNvbW1lbnQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBwYWRkaW5nLWxlZnQoLjlyZW0pO1xufVxuXG4ucG9zdC1jb21tZW50cyAuY29tbWVudC1hdXRob3Ige1xuICBhIHtcbiAgICBjb2xvcjogZGFya2VuKCNmZmYsIDgwJSk7XG4gIH1cbiAgLnRpbWUge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJHRleHQtY29sb3IsIDI1JSk7XG4gIH1cbn1cblxuLy8gQ29tbWVudHNcbi5wb3N0LWNvbW1lbnRzIHtcbiAgLmF2YXRhciB7XG4gICAgbWF4LXdpZHRoOiA0OHB4O1xuICB9XG4gIC5jb21tZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5jb21tZW50LW1ldGEge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBAaW5jbHVkZSBmbG9hdChyaWdodCk7XG4gIH1cbn1cbiIsIi8qICR0aW1lbGluZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi50aW1lbGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMy4yNXJlbTtcbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2cHg7XG4gICAgd2lkdGg6IDNweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogJHRpbWVsaW5lLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBsZWZ0KDk4cHgpO1xuICB9XG4gIC50aW1lbGluZS1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgbGVmdCg4MHB4KTtcbiAgICBAaW5jbHVkZSByb3VuZGVkKDUwJSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgMCAycHggJHRpbWVsaW5lLWJvcmRlci1jb2xvcik7XG4gICAgPiBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIH1cbiAgfVxuICAudGltZWxpbmUtY2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogNDBweCAwO1xuICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gIH1cbiAgLnRpbWVsaW5lLWNhcmQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLnRpbWVsaW5lLWhlYWRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1iYXNlO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICAmLmJvcmRlcjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBib3JkZXItYm90dG9tOiAuMDYyNXJlbSBzb2xpZCB0cmFuc3BhcmVudGl6ZShibGFjaywgLjk0KTtcbiAgICB9XG4gIH1cbiAgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBtYXJnaW4tbGVmdCgxNTBweCk7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICAudGltZWxpbmUtYm9keSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlIC8yO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSg2NCwgNjQsIDY5LCAuMDgpO1xuICAgICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICB9XG4gIH1cbiAgLnRpbWVsaW5lLWNvbnRlbnQgLnRpbWVsaW5lLWRhdGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA1cHggMCAxMHB4O1xuICB9XG4gIC50aW1lbGluZS1jb250ZW50IC50aW1lbGluZS1ib2R5OjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEzcHg7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXItd2lkdGg6IDdweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIEBpbmNsdWRlIHJpZ2h0KDEwMCUpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1jb2xvcih0cmFuc3BhcmVudCwgcmdiYSgxNTAsIDE1MCwgMTUwLCAuMiksIHRyYW5zcGFyZW50LCB0cmFuc3BhcmVudCk7XG4gIH1cbiAgLnRpbWVsaW5lLWNvbnRlbnQgLnRpbWVsaW5lLWJvZHk6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNHB4O1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBjb250ZW50OiAnICc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBAaW5jbHVkZSByaWdodCgxMDAlKTtcbiAgICBAaW5jbHVkZSBib3JkZXItY29sb3IodHJhbnNwYXJlbnQsIHdoaXRlLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQpO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLnRpbWVsaW5lOm5vdCguc3RhY2tlZCkge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBsZWZ0KDUwJSk7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4tbGVmdCgtMnB4KTtcbiAgICB9XG4gICAgLnRpbWVsaW5lLWNhcmQ6bnRoLWNoaWxkKGV2ZW4pIC50aW1lbGluZS1jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGZsb2F0KHJpZ2h0KTtcbiAgICB9XG4gICAgLnRpbWVsaW5lLWNhcmQ6bnRoLWNoaWxkKG9kZCkgLnRpbWVsaW5lLWNvbnRlbnQgLnRpbWVsaW5lLWJvZHkge1xuICAgICAgQGluY2x1ZGUgZmxvYXQocmlnaHQpO1xuICAgIH1cbiAgICAudGltZWxpbmUtY2FyZDpudGgtY2hpbGQob2RkKSAudGltZWxpbmUtY29udGVudCAudGltZWxpbmUtYm9keTo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIEBpbmNsdWRlIHJpZ2h0KGF1dG8pO1xuICAgICAgQGluY2x1ZGUgbGVmdCgxMDAlKTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1jb2xvcih0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50LCByZ2JhKDE1MCwgMTUwLCAxNTAsIC4yKSk7XG4gICAgfVxuICAgIC50aW1lbGluZS1jYXJkOm50aC1jaGlsZChvZGQpIC50aW1lbGluZS1jb250ZW50IC50aW1lbGluZS1ib2R5OjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBAaW5jbHVkZSByaWdodChhdXRvKTtcbiAgICAgIEBpbmNsdWRlIGxlZnQoMTAwJSk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItY29sb3IodHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50LCB0cmFuc3BhcmVudCwgd2hpdGUpO1xuICAgIH1cbiAgICAudGltZWxpbmUtY2FyZDpudGgtY2hpbGQoZXZlbikgLnRpbWVsaW5lLWNvbnRlbnQgLnRpbWVsaW5lLWRhdGUge1xuICAgICAgQGluY2x1ZGUgcmlnaHQoMTIyJSk7XG4gICAgICBAaW5jbHVkZSBsZWZ0KGF1dG8pO1xuICAgICAgQGluY2x1ZGUgdGV4dC1hbGlnbihyaWdodCk7XG4gICAgfVxuICAgIC50aW1lbGluZS1jYXJkOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIC50aW1lbGluZS1pY29uIHtcbiAgICAgIEBpbmNsdWRlIGxlZnQoNTAlKTtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi1sZWZ0KC0yMHB4KTtcbiAgICB9XG4gICAgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi1sZWZ0KDApO1xuICAgIH1cbiAgfVxuICAudGltZWxpbmUgLnRpbWVsaW5lLWRhdGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDZweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBsZWZ0KDEyMiUpO1xuICB9XG4gIC50aW1lbGluZS5zdGFja2VkIHtcbiAgICAudGltZWxpbmUtZGF0ZSB7XG4gICAgICBAaW5jbHVkZSBsZWZ0KC0xNTBweCk7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAudGltZWxpbmUgLnRpbWVsaW5lLWRhdGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDZweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBsZWZ0KC0xNTBweCk7XG4gIH1cbn1cbiIsIi8qICRjaGFydHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZmxvdC14LWF4aXMgPjpmaXJzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jaGFydF9jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5yaWNrc2hhdy1jaGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnlfYXhpcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiA0MHB4O1xufVxuXG4uY2hhcnQge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAwO1xufVxuXG4uY2hhcnQtc20ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uY2hhcnQtbGVnZW5kLmZpcnN0IHtcbiAgcGFkZGluZy10b3A6IDgwcHg7XG59XG5cbi5jM2NoYXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG4iLCIucHJpY2luZyB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZy1iYXNlO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmctYmFzZTtcbiAgLnByaWNpbmctcGxhbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAucHJpY2luZy1wbGFuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi10b3A6ICRndXR0ZXI7XG4gICAgcGFkZGluZzogJHBhZGRpbmctYmFzZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNSk7XG4gIH1cbiAgLnBsYW4tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuICAucGxhbi1wcmljZS1zeW1ib2wge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gIH1cbiAgLnBsYW4tcHJpY2UtcGVyaW9kIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBvcGFjaXR5OiAuNztcbiAgfVxuICAucGxhbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAxcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cbiAgLnBsYW4tZmVhdHVyZXMge1xuICAgIGxpbmUtaGVpZ2h0OiAyLjU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2U7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBsaSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cbiAgfVxuICAuYnRuIHtcbiAgICBmb250LXNpemU6IC45cmVtO1xuICB9XG59XG5cblxuLyogJHN3aXRjaFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5zd2l0Y2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgbWFyZ2luOiAwIDFyZW07XG4gIHBhZGRpbmc6IC4zMTI1cmVtIDA7XG4gIHNwYW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgd2lkdGg6IDMuMTI1cmVtO1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYm9yZGVyLXJhZGl1czogMS41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kZWZhdWx0O1xuICAgIGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XG4gIH1cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgc3BhbiBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXJpZ2h0KDEuMjVyZW0pO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgfVxuICBzcGFuIGk6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEuODc1cmVtO1xuICAgIGhlaWdodDogMS44NzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIC4wNjI1cmVtIHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgLjA2MjVyZW0gLjEyNXJlbSByZ2JhKDAsIDAsIDAsIC4yNSk7XG4gIH1cbiAgOmRpc2FibGVkICsgc3BhbiBpOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjM5LCAyMzksIDIzOSwgMSk7XG4gIH1cbiAgOmNoZWNrZWQgKyBzcGFuIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIGkge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZy1yaWdodCgwKTtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctbGVmdCgxLjMxM3JlbSk7XG4gICAgfVxuICB9XG4gIC8qIHNpemVzLiAqL1xuICAmLnN3aXRjaC1zbSB7XG4gICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgICBzcGFuIHtcbiAgICAgIHdpZHRoOiAyLjA2M3JlbTtcbiAgICAgIGhlaWdodDogLjYyNXJlbTtcbiAgICB9XG4gICAgc3BhbiBpOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEuMjVyZW07XG4gICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgfVxuICAgIDpjaGVja2VkICsgc3BhbiBpIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctbGVmdCguODc1cmVtKTtcbiAgICB9XG4gIH1cbiAgJi5zd2l0Y2gtbGcge1xuICAgIGJvcmRlci1yYWRpdXM6IDIuNXJlbTtcbiAgICBzcGFuIHtcbiAgICAgIHdpZHRoOiA0LjEyNXJlbTtcbiAgICAgIGhlaWdodDogMi41cmVtO1xuICAgIH1cbiAgICBzcGFuIGk6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgfVxuICAgIDpjaGVja2VkICsgc3BhbiBpIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmctbGVmdCgxLjY4OHJlbSk7XG4gICAgfVxuICB9XG59XG5cbi5jZW50ZXItdGFibGUge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4iLCIvKiAkanF1ZXJ5LnVpXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVpLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbn1cblxuLnVpLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbn1cblxuLnVpLXNsaWRlciAudWktc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllciguNywgMCwgLjMsIDEpO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgQGluY2x1ZGUgcm91bmRlZCgxcHgpO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coZGFya2VuKCNlZmVmZWYsIDMwJSkgMCAwIDAgMXB4KTtcbn1cblxuLnVpLXNsaWRlciAudWktc2xpZGVyLWhhbmRsZS51aS1zdGF0ZS1hY3RpdmUge1xuICBAaW5jbHVkZSBzY2FsZSgyLCAyKTtcbn1cblxuLnVpLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcbiAgZm9udC1zaXplOiAuN2VtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cblxuXG4vKiBzdXBwb3J0OiBJRTggLSBTZWUgIzY3MjcgKi9cblxuLnVpLXNsaWRlci51aS1zdGF0ZS1kaXNhYmxlZCAudWktc2xpZGVyLWhhbmRsZSxcbi51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1yYW5nZSB7XG4gIGZpbHRlcjogaW5oZXJpdDtcbn1cblxuLnVpLXNsaWRlci1ob3Jpem9udGFsIHtcbiAgaGVpZ2h0OiA0cHg7XG59XG5cbi51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLWhhbmRsZSB7XG4gIHRvcDogLTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0uNmVtO1xufVxuXG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZSB7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1taW4ge1xuICBsZWZ0OiAwO1xufVxuXG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1tYXgge1xuICByaWdodDogMDtcbn1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiA5LjM3NXJlbTtcbiAgbWFyZ2luOiAwIDhweDtcbn1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLWhhbmRsZSB7XG4gIGxlZnQ6IC01cHg7XG4gIG1hcmdpbi1ib3R0b206IC0uNmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlIHtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1taW4ge1xuICBib3R0b206IDA7XG59XG5cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1tYXgge1xuICB0b3A6IDA7XG59XG5cbi51aS1zbGlkZXItcmFuZ2UtbWluLFxuLnVpLXNsaWRlci1yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG4uc2xpZGVyLWluZm8ge1xuICAudWktc2xpZGVyLXJhbmdlLW1pbixcbiAgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWluZm87XG4gIH1cbiAgLnVpLXNsaWRlci1oYW5kbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLWluZm8sIDIwJSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnJhbmQtaW5mbyAwIDAgMCAxcHgpO1xuICB9XG4gIC5zbGlkZXItaGFuZGxlLnRyaWFuZ2xlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYnJhbmQtaW5mbztcbiAgfVxufVxuXG4uc2xpZGVyLXByaW1hcnkge1xuICAudWktc2xpZGVyLXJhbmdlLW1pbixcbiAgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gIH1cbiAgLnVpLXNsaWRlci1oYW5kbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLXByaW1hcnksIDIwJSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnJhbmQtcHJpbWFyeSAwIDAgMCAxcHgpO1xuICB9XG4gIC5zbGlkZXItaGFuZGxlLnRyaWFuZ2xlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgfVxufVxuXG4uc2xpZGVyLXN1Y2Nlc3Mge1xuICAudWktc2xpZGVyLXJhbmdlLW1pbixcbiAgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gIH1cbiAgLnVpLXNsaWRlci1oYW5kbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLXN1Y2Nlc3MsIDIwJSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnJhbmQtc3VjY2VzcyAwIDAgMCAxcHgpO1xuICB9XG4gIC5zbGlkZXItaGFuZGxlLnRyaWFuZ2xlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgfVxufVxuXG4uc2xpZGVyLXdhcm5pbmcge1xuICAudWktc2xpZGVyLXJhbmdlLW1pbixcbiAgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gIH1cbiAgLnVpLXNsaWRlci1oYW5kbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLXdhcm5pbmcsIDIwJSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnJhbmQtd2FybmluZyAwIDAgMCAxcHgpO1xuICB9XG4gIC5zbGlkZXItaGFuZGxlLnRyaWFuZ2xlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYnJhbmQtd2FybmluZztcbiAgfVxufVxuXG4uc2xpZGVyLWRhbmdlciB7XG4gIC51aS1zbGlkZXItcmFuZ2UtbWluLFxuICAudWktc2xpZGVyLXJhbmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICB9XG4gIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRicmFuZC1kYW5nZXIsIDIwJSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnJhbmQtZGFuZ2VyIDAgMCAwIDFweCk7XG4gIH1cbiAgLnNsaWRlci1oYW5kbGUudHJpYW5nbGUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gIH1cbn1cblxuLnJvdW5kZWQtaGFuZGxlciAudWktc2xpZGVyLWhhbmRsZSB7XG4gIEBpbmNsdWRlIHJvdW5kZWQoNTAlKTtcbn1cbiIsIi8qICRib290c3RyYXAtdGFnc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmRpdi50YWdzaW5wdXQge1xuICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xuICBwYWRkaW5nOiAuMzEyNXJlbSAuMzEyNXJlbSAwO1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXI7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG5kaXYudGFnc2lucHV0IHNwYW4udGFnIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IC4xMjVyZW0gLjMxMjVyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG5cbmRpdi50YWdzaW5wdXQgc3Bhbi50YWcgYSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbmRpdi50YWdzaW5wdXQgaW5wdXQge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ubm90X3ZhbGlkIHtcbiAgY29sb3I6ICRhbGVydC1kYW5nZXItdGV4dCFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6ICRhbGVydC1kYW5nZXItYmchaW1wb3J0YW50O1xufVxuIiwiLyogJGJvb3RzdHJhcC10aW1lcGlja2VyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmLnB1bGwtcmlnaHQge1xuICAgIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQge1xuICAgICAgJi5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogMTJweDtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAxM3B4O1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICB9XG4gIH1cbn1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCB7XG4gICYuZHJvcGRvd24tbWVudSB7XG4gICAgcGFkZGluZzogNHB4O1xuICAgICYub3BlbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgcmdiYSgwLCAwLCAwLCAuMik7XG4gICAgICBib3JkZXItbGVmdDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgI2ZmZjtcbiAgICAgIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG4gICYudGltZXBpY2tlci1vcmllbnQtbGVmdCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogNnB4O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGxlZnQ6IDdweDtcbiAgICB9XG4gIH1cbiAgJi50aW1lcGlja2VyLW9yaWVudC1yaWdodCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDZweDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICByaWdodDogN3B4O1xuICAgIH1cbiAgfVxuICAmLnRpbWVwaWNrZXItb3JpZW50LXRvcCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgdG9wOiAtN3B4O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHRvcDogLTZweDtcbiAgICB9XG4gIH1cbiAgJi50aW1lcGlja2VyLW9yaWVudC1ib3R0b20ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogLTdweDtcbiAgICAgIGJvcmRlci10b3A6IDdweCBzb2xpZCAjOTk5O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBib3R0b206IC02cHg7XG4gICAgICBib3JkZXItdG9wOiA2cHggc29saWQgI2ZmZjtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5nbHlwaGljb24tY2hldnJvbi11cCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWRvd24ge1xuICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgfVxuICAuZ2x5cGhpY29uLWNoZXZyb24tdXA6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjEwNic7XG4gIH1cbiAgLmdseXBoaWNvbi1jaGV2cm9uLWRvd246OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjEwNyc7XG4gIH1cbiAgYS5idG4sXG4gIGlucHV0IHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIH1cbiAgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZCB7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAycHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAmOm5vdCguc2VwYXJhdG9yKSB7XG4gICAgICAgIG1pbi13aWR0aDogMzBweDtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDhweCAwO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgYm9yZGVyOiAxcHggdHJhbnNwYXJlbnQgc29saWQ7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICNkZGQ7XG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQgLm1vZGFsLWNvbnRlbnQge1xuICBwYWRkaW5nOiA0cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkge1xuICAuYm9vdHN0cmFwLXRpbWVwaWNrZXItd2lkZ2V0Lm1vZGFsIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMDBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmJvb3RzdHJhcC10aW1lcGlja2VyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmLnB1bGwtcmlnaHQge1xuICAgIC5ib290c3RyYXAtdGltZXBpY2tlci13aWRnZXQge1xuICAgICAgJi5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogLjc1cmVtO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IC44MTI1cmVtO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCB7XG4gICYuZHJvcGRvd24tbWVudSB7XG4gICAgcGFkZGluZzogMXB4O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAuNDM3NXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IC40Mzc1cmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgLjIpO1xuICAgICAgYm9yZGVyLWxlZnQ6IC40Mzc1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAuMzc1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogLjM3NXJlbSBzb2xpZCAjZmZmO1xuICAgICAgYm9yZGVyLWxlZnQ6IC4zNzVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG4gICYudGltZXBpY2tlci1vcmllbnQtbGVmdCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogLjM3NXJlbTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBsZWZ0OiAuNDM3NXJlbTtcbiAgICB9XG4gIH1cbiAgJi50aW1lcGlja2VyLW9yaWVudC1yaWdodCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IC4zNzVyZW07XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC40Mzc1cmVtO1xuICAgIH1cbiAgfVxuICAmLnRpbWVwaWNrZXItb3JpZW50LXRvcCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgdG9wOiAtLjQzNzVyZW07XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAtLjM3NXJlbTtcbiAgICB9XG4gIH1cbiAgJi50aW1lcGlja2VyLW9yaWVudC1ib3R0b20ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogLS40Mzc1cmVtO1xuICAgICAgYm9yZGVyLXRvcDogLjQzNzVyZW0gc29saWQgIzk5OTtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAtLjM3NXJlbTtcbiAgICAgIGJvcmRlci10b3A6IC4zNzVyZW0gc29saWQgI2ZmZjtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIGEuYnRuLFxuICBpbnB1dCB7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxuICB0YWJsZSB7XG4gICAgdGQuc2VwYXJhdG9yIHtcbiAgICAgIHdpZHRoOiAuMTI1cmVtO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgdGQge1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC1hd2Vzb21lKCk7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IC44NzVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IC44NzVyZW07XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaWNvbi1jaGV2cm9uLWRvd246OmFmdGVyIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogLjU2MjVyZW07XG4gICAgICAgICAgY29udGVudDogJ1xcZjBkZCc7XG4gICAgICAgIH1cbiAgICAgICAgLmljb24tY2hldnJvbi11cDo6YWZ0ZXIge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwZGUnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJvb3RzdHJhcC10aW1lcGlja2VyLXdpZGdldCAubW9kYWwtY29udGVudCB7XG4gIHBhZGRpbmc6IC4yNXJlbTtcbn1cbiIsIi8qICRjMy1jaGFydHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYzMge1xuICBzdmcgdGV4dCxcbiAgc3ZnIHtcbiAgICBmb250OiAuNjI1cmVtICRmb250LWZhbWlseS1iYXNlLXdlYmZvbnQ7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG4gIHBhdGgsXG4gIGxpbmUge1xuICAgIHN0cm9rZTogJGJvcmRlci1jb2xvcjtcbiAgfVxuICAuYzMtdG9vbHRpcCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgICB0ciB7XG4gICAgICBib3JkZXItY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIH1cbiAgICB0aCB7XG4gICAgICBmb250LXNpemU6IC44MTI1cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgfVxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qICRjaGFydGpzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmNhbnZhcy1ob2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmRvdWdobnV0LWxlZ2VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLjVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogLjI1cmVtO1xuICAgIHBhZGRpbmc6IC4xMjVyZW0gLjVyZW0gLjEyNXJlbSAxLjc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAyMDBtcyBlYXNlLWluLW91dCk7XG4gIH1cbiAgbGk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kZWZhdWx0O1xuICB9XG4gIGxpIHNwYW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMS4yNXJlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbiIsIi8qICRjbG9jay1waWNrZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uY2xvY2twaWNrZXItcG9wb3ZlciB7XG4gIC5wb3BvdmVyLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBzcGFuIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbiAgLnBvcG92ZXItY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICB9XG4gIH1cbiAgLmNsb2NrcGlja2VyLXBsYXRlIHtcbiAgICBib3JkZXI6IC4wNjI1cmVtIHNvbGlkICRib3JkZXItY29sb3I7XG4gIH1cbiAgLmNsb2NrcGlja2VyLWJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IC42MjVyZW0gMDtcbiAgICBib3JkZXItd2lkdGg6IC4wNjI1cmVtIDAgMDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICB9XG59XG4iLCIvKiAkY29sb3ItcGlja2VyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmNvbG9ycGlja2VyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgbWluLXdpZHRoOiBpbml0aWFsIWltcG9ydGFudDtcbiAgcGFkZGluZzogLjMxMjVyZW07XG4gIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAuMDYyNXJlbSAxcHggdHJhbnNwYXJlbnRpemUoJGJvcmRlci1jb2xvciwgLjcpKTtcbn1cbiIsIi8qICRkYXRlcGlja2VyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmNlbnRlci1ibG9jayA+IC5kYXRlcGlja2VyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5kYXRlcGlja2VyLmRyb3Bkb3duLW1lbnUge1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgLjA2MjVyZW0gMXB4IHRyYW5zcGFyZW50aXplKCRib3JkZXItY29sb3IsIC43KSk7XG59XG5cbi5kYXRlcGlja2VyLWlubGluZSB7XG4gIGJvcmRlcjogLjA2MjVyZW0gc29saWQgJGJvcmRlci1jb2xvcjtcbn1cblxuLmRhdGVwaWNrZXIge1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAmLWRyb3Bkb3duIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgcGFkZGluZzogJHBhZGRpbmctYmFzZTtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAuMDYyNXJlbSAxcHggdHJhbnNwYXJlbnRpemUoJGJvcmRlci1jb2xvciwgLjcpKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMik7XG4gICAgfVxuICAgICYuZGF0ZXBpY2tlci1vcmllbnQtYm90dG9tOmJlZm9yZSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuICB0YWJsZSB7XG4gICAgdHIge1xuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHRhYmxlIHRyIHRkIHtcbiAgICAmLmFjdGl2ZSxcbiAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAmLmFjdGl2ZS5kaXNhYmxlZCxcbiAgICAmLmFjdGl2ZS5kaXNhYmxlZDpob3ZlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LXNoYWRvdzogMCAtLjA2MjVyZW0gMCByZ2JhKDAsIDAsIDAsIC4yNSk7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgICYuYWN0aXZlLFxuICAgICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgICAmLmFjdGl2ZS5kaXNhYmxlZCxcbiAgICAgICYuYWN0aXZlLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAtLjA2MjVyZW0gMCByZ2JhKDAsIDAsIDAsIC4yNSk7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmlucHV0LWRhdGVyYW5nZSB7XG4gIGlucHV0OmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICB9XG4gIGlucHV0Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDA7XG4gIH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBib3JkZXI6IHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICB9XG59XG4iLCIvKiAkZGF0ZXJhbmdlcGlja2VyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmRhdGVyYW5nZXBpY2tlciB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBtYXJnaW4tdG9wOiAtLjA2MjVyZW07XG4gIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAuMDYyNXJlbSAxcHggdHJhbnNwYXJlbnRpemUoJGJvcmRlci1jb2xvciwgLjcpKTtcbiAgLnJhbmdlcyAuaW5wdXQtbWluaSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG4gIC5jYWxlbmRhci1kYXRlIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxuICB0ZC5hdmFpbGFibGUgKyB0ZC5zdGFydC1kYXRlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICB9XG4gIHRkLmluLXJhbmdlICsgdGQuZW5kLWRhdGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDA7XG4gIH1cbiAgdGQuYXZhaWxhYmxlOmhvdmVyLFxuICB0aC5hdmFpbGFibGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRicmFuZC1kZWZhdWx0O1xuICB9XG4gIHRkLmFjdGl2ZSxcbiAgdGQuYWN0aXZlOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICB9XG4gIHRkLFxuICB0aCB7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxuICAuY2FsZW5kYXIgdGgsXG4gIC5jYWxlbmRhciB0ZCB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cbiAgdGQuc3RhcnQtZGF0ZS5lbmQtZGF0ZSB7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxuICAucmFuZ2VzIGxpIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQ6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxuICAucmFuZ2VzIGxpLmFjdGl2ZSxcbiAgLnJhbmdlcyBsaTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgfVxufVxuIiwiLmRyb3AtYm94IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIHBhZGRpbmc6IDEuNTYzcmVtICRwYWRkaW5nLWJhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAuMDYyNXJlbSBkYXNoZWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbi5kcmFnb3ZlciB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5kcm9wem9uZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgLmR6LW1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAuZHotcHJldmlldy5kei1maWxlLXByZXZpZXcgLmR6LWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtZGVmYXVsdDtcbiAgICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG4gIC5kei1wcmV2aWV3IC5kei1lcnJvci1tZXNzYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtZGFuZ2VyO1xuICAgIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gIH1cbiAgLmR6LXByZXZpZXcgLmR6LWVycm9yLW1lc3NhZ2U6YWZ0ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gIH1cbiAgLmR6LXByZXZpZXcgLmR6LXByb2dyZXNzIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIH1cbiAgLmR6LXByZXZpZXcgLmR6LXByb2dyZXNzIC5kei11cGxvYWQge1xuICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICB9XG4gIC5kei1wcmV2aWV3IC5kei1kZXRhaWxzIC5kei1maWxlbmFtZTpob3ZlciBzcGFuIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIH1cbiAgLmR6LXByZXZpZXcgLmR6LWRldGFpbHMgLmR6LWZpbGVuYW1lIHNwYW4sXG4gIC5kei1wcmV2aWV3IC5kei1kZXRhaWxzIC5kei1zaXplIHNwYW4ge1xuICAgIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gIH1cbn1cblxuLm15LWRyb3Atem9uZSB7XG4gIG1pbi1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLWJhc2U7XG4gIHBhZGRpbmc6IDEuMTg4cmVtO1xuICBib3JkZXI6IGRhc2hlZCAuMDYyNXJlbSAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG5cbi5udi1maWxlLW92ZXIge1xuICBib3JkZXItY29sb3I6ICRicmFuZC1kYW5nZXI7XG59XG5cbi5hbm90aGVyLWZpbGUtb3Zlci1jbGFzcyB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG59XG4iLCIvKiAkZWFzeXBpZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5waWVjaGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY2FudmFzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgPiBkaXYge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICA+IGRpdiA+IGRpdiB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC5wZXJjZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgR2VvcmdpYSwgc2VyaWY7XG4gICAgICBmb250LXNpemU6IC41ZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb250ZW50OiAnJSc7XG4gICAgfVxuICB9XG59XG4iLCIvKiAkZmxvdC1jaGFydFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiN0b29sdGlwIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogLjMxMjVyZW0gLjYyNXJlbTtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAmOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLjI1cmVtO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItd2lkdGg6IC4zNzVyZW07XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICRicmFuZC1wcmltYXJ5IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbnRkLmxlZ2VuZENvbG9yQm94ID4gZGl2IHtcbiAgcGFkZGluZzogMCFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCFpbXBvcnRhbnQ7XG59XG5cbnRkLmxlZ2VuZENvbG9yQm94ID4gZGl2ID4gZGl2IHtcbiAgQGluY2x1ZGUgcm91bmRlZCguMjVyZW0pO1xufVxuXG50ZC5sZWdlbmRMYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogLjMxMjVyZW07XG59XG4iLCIvKiAkZ29vZ2xlLW1hcFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiNjZC1nb29nbGUtbWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jZ29vZ2xlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJSFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDI1cmVtO1xufVxuXG4uZ29vZ2xlLW1hcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5nb29nbGUtbWFwIHtcbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmUhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nbS1zdHlsZS1jYyB7XG4gIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xufVxuIiwiLyogJGludGwtdGVsLWlucHV0XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLml0aS1mbGFnIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogLjY4NzVyZW07XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi5pbnRsLXRlbC1pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICAuZmxhZy1kcm9wZG93bjpob3ZlciAuc2VsZWN0ZWQtZmxhZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUoJGJyYW5kLWRlZmF1bHQsIC41KTtcbiAgfVxuICAuc2VsZWN0ZWQtZmxhZyAuYXJyb3cge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXItY29sb3I7XG4gIH1cbiAgLnNlbGVjdGVkLWZsYWcgLmFycm93LnVwIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICB9XG4gIC5jb3VudHJ5LWxpc3Qge1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbiAgLmNvdW50cnktbGlzdCAuZGl2aWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgfVxuICAuY291bnRyeS1saXN0IC5jb3VudHJ5IC5kaWFsLWNvZGUge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAuY291bnRyeS1saXN0IC5jb3VudHJ5LmhpZ2hsaWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUoJGJyYW5kLWRlZmF1bHQsIC41KTtcbiAgfVxufVxuIiwiLyogJGp2ZWN0b3JtYXBcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uanZlY3Rvcm1hcC10aXAge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXI6IHNvbGlkIC4wNjI1cmVtICRicmFuZC1wcmltYXJ5O1xuICBiYWNrZ3JvdW5kOiAkYnJhbmQtd2hpdGU7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG5cbi5qdmVjdG9ybWFwLWxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IC4xODc1cmVtO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xufVxuXG4uanZlY3Rvcm1hcC16b29taW4sXG4uanZlY3Rvcm1hcC16b29tb3V0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIG1hcmdpbi1sZWZ0OiAkcGFkZGluZy1iYXNlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgQGluY2x1ZGUgcm91bmRlZCguMTI1cmVtKTtcbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICB3aWR0aDogLjEyNXJlbTtcbiAgICBoZWlnaHQ6IC42MjVyZW07XG4gICAgbWFyZ2luLXRvcDogLS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0uMDYyNXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgd2lkdGg6IC42MjVyZW07XG4gICAgaGVpZ2h0OiAuMTI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLS4zMTI1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cbi5qdmVjdG9ybWFwLXpvb21pbiB7XG4gIHRvcDogJHBhZGRpbmctYmFzZTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmp2ZWN0b3JtYXAtem9vbW91dCB7XG4gIHRvcDogKCRwYWRkaW5nLWJhc2UgKyAyLjA2M3JlbSk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8qICRsYWJlbGF1dHlcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5pbnB1dC5sYWJlbGF1dHkgKyBsYWJlbCB7XG4gIHBhZGRpbmc6IC41NjI1cmVtIC42MjVyZW07XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRlZmF1bHQ7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG5cbmlucHV0LmxhYmVsYXV0eTpub3QoOmNoZWNrZWQpOm5vdChbZGlzYWJsZWRdKSArIGxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRicmFuZC1kZWZhdWx0LCAyJSk7XG59XG5cbmlucHV0LmxhYmVsYXV0eTpjaGVja2VkICsgbGFiZWwge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG5pbnB1dC5sYWJlbGF1dHk6Y2hlY2tlZDpub3QoW2Rpc2FibGVkXSkgKyBsYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnJhbmQtcHJpbWFyeSwgNSUpO1xufVxuXG5pbnB1dC5idG4tYmxvY2sgKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuaW5wdXQudG8tbGFiZWxhdXR5LWljb24gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAuMzEyNXJlbTtcbn1cbiIsIi8qICRtdWx0aXNlbGVjdFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbnNlbGVjdC5jZW50ZXItYmxvY2sgKyAubXMtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG8gJGd1dHRlcjtcbn1cblxuLm1zLWNvbnRhaW5lciAubXMtc2VsZWN0YWJsZSxcbi5tcy1jb250YWluZXIgLm1zLXNlbGVjdGlvbiB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbn1cblxuLm1zLWNvbnRhaW5lciAubXMtbGlzdCB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbn1cblxuLm1zLWNvbnRhaW5lciAubXMtbGlzdC5tcy1mb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi5tcy1jb250YWluZXIgLm1zLXNlbGVjdGFibGUgbGkubXMtZWxlbS1zZWxlY3RhYmxlLFxuLm1zLWNvbnRhaW5lciAubXMtc2VsZWN0aW9uIGxpLm1zLWVsZW0tc2VsZWN0aW9uIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlci1jb2xvcjtcbn1cblxuLm1zLWNvbnRhaW5lciAubXMtc2VsZWN0YWJsZSBsaS5tcy1ob3Zlcixcbi5tcy1jb250YWluZXIgLm1zLXNlbGVjdGlvbiBsaS5tcy1ob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5tcy1jb250YWluZXIgLm1zLXNlbGVjdGFibGUgbGkuZGlzYWJsZWQsXG4ubXMtY29udGFpbmVyIC5tcy1zZWxlY3Rpb24gbGkuZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGVmYXVsdDtcbn1cbiIsIi8qICRuZXN0YWJsZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5kZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmRkLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5kZC1saXN0IC5kZC1saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbn1cblxuLmRkLWNvbGxhcHNlZCAuZGQtbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kZC1pdGVtLFxuLmRkLWVtcHR5LFxuLmRkLXBsYWNlaG9sZGVyIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmRkLWhhbmRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IC4zMTI1cmVtIDA7XG4gIHBhZGRpbmc6IC42MjVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG5cbi5kZC1oYW5kbGU6aG92ZXIge1xuICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uZGQtaXRlbSB7XG4gID4gLmRkLWhhbmRsZSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNSk7XG4gIH1cbiAgPiBidXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMi4xODhyZW07XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG4gID4gYnV0dG9uOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNTAlO1xuICAgIHdpZHRoOiAuMTI1cmVtO1xuICAgIGhlaWdodDogLjYyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtLjMxMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtLjA2MjVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogJHRleHQtY29sb3I7XG4gIH1cbiAgPiBidXR0b246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICB3aWR0aDogLjYyNXJlbTtcbiAgICBoZWlnaHQ6IC4xMjVyZW07XG4gICAgbWFyZ2luLXRvcDogLS4wNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLS4zMTI1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6ICR0ZXh0LWNvbG9yO1xuICB9XG4gID4gYnV0dG9uW2RhdGEtYWN0aW9uPSdjb2xsYXBzZSddOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZGQtcGxhY2Vob2xkZXIsXG4uZGQtZW1wdHkge1xuICBtaW4taGVpZ2h0OiAxLjg3NXJlbTtcbiAgbWFyZ2luOiAuMzEyNXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IC4wNjI1cmVtIGRhc2hlZCAjZGRkO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmRkLWVtcHR5IHtcbiAgbWluLWhlaWdodDogMTAwcHg7XG4gIGJvcmRlcjogLjA2MjVyZW0gZGFzaGVkICNiYmI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZmZmIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsICNmZmYgNzUlLCAjZmZmKSwgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZmYgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgI2ZmZiA3NSUsICNmZmYpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCg0NWRlZywgI2ZmZiAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNzUlLCAjZmZmIDc1JSwgI2ZmZiksIC1tb3otbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZmZmIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsICNmZmYgNzUlLCAjZmZmKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZmZmIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsICNmZmYgNzUlLCAjZmZmKSwgbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZmZmIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsICNmZmYgNzUlLCAjZmZmKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCAzMHB4IDMwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogNjBweCA2MHB4O1xufVxuXG4uZGQtZHJhZ2VsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgPiAuZGQtaXRlbSAuZGQtaGFuZGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5kZC1oYW5kbGUge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coLjEyNXJlbSAuMjVyZW0gLjM3NXJlbSAwIHJnYmEoMCwgMCwgMCwgLjEpKTtcbiAgfVxufVxuXG5cbi8qKlxuICogTmVzdGFibGUgRHJhZ2dhYmxlIEhhbmRsZXNcbiAqL1xuXG4uZGQzLWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAuMzEyNXJlbSAwO1xuICBwYWRkaW5nOiAuNjI1cmVtIC42MjVyZW0gLjYyNXJlbSAzLjEyNXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAvL2JvcmRlcjogMC4wNjI1cmVtIHNvbGlkJGJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgLjA1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA1KTtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxufVxuXG4uZGQtZHJhZ2VsID4gLmRkMy1pdGVtID4gLmRkMy1jb250ZW50IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uZGQzLWl0ZW0gPiBidXR0b24ge1xuICBtYXJnaW4tbGVmdDogMi41cmVtO1xufVxuXG4uZGQzLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMi4zNzVyZW07XG4gIG1hcmdpbjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWluZGVudDogMTAwJTtcbiAgYm9yZGVyOiAuMDYyNXJlbSBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gICY6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29udGVudDogJ1xcZjBjOSc7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtaW5kZW50OiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtYXdlc29tZSgpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRicmFuZC1kZWZhdWx0O1xuICB9XG59XG4iLCIvKiAkbm90eVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmxpLmFwcC1ub3R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcjtcbn1cblxubGkuYXBwLW5vdHk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ub3R5X21lc3NhZ2Vbc3R5bGVdIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UhaW1wb3J0YW50O1xufVxuXG4uYXBwLW5vdHkgLm5vdHlfYmFyIHtcbiAgcGFkZGluZzogMXJlbSAkcGFkZGluZy1iYXNlO1xuICBib3JkZXI6IC4wNjI1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cblxuLmFwcC1ub3R5LXRvcC1sZWZ0LFxuLmFwcC1ub3R5LXRvcC1yaWdodCxcbi5hcHAtbm90eS10b3Age1xuICAuYXBwLW5vdHkgLm5vdHlfYmFyIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluIDE1MG1zO1xuICAgIGFuaW1hdGlvbjogZmFkZUluIDE1MG1zO1xuICB9XG4gIC5hcHAtbm90eS5pLWFtLWNsb3Npbmctbm93IC5ub3R5X2JhciB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVPdXQgMTUwbXM7XG4gICAgYW5pbWF0aW9uOiBmYWRlT3V0IDE1MG1zO1xuICB9XG59XG5cbi5hcHAtbm90eS1ib3R0b20tbGVmdCxcbi5hcHAtbm90eS1ib3R0b20tcmlnaHQsXG4uYXBwLW5vdHktYm90dG9tIHtcbiAgLmFwcC1ub3R5IC5ub3R5X2JhciB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJbiAxNTBtcztcbiAgICBhbmltYXRpb246IGZhZGVJbiAxNTBtcztcbiAgfVxuICAuYXBwLW5vdHkuaS1hbS1jbG9zaW5nLW5vdyAubm90eV9iYXIge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlT3V0IDE1MG1zO1xuICAgIGFuaW1hdGlvbjogZmFkZU91dCAxNTBtcztcbiAgfVxufVxuXG4uYXBwLW5vdHktYm90dG9tLFxuLmFwcC1ub3R5LWJvdHRvbS1yaWdodCxcbi5hcHAtbm90eS1ib3R0b20tbGVmdCxcbi5hcHAtbm90eS10b3AsXG4uYXBwLW5vdHktdG9wLXJpZ2h0LFxuLmFwcC1ub3R5LXRvcC1sZWZ0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKSk7XG59XG5cblxuLyogQm90dG9tIG5vdGlmaWNhdGlvbiAqL1xuXG4uYXBwLW5vdHktYm90dG9tIHtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpLmFwcC1ub3R5IHtcbiAgICBtYXJnaW4tdG9wOiAtLjA2MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAubm90eV9iYXIge1xuICAgIEBpbmNsdWRlIHJvdW5kZWQoMCk7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAuYXBwLW5vdHktYm90dG9tIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlYmFyLXdpZHRoO1xuICB9XG4gIC5leHBhbmRpbmcgfiAuYXBwLW5vdHktYm90dG9tIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlYmFyLXNtYWxsLW1lbnUtd2lkdGg7XG4gIH1cbiAgLmhvcml6b250YWwgfiAuYXBwLW5vdHktYm90dG9tLFxuICAub2ZmY2FudmFzIH4gLmFwcC1ub3R5LWJvdHRvbSxcbiAgLmJveGVkIH4gLmFwcC1ub3R5LWJvdHRvbSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vKiBCb3R0b20gcmlnaHQgbm90aWZpY2F0aW9uICovXG5cbi5hcHAtbm90eS1ib3R0b20tcmlnaHQge1xuICByaWdodDogJGd1dHRlcjtcbiAgYm90dG9tOiAoJGZvb3Rlci1oZWlnaHQgKyAkZ3V0dGVyKTtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAuYm94ZWQgfiAuYXBwLW5vdHktYm90dG9tLXJpZ2h0e1xuICAgIHJpZ2h0OiAkZ3V0dGVyO1xuICB9XG59XG5cblxuLyogQm90dG9tIGxlZnQgbm90aWZpY2F0aW9uICovXG5cbi5hcHAtbm90eS1ib3R0b20tbGVmdCB7XG4gIGJvdHRvbTogKCRmb290ZXItaGVpZ2h0ICsgJGd1dHRlcik7XG4gIGxlZnQ6ICRndXR0ZXI7XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLmFwcC1ub3R5LWJvdHRvbS1sZWZ0IHtcbiAgICBsZWZ0OiAoJHNpZGViYXItd2lkdGggKyAkZ3V0dGVyKTtcbiAgfVxuICAuZXhwYW5kaW5nIH4gLmFwcC1ub3R5LWJvdHRvbS1sZWZ0IHtcbiAgICBsZWZ0OiAoJHNpZGViYXItc21hbGwtbWVudS13aWR0aCArICRndXR0ZXIpO1xuICB9XG4gIC5ob3Jpem9udGFsIH4gLmFwcC1ub3R5LWJvdHRvbS1sZWZ0LFxuICAub2ZmY2FudmFzIH4gLmFwcC1ub3R5LWJvdHRvbS1sZWZ0LFxuICAuYm94ZWQgfiAuYXBwLW5vdHktYm90dG9tLWxlZnQsXG4gIC5ib3hlZC5leHBhbmRpbmcgfiAuYXBwLW5vdHktYm90dG9tLWxlZnQge1xuICAgIGxlZnQ6ICRndXR0ZXI7XG4gIH1cbn1cblxuXG4vKiBUb3Agbm90aWZpY2F0aW9uICovXG5cbi5hcHAtbm90eS10b3Age1xuICB0b3A6ICgkaGVhZGVyLWhlaWdodCArICRndXR0ZXIpO1xuICByaWdodDogJGd1dHRlcjtcbn1cblxuLmFwcC1ub3R5LXRvcCB7XG4gIHRvcDogKCRoZWFkZXItaGVpZ2h0KTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBsaS5hcHAtbm90eSB7XG4gICAgbWFyZ2luLXRvcDogLS4wNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLm5vdHlfYmFyIHtcbiAgICBAaW5jbHVkZSByb3VuZGVkKDApO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLmFwcC1ub3R5LXRvcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2lkZWJhci13aWR0aDtcbiAgfVxuICAuZXhwYW5kaW5nIH4gLmFwcC1ub3R5LXRvcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmctbGVmdDogJHNpZGViYXItc21hbGwtbWVudS13aWR0aDtcbiAgfVxuICAuaG9yaXpvbnRhbCB+IC5hcHAtbm90eS10b3AsXG4gIC5vZmZjYW52YXMgfiAuYXBwLW5vdHktdG9wLFxuICAuYm94ZWQgfiAuYXBwLW5vdHktdG9wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8qIFRvcCByaWdodCBub3RpZmljYXRpb24gKi9cblxuLmFwcC1ub3R5LXRvcC1yaWdodCB7XG4gIHRvcDogKCRoZWFkZXItaGVpZ2h0ICsgJGd1dHRlcik7XG4gIHJpZ2h0OiAkZ3V0dGVyO1xufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5ib3hlZCB+IC5hcHAtbm90eS10b3AtcmlnaHQsXG4gIC5ib3hlZC5leHBhbmRpbmcgfiAuYXBwLW5vdHktdG9wLXJpZ2h0IHtcbiAgICByaWdodDogJGd1dHRlcjtcbiAgfVxufVxuXG5cbi8qIFRvcCBsZWZ0IG5vdGlmaWNhdGlvbiAqL1xuXG4uYXBwLW5vdHktdG9wLWxlZnQge1xuICB0b3A6ICgkaGVhZGVyLWhlaWdodCArICRndXR0ZXIpO1xuICBsZWZ0OiAkZ3V0dGVyO1xufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5hcHAtbm90eS10b3AtbGVmdCB7XG4gICAgbGVmdDogKCRzaWRlYmFyLXdpZHRoICsgJGd1dHRlcik7XG4gIH1cbiAgLmV4cGFuZGluZyB+IC5hcHAtbm90eS10b3AtbGVmdCB7XG4gICAgbGVmdDogKCRzaWRlYmFyLXNtYWxsLW1lbnUtd2lkdGggKyAkZ3V0dGVyKTtcbiAgfVxuICAuaG9yaXpvbnRhbCB+IC5hcHAtbm90eS10b3AtbGVmdCxcbiAgLm9mZmNhbnZhcyB+IC5hcHAtbm90eS10b3AtbGVmdCxcbiAgLmJveGVkIH4gLmFwcC1ub3R5LXRvcC1sZWZ0LFxuICAuYm94ZWQuZXhwYW5kaW5nIH4gLmFwcC1ub3R5LXRvcC1sZWZ0IHtcbiAgICBsZWZ0OiAkZ3V0dGVyO1xuICB9XG59XG5cblxuLyogTm90aWZpY2F0aW9uIGNvbG9ycyAqL1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcubm90eV9jb250YWluZXJfdHlwZV9zdWNjZXNzIC5ub3R5X2JhcicsICRicmFuZC1zdWNjZXNzKTtcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5ub3R5X2NvbnRhaW5lcl90eXBlX2luZm9ybWF0aW9uIC5ub3R5X2JhcicsICRicmFuZC1pbmZvKTtcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5ub3R5X2NvbnRhaW5lcl90eXBlX3dhcm5pbmcgLm5vdHlfYmFyJywgJGJyYW5kLXdhcm5pbmcpO1xuQGluY2x1ZGUgYmctdmFyaWFudCgnLm5vdHlfY29udGFpbmVyX3R5cGVfZXJyb3IgLm5vdHlfYmFyJywgJGJyYW5kLWRhbmdlcik7XG5AaW5jbHVkZSBiZy12YXJpYW50KCcubm90eV9jb250YWluZXJfdHlwZV9jb25maXJtIC5ub3R5X2JhcicsICRicmFuZC1wcmltYXJ5KTtcbiIsIi8qIVxuICogdWktc2VsZWN0XG4gKiBodHRwOi8vZ2l0aHViLmNvbS9hbmd1bGFyLXVpL3VpLXNlbGVjdFxuICogVmVyc2lvbjogMC4xMy4xIC0gMjAxNS0wOS0zMFQwNTozOToyNi42NTlaXG4gKiBMaWNlbnNlOiBNSVRcbiAqL1xuXG4udWktc2VsZWN0LWNob2ljZXMtcm93OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRlZmF1bHQ7XG59XG5cblxuLyogU2VsZWN0MiB0aGVtZSAqL1xuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDM0cHg7XG4gIHBhZGRpbmc6IDAgMCAwIDhweDtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgY29udGVudDogJyAnO1xuICAgIGJvcmRlci13aWR0aDogNXB4IDVweCAwIDVweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzgwODA4MCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uOjphZnRlciB7XG4gIG1hcmdpbi10b3A6IC00cHg7XG4gIGJvcmRlci13aWR0aDogMCA1cHggNXB4IDVweDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODA4MDgwIHRyYW5zcGFyZW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXIuc2VsZWN0Mi1kcm9wLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi5zZWxlY3QyLWRyb3Bkb3duLnNlbGVjdDItZHJvcGRvd24tLWFib3ZlIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4sXG4uc2VsZWN0Mi1kcm9wZG93bi5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZS5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5zZWxlY3QyLWRyb3AtYXV0by13aWR0aCB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbiAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDAgJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDA7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItYWN0aXZlIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci1hY3RpdmUgLnNlbGVjdDItY2hvaWNlcyB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi5zZWxlY3QyLWRyb3Bkb3duLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi5zZWxlY3QyLWRyb3Bkb3duLW9wZW4uc2VsZWN0Mi1kcm9wLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWRyb3Bkb3duLW9wZW4uc2VsZWN0Mi1kcm9wLWFib3ZlIC5zZWxlY3QyLWNob2ljZXMge1xuICBib3JkZXItY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItbXVsdGkgLnNlbGVjdDItY2hvaWNlcyB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlLFxuLnNlbGVjdDItY29udGFpbmVyLW11bHRpLnNlbGVjdDItY29udGFpbmVyLWFjdGl2ZSAuc2VsZWN0Mi1jaG9pY2VzIHtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UsXG4uc2VsZWN0Mi1jb250YWluZXItbXVsdGkgLnNlbGVjdDItY2hvaWNlcyAuc2VsZWN0Mi1zZWFyY2gtY2hvaWNlIHtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtZGVmYXVsdDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4uc2VsZWN0Mi1yZXN1bHRzIC5zZWxlY3QyLWhpZ2hsaWdodGVkIHtcbiAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5zZWxlY3QyLXNlYXJjaC1jaG9pY2UtY2xvc2Uge1xuICB0b3A6IDJweDtcbn1cblxuLnNlbGVjdDItc2VhcmNoIGlucHV0IHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yIWltcG9ydGFudDtcbiAgb3V0bGluZTogMDtcbn1cblxuXG4vKiBNYXJrIGludmFsaWQgU2VsZWN0MiAqL1xuXG4ubmctZGlydHkubmctaW52YWxpZCA+IGEuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXItY29sb3I6ICRicmFuZC1kYW5nZXI7XG59XG5cblxuLyogSGFuZGxlIHVwIGRpcmVjdGlvbiBTZWxlY3QyICovXG5cbi5zZWxlY3QyLWNvbnRhaW5lci1tdWx0aSAuc2VsZWN0Mi1jaG9pY2VzIC5zZWxlY3QyLXNlYXJjaC1maWVsZCBpbnB1dCB7XG4gICAgcGFkZGluZzogMC42cmVtIDAuMzEyNXJlbTtcbiAgICBtYXJnaW46IDA7XG59XG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddLmRpcmVjdGlvbi11cCAudWktc2VsZWN0LW1hdGNoIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10uZGlyZWN0aW9uLXVwIC51aS1zZWxlY3QtZHJvcGRvd24ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWNob2ljZSxcbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10gLnNlbGVjdDItY2hvaWNlIHtcbiAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gIGhlaWdodDogMzhweDtcbiAgcGFkZGluZzogMCAkcGFkZGluZy1iYXNlO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnNlbGVjdDItZHJvcC1hY3RpdmUsXG4uc2VsZWN0Mi1jb250YWluZXItYWN0aXZlIC5zZWxlY3QyLWNob2ljZSwgLnNlbGVjdDItY29udGFpbmVyLWFjdGl2ZSAuc2VsZWN0Mi1jaG9pY2VzIHtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWNob2ljZSAuc2VsZWN0Mi1hcnJvdyxcbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10gLnNlbGVjdDItY2hvaWNlIC5zZWxlY3QyLWFycm93IHtcbiAgd2lkdGg6IDM4cHg7XG4gIC8vaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItY2hvaWNlIC5zZWxlY3QyLWFycm93OjphZnRlcixcbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10gLnNlbGVjdDItY2hvaWNlIC5zZWxlY3QyLWFycm93OjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCAwIDVweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjODA4MDgwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItY2hvaWNlIC5zZWxlY3QyLWFycm93IGIsXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddIC5zZWxlY3QyLWNob2ljZSAuc2VsZWN0Mi1hcnJvdyBiIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddLnNlbGVjdDItY29udGFpbmVyLWFjdGl2ZSAuc2VsZWN0Mi1jaG9pY2UsXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddLnNlbGVjdDItY29udGFpbmVyLWFjdGl2ZSAuc2VsZWN0Mi1jaG9pY2VzIHtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLnVpLXNlbGVjdC1jb250YWluZXJbdGhlbWU9J3NlbGVjdDInXS5zZWxlY3QyLWRyb3Bkb3duLW9wZW4gLnNlbGVjdDItY2hvaWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5cbi51aS1zZWxlY3QtY29udGFpbmVyW3RoZW1lPSdzZWxlY3QyJ10gLnNlbGVjdDItZHJvcC1hY3RpdmUge1xuICBib3JkZXItY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddLmRpcmVjdGlvbi11cC5zZWxlY3QyLWRyb3Bkb3duLW9wZW4gLnVpLXNlbGVjdC1tYXRjaCB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0MiddIC5zZWxlY3QyLXNlYXJjaCBpbnB1dCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbWluLWhlaWdodDogMzhweDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuLnVpLXNlbGVjdC1jb250YWluZXJbdGhlbWU9J3NlbGVjdDInXSAuc2VsZWN0Mi1yZXN1bHRzIC5zZWxlY3QyLWhpZ2hsaWdodGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xufVxuXG5cbi8qIFNlbGVjdGl6ZSB0aGVtZSAqL1xuXG4uc2VsZWN0aXplLWNvbnRyb2wubXVsdGkgLnNlbGVjdGl6ZS1pbnB1dC5oYXMtaXRlbXMge1xuICAgIHBhZGRpbmc6IDdweCA4cHggNHB4O1xufVxuXG4uc2VsZWN0aXplLWlucHV0IHtcbiAgcGFkZGluZzogOXB4IDhweDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xufVxuXG4uc2VsZWN0aXplLWRyb3Bkb3duLWhlYWRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXItY29sb3I7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICBiYWNrZ3JvdW5kOiAkYnJhbmQtZGVmYXVsdDtcbn1cblxuLnNlbGVjdGl6ZS1pbnB1dC5mb2N1cyB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi5zZWxlY3RpemUtaW5wdXQuZHJvcGRvd24tYWN0aXZlIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG59XG5cbi5zZWxlY3RpemUtZHJvcGRvd24ge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMCAwICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbn1cblxuLnNlbGVjdGl6ZS1kcm9wZG93biAuY3JlYXRlIHtcbiAgY29sb3I6IHdoaXRlIWltcG9ydGFudDtcbn1cblxuXG4vKiBIZWxwZXIgY2xhc3MgdG8gc2hvdyBzdHlsZXMgd2hlbiBmb2N1cyAqL1xuXG4uc2VsZWN0aXplLWlucHV0LnNlbGVjdGl6ZS1mb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbn1cblxuXG4vKiBNYXJrIGludmFsaWQgU2VsZWN0aXplICovXG5cbi5uZy1kaXJ0eS5uZy1pbnZhbGlkID4gZGl2LnNlbGVjdGl6ZS1pbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLWRhbmdlcjtcbn1cblxuXG4vKiBIYW5kbGUgdXAgZGlyZWN0aW9uIFNlbGVjdGl6ZSAqL1xuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0aXplJ10uZGlyZWN0aW9uLXVwIC51aS1zZWxlY3QtZHJvcGRvd24ge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xufVxuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nc2VsZWN0aXplJ10gLnNlbGVjdGl6ZS1pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nOiAuNDM3NXJlbSAkcGFkZGluZy1iYXNlO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbn1cblxuLnVpLXNlbGVjdC1jb250YWluZXJbdGhlbWU9J3NlbGVjdGl6ZSddIC5zZWxlY3RpemUtZHJvcGRvd24ge1xuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi5zZWxlY3RpemUtZHJvcGRvd24gLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuXG4vKiBCb290c3RyYXAgdGhlbWUgKi9cblxuXG4vKiBIZWxwZXIgY2xhc3MgdG8gc2hvdyBzdHlsZXMgd2hlbiBmb2N1cyAqL1xuXG4uYnRuLWRlZmF1bHQtZm9jdXMge1xuICBib3JkZXItY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICBvdXRsaW5lOiAwO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAudWktc2VsZWN0LWJvb3RzdHJhcCA+IGlucHV0LnVpLXNlbGVjdC1zZWFyY2guZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAudWktc2VsZWN0LWJvb3RzdHJhcCA+IGlucHV0LnVpLXNlbGVjdC1zZWFyY2guZm9ybS1jb250cm9sLmRpcmVjdGlvbi11cCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnVpLXNlbGVjdC1tdWx0aXBsZSAudWktc2VsZWN0LW1hdGNoLWl0ZW0uZHJvcHBpbmctYmVmb3JlOmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi51aS1zZWxlY3QtbXVsdGlwbGUgLnVpLXNlbGVjdC1tYXRjaC1pdGVtLmRyb3BwaW5nLWFmdGVyOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuLnVpLXNlbGVjdC1ib290c3RyYXAgLnVpLXNlbGVjdC1jaG9pY2VzLXJvdy5hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi51aS1zZWxlY3QtYm9vdHN0cmFwIC51aS1zZWxlY3QtY2hvaWNlcyB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuXG4vKiBNYXJrIGludmFsaWQgQm9vdHN0cmFwICovXG5cbi51aS1zZWxlY3QtYm9vdHN0cmFwLm5nLWRpcnR5Lm5nLWludmFsaWQgPiBidXR0b24uYnRuLnVpLXNlbGVjdC1tYXRjaCB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLWRhbmdlcjtcbn1cblxuXG4vKiBIYW5kbGUgdXAgZGlyZWN0aW9uIEJvb3RzdHJhcCAqL1xuXG4udWktc2VsZWN0LWNvbnRhaW5lclt0aGVtZT0nYm9vdHN0cmFwJ10uZGlyZWN0aW9uLXVwIC51aS1zZWxlY3QtZHJvcGRvd24ge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xufVxuIiwiLypcbiAqICBVc2FnZTpcbiAqXG4gICAgIDxkaXYgY2xhc3M9XCJzay1yb3RhdGluZy1wbGFuZVwiPjwvZGl2PlxuICpcbiAqL1xuXG4uc2stcm90YXRpbmctcGxhbmUge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stcm90YXRlUGxhbmUgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay1yb3RhdGVQbGFuZSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLXJvdGF0ZVBsYW5lIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgwZGVnKSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoMGRlZykgcm90YXRlWSgwZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwLjFkZWcpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwLjFkZWcpIHJvdGF0ZVkoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKC0xODBkZWcpIHJvdGF0ZVkoLTE3OS45ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKC0xODBkZWcpIHJvdGF0ZVkoLTE3OS45ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLXJvdGF0ZVBsYW5lIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgwZGVnKSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoMGRlZykgcm90YXRlWSgwZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwLjFkZWcpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwLjFkZWcpIHJvdGF0ZVkoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKC0xODBkZWcpIHJvdGF0ZVkoLTE3OS45ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKC0xODBkZWcpIHJvdGF0ZVkoLTE3OS45ZGVnKTtcbiAgfVxufVxuXG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLWRvdWJsZS1ib3VuY2VcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNoaWxkIHNrLWRvdWJsZS1ib3VuY2UxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3VibGUtYm91bmNlMlwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG5cbi5zay1kb3VibGUtYm91bmNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG4uc2stZG91YmxlLWJvdW5jZSAuc2stY2hpbGQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLWRvdWJsZUJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay1kb3VibGVCb3VuY2UgMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIG9wYWNpdHk6IC42O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG4uc2stZG91YmxlLWJvdW5jZSAuc2stZG91YmxlLWJvdW5jZTIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1kb3VibGVCb3VuY2Uge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWRvdWJsZUJvdW5jZSB7XG4gIDAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cblxuLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2std2F2ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0MVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0MlwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0M1wiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0NFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0NVwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG5cbi5zay13YXZlIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zay13YXZlIC5zay1yZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay13YXZlU3RyZXRjaERlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogc2std2F2ZVN0cmV0Y2hEZWxheSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuLnNrLXdhdmUgLnNrLXJlY3QxIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjJzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjJzO1xufVxuXG4uc2std2F2ZSAuc2stcmVjdDIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTEuMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTEuMXM7XG59XG5cbi5zay13YXZlIC5zay1yZWN0MyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTFzO1xufVxuXG4uc2std2F2ZSAuc2stcmVjdDQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS45cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjlzO1xufVxuXG4uc2std2F2ZSAuc2stcmVjdDUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS44cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjhzO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2std2F2ZVN0cmV0Y2hEZWxheSB7XG4gIDAlLFxuICA0MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoLjQpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKC40KTtcbiAgfVxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay13YXZlU3RyZXRjaERlbGF5IHtcbiAgMCUsXG4gIDQwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSguNCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLjQpO1xuICB9XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgfVxufVxuXG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLXdhbmRlcmluZy1jdWJlc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlMVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZSBzay1jdWJlMlwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG5cbi5zay13YW5kZXJpbmctY3ViZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbi5zay13YW5kZXJpbmctY3ViZXMgLnNrLWN1YmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLXdhbmRlcmluZ0N1YmUgMS44cyBlYXNlLWluLW91dCAtMS44cyBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IHNrLXdhbmRlcmluZ0N1YmUgMS44cyBlYXNlLWluLW91dCAtMS44cyBpbmZpbml0ZSBib3RoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuLnNrLXdhbmRlcmluZy1jdWJlcyAuc2stY3ViZTIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS45cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjlzO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2std2FuZGVyaW5nQ3ViZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCkgcm90YXRlKC05MGRlZykgc2NhbGUoLjUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KSByb3RhdGUoLTkwZGVnKSBzY2FsZSguNSk7XG4gIH1cbiAgNTAlIHtcbiAgICAvKiBIYWNrIHRvIG1ha2UgRkYgcm90YXRlIGluIHRoZSByaWdodCBkaXJlY3Rpb24gKi9cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KSB0cmFuc2xhdGVZKDMwcHgpIHJvdGF0ZSgtMTc5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCkgdHJhbnNsYXRlWSgzMHB4KSByb3RhdGUoLTE3OWRlZyk7XG4gIH1cbiAgNTAuMSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0xODBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KSB0cmFuc2xhdGVZKDMwcHgpIHJvdGF0ZSgtMTgwZGVnKTtcbiAgfVxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0yNzBkZWcpIHNjYWxlKC41KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgzMHB4KSByb3RhdGUoLTI3MGRlZykgc2NhbGUoLjUpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay13YW5kZXJpbmdDdWJlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KSByb3RhdGUoLTkwZGVnKSBzY2FsZSguNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHJvdGF0ZSgtOTBkZWcpIHNjYWxlKC41KTtcbiAgfVxuICA1MCUge1xuICAgIC8qIEhhY2sgdG8gbWFrZSBGRiByb3RhdGUgaW4gdGhlIHJpZ2h0IGRpcmVjdGlvbiAqL1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0xNzlkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KSB0cmFuc2xhdGVZKDMwcHgpIHJvdGF0ZSgtMTc5ZGVnKTtcbiAgfVxuICA1MC4xJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCkgdHJhbnNsYXRlWSgzMHB4KSByb3RhdGUoLTE4MGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpIHRyYW5zbGF0ZVkoMzBweCkgcm90YXRlKC0xODBkZWcpO1xuICB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgzMHB4KSByb3RhdGUoLTI3MGRlZykgc2NhbGUoLjUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDMwcHgpIHJvdGF0ZSgtMjcwZGVnKSBzY2FsZSguNSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgfVxufVxuXG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLXNwaW5uZXIgc2stc3Bpbm5lci1wdWxzZVwiPjwvZGl2PlxuICpcbiAqL1xuXG4uc2stc3Bpbm5lci1wdWxzZSB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1wdWxzZVNjYWxlT3V0IDFzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb246IHNrLXB1bHNlU2NhbGVPdXQgMXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2stcHVsc2VTY2FsZU91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2stcHVsc2VTY2FsZU91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cblxuLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2stY2hhc2luZy1kb3RzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3QxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3QyXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqXG4gKi9cblxuLnNrLWNoYXNpbmctZG90cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLWNoYXNpbmdEb3RzUm90YXRlIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBzay1jaGFzaW5nRG90c1JvdGF0ZSAycyBpbmZpbml0ZSBsaW5lYXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNrLWNoYXNpbmctZG90cyAuc2stY2hpbGQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNjAlO1xuICBoZWlnaHQ6IDYwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLWNoYXNpbmdEb3RzQm91bmNlIDJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb246IHNrLWNoYXNpbmdEb3RzQm91bmNlIDJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuLnNrLWNoYXNpbmctZG90cyAuc2stZG90MiB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTFzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xcztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLWNoYXNpbmdEb3RzUm90YXRlIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1jaGFzaW5nRG90c1JvdGF0ZSB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1jaGFzaW5nRG90c0JvdW5jZSB7XG4gIDAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2stY2hhc2luZ0RvdHNCb3VuY2Uge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLXRocmVlLWJvdW5jZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hpbGQgc2stYm91bmNlMVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hpbGQgc2stYm91bmNlMlwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hpbGQgc2stYm91bmNlM1wiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG5cbi5zay10aHJlZS1ib3VuY2Uge1xuICB3aWR0aDogODBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2stdGhyZWUtYm91bmNlIC5zay1jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLXRocmVlLWJvdW5jZSAxLjRzIGVhc2UtaW4tb3V0IDBzIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogc2stdGhyZWUtYm91bmNlIDEuNHMgZWFzZS1pbi1vdXQgMHMgaW5maW5pdGUgYm90aDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5zay10aHJlZS1ib3VuY2UgLnNrLWJvdW5jZTEge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS4zMnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS4zMnM7XG59XG5cbi5zay10aHJlZS1ib3VuY2UgLnNrLWJvdW5jZTIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS4xNnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS4xNnM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay10aHJlZS1ib3VuY2Uge1xuICAwJSxcbiAgODAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2stdGhyZWUtYm91bmNlIHtcbiAgMCUsXG4gIDgwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5cbi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMSBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMiBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMyBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlNCBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlNSBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlNiBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlNyBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlOCBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlOSBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMTAgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTExIHNrLWNoaWxkXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUxMiBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG5cbi5zay1jaXJjbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNoaWxkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTUlO1xuICBoZWlnaHQ6IDE1JTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGNvbnRlbnQ6ICcnO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stY2lyY2xlQm91bmNlRGVsYXkgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuICBhbmltYXRpb246IHNrLWNpcmNsZUJvdW5jZURlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzBkZWcpO1xufVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGUzIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTtcbn1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlNCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEyMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxMjBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxMjBkZWcpO1xufVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxNTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTUwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTUwZGVnKTtcbn1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlNyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTgge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDIxMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyMTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyMTBkZWcpO1xufVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU5IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyNDBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjQwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjQwZGVnKTtcbn1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlMTAge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xufVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGUxMSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzAwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDMwMGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDMwMGRlZyk7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTEyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzMzBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzMwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzMwZGVnKTtcbn1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlMjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTEuMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTEuMXM7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTM6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMXM7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTQ6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uOXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS45cztcbn1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlNTpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS44cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjhzO1xufVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU2OmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjdzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uN3M7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTc6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uNnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS42cztcbn1cblxuLnNrLWNpcmNsZSAuc2stY2lyY2xlODpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS41cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjVzO1xufVxuXG4uc2stY2lyY2xlIC5zay1jaXJjbGU5OmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjRzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uNHM7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTEwOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjNzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uM3M7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTExOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjJzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uMnM7XG59XG5cbi5zay1jaXJjbGUgLnNrLWNpcmNsZTEyOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjFzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uMXM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1jaXJjbGVCb3VuY2VEZWxheSB7XG4gIDAlLFxuICA4MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1jaXJjbGVCb3VuY2VEZWxheSB7XG4gIDAlLFxuICA4MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuXG4vKlxuICogIFVzYWdlOlxuICpcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlLWdyaWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTFcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTJcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTNcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTZcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTdcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZThcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWN1YmUgc2stY3ViZTlcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICpcbiAqL1xuXG4uc2stY3ViZS1ncmlkIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgLypcbiAgICogU3Bpbm5lciBwb3NpdGlvbnNcbiAgICogMSAyIDNcbiAgICogNCA1IDZcbiAgICogNyA4IDlcbiAgICovXG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmUge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDMzJTtcbiAgaGVpZ2h0OiAzMyU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1jdWJlR3JpZFNjYWxlRGVsYXkgMS4zcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay1jdWJlR3JpZFNjYWxlRGVsYXkgMS4zcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmUxIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4ycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMnM7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmUyIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4zcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuM3M7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmUzIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC40cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuNHM7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmU0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMXM7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmU1IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4ycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMnM7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmU2IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4zcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuM3M7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmU3IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4wcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMHM7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmU4IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMXM7XG59XG5cbi5zay1jdWJlLWdyaWQgLnNrLWN1YmU5IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4ycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMnM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1jdWJlR3JpZFNjYWxlRGVsYXkge1xuICAwJSxcbiAgNzAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzRCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM0QoMSwgMSwgMSk7XG4gIH1cbiAgMzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzRCgwLCAwLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM0QoMCwgMCwgMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1jdWJlR3JpZFNjYWxlRGVsYXkge1xuICAwJSxcbiAgNzAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzRCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM0QoMSwgMSwgMSk7XG4gIH1cbiAgMzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzRCgwLCAwLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM0QoMCwgMCwgMSk7XG4gIH1cbn1cblxuXG4vKlxuICogIFVzYWdlOlxuICpcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1mYWRpbmctY2lyY2xlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUxIHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMiBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTMgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGU0IHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlNSBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTYgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGU3IHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlOCBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTkgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUxMCBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTExIHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMTIgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqXG4gKi9cblxuLnNrLWZhZGluZy1jaXJjbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDE1JTtcbiAgaGVpZ2h0OiAxNSU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjb250ZW50OiAnJztcbiAgLXdlYmtpdC1hbmltYXRpb246IHNrLWNpcmNsZUZhZGVEZWxheSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XG4gIGFuaW1hdGlvbjogc2stY2lyY2xlRmFkZURlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGUyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzMGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTtcbn1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTMge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGU1IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMjBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTIwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTIwZGVnKTtcbn1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTYge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE1MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxNTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxNTBkZWcpO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGU4IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMTBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjEwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjEwZGVnKTtcbn1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDI0MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyNDBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyNDBkZWcpO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlMTAge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlMTEge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDMwMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzMDBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzMDBkZWcpO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlMTIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDMzMGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzMzBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzMzBkZWcpO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlMjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTEuMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTEuMXM7XG59XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGUzOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTFzO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNDpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS45cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjlzO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNTpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS44cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjhzO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS43cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjdzO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlNzpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS42cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjZzO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlODpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS41cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjVzO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlOTpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS40cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjRzO1xufVxuXG4uc2stZmFkaW5nLWNpcmNsZSAuc2stY2lyY2xlMTA6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uM3M7XG4gIGFuaW1hdGlvbi1kZWxheTogLS4zcztcbn1cblxuLnNrLWZhZGluZy1jaXJjbGUgLnNrLWNpcmNsZTExOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjJzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uMnM7XG59XG5cbi5zay1mYWRpbmctY2lyY2xlIC5zay1jaXJjbGUxMjpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLS4xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtLjFzO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2stY2lyY2xlRmFkZURlbGF5IHtcbiAgMCUsXG4gIDM5JSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1jaXJjbGVGYWRlRGVsYXkge1xuICAwJSxcbiAgMzklLFxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uc2stZm9sZGluZy1jdWJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWig0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlWig0NWRlZyk7XG59XG5cbi5zay1mb2xkaW5nLWN1YmUgLnNrLWN1YmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLnNrLWZvbGRpbmctY3ViZSAuc2stY3ViZTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgY29udGVudDogJyc7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1mb2xkQ3ViZUFuZ2xlIDIuNHMgaW5maW5pdGUgbGluZWFyIGJvdGg7XG4gIGFuaW1hdGlvbjogc2stZm9sZEN1YmVBbmdsZSAyLjRzIGluZmluaXRlIGxpbmVhciBib3RoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbn1cblxuLnNrLWZvbGRpbmctY3ViZSAuc2stY3ViZTIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGVaKDkwZGVnKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooOTBkZWcpO1xufVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlMyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMTgwZGVnKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMTgwZGVnKTtcbn1cblxuLnNrLWZvbGRpbmctY3ViZSAuc2stY3ViZTQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGVaKDI3MGRlZyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGVaKDI3MGRlZyk7XG59XG5cbi5zay1mb2xkaW5nLWN1YmUgLnNrLWN1YmUyOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuM3M7XG4gIGFuaW1hdGlvbi1kZWxheTogLjNzO1xufVxuXG4uc2stZm9sZGluZy1jdWJlIC5zay1jdWJlMzpiZWZvcmUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjZzO1xuICBhbmltYXRpb24tZGVsYXk6IC42cztcbn1cblxuLnNrLWZvbGRpbmctY3ViZSAuc2stY3ViZTQ6YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC45cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuOXM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1mb2xkQ3ViZUFuZ2xlIHtcbiAgMCUsXG4gIDEwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKC0xODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVgoLTE4MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAyNSUsXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA5MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWSgxODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVkoMTgwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2stZm9sZEN1YmVBbmdsZSB7XG4gIDAlLFxuICAxMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgtMTgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKC0xODBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMjUlLFxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgOTAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVkoMTgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVZKDE4MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuIiwiLyogJGpxdWVyeS12YWxpZGF0aW9uXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1peGluIHBhcnNsZXktdmFsaWRhdGlvbigkdGV4dC1jb2xvcjogIzU1NSwgJGJvcmRlci1jb2xvcjogI2NjYywgJGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuaW5wdXQudmFsaWQge1xuICBAaW5jbHVkZSBwYXJzbGV5LXZhbGlkYXRpb24oJGJyYW5kLXN1Y2Nlc3MsICRicmFuZC1zdWNjZXNzLCAkYnJhbmQtc3VjY2Vzcyk7XG59XG5cbmlucHV0LmVycm9yIHtcbiAgQGluY2x1ZGUgcGFyc2xleS12YWxpZGF0aW9uKCRicmFuZC1kYW5nZXIsICRicmFuZC1kYW5nZXIsICRicmFuZC1kYW5nZXIpO1xufVxuXG5sYWJlbC5lcnJvciB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRicmFuZC1kYW5nZXI7XG59XG4iLCIvKiAkcG9ydGxldHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZHJhZ2dhYmxlLXBvcnRsZXRzLXdyYXBwZXIge1xuICAuZHJhZ2dhYmxlLXBvcnRsZXRzIHtcbiAgICBtaW4taGVpZ2h0OiAzLjEyNXJlbTtcbiAgICAucG9ydGxldCB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zaXRpb24sIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBsaW5lYXIpO1xuICAgICAgQGluY2x1ZGUgc2NhbGUoMSwgMSk7XG4gICAgICAucG9ydGxldC1oZWFkaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAudWktc29ydGFibGUtcGxhY2Vob2xkZXIge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IC4wNjI1cmVtIGRhc2hlZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnRpemUoYmxhY2ssIC45OSk7XG4gICAgfVxuICB9XG4gICYuZHJhZ2dpbmcge1xuICAgIC5wb3J0bGV0LnVpLXNvcnRhYmxlLWhlbHBlciB7XG4gICAgICBAaW5jbHVkZSBvcGFjaXR5KC44KTtcbiAgICAgIEBpbmNsdWRlIHNjYWxlKDEuMSwgMS4xKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qICRyaWNrc2hhd1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5yaWNrc2hhd19ncmFwaCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucmlja3NoYXdfZ3JhcGggLmRldGFpbCAueF9sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xufVxuXG4ucmlja3NoYXdfZ3JhcGggLmRldGFpbCAuaXRlbSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICA7XG59XG5cbi5yaWNrc2hhd19ncmFwaCAueF90aWNrIHtcbiAgYm9yZGVyLWxlZnQ6IC4wNjI1cmVtIGRhc2hlZCByZ2JhKDAsIDAsIDAsIC4yKTtcbn1cblxuLnJpY2tzaGF3X2dyYXBoIC54X3RpY2sgLnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLnJpY2tzaGF3X2Fubm90YXRpb25fdGltZWxpbmUgLmFubm90YXRpb24gLmNvbnRlbnQge1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xufVxuXG4ucmlja3NoYXdfbGVnZW5kIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbi5yaWNrc2hhd19sZWdlbmQgbGk6aG92ZXIge1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xufVxuXG4ucmlja3NoYXdfbGVnZW5kIGxpOmFjdGl2ZSB7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG59XG4iLCIvKiAkc29jaWFsLWJ1dHRvblxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiRicy1oZWlnaHQtYmFzZTogMi4zNzVyZW07XG4kYnMtaGVpZ2h0LWxnOiAzLjI1cmVtO1xuJGJzLWhlaWdodC1zbTogMi4xMjVyZW07XG5AbWl4aW4gYnRuLWljb24oKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWluLWhlaWdodDogJGJzLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICgkYnMtaGVpZ2h0LWJhc2UgKyAkcGFkZGluZy1iYXNlLWhvcml6b250YWwpO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgOmZpcnN0LWNoaWxkIHtcbiAgICBsaW5lLWhlaWdodDogJGJzLWhlaWdodC1iYXNlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICRicy1oZWlnaHQtYmFzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAuMDMpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjA1KTtcbiAgfVxuICAmLmJ0bi1sZyB7XG4gICAgbWluLWhlaWdodDogJGJzLWhlaWdodC1sZztcbiAgICA6Zmlyc3QtY2hpbGQge1xuICAgICAgbGluZS1oZWlnaHQ6ICRicy1oZWlnaHQtbGc7XG4gICAgICB3aWR0aDogJGJzLWhlaWdodC1sZztcbiAgICB9XG4gIH1cbiAgJi5idG4tc20ge1xuICAgIG1pbi1oZWlnaHQ6ICRicy1oZWlnaHQtc207XG4gICAgOmZpcnN0LWNoaWxkIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkYnMtaGVpZ2h0LXNtO1xuICAgICAgd2lkdGg6ICRicy1oZWlnaHQtc207XG4gICAgfVxuICB9XG59XG5cbi5idG4taWNvbiB7XG4gIEBpbmNsdWRlIGJ0bi1pY29uO1xufVxuXG4uYnRuLWxnLmJ0bi1pY29uLFxuLmJ0bi1ncm91cC1sZyA+IC5idG4uYnRuLWljb24ge1xuICBwYWRkaW5nLWxlZnQ6ICgkYnMtaGVpZ2h0LWxnICsgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCk7XG59XG5cbi5idG4tc20uYnRuLWljb24sXG4uYnRuLWdyb3VwLXNtID4gLmJ0bi5idG4taWNvbiB7XG4gIHBhZGRpbmctbGVmdDogKCRicy1oZWlnaHQtc20gKyAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsKTtcbn1cblxuLmJ0bi1pY29uLWljb24ge1xuICB3aWR0aDogJGJzLWhlaWdodC1iYXNlO1xuICBoZWlnaHQ6ICRicy1oZWlnaHQtYmFzZTtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgQGluY2x1ZGUgYnRuLWljb247XG4gIDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJi5idG4tbGcge1xuICAgIHdpZHRoOiAkYnMtaGVpZ2h0LWxnO1xuICAgIGhlaWdodDogJGJzLWhlaWdodC1sZztcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAmLmJ0bi1zbSB7XG4gICAgd2lkdGg6ICRicy1oZWlnaHQtc207XG4gICAgaGVpZ2h0OiAkYnMtaGVpZ2h0LXNtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtaXhpbiBidG4tc29jaWFsKCRjb2xvci1iZywgJGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC44KSkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkY29sb3IsICRjb2xvci1iZywgJGNvbG9yLWJnKTtcbn1cblxuLmJ0bi1hZG4ge1xuICBAaW5jbHVkZSBidG4tc29jaWFsKCNkODdhNjgpO1xufVxuXG4uYnRuLWJpdGJ1Y2tldCB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoIzIwNTA4MSk7XG59XG5cbi5idG4tZHJvcGJveCB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoIzEwODdkZCk7XG59XG5cbi5idG4tZmFjZWJvb2sge1xuICBAaW5jbHVkZSBidG4tc29jaWFsKCMzYjU5OTgpO1xufVxuXG4uYnRuLWZsaWNrciB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoI2ZmMDA4NCk7XG59XG5cbi5idG4tZm91cnNxdWFyZSB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoI2Y5NDg3Nyk7XG59XG5cbi5idG4tZ2l0aHViIHtcbiAgQGluY2x1ZGUgYnRuLXNvY2lhbCgjNDQ0KTtcbn1cblxuLmJ0bi1nb29nbGUge1xuICBAaW5jbHVkZSBidG4tc29jaWFsKCNkZDRiMzkpO1xufVxuXG4uYnRuLWluc3RhZ3JhbSB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoIzNmNzI5Yik7XG59XG5cbi5idG4tbGlua2VkaW4ge1xuICBAaW5jbHVkZSBidG4tc29jaWFsKCMwMDdiYjYpO1xufVxuXG4uYnRuLW1pY3Jvc29mdCB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoIzI2NzJlYyk7XG59XG5cbi5idG4tb2Rub2tsYXNzbmlraSB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoI2Y0NzMxYyk7XG59XG5cbi5idG4tb3BlbmlkIHtcbiAgQGluY2x1ZGUgYnRuLXNvY2lhbCgjZjc5MzFlKTtcbn1cblxuLmJ0bi1waW50ZXJlc3Qge1xuICBAaW5jbHVkZSBidG4tc29jaWFsKCNjYjIwMjcpO1xufVxuXG4uYnRuLXJlZGRpdCB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoI2VmZjdmZiwgIzAwMCk7XG59XG5cbi5idG4tc291bmRjbG91ZCB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoI2Y1MCk7XG59XG5cbi5idG4tdHVtYmxyIHtcbiAgQGluY2x1ZGUgYnRuLXNvY2lhbCgjMmM0NzYyKTtcbn1cblxuLmJ0bi10d2l0dGVyIHtcbiAgQGluY2x1ZGUgYnRuLXNvY2lhbCgjNTVhY2VlKTtcbn1cblxuLmJ0bi12aW1lbyB7XG4gIEBpbmNsdWRlIGJ0bi1zb2NpYWwoIzFhYjdlYSk7XG59XG5cbi5idG4tdmsge1xuICBAaW5jbHVkZSBidG4tc29jaWFsKCM1ODdlYTMpO1xufVxuXG4uYnRuLXlhaG9vIHtcbiAgQGluY2x1ZGUgYnRuLXNvY2lhbCgjNzIwZTllKTtcbn1cblxuLmJ0bixcbi5mdWxsY2FsZW5kYXIgLmZjLWJ1dHRvbiB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG4iLCIvKiAkc29ydGFibGVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uc29ydGFibGUtbGlzdCB7XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogLS4wNjI1cmVtO1xuICAgIHBhZGRpbmc6IC45Mzc1cmVtO1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIH1cbiAgfVxuICBsaS51aS1zdGF0ZS1oaWdobGlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDMuMTI1cmVtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnRpemUoYmxhY2ssIC45OSk7XG4gIH1cbn1cbiIsIi8qICRzdW1tZXJub3RlXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLm5vdGUtYWlyLWVkaXRvciB7XG4gIG1pbi1oZWlnaHQ6IDkuMzc1cmVtO1xuICBwYWRkaW5nOiAkZ3V0dGVyLzI7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDUpO1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xufVxuXG4ubm90ZS1lZGl0b3Iubm90ZS1mcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLm5vdGUtZWRpdG9yIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIC4wNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNSk7XG4gIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gIC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuICAubm90ZS10b29sYmFyIHtcbiAgICBwYWRkaW5nOiAwICRndXR0ZXIvMiAkZ3V0dGVyLzI7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICB9XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgbGkgPiBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogM3B4IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGNvbG9yOiAjMzczYTNjO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG4gIH1cbiAgLm5vdGUtZWRpdGFibGUge1xuICAgIG1pbi1oZWlnaHQ6IDkuMzc1cmVtO1xuICAgIHBhZGRpbmc6ICRndXR0ZXIvMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLm5vdGUtcG9wb3ZlciAucG9wb3Zlci1jb250ZW50ID4gLmJ0bi1ncm91cCxcbi5wYW5lbC1oZWFkaW5nLm5vdGUtdG9vbGJhciA+IC5idG4tZ3JvdXAge1xuICBtYXJnaW4tdG9wOiAkZ3V0dGVyLzI7XG59XG5cbi5ub3RlLWljb24tY2FyZXQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubm90ZS1wb3BvdmVyIC5wb3BvdmVyIC5wb3BvdmVyLWNvbnRlbnQgLm5vdGUtcGFyYSAuZHJvcGRvd24tbWVudSxcbi5wYW5lbC1oZWFkaW5nLm5vdGUtdG9vbGJhciAubm90ZS1wYXJhIC5kcm9wZG93bi1tZW51IHtcbiAgbWluLXdpZHRoOiAyNTdweDtcbn1cbiIsIi8qICRzd2VldC1hbGVydFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5zd2VldC1hbGVydCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgaDIge1xuICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDUlKTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgcm91bmRlZCgkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxuICAuaWNvbi5lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICB9XG4gIC5zYS1pbnB1dC1lcnJvcjo6YmVmb3JlLFxuICAuc2EtaW5wdXQtZXJyb3I6OmFmdGVyLFxuICAuc2EtZXJyb3ItY29udGFpbmVyIC5pY29uLFxuICAuaWNvbi5lcnJvciAubGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgfVxuICAuaWNvbi53YXJuaW5nIHtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICB9XG4gIC5pY29uLndhcm5pbmcgLmJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICB9XG4gIC5pY29uLndhcm5pbmcgLmRvdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gIH1cbiAgLmljb24uaW5mbyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtaW5mbztcbiAgfVxuICAuaWNvbi5pbmZvOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1pbmZvO1xuICB9XG4gIC5pY29uLmluZm86OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtaW5mbztcbiAgfVxuICAuaWNvbi5zdWNjZXNzIHtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICB9XG4gIC5pY29uLnN1Y2Nlc3MgLnBsYWNlaG9sZGVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50aXplKCRicmFuZC1zdWNjZXNzLCAuOCk7XG4gIH1cbiAgLmljb24uc3VjY2VzcyAubGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gIH1cbiAgLnNhLWlucHV0LWVycm9yIHtcbiAgICB0b3A6IDEuNDM4cmVtO1xuICB9XG59XG4iLCIvKiAkdG91Y2gtc3BpblxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5ib290c3RyYXAtdG91Y2hzcGluIGlucHV0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYnRuLmJvb3RzdHJhcC10b3VjaHNwaW4tZG93bixcbi5idG4uYm9vdHN0cmFwLXRvdWNoc3Bpbi11cCB7XG4gIGZvbnQtc2l6ZTogaW5pdGlhbCFpbXBvcnRhbnQ7XG59XG4iLCIgLypcbiAqIHR3aXR0ZXIgdHlwZWFoZWFkXG4gKlxuICovXG4gXG4gLnR3aXR0ZXItdHlwZWFoZWFkIHtcbiAgIGRpc3BsYXk6IGJsb2NrO1xuICAgd2lkdGg6IDEwMCU7XG4gfVxuIFxuIC50dC1xdWVyeSB7XG4gICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgLjA2MjVyZW0gMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSkpO1xuIH1cbiBcbiAudHQtbWVudSB7XG4gICB3aWR0aDogMTAwJTtcbiAgIG1hcmdpbjogLS4wNjI1cmVtIDAgJGd1dHRlcjtcbiAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UgMDtcbiAgIGJvcmRlcjogLjA2MjVyZW0gc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgIEBpbmNsdWRlIHJvdW5kZWQoJGJvcmRlci1yYWRpdXMtYmFzZSk7XG4gfVxuIFxuIC50dC1zdWdnZXN0aW9uIHtcbiAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICBwYWRkaW5nOiAuMTg3NXJlbSAkcGFkZGluZy1iYXNlO1xuIH1cbiBcbiAudHQtc3VnZ2VzdGlvbjpob3ZlciB7XG4gICBjdXJzb3I6IHBvaW50ZXI7XG4gICBjb2xvcjogI2ZmZjtcbiAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuIH1cbiBcbiAudHQtc3VnZ2VzdGlvbi50dC1jdXJzb3Ige1xuICAgY29sb3I6ICNmZmY7XG4gICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiB9XG4gXG4gLnR0LXN1Z2dlc3Rpb24gcCB7XG4gICBtYXJnaW46IDA7XG4gfVxuIiwiLyogJFV0aWxpdGllcyBDbGFzc2VzICovXG5cbiR4eHM6IDJweDtcbiR4czogNXB4O1xuJHNtOiAxMHB4O1xuJG1kOiAxNXB4O1xuJGRmOiAxLjI1cmVtO1xuJGxnOiAyNXB4O1xuJHhsZzogMzBweDtcbi5pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5sLWgge1xuICBsaW5lLWhlaWdodDogMjRweDtcbn1cblxuLyogTWFyZ2lucyAqL1xuXG4ubS14LW4ge1xuICBtYXJnaW4tcmlnaHQ6IC0kcGFkZGluZy1iYXNlIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFkZGluZy1iYXNlIWltcG9ydGFudDtcbn1cblxuLm0tci1uIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJHBhZGRpbmctYmFzZSFpbXBvcnRhbnQ7XG59XG5cbi5tLWwtbiB7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZGRpbmctYmFzZSFpbXBvcnRhbnQ7XG59XG5cbi5tLXQtbiB7XG4gIG1hcmdpbi10b3A6IC0kcGFkZGluZy1iYXNlIWltcG9ydGFudDtcbn1cblxuLm0tYi1uIHtcbiAgbWFyZ2luLWJvdHRvbTogLSRwYWRkaW5nLWJhc2UhaW1wb3J0YW50O1xufVxuXG4vL0d1dHRlclxuLm0teC1uLWcge1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyIWltcG9ydGFudDtcbn1cblxuLm0tci1uLWcge1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIWltcG9ydGFudDtcbn1cblxuLm0tbC1uLWcge1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIhaW1wb3J0YW50O1xufVxuXG4ubS10LW4tZyB7XG4gIG1hcmdpbi10b3A6IC0kZ3V0dGVyIWltcG9ydGFudDtcbn1cblxuLm0tYi1uLWcge1xuICBtYXJnaW4tYm90dG9tOiAtJGd1dHRlciFpbXBvcnRhbnQ7XG59XG5cbi5tLWEteHMge1xuICBtYXJnaW46IDAuNXJlbSAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tdC14cyB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS1yLXhzIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tYi14cyB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS1sLXhzIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS14LXhzIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS15LXhzIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC1hLXhzIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC10LXhzIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC1yLXhzIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLWIteHMge1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLWwteHMge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC14LXhzIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLXkteHMge1xuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuXG4vKiBubyBiYWNrZ3JvdW5kIGNvbG9yKi9cblxuLm5vLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93IHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNXB4IHJnYmEoMCwgMCwgMCwgLjIpKTtcbn1cblxuLm5vLXNoYWRvdyB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG59XG5cbi52LWFsaWduLW1pZGRsZSxcbi5hbGlnbi1taWRkbGUgdGQsXG50ZC5hbGlnbi1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlIWltcG9ydGFudDtcbn1cblxuXG4vKiBQb3NpdGlvbiAqL1xuXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmx0IHtcbiAgbGVmdDogMDtcbn1cblxuLnJ0IHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5idCB7XG4gIGJvdHRvbTogMDtcbn1cblxuLnRwIHtcbiAgdG9wOiAwO1xufVxuXG5cbi8qIFJhZGl1cyAqL1xuXG4ubm8tcmFkaXVzIHtcbiAgQGluY2x1ZGUgcm91bmRlZCgwKTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4ucm91bmQge1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWJhc2UpO1xufVxuXG4uY2lyY2xlIHtcbiAgQGluY2x1ZGUgcm91bmRlZCg1MCUpO1xufVxuXG4uYnJ0bCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi5icnRyIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi5icmJsIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLmJyYnIge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLmJybGcge1xuICBAaW5jbHVkZSByb3VuZGVkKCRib3JkZXItcmFkaXVzLWxhcmdlIWltcG9ydGFudCk7XG59XG5cblxuLyogT3ZlcmZsb3cgKi9cblxuLm92ZXJmbG93LWhpZGRlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5vdmVyZmxvdy12aXNpYmxlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5vdmVyZmxvdy1hdXRvIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblxuLyogQm9yZGVycyAqL1xuXG4ubm8tYm9yZGVyLFxuLmItYS0wIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4uYi1hIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbn1cblxuLmItYiB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xufVxuXG4uYi10IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG5cbi5iLWwge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG5cbi5iLXIge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xufVxuXG4uYi10LTAge1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4uYi1yLTAge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbi5iLWItMCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5iLWwtMCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG5cbi8qIGJvcmRlciBjb2xvcnMgKi9cblxuLmJvcmRlci1wcmltYXJ5IHtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeSFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItZGVmYXVsdCB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLWRlZmF1bHQhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXdhcm5pbmcge1xuICBib3JkZXItY29sb3I6ICRicmFuZC13YXJuaW5nIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zdWNjZXNzIHtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtc3VjY2VzcyFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItaW5mbyB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLWluZm8haW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtd2hpdGUhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWRhbmdlciB7XG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLWRhbmdlciFpbXBvcnRhbnQ7XG59XG5cblxuLnRleHQtb3ZlcmZsb3cge1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufSIsIi8qXG4gKiAgRGVtbyBzcGVjaWZpYyBzdHlsZXMuXG4gKiAgVGhlc2UgY2FuIGJlIHJlbW92ZWRcbiAqL1xuLndkZW1vLWxheW91dC1jb2x1bW4ge1xuICBAaW5jbHVkZSBmbGV4LWdyb3coMCk7XG4gIEBpbmNsdWRlIGZsZXgtc2hyaW5rKDEpO1xuICBAaW5jbHVkZSBmbGV4LWJhc2lzKDIwMHB4KTtcbiAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbn1cbi5jb2xvci1icmFuZHMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgJi5oZWFkZXItYnJhbmRzID4gZGl2IHtcbiAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gID4gZGl2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xuICB9XG4gIC5jb2xvci1icmFuZCB7XG4gICAgbGluZS1oZWlnaHQ6IDE1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgJi5oZWFkZXItYnJhbmQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgfVxuICAgIGRpdiB7XG4gICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgIH1cbiAgfVxuICA+IC5jb2xvci1icmFuZCB7XG4gICAgd2lkdGg6IDEwJTtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAuY29sb3ItYnJhbmRzIHtcbiAgICA+IGRpdiB7XG4gICAgICB3aWR0aDogMjUlO1xuICAgIH1cbiAgICA+IC5jb2xvci1icmFuZCB7XG4gICAgICB3aWR0aDogMjUlO1xuICAgIH1cbiAgfVxufVxuXG4jZm9jdXNlZElucHV0IHtcbiAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xufVxuXG4uZGVtby1idXR0b24gLmJ0biB7XG4gIG1pbi13aWR0aDogMTE1cHg7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5kZW1vLWJ1dHRvbjIgYnV0dG9uIHtcbiAgbWFyZ2luOiAwIDVweCAxMHB4IDA7XG59XG5cbi5kZW1vLWJ1dHRvbjMgLmJ0biB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5kZW1vLWxpbmtzIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMTEwcHg7XG59XG5cbi5mb250YXdlc29tZS1saXN0IC5mYS1ob3ZlciB7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uZm9udGF3ZXNvbWUtbGlzdCAuZmEsXG4uZm9udGF3ZXNvbWUtbGlzdCAubWF0ZXJpYWwtaWNvbnMge1xuICBtaW4td2lkdGg6IDMwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5mb250YXdlc29tZS1saXN0IC5mYS1ob3Zlcjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG4uZm9udGF3ZXNvbWUtaWNvbi1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDtcbn1cblxuLm9wdGlvbiB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogKCRwYWRkaW5nLWJhc2UvMikgMDtcbiAgPiBkaXYge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG59XG5cbi5kZW1vLXNraW4ge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGJvcmRlci10b3A6IC4wNjI1cmVtIHNvbGlkIGZhZGUoYmxhY2ssIDclKTtcbiAgICBib3JkZXItYm90dG9tOiAuMDYyNXJlbSBzb2xpZCBmYWRlKGJsYWNrLCA3JSk7XG4gIH1cbiAgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IC4wNjI1cmVtIHNvbGlkIGZhZGUoYmxhY2ssIDclKTtcbiAgfVxuICBzcGFuOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogLjA2MjVyZW0gc29saWQgZmFkZShibGFjaywgNyUpO1xuICB9XG59XG5cbi5zaWRlYmFyLXNraW5zLFxuLmhlYWRlci1za2lucyB7XG4gID4gZGl2IC5mYSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgPiBkaXY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICA+IGRpdjpob3ZlciAuZmEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gID4gZGl2LmFjdGl2ZSAuZmEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgfVxufVxuXG4uY29uZmlndXJhdGlvbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTk7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQwMHB4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjcsIDAsIC4zLCAxKTtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguNywgMCwgLjMsIDEpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43LCAwLCAuMywgMSk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIEBpbmNsdWRlIHRyYW5zbGF0ZSgxMDAlLCAwKTtcbiAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIC5jb25maWd1cmF0aW9uLW9wdGlvbnMge1xuICAgIHBhZGRpbmc6ICgkZ3V0dGVyKjIpO1xuICB9XG59XG5cbi5jb25maWd1cmF0aW9uLmFjdGl2ZSB7XG4gIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAwKTtcbiAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5jb25maWd1cmF0aW9uLWNvZyB7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDg7XG4gIHRvcDogMTUwcHg7XG4gIGxlZnQ6IC01NXB4O1xuICB3aWR0aDogNTVweDtcbiAgaGVpZ2h0OiA1NXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3gtc2hhZG93OiAtNnB4IDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBsaW5lLWhlaWdodDogNTVweDtcbiAgaW1nIHtcbiAgICBAaW5jbHVkZSByb3RhdGUoOTBkZWcpO1xuICAgIGhlaWdodDogMzBweDtcbiAgfVxufVxuXG4uY29uZmlndXJhdGlvbi1vcHRpb25zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5O1xufVxuXG4uY29uZmlndXJhdGlvbiAudGl0bGUge1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb25maWd1cmF0aW9uIC5vcHRpb24uc3R5bGVzIHtcbiAgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbjogMCA1cHggMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgaW5wdXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMDAlO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuICB9XG4gIGRpdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgZGl2Om50aC1jaGlsZCgzKSB7XG4gICAgaGVpZ2h0OiA5cHg7XG4gIH1cbiAgZGl2Om50aC1jaGlsZCg0KSB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gIH1cbiAgZGl2Omxhc3QtY2hpbGQge1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuICAuZmEge1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IGZhZGUod2hpdGUsIDMwJSk7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgfVxuICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgLmZhIHtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICB9XG59XG5cbi5zd2F0Y2hlcyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLnN3YXRjaGVzID4gZGl2IHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG5cbi5zd2F0Y2hlcyA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbn1cblxuLnN3YXRjaGVzID4gZGl2Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG59XG5cbi5zd2F0Y2hlcyA+IGRpdiA+IHNwYW4ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZGVtby1zcGlubmVycyAubG9hZGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1pbi1oZWlnaHQ6IDcwcHg7XG4gIG1hcmdpbjogJHBhZGRpbmctYmFzZSBhdXRvO1xufVxuXG4uZGVtby1zcGlua2l0IC5jYXJkLWJsb2NrID4gW2NsYXNzXj0nc2stJ10ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkcGFkZGluZy1iYXNlIGF1dG87XG59XG5cblxuXG4udGhlbWUtb3B0aW9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDYycHg7XG4gIGhlaWdodDogNjJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLWRhcms7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxufVxuLnRoZW1lLW9wdGlvbnMgbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAubWF0ZXJpYWwtaWNvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLW1vei1vcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtb3BhY2l0eTogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkKy5tYXRlcmlhbC1pY29ucyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA+IGRpdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgPiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgfVxuICAgICAgID4gc3BhbjpudGgtY2hpbGQoMikge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgIH1cbiAgICB9XG4gICAgPiBzcGFuOm50aC1jaGlsZCgyKSB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICB9XG4gIH1cbn1cblxuLm9wdGlvbnMgbGFiZWwsIC5vcHRpb25zIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAuMztcbiAgKyBkaXYge1xuICAgIG9wYWNpdHk6IC4zO1xuICB9XG4gICYuYWN0aXZlLCAmLmFjdGl2ZSArIGRpdiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgaW5wdXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogOTJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gIH1cbiAgaW5wdXQ6Y2hlY2tlZCsubWF0ZXJpYWwtaWNvbnMge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmJ0bi1idXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDYwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNjI2MjY7XG4gIGNvbG9yOiAjOTk5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */


/* starts : chat-panel */

.chat-panel.v1 {}

.chat-panel.v1 .chat-group a {
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 0.5125rem 1.5rem;
    font-size: 0.9525rem;
}

.chat-panel.v1 .chat-group a .user-image {
    padding-right: 0.5rem;
}

.chat-panel.v1 .chat-group a .user-image .avatar {
    width: 2.8rem;
    margin-right: 0 !important;
}

.chat-panel.v1 .chat-group a .user-image .circle-icon {
    width: 2.8rem;
    height: 2.8rem;
    line-height: 2.8rem;
    margin-right: 0 !important;
}

.chat-panel.v1 .chat-group a .user-info,
.chat-panel.v1 .chat-group a .user-image {
    display: inline-block;
}

.chat-panel.v1 .chat-group a .user-info small {
    display: block;
    font-size: 0.6875rem !important;
}

.chat-panel.v1 .chat-group a .user-info {
    float: none !important;
    overflow: hidden;
    /* white-space: nowrap; */
    overflow-wrap: break-word;
    width: 70%;
}

.chat-panel.v1 .chat-group a>* {
    display: table-cell;
    vertical-align: middle;
}

.chat-panel.v1 .chat-group a .count {
    display: inline-block;
    padding: 0.25em 0.5em;
    font-size: 85%;
    font-weight: 700;
    line-height: 25px;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 50%;
    background-color: #EECE3B;
    position: absolute;
    right: 13px;
    top: 15px;
    height: 30px;
    width: 30px;
}

.chat-message.v1 .chat-conversation-title {
    display: block;
    font-size: 0.9525rem;
    padding-top: 10px;
    line-height: normal;
}

.chat-message.v1 .chat-conversation-title .avatar {
    top: 1px;
}

.chat-message.v1 .chat-conversation-title small {
    font-size: 0.6875rem !important;
}

.chat-panel.v1 .chat-header .chat-header-title {
    padding-top: 18px;
    padding-bottom: 18px;
}

.chat-panel.v1 .chat-header .material-icons {
    margin-top: 1.5px;
}

.header.navbar .gnupp.v1 .material-icons {
    line-height: 32px;
}

.header.navbar .gnupp.v1 .nav-item {
    top: 3px;
    left: 8px;
}

.header.navbar .gnupp.v1 .btn-icon {
    min-height: auto;
}

.header.navbar .gnupp.v1 .btn {
    line-height: 20px;
}


/* end : chat-panel */


/* starts : myfeed */

.myfeed {}

.myfeed .card-header {
    z-index: 0;
}

.myfeed .card-header .m-y-1 {
    margin-bottom: 2px !important;
}

.myfeed .card-header .links {
    position: absolute;
    top: 6px;
    right: 10px;
}

.myfeed .card-header .links a {
    display: inline-block;
    padding: 4px;
}

.myfeed .alert {
    padding: 5px 0 7px 0;
    border: 1px solid #fff;
    border-width: 0 0 1px 0;
    margin: 0;
    display: block;
}

.myfeed .feed {
    position: relative;
    padding: 16px 31px 16px 72px;
    font-size: 0.85rem;
    margin-top: 0;
    margin-bottom: 0;
    background-color: rgba(234,234,234,1);
    color: #777;
    display: block;
    z-index: 0;
    border: 1px solid rgba(234,234,234,1);
    border-radius: 2px;
    transition: all 0.5s ease;
}

.myfeed .feed:hover {
    background-color: #d2d2d2;
    color: #000000;
}
.myfeed.latest-applicants .card-block {
    padding-right: 0;
    padding-left: 0;
}

.myfeed.latest-applicants .feed {
    background-color: #fff;
    border-color: #fff;
    padding-left: 73px;
    padding-right: 47px;
}
.myfeed.latest-applicants .feed:hover {
    background-color: #f2f2f2;
    border-color: #f2f2f2;
}

.myfeed .feed .feed-icon {
    padding-right: 0.5rem;
    position: absolute;
    left: 15px;
    top: 12.75px;
    border-radius: 15%;
}

.myfeed.latest-applicants .feed .feed-icon {
    left: 16px;
}

.myfeed .feed .feed-icon.image .avatar-sm {
    width: 42px;
    border-radius: 15%;
}

.myfeed .feed .feed-icon .circle-icon {
    width: 42px;
    height: 42px;
    line-height: 42px;
}

.myfeed .feed .feed-message small {
    display: block;
    font-size: 0.6694rem !important;
}

.myfeed .feed .close {
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    z-index: 1;
}


/* end : myfeed */


/* starts : latest-applicants */


/*
.latest-applicants .message-list .message-list-item .b-b {
    border-bottom-color: #fff;
}*/

.latest-applicants-old .message-list .message-list-item a:hover,
.latest-applicants-old .message-list .message-list-item a:focus,
.latest-applicants-old .message-list .message-list-item a:active {
    background-color: #fff;
}

.latest-applicants-old .message-list .message-list-item a {
    padding-left: 1px;
    padding-right: 1px;
    /* background-color: bisque;*/
}

.latest-applicants-old .message-list .message-list-item-header {
    padding-top: 3px;
}

.latest-applicants-old .message-list .message-list-item-header small {
    display: block;
    font-size: 0.6875rem !important;
}

.latest-applicants-old .message-list .message-list-item a {
    /*padding-top: 16px;
    padding-bottom: 17px;
    margin-bottom: 16px;*/
    padding-bottom: 13px;
}

.latest-applicants-old .message-list .message-list-item a .avatar-sm {
    width: 43px;
}

.latest-applicants-old .card-block {
    padding-bottom: 14px;
}


/*
.latest-applicants .card-block,
.myfeed .card-block {
    min-height: 496px;
}
*/


/* end : latest-applicants */


/* starts : sidenav buttons */

.sidenav-buttons {
    padding-top: 52px;
    padding-bottom: 32px;
}

.sidenav-buttons .btn-block+.btn-block {
    margin-top: 22px;
}

.sidenav-buttons .btn-warning:hover {
    background-color: #a382ae;
    border-color: #a382ae;
}


/* end : sidenav buttons */


/* starts : post job cards */

.post-job-cards .card-block,
.post-job-cards .card-header.no-bg+.card-block {
    padding-top: 12px;
}

.post-job-cards .info-block h5 {
    color: #fff;
}

.post-job-cards .info-block {
    background-color: #c0c0c0;
}

.post-job-cards .info-block .card-title {
    padding-top: 14px;
}

.post-job-cards .info-block {
    padding-bottom: 22px;
}

.post-job-cards .checkbox,
.card.portlet .checkbox {
    margin: 0;
}

.post-job-cards .checkbox label,
.card.portlet .checkbox label {
    padding-left: 24px;
}

.card.portlet .checkbox label {
    font-size: 0.86rem !important;
}

.post-job-cards .checkbox input[type='checkbox'],
.card.portlet .checkbox input[type='checkbox'] {
    top: -2px;
    margin-left: -24px;
}

.card.portlet .checkbox input[type='checkbox'] {
    top: -3px;
}

.post-job-cards .card-header {
    background-color: #c0c0c0;
}

.post-job-cards .btn-primary:hover {
    background-color: #f0c54c;
    border-color: #f0c54c;
    white-space: inherit;
}

.post-job-cards .btn-block+.btn-block {
    margin-top: 16px;
}


/* end : post job cards */


/* starts : post job content card */

.post-job-content-card .info-block h5 {
    color: #fff;
}

.post-job-content-card .info-block {
    background-color: #c0c0c0;
}

.post-job-content-card .info-block .card-title {
    padding-top: 14px;
}

.post-job-content-card .info-block {
    padding-bottom: 22px;
}


/* end : post job content card */


/* starts : top-cards */

.top-cards .card-primary {
    background-color: #fff;
}

.top-cards .card-inverse .card-header {
    border-bottom-color: #f1f1f1;
}

.top-cards .card-inverse .card-header,
.top-cards .card-inverse .card-text {
    color: #838383;
}

.top-cards .card-primary:hover .card-text,
.top-cards .card-primary:hover .material-icons {
    color: #fa6160;
}

.top-cards .card-header {
    padding-top: 22px;
    padding-bottom: 22px;
}

.top-cards .card-header .material-icons {
    margin-bottom: 16px;
}


/* end : top-cards */


/* Starts : link classes */


/* default white with 70% opacity, and hover is red */

.link-type-01 {
    color: rgba(255, 255, 255, 0.7);
}

.link-type-01:hover {
    color: #ec5c56;
}


/* End : link classes */


/* starts : countdown */

.countdown .btn-danger {
    background-color: #ec5c56;
    border-color: #ec5c56;
}

.countdown .btn-danger:hover {
    background-color: #f0c54c;
    border-color: #f0c54c;
}


/* end : countdown */

@media (min-width: 1025px) {
    .navbar-search .form-control {
        width: 404px;
    }
}

/* .postToChannelclasses starts */

.postToChannel {}

.postToChannel .modal-content {
    padding: 16px;
}

.postToChannel .modal-content .modal-footer {
    border-top-width: 0;
}

.postToChannel .modal-content .close {
    float: none;
    position: absolute;
    z-index: 4;
    top: 16px;
    right: 16px;
}

.postToChannel .modal-content .nav-tabs .nav-item .nav-link:hover,
.postToChannel .modal-content .nav-tabs .nav-item .nav-link.active {
    background-color: #12a6a1;
    color: #fff;
}


/* postToChannel classes end */

/* .addNewQuestion starts */

.addNewQuestion {}

.addNewQuestion .modal-content {
    padding: 16px;
    padding-top: 0;
}

.addNewQuestion .modal-body {
    padding-bottom: 0;
}

.addNewQuestion .modal-content .close {
    float: none;
    position: absolute;
    z-index: 4;
    top: 19px;
    right: 28px;
}

.addNewQuestion .modal-content .card {
    margin-bottom: 0;
}

.addNewQuestion .modal-content .display-selections .hide {
    display: none;
}

.addNewQuestion .slider-handle {
    background-color: #12a6a1;
    background-image: none;
}

.addNewQuestion .new-text-box {
    position: relative;
    z-index: 0;
    padding-right: 25px;
    padding-top: 16px;
}

.addNewQuestion .new-text-box .remove_field {
    position: absolute;
    right: -2px;
    top: 24px;
}

.addNewQuestion select {
    -webkit-appearance: none;
}

.addNewQuestion .inline-text-boxes input {
    display: inline-block;
    width: 30%;
    margin-left: 10px;
    margin-right: 10px;
}

.addNewQuestion .inline-text-boxes label {
    font-weight: normal;
}

/* addNewQuestion classes end */

.shepherd-element.shepherd-theme-default .shepherd-content footer .shepherd-buttons li .shepherd-button {
  background: #9e84ab !important;
}

.shepherd-element.shepherd-theme-default.shepherd-has-cancel-link .shepherd-content header h3 {
  color: #fff !important;
}

li.message-list-item .message-active .message-list-item-header{
    color: #12a6a1;
    font-weight: 600;
}

.job-content-bank .main-content,
.job-question-bank .main-content{
    background-color:rgba(220,220,220,0.6);
}
.job-content-bank .content-view,
.job-question-bank .content-view{
    padding: 1.5rem;
}

.job-question-checkbox {
    left: 25px !important;
}

.job-content-checkbox {
    left: 25px !important;
}

/* validation classes start */

.post-job-form .form-group .m-b-1{
  margin-right: 0.5rem;
}

.post-job-validation-error,
.content-bank-validation-error,
.employer-branding-validation-error {
  color: #d2190b;
  margin-top: 5px;
  display: inline-block;
}

/* validation classes end */

/* reorder classes start */
.edit-channel-header {
  padding: 20px 0 0 20px;
}

.channel-feed-list,
.channel-featured-list {
  width: 45%;
  display: inline-block;
}

.channel-feed-list .card-text,
.channel-featured-list .card-text {
  height: 400px;
  overflow: overlay;
}

.channel-featured-list {
  float: right;
}

.featured-card {
  background-color: #fff;
  border-radius: 2px !important;
  border-width: 2px !important;
  border: dashed;
}

.post-card-description {
  display: block;
}

.post-card-country {
  display: block;
  font-weight: bold;
  margin-top: 10px;
}

.post-card-salary {
  display: block;
}

/* reorder classes end */

/* branding content, gallery classes start */

.branding-content a, .branding-content button, .branding-gallery a, .branding-gallery button {
    min-width: 20%;
}

.branding-content img, .branding-gallery img {
    width: 100%;
}

.branding-gallery .gallery-image, .branding-content .content-image, .branding-content iframe {
    background-size: cover!important;
    background-position: 50% 50%!important;
}

.branding-gallery .card-block {
    white-space: nowrap;
    height: 38px;
    overflow: hidden;
}

.branding-content .card-block {
    white-space: nowrap;
    height: 120px;
    overflow: hidden;
}

@media (max-width: 543px) {
    .branding-gallery .gallery-image, .branding-content .content-image, .branding-content iframe {
        height: 280px;
    }
}

@media (min-width: 544px) {
    .branding-gallery .gallery-image, .branding-content .content-image, .branding-content iframe {
        height: 220px;
    }
}

@media (min-width: 991px) {
    .branding-gallery .gallery-image, .branding-content .content-image, .branding-content iframe {
        height: 200px;
    }
}

@media (min-width: 1392px) {
    .branding-gallery .gallery-image, .branding-content .content-image, .branding-content iframe {
        height: 374px;
    }
}

/* branding content, gallery classes end */

/* Popup alert classes */

.swal-button--confirm {
  background-color: #12a6a1;
}

.swal-button--update_job,
.swal-button--draft_jobs {
  background-color: #12a6a1;
}

.swal-text {
  text-align: center !important;
}

.swal-footer {
  text-align: center;
}

/* Alerts classes */

.toast-top-full-width {
  width: 80% !important;
  opacity: 1 !important;
}

.toast-top-full-width .toast {
  width: 100% !important;
  margin: 0 !important;
  opacity: 1 !important;
}

.toast-success {
  background-color: #a382b0;
}

.toast-top-full-width .toast .toast-message{
  opacity: 1 !important;
}

/* feedPopup classes */

.feed-popup .contacts-list {
    max-width: 100% !important;
}

.feed-popup .b-r {
    border: none !important;
}

.feed-popup .p-a-1.profile {
    padding-top: 25px !important;
}

.sidebar-panel>nav ul.nav>li .active {
    background-color: rgba(0, 0, 0, 0.05) !important;
}

/* toatr custom rules */

#toast-container > div:hover {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    opacity: 0.8;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
    filter: alpha(opacity=80);
    cursor: default;
}

#toast-container > div {
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

/* ace-editor-wrapper class */

.ace-editor-wrapper {
    background: #E8E8E8;
    border: 2px solid #D8D8D8;
    margin-top: 10px;
}

/* collect widget classes */

.collect-widget-wrapper {
    padding: 45px 40px;
}

.collect-widget-left-top {
    display: flex;
    align-items: center;
}

.collect-widget-left-top-text {
    padding-left: 40px;
}

.collect-widget-left-bottom-text {
    padding-top: 40px;
}

.collect-widget-left-bottom-text label {
    padding-bottom: 15px;
}

/* customizaion spinkit-circle class in the application-detail component */

.application-detail-dropdown .sk-circle {
    margin: 0 !important;
}


.text-align-center {
    text-align: center;
}

.wrap {
    overflow-wrap: break-word;
    word-break: break-word;
}

/* location auto complete */
.pac-container.pac-logo {
  z-index: 10000 !important;
}

/* Reorder tiles on employer branding styles */
.reorder-tiles table {
    width: 100%;
}

.reorder-tiles table.dragSortList.-isExpanded {
    padding: 15px;
    background-color: #f6f6f6;
}

.reorder-tiles table.dragSortList.-isExpanded.-isDraggingOver {
    background-color: #eee;
}

.reorder-tiles table.dragSortList.-isExpanded.-isDraggingOver:before {
    content: none;
}

.reorder-tiles tr.dragSortItem.-placeholderAbove:before,
.reorder-tiles tr.dragSortItem.-placeholderBelow:before {
    content: none;
}

.reorder-tiles tr.dragSortItem.-placeholderAbove td {
    padding-top: 25px;
}

.reorder-tiles tr.dragSortItem.-placeholderBelow td {
    padding-bottom: 25px;
}

.reorder-tiles table .the-item {
    margin: 4px;
    padding: 0.2em 0.5em;
    background-color: #C0C0C0;
}

/* Sample header skins */

.skin-0 .main-panel > .header {
  color: rgba(255, 255, 255, 0.7);
  background-color: #fa6160; }
  .skin-1 .main-panel > .header .navbar-nav .nav-link.dropdown > a,
  .skin-1 .main-panel > .header .nav > li > a,
  .skin-1 .main-panel > .header .navbar-heading,
  .skin-1 .main-panel > .header .material-icons {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .navbar-nav .dropdown-menu {
    border-color: #7fc35c; }
  .skin-1 .main-panel > .header .search-form > input:-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .search-form > input::-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .search-form > input:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .search-form > input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .search-form .form-control:focus {
    background: #7fc35c; }
  .skin-1 .main-panel > .header .nav > li > a:hover,
  .skin-1 .main-panel > .header .nav > li > a:focus,
  .skin-1 .main-panel > .header .nav .open > a,
  .skin-1 .main-panel > .header .nav .open > a:hover,
  .skin-1 .main-panel > .header .nav .open > a:focus {
    color: white; }


.skin-1 .main-panel > .header {
  color: rgba(255, 255, 255, 0.7);
  background-color: #7fc35c; }
  .skin-1 .main-panel > .header .navbar-nav .nav-link.dropdown > a,
  .skin-1 .main-panel > .header .nav > li > a,
  .skin-1 .main-panel > .header .navbar-heading,
  .skin-1 .main-panel > .header .material-icons {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .navbar-nav .dropdown-menu {
    border-color: #7fc35c; }
  .skin-1 .main-panel > .header .search-form > input:-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .search-form > input::-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .search-form > input:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .search-form > input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-1 .main-panel > .header .search-form .form-control:focus {
    background: #7fc35c; }
  .skin-1 .main-panel > .header .nav > li > a:hover,
  .skin-1 .main-panel > .header .nav > li > a:focus,
  .skin-1 .main-panel > .header .nav .open > a,
  .skin-1 .main-panel > .header .nav .open > a:hover,
  .skin-1 .main-panel > .header .nav .open > a:focus {
    color: white; }

.skin-2 .main-panel > .header {
  color: rgba(255, 255, 255, 0.7);
  background-color: #4cc3f0; }
  .skin-2 .main-panel > .header .navbar-nav .nav-link.dropdown > a,
  .skin-2 .main-panel > .header .nav > li > a,
  .skin-2 .main-panel > .header .navbar-heading,
  .skin-2 .main-panel > .header .material-icons {
    color: rgba(255, 255, 255, 0.7); }
  .skin-2 .main-panel > .header .navbar-nav .dropdown-menu {
    border-color: #4cc3f0; }
  .skin-2 .main-panel > .header .search-form > input:-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-2 .main-panel > .header .search-form > input::-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-2 .main-panel > .header .search-form > input:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-2 .main-panel > .header .search-form > input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-2 .main-panel > .header .search-form .form-control:focus {
    background: #4cc3f0; }
  .skin-2 .main-panel > .header .nav > li > a:hover,
  .skin-2 .main-panel > .header .nav > li > a:focus,
  .skin-2 .main-panel > .header .nav .open > a,
  .skin-2 .main-panel > .header .nav .open > a:hover,
  .skin-2 .main-panel > .header .nav .open > a:focus {
    color: white; }

.skin-3 .main-panel > .header {
  color: rgba(255, 255, 255, 0.7);
  background-color: #f0c54c; }
  .skin-3 .main-panel > .header .navbar-nav .nav-link.dropdown > a,
  .skin-3 .main-panel > .header .nav > li > a,
  .skin-3 .main-panel > .header .navbar-heading,
  .skin-3 .main-panel > .header .material-icons {
    color: rgba(255, 255, 255, 0.7); }
  .skin-3 .main-panel > .header .navbar-nav .dropdown-menu {
    border-color: #f0c54c; }
  .skin-3 .main-panel > .header .search-form > input:-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-3 .main-panel > .header .search-form > input::-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-3 .main-panel > .header .search-form > input:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-3 .main-panel > .header .search-form > input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .skin-3 .main-panel > .header .search-form .form-control:focus {
    background: #f0c54c; }
  .skin-3 .main-panel > .header .nav > li > a:hover,
  .skin-3 .main-panel > .header .nav > li > a:focus,
  .skin-3 .main-panel > .header .nav .open > a,
  .skin-3 .main-panel > .header .nav .open > a:hover,
  .skin-3 .main-panel > .header .nav .open > a:focus {
    color: white; }

.skin-4 .main-panel > .header {
  color: rgba(0, 0, 0, 0.7);
  background-color: white; }
  .skin-4 .main-panel > .header .navbar-nav .nav-link.dropdown > a,
  .skin-4 .main-panel > .header .nav > li > a,
  .skin-4 .main-panel > .header .navbar-heading,
  .skin-4 .main-panel > .header .material-icons {
    color: rgba(0, 0, 0, 0.7); }
  .skin-4 .main-panel > .header .navbar-nav .dropdown-menu {
    border-color: white; }
  .skin-4 .main-panel > .header .search-form > input:-moz-placeholder {
    color: rgba(0, 0, 0, 0.7); }
  .skin-4 .main-panel > .header .search-form > input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.7); }
  .skin-4 .main-panel > .header .search-form > input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.7); }
  .skin-4 .main-panel > .header .search-form > input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.7); }
  .skin-4 .main-panel > .header .search-form .form-control:focus {
    background: white; }
  .skin-4 .main-panel > .header .nav > li > a:hover,
  .skin-4 .main-panel > .header .nav > li > a:focus,
  .skin-4 .main-panel > .header .nav .open > a,
  .skin-4 .main-panel > .header .nav .open > a:hover,
  .skin-4 .main-panel > .header .nav .open > a:focus {
    color: #000; }

.skin-4 .sidebar-panel {
  background-color: #535a6c; }
  .skin-4 .sidebar-panel > .brand {
    background-color: #535a6c; }
    .skin-4 .sidebar-panel > .brand > a {
      color: rgba(255, 255, 255, 0.7); }
      .skin-4 .sidebar-panel > .brand > a:focus, .skin-4 .sidebar-panel > .brand > a:hover {
        color: rgba(255, 255, 255, 0.7); }
  .skin-4 .sidebar-panel .nav-profile > .dropdown-toggle,
  .skin-4 .sidebar-panel .nav-title {
    color: rgba(255, 255, 255, 0.8); }
  .skin-4 .sidebar-panel > nav > ul > li > a:hover,
  .skin-4 .sidebar-panel > nav > ul > li.open > a:hover {
    background-color: #4c5363; }
  .skin-4 .sidebar-panel > nav li.open > a,
  .skin-4 .sidebar-panel > nav li.active > a {
    color: #fff; }
  .skin-4 .sidebar-panel > nav > ul > li.open:before {
    position: absolute;
    z-index: 99;
    top: 0;
    width: 4px;
    height: 100%;
    content: '';
    background: #4c7ff0;
    left: 0; }
  .skin-4 .sidebar-panel > nav a {
    color: rgba(255, 255, 255, 0.8); }
    .skin-4 .sidebar-panel > nav a:focus, .skin-4 .sidebar-panel > nav a:hover {
      color: #fff !important; }

.skin-4 .sidebar-panel {
  box-shadow: none; }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5za2lucy5zY3NzIiwibWl4aW5zL19za2luLWdlbmVyYXRvci5zY3NzIiwiX2FwcC52YXJpYWJsZXMuc2NzcyIsIi4uLy4uL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJtaXhpbnMvYmktYXBwL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSx5QkFBeUI7QUFFekI7RUN5Q0ksZ0NEeEMwQztFQ3lDMUMsMEJDcEJlLEVEd0RoQjtFRDlFSDs7OztJQytDTSxnQ0Q5Q3dDLEVDK0N6QztFRGhETDtJQ21EUSxzQkM3QlcsRUQ4Qlo7RURwRFA7SUN3RFEsZ0NEdkRzQyxFQ3dEdkM7RUR6RFA7SUMyRFEsZ0NEMURzQyxFQzJEdkM7RUQ1RFA7SUM4RFEsZ0NEN0RzQyxFQzhEdkM7RUQvRFA7SUNpRVEsZ0NEaEVzQyxFQ2lFdkM7RURsRVA7SUNxRU0sb0JDL0NhLEVEZ0RkO0VEdEVMOzs7OztJQzRFTSxhRDNFOEQsRUM0RS9EOztBRHpFTDtFQ3FDSSxnQ0RwQ3VDO0VDcUN2QywwQkNqQlksRURxRGI7RUQxRUg7Ozs7SUMyQ00sZ0NEMUNxQyxFQzJDdEM7RUQ1Q0w7SUMrQ1Esc0JDMUJRLEVEMkJUO0VEaERQO0lDb0RRLGdDRG5EbUMsRUNvRHBDO0VEckRQO0lDdURRLGdDRHREbUMsRUN1RHBDO0VEeERQO0lDMERRLGdDRHpEbUMsRUMwRHBDO0VEM0RQO0lDNkRRLGdDRDVEbUMsRUM2RHBDO0VEOURQO0lDaUVNLG9CQzVDVSxFRDZDWDtFRGxFTDs7Ozs7SUN3RU0sYUR2RTJELEVDd0U1RDs7QURyRUw7RUNpQ0ksZ0NEaEMwQztFQ2lDMUMsMEJDbkJlLEVEdURoQjtFRHRFSDs7OztJQ3VDTSxnQ0R0Q3dDLEVDdUN6QztFRHhDTDtJQzJDUSxzQkM1QlcsRUQ2Qlo7RUQ1Q1A7SUNnRFEsZ0NEL0NzQyxFQ2dEdkM7RURqRFA7SUNtRFEsZ0NEbERzQyxFQ21EdkM7RURwRFA7SUNzRFEsZ0NEckRzQyxFQ3NEdkM7RUR2RFA7SUN5RFEsZ0NEeERzQyxFQ3lEdkM7RUQxRFA7SUM2RE0sb0JDOUNhLEVEK0NkO0VEOURMOzs7OztJQ29FTSxhRG5FOEQsRUNvRS9EOztBRGpFTDtFQzZCSSwwQkNOYTtFRE9iLHdCRDdCMkIsRUNpRTVCO0VEbEVIOzs7O0lDbUNNLDBCQ1pXLEVEYVo7RURwQ0w7SUN1Q1Esb0JEdEN1QixFQ3VDeEI7RUR4Q1A7SUM0Q1EsMEJDckJTLEVEc0JWO0VEN0NQO0lDK0NRLDBCQ3hCUyxFRHlCVjtFRGhEUDtJQ2tEUSwwQkMzQlMsRUQ0QlY7RURuRFA7SUNxRFEsMEJDOUJTLEVEK0JWO0VEdERQO0lDeURNLGtCRHhEeUIsRUN5RDFCO0VEMURMOzs7OztJQ2dFTSxZRC9ENEMsRUNnRTdDOztBRGpFTDtFQ2pCSSwwQkN3QlksRURnQmI7RUR2Qkg7SUNmTSwwQkNzQlUsRURmWDtJRFFMO01DYlEsZ0NEZTZFLEVDWDlFO01EU1A7UUNYVSxnQ0FBYyxFRWFuQjtFSEZMOztJQ0xNLGdDRE9zQyxFQ052QztFRElMOztJQ0FRLDBCQUF3QixFQUN6QjtFRERQOztJQ0lRLFlERjBELEVDRzNEO0VETFA7SUNPUSxtQkFBbUI7SUFDbkIsWUFBWTtJQUNaLE9BQU87SUFDUCxXQUFXO0lBQ1gsYUFBYTtJQUNiLFlBQVk7SUFDWixvQkNQUTtJRXdHWixRSGhHbUIsRUFDaEI7RURmUDtJQ2lCUSxnQ0Rmb0MsRUNtQnJDO0lEckJQO01DbUJVLHVCQUFvQyxFRWpCekM7O0FIRkw7RUFJSSxpQkFBaUIsRUFDbEIiLCJmaWxlIjoiYXBwLnNraW5zLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJtaXhpbnMvYmktYXBwL2JpLWFwcC1sdHJcIjtcbkBpbXBvcnQgXCJhcHAudmFyaWFibGVzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NraW4tZ2VuZXJhdG9yXCI7XG5cbi8qIFNhbXBsZSBoZWFkZXIgc2tpbnMgKi9cblxuLnNraW4tMSB7XG4gIEBpbmNsdWRlIGhlYWRlci12YXJpYW50KCRicmFuZC1zdWNjZXNzLCByZ2JhKDI1NSwyNTUsMjU1LC43KSwgcmdiYSgyNTUsMjU1LDI1NSwxKSk7XG59XG5cbi5za2luLTIge1xuICBAaW5jbHVkZSBoZWFkZXItdmFyaWFudCgkYnJhbmQtaW5mbywgcmdiYSgyNTUsMjU1LDI1NSwuNyksIHJnYmEoMjU1LDI1NSwyNTUsMSkpO1xufVxuXG4uc2tpbi0zIHtcbiAgQGluY2x1ZGUgaGVhZGVyLXZhcmlhbnQoJGJyYW5kLXdhcm5pbmcsIHJnYmEoMjU1LDI1NSwyNTUsLjcpLCByZ2JhKDI1NSwyNTUsMjU1LDEpKTtcbn1cblxuLnNraW4tNCB7XG4gIEBpbmNsdWRlIGhlYWRlci12YXJpYW50KHdoaXRlLCAkdGV4dC1jb2xvciwgIzAwMCk7XG4gIEBpbmNsdWRlIHNpZGViYXItdmFyaWFudCgkYnJhbmQtZGFyaywgcmdiYSgyNTUsMjU1LDI1NSwuOCksICNmZmYsICRicmFuZC1kYXJrLCByZ2JhKDI1NSwyNTUsMjU1LC43KSk7XG4gIC5zaWRlYmFyLXBhbmVsIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59IiwiLy8gU2lkZWJhciBza2luIGdlbmVyYXRvclxuQG1peGluIHNpZGViYXItdmFyaWFudCgkYmFja2dyb3VuZCwgJGNvbG9yLCAkaG92ZXItYWN0aXZlLWNvbG9yLCAkYnJhbmQtYmFja2dyb3VuZCwgJGJyYW5kLWNvbG9yKSB7XG4gIC5zaWRlYmFyLXBhbmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICA+IC5icmFuZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmFja2dyb3VuZDtcbiAgICAgID4gYSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3I7XG4gICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLWNvbG9yLCA1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm5hdi1wcm9maWxlID4gLmRyb3Bkb3duLXRvZ2dsZSxcbiAgICAubmF2LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICAgID4gbmF2IHtcbiAgICAgID4gdWwgPiBsaSA+IGE6aG92ZXIsXG4gICAgICA+IHVsID4gbGkub3BlbiA+IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDMlKTtcbiAgICAgIH1cbiAgICAgIGxpLm9wZW4gPiBhLFxuICAgICAgbGkuYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaG92ZXItYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgICAgPiB1bCA+IGxpLm9wZW46YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgQGluY2x1ZGUgbGVmdCgwKTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAkaG92ZXItYWN0aXZlLWNvbG9yIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBIZWFkZXIgc2tpbiBnZW5lcmF0b3JcbkBtaXhpbiBoZWFkZXItdmFyaWFudCgkYmFja2dyb3VuZCwgJGNvbG9yLCAkaG92ZXItYWN0aXZlLWNvbG9yKSB7XG4gIC5tYWluLXBhbmVsID4gLmhlYWRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAubmF2YmFyLW5hdiAubmF2LWxpbmsuZHJvcGRvd24gPiBhLFxuICAgIC5uYXYgPiBsaSA+IGEsXG4gICAgLm5hdmJhci1oZWFkaW5nLFxuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWFyY2gtZm9ybSA+IGlucHV0IHtcbiAgICAgICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2VhcmNoLWZvcm0gLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gICAgLm5hdiA+IGxpID4gYTpob3ZlcixcbiAgICAubmF2ID4gbGkgPiBhOmZvY3VzLFxuICAgIC5uYXYgLm9wZW4gPiBhLFxuICAgIC5uYXYgLm9wZW4gPiBhOmhvdmVyLFxuICAgIC5uYXYgLm9wZW4gPiBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkaG92ZXItYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEdlbmVyYWxcbi8vXG5cbiR0cmFuc2l0aW9uLWR1cmF0aW9uOiAyMDBtcztcbiRtYWluLXBhbmVsLWJnOiByZ2JhKDI0NywgMjQwLCAyNDAsIDEpO1xuJGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuJGd1dHRlcjogMS41cmVtO1xuXG4vL1xuLy8gV2lkdGhzXG4vL1xuJHNpZGViYXItd2lkdGg6IDE4cmVtO1xuJHNpZGViYXItc21hbGwtbWVudS13aWR0aDogNHJlbTtcbiRzaWRlYmFyLXdpZHRoLW1vYmlsZTogMThyZW07XG5cbi8vXG4vLyBIZWlnaHRzXG4vL1xuJGhlYWRlci1oZWlnaHQ6IDMuNDM4cmVtO1xuJGhlYWRlci1oZWlnaHQtcHg6IDU2cHg7XG4kZm9vdGVyLWhlaWdodDogM3JlbTtcblxuLy9cbi8vIEJyYW5kaW5nXG4vL1xuJG1haW4tY29sb3I6IHJnYig3NiwgMTI3LCAyNDApO1xuJGJyYW5kLWRhcms6IHJnYig4MywgOTAsIDEwOCk7XG4kYnJhbmQtZGVmYXVsdDogcmdiKDIzMiwgMjMyLCAyMzIpO1xuJGJyYW5kLXByaW1hcnk6ICRtYWluLWNvbG9yO1xuJGJyYW5kLXN1Y2Nlc3M6IHJnYigxMjcsIDE5NSwgOTIpO1xuJGJyYW5kLXdhcm5pbmc6IHJnYigyNDAsIDE5NywgNzYpO1xuJGJyYW5kLWRhbmdlcjogcmdiKDIxMCwgMTA5LCA4NCk7XG4kYnJhbmQtaW5mbzogcmdiKDc2LCAxOTUsIDI0MCk7XG4kYnJhbmQtd2hpdGU6IHJnYigyNTUsIDI1NSwgMjU1KTtcblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG4kZm9udC1zaXplLWJhc2U6IDAuODEyNXJlbTtcbiRmb250LXdlaWdodC1iYXNlOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4kZm9udC13ZWlnaHQtYm9sZDogNjAwO1xuJHRleHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiRsaW5rLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiRsaW5rLWhvdmVyLWNvbG9yOiByZ2IoNjgsIDY4LCA2OCk7XG4kZm9udC1mYW1pbHktYmFzZS13ZWJmb250OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1oZWFkaW5nLXdlYmZvbnQ6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuXG4vL1xuLy8gUmFkaXVzXG4vL1xuJGJvcmRlci1yYWRpdXMtYmFzZTogMnB4O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6IDRweDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAxcHg7XG5cbi8vXG4vLyBTaWRlYmFyIFNraW5cbi8vXG4kc2lkZWJhci1za2luLWJhY2tncm91bmQ6IHdoaXRlO1xuJHNpZGViYXItc2tpbi1jb2xvcjogJHRleHQtY29sb3I7XG4kc2lkZWJhci1za2luLWhvdmVyOiByZ2IoMCwgMCwgMCk7XG4kc2lkZWJhci1za2luLWJyYW5kLWJhY2tncm91bmQ6ICRzaWRlYmFyLXNraW4tYmFja2dyb3VuZDtcbiRzaWRlYmFyLXNraW4tYnJhbmQtY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4vL1xuLy8gSGVhZGVyIFNraW5cbi8vXG4kaGVhZGVyLXNraW4tYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4kaGVhZGVyLXNraW4tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpO1xuJGhlYWRlci1za2luLWhvdmVyOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4iLCJAbWl4aW4gaG92ZXIge1xuICBAaWYgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeSB7XG4gICAgLy8gU2VlIE1lZGlhIFF1ZXJpZXMgTGV2ZWwgNDogaHR0cDovL2RyYWZ0cy5jc3N3Zy5vcmcvbWVkaWFxdWVyaWVzLyNob3ZlclxuICAgIC8vIEN1cnJlbnRseSBzaGltbWVkIGJ5IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL21xNC1ob3Zlci1zaGltXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICY6aG92ZXIgeyBAY29udGVudCB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmOmhvdmVyIHsgQGNvbnRlbnQgfVxuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gIEBpZiAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5IHtcbiAgICAmOmZvY3VzIHsgQGNvbnRlbnQgfVxuICAgIEBpbmNsdWRlIGhvdmVyIHsgQGNvbnRlbnQgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgQGNvbnRlbnRcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgQGlmICRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnkge1xuICAgICYsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAY29udGVudFxuICAgIH1cbiAgICBAaW5jbHVkZSBob3ZlciB7IEBjb250ZW50IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJixcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgQGNvbnRlbnRcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XG4gIEBpZiAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5IHtcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICAgIEBpbmNsdWRlIGhvdmVyIHsgQGNvbnRlbnQgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICY6aG92ZXIge1xuICAgICAgQGNvbnRlbnRcbiAgICB9XG4gIH1cbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gYmkgYXBwIG1peGluc1xuLy8gYXV0aG9yczogXG4vLyB0d2l0dGVyLmNvbS9hbmFzbmFrYXdhXG4vLyB0d2l0dGVyLmNvbS92aWN0b3J6YW1maXJcbi8vIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBcbi8vIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUYWJsZSBvZiBjb250ZW50c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBwYWRkaW5nXG4vLyBtYXJnaW5cbi8vIGZsb2F0XG4vLyB0ZXh0IGFsaWduXG4vLyBjbGVhclxuLy8gbGVmdCAvIHJpZ2h0XG4vLyBib3JkZXJcbi8vICAtIHdpZHRoXG4vLyAgLSBzdHlsZVxuLy8gIC0gY29sb3Jcbi8vICAtIGdlbmVyaWNcbi8vICAtIHJhZGl1c1xuLy8gbHRyIC8gcnRsIGNvbnRlbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gZ2VuZXJpYyBtaXhpbiBmb3IgcHJvcGVydGllcyB3aXRoIHZhbHVlc1xuLy8gKHRvcCByaWdodCBib3R0b20gbGVmdClcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGJpLWFwcC1jb21wYWN0KCRwcm9wZXJ0eSwgJHRvcCwgJHJpZ2h0LCAkYm90dG9tLCAkbGVmdCkge1xuICBAaWYgJGJpLWFwcC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgICAjeyRwcm9wZXJ0eX06ICR0b3AgJHJpZ2h0ICRib3R0b20gJGxlZnQ7XG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3BlcnR5fTogJHRvcCAkbGVmdCAkYm90dG9tICRyaWdodDtcbiAgfVxufVxuXG4vLyBwYWRkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBwYWRkaW5nLWxlZnQoJGRpc3RhbmNlKSB7XG4gIHBhZGRpbmctI3skYmktYXBwLWxlZnR9OiAkZGlzdGFuY2U7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXJpZ2h0KCRkaXN0YW5jZSkge1xuICBwYWRkaW5nLSN7JGJpLWFwcC1yaWdodH06ICRkaXN0YW5jZTtcbn1cblxuQG1peGluIHBhZGRpbmcoJHRvcCwgJHJpZ2h0LCAkYm90dG9tLCAkbGVmdCkge1xuICBAaW5jbHVkZSBiaS1hcHAtY29tcGFjdChwYWRkaW5nLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gbWFyZ2luXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBtYXJnaW4tbGVmdCgkZGlzdGFuY2UpIHtcbiAgbWFyZ2luLSN7JGJpLWFwcC1sZWZ0fTogJGRpc3RhbmNlO1xufVxuXG5AbWl4aW4gbWFyZ2luLXJpZ2h0KCRkaXN0YW5jZSkge1xuICBtYXJnaW4tI3skYmktYXBwLXJpZ2h0fTogJGRpc3RhbmNlO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgQGluY2x1ZGUgYmktYXBwLWNvbXBhY3QobWFyZ2luLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gZmxvYXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGJpLWFwcC1mbG9hdC1sZWZ0KCRpbXBvcnRhbnQ6ICcnKSB7XG4gIGZsb2F0OiAkYmktYXBwLWxlZnQgdW5xdW90ZSgkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIGJpLWFwcC1mbG9hdC1yaWdodCgkaW1wb3J0YW50OiAnJykge1xuICBmbG9hdDogJGJpLWFwcC1yaWdodCB1bnF1b3RlKCRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gZmxvYXQoJGRpcmVjdGlvbiwgJGltcG9ydGFudDogJycpIHtcbiAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgQGluY2x1ZGUgYmktYXBwLWZsb2F0LWxlZnQoJGltcG9ydGFudCk7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgQGluY2x1ZGUgYmktYXBwLWZsb2F0LXJpZ2h0KCRpbXBvcnRhbnQpO1xuICB9IEBlbHNlIHtcbiAgICBmbG9hdDogJGRpcmVjdGlvbjtcbiAgfVxufVxuXG4vLyB0ZXh0IGFsaWduXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBiaS1hcHAtdGV4dC1hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogJGJpLWFwcC1sZWZ0O1xufVxuXG5AbWl4aW4gYmktYXBwLXRleHQtYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiAkYmktYXBwLXJpZ2h0O1xufVxuXG5AbWl4aW4gdGV4dC1hbGlnbigkZGlyZWN0aW9uKSB7XG4gIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgIEBpbmNsdWRlIGJpLWFwcC10ZXh0LWFsaWduLWxlZnQ7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgQGluY2x1ZGUgYmktYXBwLXRleHQtYWxpZ24tcmlnaHQ7XG4gIH0gQGVsc2Uge1xuICAgIHRleHQtYWxpZ246ICRkaXJlY3Rpb247XG4gIH1cbn1cblxuLy8gY2xlYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGJpLWFwcC1jbGVhci1sZWZ0IHtcbiAgY2xlYXI6ICRiaS1hcHAtbGVmdDtcbn1cblxuQG1peGluIGJpLWFwcC1jbGVhci1yaWdodCB7XG4gIGNsZWFyOiAkYmktYXBwLXJpZ2h0O1xufVxuXG5AbWl4aW4gY2xlYXIoJGRpcmVjdGlvbikge1xuICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICBAaW5jbHVkZSBiaS1hcHAtY2xlYXItbGVmdDtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICBAaW5jbHVkZSBiaS1hcHAtY2xlYXItcmlnaHQ7XG4gIH0gQGVsc2Uge1xuICAgIGNsZWFyOiAkZGlyZWN0aW9uO1xuICB9XG59XG5cbi8vIGxlZnQgLyByaWdodFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWl4aW4gbGVmdCgkZGlzdGFuY2UpIHtcbiAgQGlmICRiaS1hcHAtZGlyZWN0aW9uID09IGx0ciB7XG4gICAgbGVmdDogJGRpc3RhbmNlO1xuICB9IEBlbHNlIGlmICRiaS1hcHAtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgcmlnaHQ6ICRkaXN0YW5jZTtcbiAgfVxufVxuXG5AbWl4aW4gcmlnaHQoJGRpc3RhbmNlKSB7XG4gIEBpZiAkYmktYXBwLWRpcmVjdGlvbiA9PSBsdHIge1xuICAgIHJpZ2h0OiAkZGlzdGFuY2U7XG4gIH0gQGVsc2UgaWYgJGJpLWFwcC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICBsZWZ0OiAkZGlzdGFuY2U7XG4gIH1cbn1cblxuLy8gYm9yZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gd2lkdGhcbkBtaXhpbiBib3JkZXItbGVmdC13aWR0aCgkd2lkdGgpIHtcbiAgYm9yZGVyLSN7JGJpLWFwcC1sZWZ0fS13aWR0aDogJHdpZHRoO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXdpZHRoKCR3aWR0aCkge1xuICBib3JkZXItI3skYmktYXBwLXJpZ2h0fS13aWR0aDogJHdpZHRoO1xufVxuXG5AbWl4aW4gYm9yZGVyLXdpZHRoKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgQGluY2x1ZGUgYmktYXBwLWNvbXBhY3QoYm9yZGVyLXdpZHRoLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gc3R5bGVcbkBtaXhpbiBib3JkZXItbGVmdC1zdHlsZSgkc3R5bGUpIHtcbiAgYm9yZGVyLSN7JGJpLWFwcC1sZWZ0fS1zdHlsZTogJHN0eWxlO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXN0eWxlKCRzdHlsZSkge1xuICBib3JkZXItI3skYmktYXBwLXJpZ2h0fS1zdHlsZTogJHN0eWxlO1xufVxuXG5AbWl4aW4gYm9yZGVyLXN0eWxlKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgQGluY2x1ZGUgYmktYXBwLWNvbXBhY3QoYm9yZGVyLXN0eWxlLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gY29sb3JcbkBtaXhpbiBib3JkZXItbGVmdC1jb2xvcigkY29sb3IpIHtcbiAgYm9yZGVyLSN7JGJpLWFwcC1sZWZ0fS1jb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LWNvbG9yKCRjb2xvcikge1xuICBib3JkZXItI3skYmktYXBwLXJpZ2h0fS1jb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gYm9yZGVyLWNvbG9yKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgQGluY2x1ZGUgYmktYXBwLWNvbXBhY3QoYm9yZGVyLWNvbG9yLCAkdG9wLCAkcmlnaHQsICRib3R0b20sICRsZWZ0KTtcbn1cblxuLy8gZ2VuZXJpY1xuQG1peGluIGJvcmRlci1sZWZ0KCRib3JkZXItc3R5bGUpIHtcbiAgYm9yZGVyLSN7JGJpLWFwcC1sZWZ0fTogJGJvcmRlci1zdHlsZTtcbn1cblxuQG1peGluIGJvcmRlci1yaWdodCgkYm9yZGVyLXN0eWxlKSB7XG4gIGJvcmRlci0jeyRiaS1hcHAtcmlnaHR9OiAkYm9yZGVyLXN0eWxlO1xufVxuXG4vLyByYWRpdXNcbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JGJpLWFwcC1sZWZ0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXRvcCN7JGJpLWFwcC1sZWZ0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLXRvcC0jeyRiaS1hcHAtbGVmdH0tcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci10b3AtI3skYmktYXBwLXJpZ2h0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXRvcCN7JGJpLWFwcC1yaWdodH0tcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci10b3AtI3skYmktYXBwLXJpZ2h0fS1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JGJpLWFwcC1sZWZ0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLWJvdHRvbSN7JGJpLWFwcC1sZWZ0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRiaS1hcHAtbGVmdH0tcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skYmktYXBwLXJpZ2h0fS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLWJvdHRvbSN7JGJpLWFwcC1yaWdodH0tcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tI3skYmktYXBwLXJpZ2h0fS1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cyk7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpO1xufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKTtcbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cyk7XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cyk7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkdG9wTGVmdCwgJHRvcFJpZ2h0OiBudWxsLCAkYm90dG9tUmlnaHQ6IG51bGwsICRib3R0b21MZWZ0OiBudWxsKSB7XG4gIEBpZiAkdG9wUmlnaHQgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkdG9wTGVmdCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHRvcFJpZ2h0KTtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkYm90dG9tUmlnaHQpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJGJvdHRvbUxlZnQpO1xuICB9IEBlbHNlIHtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICR0b3BMZWZ0O1xuICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogJHRvcExlZnQ7XG4gICAgICAgIC1tcy1ib3JkZXItcmFkaXVzOiAkdG9wTGVmdDtcbiAgICAgICAgIC1vLWJvcmRlci1yYWRpdXM6ICR0b3BMZWZ0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHRvcExlZnQ7XG4gIH1cbn1cblxuLy8gUmV0dXJucyBcImVuXCIgb3IgXCJhclwiLCB1c2VmdWwgZm9yIGltYWdlIHN1ZmZpeGVzLlxuLy8gVXNhZ2U6IGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1nL2hlYWRlci0je2xhbmcoKX0ucG5nKTtcbkBmdW5jdGlvbiBsYW5nKCkge1xuICBAaWYgJGJpLWFwcC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgICBAcmV0dXJuICdlbic7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJ2FyJztcbiAgfVxufVxuXG4vLyBTdXBwb3J0IGZvciBcImRpcmVjdGlvblwiIGRlY2xhcmF0aW9uIChyZW5kZXJzIGx0ci9ydGwpLlxuLy8gVXNlZnVsIGZvciBmb3JtIGVsZW1lbnRzIGFzIHRoZXkgc3dhcCB0aGUgdGV4dC1pbmRlbnQgcHJvcGVydHkgYW5kIGFsaWduIHRoZSB0ZXh0IGFjY29yZGluZ2x5LlxuQG1peGluIGRpcmVjdGlvbiB7XG4gIGRpcmVjdGlvbjogJGJpLWFwcC1kaXJlY3Rpb247XG59XG5cbi8vIEludmVydHMgYSBwZXJjZW50YWdlIHZhbHVlLiBFeGFtcGxlOiA5NyUgYmVjYW1lcyAzJS5cbi8vIFVzZWZ1bCBmb3IgYmFja2dyb3VuZC1wb3NpdGlvbi5cbkBmdW5jdGlvbiBiaS1hcHAtaW52ZXJ0LXBlcmNlbnRhZ2UoJHBlcmNlbnRhZ2UpIHtcbiAgQGlmICRiaS1hcHAtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgQHJldHVybiAxMDAlIC0gJHBlcmNlbnRhZ2U7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHBlcmNlbnRhZ2U7XG4gIH1cbn1cblxuLy8gbHRyIC8gcnRsIGNvbnRlbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBsdHIge1xuICBAaWYgJGJpLWFwcC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcnRsIHtcbiAgQGlmICRiaS1hcHAtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */

/* bulk-actions popup classes */
.bulkActionsPopup .modal-footer,
.bulkActionsPopup .modal-header,
.bulkActionsPopup .modal-header .feed-icon {
  display: inline-block;
}
.bulkActionsPopup .modal-header .feed-icon {
  width: 50px;
  height: 50px;
  margin: 5px;
}
.bulkActionsPopup .modal-header .feed-icon .circle-icon {
  width: 100%;
  height: 100%;
  line-height: 3;
}
.bulkActionsPopup .modal-header .feed-icon img {
  width: 100%;
  height: 100%;
  border-radius: 15%;
}
.bulkActionsPopup .modal-body {
  font-size: 16px;
  text-align: center;
}
.bulkActionsPopup .sk-circle {
  margin: 0 !important;
}
.bulkActionsPopup .modal-footer button {
  margin: 4px 0;
}

/* Starts : job-application css classes */
.job-application{}
.fill-container.job-application{
    height:  calc(100vh - 150px);
}
.layout.job-application{
    width: inherit !important;
    display: flex !important;
}
.job-application .new-job-list .message-list-item .time{
    padding-right: 16px;
}
.job-application .application-search ul.message-list {
	padding: 0 1rem;
}
.job-application .application-search .message-list .message-list-item{
    position: relative;
}
.job-application .application-search .message-list .message-list-item a{
    padding-left:56px;
    position: relative;
    z-index: 0;
    margin-bottom: 8px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 5px;
}
.job-application .application-search .message-list .message-list-item a.active{
    background-color: #f2f2f2;
}
.job-application .application-search .message-list .message-list-item-header{
    width: 60%;
    display: inline-block;
}
.job-application .application-search .message-list .message-list-item input{
    top: 38%;
    right: 25px;
    position: absolute;
    font-size: 24px;
    z-index: 999;
}
.job-application .application-search .messages-list .message-header .message-toolbar .checkbox input{
  top: -1px;
  position: absolute;
  font-size: 24px;
  z-index: 999;
  width: unset;
}
.job-application .application-search .feed-icon.initials,
.job-application .application-search .feed-icon.image   {
    width:32px;
    position: absolute;
    left: 16px;
    top:50%;
    border-radius: 15%;
}
.job-application .application-search .feed-icon .img-circle,
.job-application .application-search .feed-icon .circle-icon{
    position: relative;
    top:-16px;
}
.job-application .application-search .feed-icon.image img{
    width: 2rem;
    height: 2rem;
    border-radius: 15%;
}
.job-application .application-search .message-list .message-list-item a .message-list-item-header{
    line-height: 18px;
    margin-bottom: 0;
    padding-top: 7px;
    padding-bottom: 7px;
}
.job-application .application-search .dropdown {
	float: left;
	margin-bottom: 0.9rem;
}
.job-application .application-search .dropdown-toggle {
	color: rgba(0, 0, 0, 0.7);
}
.job-application .application-search .dropdown-toggle::after {
	color: #12a6a1;
}
.job-application .application-search .dropdown-toggle span:first-child{
	width: 4rem;
	text-align: left;
	float: left;
	overflow: hidden;
	text-overflow: ellipsis;
}
.job-application .application-detail{
    width: 55%;
    overflow-y: auto;
    flex-grow: 5.5;
}
.job-application .new-job-list{
    width: 20%;
    overflow-y: auto;
    flex-grow: 2;
}
.job-application .application-search{
    width: 25%;
    flex-grow: 2.5;
}
.job-application .application-filter{
    min-width: 160px;
    width: 18.8%;
    overflow-y: auto;
    flex-grow: 1.5;
}
.job-application .application-detail .message-header .message-toolbar a {
	margin: 0;
}
.job-application .application-detail .message-body .feed-icon.initials{}
.job-application .application-detail .message-body .feed-icon.initials .circle-icon{
    line-height: 90px;
    font-size: 2rem;
    border-radius: 15%;
}
.job-application .application-detail .message-body .feed-icon.initials .circle-icon,
.job-application .application-detail .message-body .feed-icon.image img,
.job-application .application-detail .message-body .avatar-icon-img{
    width: 90px;
    border-radius: 15%;
}
.job-application .application-detail .message-body .feed-icon.initials .circle-icon,
.job-application .application-detail .message-body .feed-icon.image img{
    height: 90px;
    border-radius: 15%;
}
.job-application .application-detail .p-a-1.profile{
    padding-top: 29px !important;
}
.job-application .application-detail .profile .title h4{
    padding-top: 4px;
    display: inline-block;
}
.job-application .application-detail .profile .title span{
    border: 1px solid;
    border-radius: 50px;
    padding: 2px 9px;
    font-size: 18px;
    line-height: initial;
    text-align: center;
    margin-right: 10px;
    margin-bottom: 5px;
}
.job-application .color-warning {
    color: #f0c54c;
    border-color: #f0c54c;
}
.job-application .color-info {
    color: #4cc3f0;
    border-color: #4cc3f0;
}
.job-application .color-primary {
    color: #12a6a1;
    border-color: #12a6a1;
}
.job-application .color-success {
    color: #a382ae;
    border-color: #a382ae;
}
.job-application .color-danger {
    color: #fa6160;
    border-color: #fa6160;
}
.job-application .new-job-list .message-list .message-list-item a{
    color: #000;
}
.job-application .new-job-list .message-list .message-list-item a .time{
    float:none;
    color:rgba(0, 0, 0, 0.7);
    font-size: 13.64px;
    font-weight: normal;
}
.job-application .layout-column .filter-column {
    padding: .5rem 1rem;
    width: 100%;
}
.job-application .layout-column .filter-column .col-xl-4 {
    padding: 0 0.375rem;
}
.job-application .application-filter .label-follow {
    font-weight: 600!important;
    border-radius: 2px!important;
    margin: 2px 3px!important;
    display: inline-block;
    padding: .25em .4em;
    font-size: 75%;
    line-height: 1
}
.job-application .application-filter .labeltag{
    margin:0!important;
    padding:.4rem .7rem!important;
    line-height: 15px;
    word-break: break-all;
    white-space: normal;
    width: 100%!important;
}
.job-application .application-filter .btn-edit,
.job-application .application-filter .btn-edit:hover{
    background-color: #12a6a1;
    width: 20px;
    height: 20px;
    font-size: 12px;
    color: #f7f0f0!important;
    border-radius: 50px!important;
    display: -webkit-box!important;
    display: -webkit-flex!important;
    display: flex!important;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 0!important;
    margin: 2px 0;
    cursor: pointer !important;
}
.job-application .application-filter .nav-pills .nav-link.active,
.job-application .application-filter .nav-pills .nav-link.active:focus,
.job-application .application-filter .nav-pills .nav-link.active:hover {
    color: #fff;
    background-color: #c1c1c1
}
.job-application .application-filter .btn-edit:focus,
.job-application .application-filter .btn-edit:hover {
    color: #fff;
    background-color: #124ed4!important;
    border-color: #0f40ae
}
.job-application .application-filter .nav>li>a.label-warning:hover,
.job-application .application-filter .nav>li>a.label-warning:focus,
.job-application .application-filter .nav>li>a.label-warning.active{
    background-color: #D4A21A;
}
.job-application .application-filter .type-filter .count{
    margin-top: 3px;
}
.job-application .application-filter .filter-stage .btn-load-modal.stage-icon:hover,
.job-application .application-filter .filter-stage .btn-load-modal.stage-icon:focus{
    color: #a382ae!important;
    background-color: #ffffff!important;
    border-color: #ffffff!important;
}
.job-application .application-filter .filter-stage .btn-edit.stage-icon:hover,
.job-application .application-filter .filter-stage .btn-edit.stage-icon:focus{
    color: #ffffff!important;
    background-color: #a382ae!important;
    border-color: #a382ae!important;
}
.job-application .application-filter .job-tag-filter>li>a.label-filter{
    background-color: #F0F0F0;
}
.job-application .application-filter .job-tag-filter>li>a.label-filter:hover,
.job-application .application-filter .job-tag-filter>li>a.label-filter:focus,
.job-application .application-filter .job-tag-filter>li>a.label-filter.active{
    background-color: #cfcfcf;
}
.job-application .application-detail .message-content h5.application {
    font-size: 1rem
}
.job-application .application-detail .message-content h5 {
    color: #12a6a1;
    margin-top: 40px
}
.job-application .application-detail .message-content h5:first-child {
    margin-top: -3px
}
.job-application .application-detail .message-content .experience-item {
    margin-bottom: 30px
}
.job-application .application-detail .message-content .experience-item > p:first-of-type {
    font-size: .8525rem;
    font-weight: 700
}
.job-application .application-detail .message-content .experience-item > p:not(:last-of-type) {
    margin-bottom: 0
}
.job-application .application-detail .message-content pre {
    background-color: #fff;
    border: none;
    margin: 0;
    padding: 0;
    font-size: .8525rem;
    white-space: pre-wrap;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif, sans-serif!important;
}
.job-application .application-detail .message-content .card {
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .05), 0 1px 1px rgba(0, 0, 0, .05);
}
.job-application .application-detail .message-content .card-header{
    font-size: .8525rem;
    background-color: #f5f5f5;
    border-bottom: 1px solid #e5e5e5 !important;
}
.job-application .application-detail .message-content .card-block {
    word-break: break-word;
    padding-top: 25px;
}
.job-application .application-detail .job-edit-questions .btn-warning {
    -webkit-border-radius: 3px;
    border-radius: 3px;
    box-shadow: none;
    font-size: 11px;
    position: relative;
    z-index: 0;
    top: -1px;
    margin-right: 8px;
    padding: 2px 7px;
    line-height: 11px;
    display: inline-block;
    min-width: 54px;
}
.job-application .application-detail .job-edit-questions .btn-warning:hover,
.job-application .application-detail .job-edit-questions .btn-warning:active,
.job-application .application-detail .job-edit-questions .btn-warning:focus{
    background-color: #12a6a1;
    border-color: #12a6a1;
    outline:none;
    box-shadow: none;
}
.job-application .application-detail .tags{}
.job-application .application-detail .tags .label{
    padding:.3rem .6rem!important;
    line-height: normal;
    word-break: break-all;
    white-space: normal;
    width: auto;
    font-size: 13px;
    margin: 0 .1rem .3rem 0;
}
.job-application .application-detail .tags .label.label-warning:hover{
  background-color: #ecb61d;
}
.job-application .application-detail .tags .label.label-default{
  color: rgb(119, 119, 119);
}
.job-application .application-detail .tags .label.label-default:hover,
.job-application .application-detail .tags .label.label-default.active{
  background-color: rgb(207, 207, 207);
}
.job-application .application-detail .notes textarea{
  font-size: 13px !important;
}
.job-application .application-detail .notes .note{
    position: relative;
    z-index: 0;
}
.job-application .application-detail .notes .note .close{
    position: absolute;
    top:-4px;right: 0;
}
/* end : job-application css end */

/* Starts : Add new filter form */
.add-new-filter{
    padding:.5em 0em;
}
.add-new-filter .field{
    position: relative;
    z-index: 0;
}
.add-new-filter input{
    /*width: 100%;
    padding: 4px 27px 4px 7px;*/
    width: 100%!important;
    padding: 3px 8px;
    border: 1px solid rgba(0, 0, 0, 0.3);
}
.add-new-filter button{
    padding: 0;
    margin: 0 !important;
    position: absolute;
    right: 0;
    top:0;
}
.add-new-filter button i{
    font-size: 16px;
    line-height: 26px;
}
/* End : Add new filter form */

/* starts Chat messages */
.chat-message.v1 .modal-dialog .modal-content{
    width: 100%;
}
.chat-message.v1 .chat-conversation-title .circle-icon{
    margin-right: 1rem;
}
.chat-message.v1 .chat-input{
    width: 84%;
    height: auto;
    line-height: normal;
    padding: 17px 5px 7px 5px;
}
.chat-message.v1 .chat-input:focus{
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
/* end Chat messages */

/* start edit account */
.logout {
    border-color: #12a6a1;
}
/* end edit account */

.job-application .job-actions .analytics .card-header{
    background-color: #f5f5f5;
    border-bottom: 1px solid #e5e5e5;
}
.job-application .job-actions .card.analytics{
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .05), 0 1px 1px rgba(0, 0, 0, .05);
}
.job-actions .view-job{
    display: block;
    margin-bottom: 5px;
}
.job-actions .row.social-links{
  text-align: center;
  padding: 5px 12px 5px 7px;
}
.job-actions .row.social-links .col-sm-4{
  margin: 0;
  padding: 0 0 0 5px;
}
.job-actions .row.social-links .col-sm-4 a{
  margin: 0;
  padding: 0;
  display: block;
  width: auto;
}
.my-jobs .job-application .application-detail{
    flex-grow: 2;
}
.my-jobs .job-application .new-job-list{
    flex-grow: 0.8;
    overflow: auto;
}
.content-view .row .tab-content{
    padding: 0;
}
.job-title-job {
    color: #a382ae!important;
    font-size: 18px !important;
    margin: 0 !important;
    white-space: normal;
    float: left;
    padding: 5px 10px;
}
@media (max-width:639px) {
  .job-actions .row.social-links .col-sm-4 a{
    margin-bottom:5px;
  }
}
@media (max-width:425px) {
    .job-title-job {
        font-size: 16px
    }
}
.my-jobs .job-application .message-toolbar{
    padding: .5rem 1rem;
}
.my-jobs .job-application .job-search-wrapper{
    padding: 0 1rem;
}
.job-application .application-detail .message-content .card-header.card-bic{
    background-color: #12a6a1;
    border-bottom: 1px solid #12a6a1 !important;
}
.job-application .application-detail .message-content .card-header.card-bic .card-controls a{
    color: #fff;
}

/*https://github.com/cibernox/ember-power-select/blob/master/vendor/ember-power-select.css*/

.ember-basic-dropdown {
    position: relative;
}

.ember-basic-dropdown,
.ember-basic-dropdown-content,
.ember-basic-dropdown-content * {
    box-sizing: border-box;
}

.ember-basic-dropdown-content {
    position: absolute;
    width: auto;
    z-index: 1000;
    background-color: #ffffff;
}

.ember-basic-dropdown-content--left {
    left: 0;
}

.ember-basic-dropdown-content--right {
    right: 0;
}

.ember-basic-dropdown-overlay {
    position: fixed;
    background: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
    z-index: 10;
    top: 0;
    left: 0;
    pointer-events: none;
}

.ember-basic-dropdown-content-wormhole-origin {
    display: inline;
}

.ember-power-select-dropdown * {
    box-sizing: border-box;
}

.ember-power-select-trigger {
    position: relative;
    border-top: 1px solid #aaaaaa;
    border-bottom: 1px solid #aaaaaa;
    border-right: 1px solid #aaaaaa;
    border-left: 1px solid #aaaaaa;
    border-radius: 4px;
    background-color: #ffffff;
    line-height: 1.75;
    overflow-x: hidden;
    text-overflow: ellipsis;
    min-height: 1.75em;
    user-select: none;
    -webkit-user-select: none;
    color: inherit;
    /* Minimum clearfix for modern browsers */
}

.ember-power-select-trigger:after {
    content: "";
    display: table;
    clear: both;
}

.ember-power-select-trigger:focus,
.ember-power-select-trigger--active {
    border-top: 1px solid #aaaaaa;
    border-bottom: 1px solid #aaaaaa;
    border-right: 1px solid #aaaaaa;
    border-left: 1px solid #aaaaaa;
    box-shadow: none;
}

.ember-basic-dropdown-trigger--below.ember-power-select-trigger[aria-expanded="true"],
.ember-basic-dropdown-trigger--in-place.ember-power-select-trigger[aria-expanded="true"] {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.ember-basic-dropdown-trigger--above.ember-power-select-trigger[aria-expanded="true"] {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.ember-power-select-placeholder {
    color: #999999;
    display: block;
    overflow-x: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.ember-power-select-status-icon {
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border-style: solid;
    border-width: 7px 4px 0 4px;
    border-color: #aaaaaa transparent transparent transparent;
}

.ember-basic-dropdown-trigger[aria-expanded="true"] .ember-power-select-status-icon {
    transform: rotate(180deg);
}

.ember-power-select-clear-btn {
    position: absolute;
    cursor: pointer;
}

.ember-power-select-trigger-multiple-input {
    font-family: inherit;
    font-size: inherit;
    border: none;
    display: inline-block;
    line-height: inherit;
    -webkit-appearance: none;
    outline: none;
    padding: 0;
    float: left;
    background-color: transparent;
    text-indent: 2px;
    /* There's a browser bug where this selectos cannot be chained with commas */
}

.ember-power-select-trigger-multiple-input:disabled {
    background-color: #eeeeee;
}

.ember-power-select-trigger-multiple-input::placeholder {
    opacity: 1;
    color: #999999;
}

.ember-power-select-trigger-multiple-input::-webkit-input-placeholder {
    opacity: 1;
    color: #999999;
}

.ember-power-select-trigger-multiple-input::-moz-placeholder {
    opacity: 1;
    color: #999999;
}

.ember-power-select-trigger-multiple-input::-ms-input-placeholder {
    opacity: 1;
    color: #999999;
}

.ember-power-select-multiple-options {
    padding: 0;
    margin: 0;
}

.ember-power-select-multiple-option {
    border: 1px solid gray;
    border-radius: 4px;
    color: #333333;
    background-color: #e4e4e4;
    padding: 0 4px;
    display: inline-block;
    line-height: 1.45;
    float: left;
    margin: 2px 0 2px 3px;
}

.ember-power-select-multiple-remove-btn {
    cursor: pointer;
}

.ember-power-select-multiple-remove-btn:not(:hover) {
    opacity: 0.5;
}

.ember-power-select-search {
    padding: 4px;
}

.ember-power-select-search-input {
    border: 1px solid #aaaaaa;
    border-radius: 0;
    width: 100%;
    font-size: inherit;
    line-height: inherit;
    padding: 0 5px;
}

.ember-power-select-search-input:focus {
    border: 1px solid #aaaaaa;
    box-shadow: none;
}

.ember-power-select-dropdown {
    border-left: 1px solid #aaaaaa;
    border-right: 1px solid #aaaaaa;
    line-height: 1.75;
    border-radius: 4px;
    box-shadow: none;
    overflow: hidden;
    color: inherit;
}

.ember-power-select-dropdown.ember-basic-dropdown-content--above {
    border-top: 1px solid #aaaaaa;
    border-bottom: none;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.ember-power-select-dropdown.ember-basic-dropdown-content--below,
.ember-power-select-dropdown.ember-basic-dropdown-content--in-place {
    border-top: none;
    border-bottom: 1px solid #aaaaaa;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.ember-power-select-dropdown.ember-basic-dropdown-content--in-place {
    width: 100%;
}

.ember-power-select-options {
    list-style: none;
    margin: 0;
    padding: 0;
    user-select: none;
    -webkit-user-select: none;
}

.ember-power-select-options[role="listbox"] {
    overflow-y: auto;
    /* in firefox in windows this can cause a word-break issue. Try `overflow-y: scroll` if that happens */
    -webkit-overflow-scrolling: touch;
    max-height: 12.25em;
}

.ember-power-select-option {
    cursor: pointer;
    padding: 0 8px;
}

.ember-power-select-group[aria-disabled="true"] {
    color: #999999;
    cursor: not-allowed;
}

.ember-power-select-group[aria-disabled="true"] .ember-power-select-option,
.ember-power-select-option[aria-disabled="true"] {
    color: #999999;
    pointer-events: none;
    cursor: not-allowed;
}

.ember-power-select-option[aria-selected="true"] {
    background-color: #dddddd;
}

.ember-power-select-option[aria-current="true"] {
    background-color: #5897fb;
    color: #ffffff;
}

.ember-power-select-group-name {
    cursor: default;
    font-weight: bold;
}

.ember-power-select-trigger[aria-disabled=true] {
    background-color: #eeeeee;
}

.ember-power-select-trigger {
    /* padding: 0 16px 0 0; */
}

.ember-power-select-selected-item,
.ember-power-select-placeholder {
    margin-left: 8px;
}

.ember-power-select-status-icon {
    right: 5px;
}

.ember-power-select-clear-btn {
    right: 25px;
}

.ember-power-select-group .ember-power-select-group .ember-power-select-group-name {
    padding-left: 24px;
}

.ember-power-select-group .ember-power-select-group .ember-power-select-option {
    padding-left: 40px;
}

.ember-power-select-group .ember-power-select-option {
    padding-left: 24px;
}

.ember-power-select-group .ember-power-select-group-name {
    padding-left: 8px;
}

.ember-power-select-trigger[dir=rtl] {
    padding: 0 0 0 16px;
}

.ember-power-select-trigger[dir=rtl] .ember-power-select-selected-item,
.ember-power-select-trigger[dir=rtl] .ember-power-select-placeholder {
    margin-right: 8px;
}

.ember-power-select-trigger[dir=rtl] .ember-power-select-multiple-option {
    float: right;
}

.ember-power-select-trigger[dir=rtl] .ember-power-select-trigger-multiple-input {
    float: right;
}

.ember-power-select-trigger[dir=rtl] .ember-power-select-status-icon {
    left: 5px;
    right: initial;
}

.ember-power-select-trigger[dir=rtl] .ember-power-select-clear-btn {
    left: 25px;
    right: initial;
}

.ember-power-select-dropdown[dir=rtl] .ember-power-select-group .ember-power-select-group .ember-power-select-group-name {
    padding-right: 24px;
}

.ember-power-select-dropdown[dir=rtl] .ember-power-select-group .ember-power-select-group .ember-power-select-option {
    padding-right: 40px;
}

.ember-power-select-dropdown[dir=rtl] .ember-power-select-group .ember-power-select-option {
    padding-right: 24px;
}

.ember-power-select-dropdown[dir=rtl] .ember-power-select-group .ember-power-select-group-name {
    padding-right: 8px;
}
.ember-power-select-trigger{
    border: 0;
}
.ember-power-select-trigger-multiple-input{
    width: 100% !important;
    border:  1px solid rgba(0, 0, 0, 0.1);
    border-radius: 2px;
    padding: 10px;
}
.ember-power-select-status-icon {
    display: none;
    right: 26px;
    bottom: 19px;
    line-height: normal;
    top: inherit;
}

.ember-power-select-multiple-option {
    background: #F2F2F2;
    display: inline-block;
    padding: 6px 15px 7px 10px;
    margin: 0 4px 10px 0;
    border-radius: 6px;
    font-size: 1em;
    line-height: 21px;
    color: #666666;
    font-weight: 600;
    border-color: #ECECEC;
}

.ember-power-select-multiple-option span.skill {
    display: inline-block;
    padding-left: 2px;
}

.ember-power-select-multiple-remove-btn {
    position: relative;
    z-index: 0;
    top: 1px;
}

.ember-power-select-option[aria-current="true"] {
    background: #29B8B0;
}

.ember-power-select-dropdown.ember-basic-dropdown-content--below,
.ember-power-select-dropdown.ember-basic-dropdown-content--in-place {
    border-color: #d3d3d3;
}

/* End : Ember-power-select */

.content-view .nav-tabs .nav-item .nav-link:hover,
.content-view .nav-tabs .nav-item .nav-link:hover,
.content-view .nav-tabs .nav-item .nav-link:focus,
.content-view .nav-tabs .nav-item .nav-link.active{
    background-color:#12a6a1;
    color: #fff;
}

/* starts : add-team-member in chat list */
.chat-group .team-members-conversations{
    max-height: 30vh;
}
.chat-message .chat-header .chat-conversation-title .image .avatar{
    border-radius: 15%;
}
.chat-group .add-team-member{
    padding: 0.6125rem 1.5rem !important;
    font-weight: 500;
}
.chat-group .add-team-member .btn-group{
    display: block;
}
.chat-group .add-team-member .btn-group > .btn{
    float: none;
}
.chat-panel.v1 .chat-group a .user-image .avatar {
    width: 2.8rem;
    height: 2.8rem;
    line-height: 2.8rem;
}
/* end : add-team-member in chat list */

/* starts : team-collaboration */
#team_members table {
  border-bottom: none;
  border-color: rgba(15, 15, 15, 0.1);
}
#team_members th,
#team_members td {
  text-align: center;
  border-color: rgba(15, 15, 15, 0.1);
}
#applicants_received .feed-icon,
#applicants_sent .feed-icon,
#applicants_received .feed-icon img,
#applicants_sent .feed-icon img {
  border-radius: 15%;
}
#applicants_received,
#applicants_sent,
#team_members {
  height: calc(100vh - 150px);
}
#applicants_received .feed-icon .circle-icon,
#applicants_sent .feed-icon .circle-icon {
  margin-right: 15px;
  height: 48px;
  width: 48px;
  font-size: 20px;
  line-height: 44px;
}
#applicants_received .application-detail,
#applicants_sent .application-detail {
  width: 100%;
  max-width: none;
  border-left: 1px solid rgba(0, 0, 0, 0.1);
}
#applicants_received ul,
#applicants_sent ul {
  padding: 20px 0;
}
#applicants_received .message-list,
#applicants_sent .message-list {
  padding: 0;
  border-left: 1px solid rgba(0, 0, 0, 0.1);
}
#applicants_received ul li,
#applicants_sent ul li {
  display: block;
}
#applicants_received ul li .labeltag,
#applicants_sent ul li .labeltag {
  background-color: transparent;
  margin: 0 0 10px 0 !important;
}
[id^=share-talent-team-members] .modal-header,
[id^=share-talent-team-members] .modal-footer {
  border-top: none;
  border-bottom: none;
}
[id^=share-talent-team-members_feed_application] {
  background-color: rgba(0, 0, 0, 0.5);
}
.members-list-item {
  text-align: center;
  width: 35%;
  margin: 0 auto;
  border-bottom: 1px solid #e2e2e2;
  padding: 7px;
  line-height: 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.members-list-item:first-child {
  border-top: 1px solid #e2e2e2;
}
.members-list-item label {
  margin-bottom: 0;
  font-size: 20px !important;
  font-weight: 300;
}
.members-list-item i {
  float: right;
  color: #12a6a1;
  line-height: 2rem;
  cursor: pointer;
}
.add-team-member-field select {
  height: 38px;
}
.add-team-member-field input {
  border-radius: .25rem;
}
/* end : team-collaboration */

/* starts : postToChannel overlay */
.modal.postToChannel #upload-image i,
.modal.postToChannel #upload-image-for-newGallery i,
.modal.postToChannel #upload-image-for-newContent i,
.modal.postToChannel #upload-image-for-editedGallery i,
.modal.postToChannel #upload-image-for-editedContent i,
.modal.postToChannel #upload-image-for-channelLogo i,
.modal.postToChannel #upload-image-for-channelBanner i,
.modal.postToChannel #upload-image-for-channelCard i
{
  display: block;
  font-size: 145px;
  width: 145px;
  color: rgba(0, 0, 0, 0.1);
  border:1px solid rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.modal.postToChannel #upload-image i:hover,
.modal.postToChannel #upload-image-for-newGallery i:hover,
.modal.postToChannel #upload-image-for-newContent i:hover,
.modal.postToChannel #upload-image-for-editedGallery i:hover,
.modal.postToChannel #upload-image-for-editedContent i:hover,
.modal.postToChannel #upload-image-for-channelLogo i:hover,
.modal.postToChannel #upload-image-for-channelBanner i:hover,
.modal.postToChannel #upload-image-for-channelCard i:hover
{
  color: rgba(0, 0, 0, 0.15);
}
/* end : postToChannel overlay */

.mce-container-body .mce-path{
  visibility: hidden;
}
.switch :checked+span{
  background-color: #12a6a1;
}

/* content-bank-details starts */
.content-bank-details .card .card-block button[type=submit]{
  margin-top: 16px;
}
.content-bank-details .card .card-header small.content-bank-validation-error,
.content-bank-details .card .card-block small.content-bank-validation-error{
    display: block;
    margin-top: 0;
}
/* content-bank-details end */

.myfeed .feed .feed-icon.image .avatar-sm {
   height: 42px;
}
.sidebar-panel .nav-profile a.dropdown-toggle .user-image .avatar{
    height: 2.8rem;
}

/* Starts : Alert banner style changes */
.toast-top-full-width {
    width: calc(100% - 18rem) !important;
    right: 0;
  }
  #toast-container > div{
      padding-top:18px;
      padding-bottom:17px;
  }
/* End : Alert banner style changes */

/* Starts : Button wrapper classes */
.swal-button--confirm.btn-danger{
    background-color: #d9534f;
}
.swal-button:focus{
    box-shadow:none;
}
.swal-button--confirm.btn-warning:hover{
    background-color: #a382ae !important;
}
.swal-button.btn-primary:hover{
    color: white;
    background-color: #1d5dec;
    border-color: #1457eb;
}
.swal-button.btn-danger:hover {
    color: white;
    background-color: #c04f33;
    border-color: #b84b31;
}
/* End : Button wrapper classes */

/* starts : settings-integrations */
.settings-integrations{

}
.settings-integrations .content-view{
    padding:1.5rem;
}
.settings-integrations .content-view .content-logo{
    height: auto;
    max-width: 100%;
}
.settings-integrations .content-view .form-group label{
    padding: 16px 0 8px 0;
}
.settings-integrations .content-view .form-group .row:first-child label{
    padding-top: 0 ;
}
.settings-integrations .content-view .form-group select{
    height: 40px;
}
/* End : settings-integrations */

/* Starts : team-member-list */
.team-member-list {
  padding: 0 1rem;
}
.team-member-list ul li a {
  background-color: #F0F0F0;
  color: #777777 !important;
}
.team-member-list ul li a.active,
.team-member-list ul li a:hover {
  background-color: #cfcfcf !important;
}
.team-member-list ul li a .count {
  margin-top: 3px;
}
/* End : team-member-list */

/* Starts : application, dropdowns */
.application-search .dropdowns {
  position: relative;
  justify-content:space-between;
}
.application-search .dropdowns .dropdown {
  position: static;
  /* flex-grow: 1;
  flex-basis: 0; */
  width: 31%;
  max-width: 31%;
}
.job-application .application-search .dropdowns .dropdown{
  float: none;
}
.job-application .application-search .dropdowns .dropdown-toggle {
  width: 100%;
}
.job-application .application-search .dropdowns .dropdown-toggle span:first-child {
  width: 94%;
}
.application-search .dropdowns .open>.dropdown-menu {
  top:74px;
  right: 1px;
  overflow: auto;
  max-height: 60vh;
}
.application-search .dropdowns .dropdown-item {
  padding-top:8px;
  padding-bottom:8px;
}
.application-search .dropdowns .dropdown-item .label.count {
  margin-top: 2px;
}

/* End : application, dropdowns */

/* Starts : Pell Editor */
.pell-editor{
  border: 1px solid #ccc;
}
.pell-editor .pell-actionbar{
  border-bottom-color: #ccc;
  display: flex;
  flex-wrap: wrap;
}
.pell-editor .pell-actionbar .pell-button{
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  background: 0 0;
  border: 0;
  box-shadow: none;
  color: #222f3e;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  overflow: hidden;
  padding: 0 4px;
  border-right: 1px solid #ccc;
  width: 43px;
  height: 39px;
}
.pell-editor .pell-actionbar .pell-button:last-child{
  border-right-width:0;
}
.pell-editor .pell-actionbar .pell-button span{
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  border-radius: 3px;
  justify-content: center;
  margin: 2px 0 0 0;
}
.pell-editor .pell-actionbar .pell-button:hover span{
  background: #dee0e2;
}
.pell-editor .pell-content{
  color: #000;
  padding: 1rem;
  font-size: 0.9rem;
  line-height: 1.4;
}
/* End : Pell Editor */
.tinymce-editor {
  display: none;
}

.dragSortList {
  overflow: auto;
  position: relative;
}

.dragSortList.-isExpanded {
  padding-top: 25px;
}


.dragSortList.-isExpanded.-isDraggingOver:before {
  content: '🡢';
  position: absolute;
  line-height: 25px;
  top: 0;
  left: 0;
  z-index: 2;
}

.dragSortItem {
  position: relative;
}

.dragSortItem[draggable], .dragSortItem [draggable] {
  cursor: move;
  cursor: hand;
  cursor: -webkit-grab;
  cursor: grab;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.dragSortItem.-isDragged {
  display: none;
}

.dragSortItem.-placeholderAbove {
  /*margin-top: 25px;*/
  padding-top: 25px;
}

.dragSortItem.-placeholderBelow {
  /*margin-bottom: 25px;*/
  padding-bottom: 25px;
}

.dragSortItem.-placeholderAbove:before,
.dragSortItem.-placeholderBelow:before {
  content: '🡢';
  position: absolute;
  line-height: 25px;
  left: 0;
}

.dragSortItem.-placeholderAbove:before {
  /*bottom: 100%;*/
  top: 0;
}

.dragSortItem.-placeholderBelow:before {
  /*top: 100%;*/
  bottom: 0;
}

.file-upload input[hidden] {
  display: none !important;
}

#highlightOverlay {
  z-index: 10001;
}

#shepherdOverlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -moz-opacity: 0.5;
  -khtml-opacity: 0.5;
  opacity: 0.5;
  z-index: 10000;
  background-color: #000;
  background: -moz-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);
  background: -webkit-gradient(radial,center center,0px,center center,100%,color-stop(0%,rgba(0,0,0,0.4)),color-stop(100%,rgba(0,0,0,0.9)));
  background: -webkit-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);
  background: -o-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);
  background: -ms-radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);
  background: radial-gradient(center,ellipse cover,rgba(0,0,0,0.4) 0,rgba(0,0,0,0.9) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#66000000',endColorstr='#e6000000',GradientType=1);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  filter: alpha(opacity=50);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.shepherd-step {
  z-index: 10002;
}

.shepherd-modal.shepherd-enabled {
  position: relative;
  z-index: 10001;
}
