.react-grid-layout {
  position: relative;
  transition: height 200ms ease;
}
.react-grid-item {
  transition: all 200ms ease;
  transition-property: left, top;
}
.react-grid-item.cssTransforms {
  transition-property: transform;
}
.react-grid-item.resizing {
  z-index: 1;
  will-change: width, height;
}

.react-grid-item.react-draggable-dragging {
  transition: none;
  z-index: 3;
  will-change: transform;
}

.react-grid-item.react-grid-placeholder {
  background: red;
  opacity: 0.2;
  transition-duration: 100ms;
  z-index: 2;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}

.react-grid-item > .react-resizable-handle {
  position: absolute;
  width: 20px;
  height: 20px;
  bottom: 0;
  right: 0;
  cursor: se-resize;
}

.react-grid-item > .react-resizable-handle::after {
  content: "";
  position: absolute;
  right: 3px;
  bottom: 3px;
  width: 5px;
  height: 5px;
  border-right: 2px solid rgba(0, 0, 0, 0.4);
  border-bottom: 2px solid rgba(0, 0, 0, 0.4);
}
/*

    Name:       material
    Author:     Michael Kaminsky (http://github.com/mkaminsky11)

    Original material color scheme by Mattia Astorino (https://github.com/equinusocio/material-theme)

*/

.cm-s-material.CodeMirror {
  background-color: #263238;
  color: rgba(233, 237, 237, 1);
}
.cm-s-material .CodeMirror-gutters {
  background: #263238;
  color: rgb(83,127,126);
  border: none;
}
.cm-s-material .CodeMirror-guttermarker, .cm-s-material .CodeMirror-guttermarker-subtle, .cm-s-material .CodeMirror-linenumber { color: rgb(83,127,126); }
.cm-s-material .CodeMirror-cursor { border-left: 1px solid #f8f8f0; }
.cm-s-material div.CodeMirror-selected { background: rgba(255, 255, 255, 0.15); }
.cm-s-material.CodeMirror-focused div.CodeMirror-selected { background: rgba(255, 255, 255, 0.10); }
.cm-s-material .CodeMirror-line::selection, .cm-s-material .CodeMirror-line > span::selection, .cm-s-material .CodeMirror-line > span > span::selection { background: rgba(255, 255, 255, 0.10); }
.cm-s-material .CodeMirror-line::-moz-selection, .cm-s-material .CodeMirror-line > span::-moz-selection, .cm-s-material .CodeMirror-line > span > span::-moz-selection { background: rgba(255, 255, 255, 0.10); }

.cm-s-material .CodeMirror-activeline-background { background: rgba(0, 0, 0, 0); }
.cm-s-material .cm-keyword { color: rgba(199, 146, 234, 1); }
.cm-s-material .cm-operator { color: rgba(233, 237, 237, 1); }
.cm-s-material .cm-variable-2 { color: #80CBC4; }
.cm-s-material .cm-variable-3, .cm-s-material .cm-type { color: #82B1FF; }
.cm-s-material .cm-builtin { color: #DECB6B; }
.cm-s-material .cm-atom { color: #F77669; }
.cm-s-material .cm-number { color: #F77669; }
.cm-s-material .cm-def { color: rgba(233, 237, 237, 1); }
.cm-s-material .cm-string { color: #C3E88D; }
.cm-s-material .cm-string-2 { color: #80CBC4; }
.cm-s-material .cm-comment { color: #546E7A; }
.cm-s-material .cm-variable { color: #82B1FF; }
.cm-s-material .cm-tag { color: #80CBC4; }
.cm-s-material .cm-meta { color: #80CBC4; }
.cm-s-material .cm-attribute { color: #FFCB6B; }
.cm-s-material .cm-property { color: #80CBAE; }
.cm-s-material .cm-qualifier { color: #DECB6B; }
.cm-s-material .cm-variable-3, .cm-s-material .cm-type { color: #DECB6B; }
.cm-s-material .cm-tag { color: rgba(255, 83, 112, 1); }
.cm-s-material .cm-error {
  color: rgba(255, 255, 255, 1.0);
  background-color: #EC5F67;
}
.cm-s-material .CodeMirror-matchingbracket {
  text-decoration: underline;
  color: white !important;
}
@charset "UTF-8";
/*
   Chronograf Styles
   -----------------------------------------------------------------------------
*/
/*
   Influx Color Palette
   -----------------------------------------------------------------------------
*/
/*
   Variables
   -----------------------------------------------------------------------------
*/
br,
.btn,
button.btn,
input.btn,
.table > thead > tr > th,
.table > thead > tr > td,
.dropdown-empty,
.dropdown-menu li.dropdown-item,
.dropdown .dropdown-menu li.dropdown-header,
.multi-select--item,
.multi-select--apply,
.form-control[disabled],
.form-control[disabled]:hover,
.form-control[readonly],
.form-control[readonly]:hover,
fieldset[disabled] .form-control,
fieldset[disabled] .form-control:hover,
.form-control.disabled,
.form-control.disabled:hover,
.input-group-addon,
.form-group > label,
label.form-label,
label.form-helper,
.form-control-static label,
.notification,
.alert,
.panel-title,
.nav-tablist > li,
.ifql-func--list {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

br,
.btn,
button.btn,
input.btn,
.table > thead > tr > th,
.table > thead > tr > td,
.dropdown-empty,
.dropdown-menu li.dropdown-item,
.dropdown .dropdown-menu li.dropdown-header,
.multi-select--item,
.multi-select--apply,
.form-control[disabled],
.form-control[disabled]:hover,
.form-control[readonly],
.form-control[readonly]:hover,
fieldset[disabled] .form-control,
fieldset[disabled] .form-control:hover,
.form-control.disabled,
.form-control.disabled:hover,
.input-group-addon,
.form-group > label,
label.form-label,
label.form-helper,
.form-control-static label,
.notification,
.alert,
.panel-title,
.nav-tablist > li,
.ifql-func--list,
br:hover,
.btn:hover,
.table > thead > tr > th:hover,
.table > thead > tr > td:hover,
.dropdown-empty:hover,
.dropdown-menu li.dropdown-item:hover,
.dropdown .dropdown-menu li.dropdown-header:hover,
.multi-select--item:hover,
.multi-select--apply:hover,
.form-control:hover[disabled],
.form-control:hover[readonly],
fieldset[disabled] .form-control:hover,
.form-control.disabled:hover,
.input-group-addon:hover,
.form-group > label:hover,
label.form-label:hover,
label.form-helper:hover,
.form-control-static label:hover,
.notification:hover,
.alert:hover,
.panel-title:hover,
.nav-tablist > li:hover,
.ifql-func--list:hover {
  cursor: default; }

/*
   Helpers
   -----------------------------------------------------------------------------
   So handy, much dandy
*/
.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.u-flex {
  display: flex;
  flex-wrap: wrap; }

.u-flex.u-jc-flex-start {
  justify-content: flex-start; }

.u-flex.u-jc-flex-end {
  justify-content: flex-end; }

.u-flex.u-jc-center {
  justify-content: center; }

.u-flex.u-jc-space-between {
  justify-content: space-between; }

.u-flex.u-jc-space-around {
  justify-content: space-around; }

.u-flex.u-ai-flex-start {
  align-items: flex-start; }

.u-flex.u-ai-flex-end {
  align-items: flex-end; }

.u-flex.u-ai-center {
  align-items: center; }

.u-flex.u-ai-stretch {
  align-items: stretch; }

.u-flex.u-ai-baseline {
  align-items: baseline; }

.u-flex.u-ac-flex-start {
  align-content: flex-start; }

.u-flex.u-ac-flex-end {
  align-content: flex-end; }

.u-flex.u-ac-center {
  align-content: center; }

.u-flex.u-ac-stretch {
  align-content: stretch; }

.u-flex.u-ac-space-between {
  align-content: space-between; }

.u-flex.u-ac-space-around {
  align-content: space-around; }

.margin-zero {
  margin: 0 !important; }

.margin-bottom-zero {
  margin-bottom: 0 !important; }

.margin-top-zero {
  margin-top: 0 !important; }

.margin-left-zero {
  margin-left: 0 !important; }

.margin-right-zero {
  margin-right: 0 !important; }

.padding-zero {
  padding: 0 !important; }

.padding-bottom-zero {
  padding-bottom: 0 !important; }

.padding-top-zero {
  padding-top: 0 !important; }

.padding-left-zero {
  padding-left: 0 !important; }

.padding-right-zero {
  padding-right: 0 !important; }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 200;
  src: url(/3f68500b267c20051088bcc0698af773.ttf); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url(/7b5fb88f12bec8143f00e21bc3222124.ttf); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url(/ac3f799d5bbaf5196fab15ab8de8431c.ttf); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url(/fe13e4170719c2fc586501e777bde143.ttf); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 600;
  src: url(/d329cc8b34667f114a95422aaad1b063.ttf); }

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url(/893fe14628bd7ac498d550e96367e1be.ttf); }

@font-face {
  font-family: 'RobotoMono';
  font-style: normal;
  font-weight: 500;
  src: url(/5a45b286f59824f5d3b2d761871ced29.ttf); }

/*
   Icon Font
   -----------------------------------------------------------------------------
   Created using a tool called IcoMoon
   See more at http://icomoon.io
*/
@font-face {
  font-family: 'icomoon';
  src: url(/5b0351ba9a521ac09d77288b1658aa93.eot);
  src: url(/5b0351ba9a521ac09d77288b1658aa93.eot) format("embedded-opentype"), url(/24857cccc42d68c82351c10b3c7e7bb2.woff2) format("woff2"), url(/882018a95960c21b01919a3691e894dc.ttf) format("truetype"), url(/bac7dda530ae36f002b01ac0c90da19e.woff) format("woff"), url(/586e2408b2143fcf605817c1401afb8c.svg) format("svg");
  font-weight: normal;
  font-style: normal; }

.icon {
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon.collapse:before {
  content: "\E90F"; }

.icon.okta:before {
  content: "\E912"; }

.icon.user-remove:before {
  content: "\E904"; }

.icon.user-add:before {
  content: "\E907"; }

.icon.group:before {
  content: "\E908"; }

.icon.user:before {
  content: "\E90D"; }

.icon.eye-closed:before {
  content: "\E956"; }

.icon.eye-open:before {
  content: "\E957"; }

.icon.arrow-down:before {
  content: "\E910"; }

.icon.arrow-left:before {
  content: "\E90C"; }

.icon.arrow-right:before {
  content: "\E911"; }

.icon.arrow-up:before {
  content: "\E90B"; }

.icon.authzero:before {
  content: "\E951"; }

.icon.brush:before {
  content: "\E939"; }

.icon.caret-down:before {
  content: "\E902"; }

.icon.caret-left:before {
  content: "\E900"; }

.icon.caret-right:before {
  content: "\E903"; }

.icon.caret-up:before {
  content: "\E901"; }

.icon.checkmark:before {
  content: "\E918"; }

.icon.circle:before {
  content: "\E940"; }

.icon.clock:before {
  content: "\E91B"; }

.icon.cog-thick:before {
  content: "\E906"; }

.icon.crown2:before {
  content: "\E94B"; }

.icon.cube:before {
  content: "\E92E"; }

.icon.cubo-node:before {
  content: "\E919"; }

.icon.cubo-uniform:before {
  content: "\E91A"; }

.icon.dash-f:before {
  content: "\E927"; }

.icon.dash-h:before {
  content: "\E929"; }

.icon.disks:before {
  content: "\E950"; }

.icon.download:before {
  content: "\E91D"; }

.icon.duplicate:before {
  content: "\E917"; }

.icon.expand-a:before {
  content: "\E944"; }

.icon.expand-b:before {
  content: "\E942"; }

.icon.export:before {
  content: "\E941"; }

.icon.graphline:before {
  content: "\E90E"; }

.icon.heroku:before {
  content: "\E947"; }

.icon.heroku-simple:before {
  content: "\E948"; }

.icon.oauth:before {
  content: "\E94F"; }

.icon.octagon:before {
  content: "\E92D"; }

.icon.pause:before {
  content: "\E94A"; }

.icon.plus:before {
  content: "\E90A"; }

.icon.pulse-c:before {
  content: "\E936"; }

.icon.refresh:before {
  content: "\E949"; }

.icon.remove:before {
  content: "\E909"; }

.icon.search:before {
  content: "\E916"; }

.icon.server2:before {
  content: "\E94C"; }

.icon.shuffle:before {
  content: "\E94E"; }

.icon.square:before {
  content: "\E93E"; }

.icon.trash:before {
  content: "\E905"; }

.icon.triangle:before {
  content: "\E92C"; }

.icon.alert-triangle:before {
  content: "\F02D"; }

.icon.link:before {
  content: "\F05C"; }

.icon.pencil:before {
  content: "\F058"; }

.icon.star:before {
  content: "\F02A"; }

.icon.stop:before {
  content: "\F08F"; }

.icon.zap:before {
  content: "\26A1"; }

.icon.google:before {
  content: "\EA88"; }

.icon.github:before {
  content: "\EAB0"; }

/*
   Chronograf Theme
   -----------------------------------------------------------------------------
   The theme covers app-wide styles and is intended to be overwritten on
   a component basis
*/
/*
  Setting lowermost styles here
*/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html,
body {
  background-color: #0f0e15; }

body {
  display: flex;
  padding: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  align-items: stretch;
  overflow: hidden; }

body > #react-root {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

body > #react-root .container {
  margin-top: 60px; }

/*
   12 Column Grid
   -----------------------------------------------------------------------------
   This more or less copies what Bootstrap uses
*/
.row {
  margin-left: -14px;
  margin-right: -14px; }

.row:before,
.row:after {
  display: table;
  content: ' '; }

.panel-body form {
  margin-left: -6px;
  margin-right: -6px;
  width: calc(100% + 12px);
  display: inline-block; }

.form-group-submit {
  margin-top: 30px; }

.col-xs-12,
.col-xs-11,
.col-xs-10,
.col-xs-9,
.col-xs-8,
.col-xs-7,
.col-xs-6,
.col-xs-5,
.col-xs-4,
.col-xs-3,
.col-xs-2,
.col-xs-1,
.col-sm-12,
.col-sm-11,
.col-sm-10,
.col-sm-9,
.col-sm-8,
.col-sm-7,
.col-sm-6,
.col-sm-5,
.col-sm-4,
.col-sm-3,
.col-sm-2,
.col-sm-1,
.col-md-12,
.col-md-11,
.col-md-10,
.col-md-9,
.col-md-8,
.col-md-7,
.col-md-6,
.col-md-5,
.col-md-4,
.col-md-3,
.col-md-2,
.col-md-1,
.col-lg-12,
.col-lg-11,
.col-lg-10,
.col-lg-9,
.col-lg-8,
.col-lg-7,
.col-lg-6,
.col-lg-5,
.col-lg-4,
.col-lg-3,
.col-lg-2,
.col-lg-1 {
  position: relative;
  float: left;
  min-height: 1px;
  padding-left: 14px;
  padding-right: 14px; }

.col-xs-12.form-group,
.col-xs-11.form-group,
.col-xs-10.form-group,
.col-xs-9.form-group,
.col-xs-8.form-group,
.col-xs-7.form-group,
.col-xs-6.form-group,
.col-xs-5.form-group,
.col-xs-4.form-group,
.col-xs-3.form-group,
.col-xs-2.form-group,
.col-xs-1.form-group,
.col-sm-12.form-group,
.col-sm-11.form-group,
.col-sm-10.form-group,
.col-sm-9.form-group,
.col-sm-8.form-group,
.col-sm-7.form-group,
.col-sm-6.form-group,
.col-sm-5.form-group,
.col-sm-4.form-group,
.col-sm-3.form-group,
.col-sm-2.form-group,
.col-sm-1.form-group,
.col-md-12.form-group,
.col-md-11.form-group,
.col-md-10.form-group,
.col-md-9.form-group,
.col-md-8.form-group,
.col-md-7.form-group,
.col-md-6.form-group,
.col-md-5.form-group,
.col-md-4.form-group,
.col-md-3.form-group,
.col-md-2.form-group,
.col-md-1.form-group,
.col-lg-12.form-group,
.col-lg-11.form-group,
.col-lg-10.form-group,
.col-lg-9.form-group,
.col-lg-8.form-group,
.col-lg-7.form-group,
.col-lg-6.form-group,
.col-lg-5.form-group,
.col-lg-4.form-group,
.col-lg-3.form-group,
.col-lg-2.form-group,
.col-lg-1.form-group {
  padding-left: 6px;
  padding-right: 6px; }

.col-sm-12,
.col-sm-11,
.col-sm-10,
.col-sm-9,
.col-sm-8,
.col-sm-7,
.col-sm-6,
.col-sm-5,
.col-sm-4,
.col-sm-3,
.col-sm-2,
.col-sm-1,
.col-md-12,
.col-md-11,
.col-md-10,
.col-md-9,
.col-md-8,
.col-md-7,
.col-md-6,
.col-md-5,
.col-md-4,
.col-md-3,
.col-md-2,
.col-md-1,
.col-lg-12,
.col-lg-11,
.col-lg-10,
.col-lg-9,
.col-lg-8,
.col-lg-7,
.col-lg-6,
.col-lg-5,
.col-lg-4,
.col-lg-3,
.col-lg-2,
.col-lg-1 {
  width: 100%; }

.col-xs-1 {
  width: 8.33333%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media screen and (min-width: 768px) {
  .col-sm-1 {
    width: 8.33333%; }
  .col-sm-2 {
    width: 16.66667%; }
  .col-sm-3 {
    width: 25%; }
  .col-sm-4 {
    width: 33.33333%; }
  .col-sm-5 {
    width: 41.66667%; }
  .col-sm-6 {
    width: 50%; }
  .col-sm-7 {
    width: 58.33333%; }
  .col-sm-8 {
    width: 66.66667%; }
  .col-sm-9 {
    width: 75%; }
  .col-sm-10 {
    width: 83.33333%; }
  .col-sm-11 {
    width: 91.66667%; }
  .col-sm-12 {
    width: 100%; }
  .col-sm-offset-1 {
    margin-left: 8.33333%; }
  .col-sm-offset-2 {
    margin-left: 16.66667%; }
  .col-sm-offset-3 {
    margin-left: 25%; }
  .col-sm-offset-4 {
    margin-left: 33.33333%; }
  .col-sm-offset-5 {
    margin-left: 41.66667%; }
  .col-sm-offset-6 {
    margin-left: 50%; }
  .col-sm-offset-7 {
    margin-left: 58.33333%; }
  .col-sm-offset-8 {
    margin-left: 66.66667%; }
  .col-sm-offset-9 {
    margin-left: 75%; }
  .col-sm-offset-10 {
    margin-left: 83.33333%; }
  .col-sm-offset-11 {
    margin-left: 91.66667%; } }

@media screen and (min-width: 992px) {
  .col-md-1 {
    width: 8.33333%; }
  .col-md-2 {
    width: 16.66667%; }
  .col-md-3 {
    width: 25%; }
  .col-md-4 {
    width: 33.33333%; }
  .col-md-5 {
    width: 41.66667%; }
  .col-md-6 {
    width: 50%; }
  .col-md-7 {
    width: 58.33333%; }
  .col-md-8 {
    width: 66.66667%; }
  .col-md-9 {
    width: 75%; }
  .col-md-10 {
    width: 83.33333%; }
  .col-md-11 {
    width: 91.66667%; }
  .col-md-12 {
    width: 100%; }
  .col-md-offset-1 {
    margin-left: 8.33333%; }
  .col-md-offset-2 {
    margin-left: 16.66667%; }
  .col-md-offset-3 {
    margin-left: 25%; }
  .col-md-offset-4 {
    margin-left: 33.33333%; }
  .col-md-offset-5 {
    margin-left: 41.66667%; }
  .col-md-offset-6 {
    margin-left: 50%; }
  .col-md-offset-7 {
    margin-left: 58.33333%; }
  .col-md-offset-8 {
    margin-left: 66.66667%; }
  .col-md-offset-9 {
    margin-left: 75%; }
  .col-md-offset-10 {
    margin-left: 83.33333%; }
  .col-md-offset-11 {
    margin-left: 91.66667%; } }

@media screen and (min-width: 1200px) {
  .col-lg-1 {
    width: 8.33333%; }
  .col-lg-2 {
    width: 16.66667%; }
  .col-lg-3 {
    width: 25%; }
  .col-lg-4 {
    width: 33.33333%; }
  .col-lg-5 {
    width: 41.66667%; }
  .col-lg-6 {
    width: 50%; }
  .col-lg-7 {
    width: 58.33333%; }
  .col-lg-8 {
    width: 66.66667%; }
  .col-lg-9 {
    width: 75%; }
  .col-lg-10 {
    width: 83.33333%; }
  .col-lg-11 {
    width: 91.66667%; }
  .col-lg-12 {
    width: 100%; }
  .col-lg-offset-1 {
    margin-left: 8.33333%; }
  .col-lg-offset-2 {
    margin-left: 16.66667%; }
  .col-lg-offset-3 {
    margin-left: 25%; }
  .col-lg-offset-4 {
    margin-left: 33.33333%; }
  .col-lg-offset-5 {
    margin-left: 41.66667%; }
  .col-lg-offset-6 {
    margin-left: 50%; }
  .col-lg-offset-7 {
    margin-left: 58.33333%; }
  .col-lg-offset-8 {
    margin-left: 66.66667%; }
  .col-lg-offset-9 {
    margin-left: 75%; }
  .col-lg-offset-10 {
    margin-left: 83.33333%; }
  .col-lg-offset-11 {
    margin-left: 91.66667%; } }

/*
   Typography
   -----------------------------------------------------------------------------
*/
body {
  font-family: "Roboto", Helvetica, Arial, Tahoma, Verdana, sans-serif;
  color: #bec2cc;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

a:link,
a:visited {
  color: #22ADF6;
  transition: color 0.2s ease;
  text-decoration: none;
  font-weight: 700; }

a:link.link-danger,
a:visited.link-danger {
  color: #F95F53; }

a:link.link-success,
a:visited.link-success {
  color: #4ED8A0; }

a:link.link-warning,
a:visited.link-warning {
  color: #FFB94A; }

a:link.link-info,
a:visited.link-info {
  color: #7A65F2; }

a:hover,
a:active {
  color: #00C9FF;
  text-decoration: none; }

a:hover.link-danger,
a:active.link-danger {
  color: #FF8564; }

a:hover.link-success,
a:active.link-success {
  color: #7CE490; }

a:hover.link-warning,
a:active.link-warning {
  color: #FFD255; }

a:hover.link-info,
a:active.link-info {
  color: #9394FF; }

::selection {
  background-color: #22ADF6;
  color: #ffffff;
  /* WebKit/Blink Browsers */ }

::-moz-selection {
  background-color: #22ADF6;
  color: #ffffff;
  /* Gecko Browsers */ }

p,
h1,
h2,
h3,
h4,
h5,
h6,
ol,
ul,
blockquote {
  margin: 8px 0 0.55em 0; }

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  font-size: 0.8em;
  font-weight: inherit;
  color: #bec2cc; }

p {
  font-size: 14.5px;
  line-height: 1.55em;
  font-weight: 400; }

p b,
p strong {
  font-weight: 900; }

p small {
  color: #bec2cc;
  font-size: 12.5px;
  font-weight: 500; }

h1 {
  line-height: 1.25em;
  font-size: 35px;
  font-weight: 300;
  letter-spacing: -1px; }

h2 {
  line-height: 1.25em;
  font-size: 30px;
  font-weight: 300;
  letter-spacing: -1px; }

h3 {
  line-height: 1.25em;
  font-size: 25px;
  font-weight: 400; }

h3 small {
  font-weight: 400; }

h4 {
  line-height: 1.25em;
  font-size: 21px;
  font-weight: 400; }

h4 small {
  font-weight: 400; }

h5 {
  line-height: 1.25em;
  font-size: 18px;
  font-weight: 600; }

h5 small {
  font-weight: 500; }

h6 {
  line-height: 1.25em;
  font-size: 14.5px;
  font-weight: 900; }

h6 small {
  font-weight: 500; }

ol,
ul {
  padding-left: 16px;
  font-size: 14.5px;
  line-height: 1.55em;
  font-weight: 500; }

li {
  margin: 0 0 8px 0;
  padding-left: 8px; }

li:last-child {
  margin-bottom: 0; }

blockquote {
  font-size: 14.5px;
  line-height: 1.55em;
  font-weight: 400;
  border: 0;
  padding: 8px 16px;
  color: #bec2cc;
  font-style: italic;
  position: relative; }

blockquote:before,
blockquote:after {
  content: '';
  position: absolute;
  width: 64px;
  height: 32px;
  border-style: solid;
  border-color: #383846; }

blockquote:before {
  top: 0;
  left: 0;
  border-width: 2px 0 0 2px; }

blockquote:after {
  bottom: 0;
  right: 0;
  border-width: 0 2px 2px 0; }

blockquote b,
blockquote strong {
  font-weight: 900; }

hr {
  border: 0;
  height: 2px;
  margin: 16px 0 32px 0;
  background-color: #383846;
  border-radius: 1px; }

hr.dark {
  background-color: #292933; }

b,
strong {
  font-weight: 900; }

mark {
  background-color: #108174;
  color: #7CE490;
  padding: 2px 4px;
  border-radius: 3px; }

::selection {
  background-color: #22ADF6;
  color: #ffffff; }

::-moz-selection {
  background-color: #22ADF6;
  color: #ffffff; }

span.text-color-primary {
  color: #22ADF6; }

span.text-color-success {
  color: #4ED8A0; }

span.text-color-warning {
  color: #FFB94A; }

span.text-color-danger {
  color: #F95F53; }

span.text-color-info {
  color: #7A65F2; }

/*
   Buttons
   -----------------------------------------------------------------------------
*/
.btn,
button.btn,
input.btn {
  display: block;
  text-decoration: none;
  text-align: center;
  box-shadow: none;
  font-weight: 700;
  font-family: "Roboto", Helvetica, Arial, Tahoma, Verdana, sans-serif;
  border-style: solid;
  margin: 0;
  position: relative;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, opacity 0.3s ease;
  outline: none !important;
  border-radius: 4px;
  padding: 0 14px;
  height: 38px;
  line-height: 38px;
  font-size: 15px; }

.btn > .icon,
button.btn > .icon,
input.btn > .icon {
  margin: 0 4px 0 0;
  font-size: 1em;
  position: relative;
  top: -1px; }

.btn-square,
button.btn-square,
input.btn-square {
  padding: 0 !important;
  width: 38px; }

.btn-square .icon,
button.btn-square .icon,
input.btn-square .icon {
  margin: 0 !important; }

.btn-xs,
button.btn-xs,
input.btn-xs {
  border-radius: 3px;
  padding: 0 7px;
  height: 22px;
  line-height: 22px;
  font-size: 13px; }

.btn-xs > .icon,
button.btn-xs > .icon,
input.btn-xs > .icon {
  margin-right: 3px; }

.btn-xs.btn-square,
button.btn-xs.btn-square,
input.btn-xs.btn-square {
  width: 22px; }

.btn-sm,
button.btn-sm,
input.btn-sm {
  border-radius: 4px;
  padding: 0 11px;
  height: 30px;
  line-height: 30px;
  font-size: 13px; }

.btn-sm > .icon,
button.btn-sm > .icon,
input.btn-sm > .icon {
  top: 0;
  font-size: 1.125em;
  margin-right: 6px; }

.btn-sm.btn-square,
button.btn-sm.btn-square,
input.btn-sm.btn-square {
  width: 30px; }

.btn-md,
button.btn-md,
input.btn-md {
  border-radius: 4px;
  padding: 0 14px;
  height: 38px;
  line-height: 38px;
  font-size: 15px; }

.btn-md > .icon,
button.btn-md > .icon,
input.btn-md > .icon {
  margin-right: 6px; }

.btn-md.btn-square,
button.btn-md.btn-square,
input.btn-md.btn-square {
  width: 38px; }

.btn-lg,
button.btn-lg,
input.btn-lg {
  border-radius: 4px;
  padding: 0 17px;
  height: 46px;
  line-height: 46px;
  font-size: 17px; }

.btn-lg > .icon,
button.btn-lg > .icon,
input.btn-lg > .icon {
  margin-right: 8px; }

.btn-lg.btn-square,
button.btn-lg.btn-square,
input.btn-lg.btn-square {
  width: 46px; }

a.btn {
  display: inline-block; }

.btn-group-xs > .btn,
.btn.btn-xs {
  padding: 0 7px;
  height: 22px;
  line-height: 22px;
  font-size: 13px; }

.btn-group-sm > .btn,
.btn.btn-sm {
  padding: 0 11px;
  height: 30px;
  line-height: 30px;
  font-size: 13px; }

.btn-group-lg > .btn,
.btn.btn-lg {
  padding: 0 17px;
  height: 46px;
  line-height: 46px;
  font-size: 17px; }

.btn.btn-block {
  width: 100%; }

a.btn-default,
div.btn-default,
button.btn-default,
input.btn-default {
  background-color: #383846;
  color: #c6cad3;
  text-shadow: none;
  border-width: 0; }

a.btn-default:focus,
div.btn-default:focus,
button.btn-default:focus,
input.btn-default:focus {
  background-color: #383846;
  color: #c6cad3; }

a.btn-default:hover,
a.btn-default:focus:hover,
div.btn-default:hover,
div.btn-default:focus:hover,
button.btn-default:hover,
button.btn-default:focus:hover,
input.btn-default:hover,
input.btn-default:focus:hover {
  background-color: #434453;
  color: #f6f6f8;
  cursor: pointer; }

a.btn-default.active,
a.btn-default.active:hover,
a.btn-default:active,
a.btn-default:active:hover,
a.btn-default:focus:active,
a.btn-default:focus:active:hover,
.dropdown.open a.btn-default.dropdown-toggle,
div.btn-default.active,
div.btn-default.active:hover,
div.btn-default:active,
div.btn-default:active:hover,
div.btn-default:focus:active,
div.btn-default:focus:active:hover,
.dropdown.open
div.btn-default.dropdown-toggle,
button.btn-default.active,
button.btn-default.active:hover,
button.btn-default:active,
button.btn-default:active:hover,
button.btn-default:focus:active,
button.btn-default:focus:active:hover,
.dropdown.open
button.btn-default.dropdown-toggle,
input.btn-default.active,
input.btn-default.active:hover,
input.btn-default:active,
input.btn-default:active:hover,
input.btn-default:focus:active,
input.btn-default:focus:active:hover,
.dropdown.open
input.btn-default.dropdown-toggle {
  background-color: #545667;
  color: #f6f6f8;
  cursor: pointer; }

a.btn-default.disabled,
a.btn-default[disabled],
fieldset[disabled] a.btn-default,
div.btn-default.disabled,
div.btn-default[disabled],
fieldset[disabled]
div.btn-default,
button.btn-default.disabled,
button.btn-default[disabled],
fieldset[disabled]
button.btn-default,
input.btn-default.disabled,
input.btn-default[disabled],
fieldset[disabled]
input.btn-default {
  opacity: 1;
  font-style: italic;
  background-color: #383846;
  color: #545667;
  box-shadow: none; }

a.btn-default.disabled:hover,
a.btn-default.disabled:active,
a.btn-default.disabled:focus,
a.btn-default.disabled.active,
a.btn-default.disabled:active:focus,
a.btn-default[disabled]:hover,
a.btn-default[disabled]:active,
a.btn-default[disabled]:focus,
a.btn-default[disabled].active,
a.btn-default[disabled]:active:focus,
fieldset[disabled] a.btn-default:hover,
fieldset[disabled] a.btn-default:active,
fieldset[disabled] a.btn-default:focus,
fieldset[disabled] a.btn-default.active,
fieldset[disabled] a.btn-default:active:focus,
div.btn-default.disabled:hover,
div.btn-default.disabled:active,
div.btn-default.disabled:focus,
div.btn-default.disabled.active,
div.btn-default.disabled:active:focus,
div.btn-default[disabled]:hover,
div.btn-default[disabled]:active,
div.btn-default[disabled]:focus,
div.btn-default[disabled].active,
div.btn-default[disabled]:active:focus,
fieldset[disabled]
div.btn-default:hover,
fieldset[disabled]
div.btn-default:active,
fieldset[disabled]
div.btn-default:focus,
fieldset[disabled]
div.btn-default.active,
fieldset[disabled]
div.btn-default:active:focus,
button.btn-default.disabled:hover,
button.btn-default.disabled:active,
button.btn-default.disabled:focus,
button.btn-default.disabled.active,
button.btn-default.disabled:active:focus,
button.btn-default[disabled]:hover,
button.btn-default[disabled]:active,
button.btn-default[disabled]:focus,
button.btn-default[disabled].active,
button.btn-default[disabled]:active:focus,
fieldset[disabled]
button.btn-default:hover,
fieldset[disabled]
button.btn-default:active,
fieldset[disabled]
button.btn-default:focus,
fieldset[disabled]
button.btn-default.active,
fieldset[disabled]
button.btn-default:active:focus,
input.btn-default.disabled:hover,
input.btn-default.disabled:active,
input.btn-default.disabled:focus,
input.btn-default.disabled.active,
input.btn-default.disabled:active:focus,
input.btn-default[disabled]:hover,
input.btn-default[disabled]:active,
input.btn-default[disabled]:focus,
input.btn-default[disabled].active,
input.btn-default[disabled]:active:focus,
fieldset[disabled]
input.btn-default:hover,
fieldset[disabled]
input.btn-default:active,
fieldset[disabled]
input.btn-default:focus,
fieldset[disabled]
input.btn-default.active,
fieldset[disabled]
input.btn-default:active:focus {
  opacity: 1;
  background-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-default.disabled:after,
a.btn-default[disabled]:after,
fieldset[disabled] a.btn-default:after,
div.btn-default.disabled:after,
div.btn-default[disabled]:after,
fieldset[disabled]
div.btn-default:after,
button.btn-default.disabled:after,
button.btn-default[disabled]:after,
fieldset[disabled]
button.btn-default:after,
input.btn-default.disabled:after,
input.btn-default[disabled]:after,
fieldset[disabled]
input.btn-default:after {
  display: none; }

a.btn-primary,
div.btn-primary,
button.btn-primary,
input.btn-primary {
  background-color: #22ADF6;
  color: #ffffff;
  text-shadow: none;
  border-width: 0; }

a.btn-primary:focus,
div.btn-primary:focus,
button.btn-primary:focus,
input.btn-primary:focus {
  background-color: #22ADF6;
  color: #ffffff; }

a.btn-primary:hover,
a.btn-primary:focus:hover,
div.btn-primary:hover,
div.btn-primary:focus:hover,
button.btn-primary:hover,
button.btn-primary:focus:hover,
input.btn-primary:hover,
input.btn-primary:focus:hover {
  background-color: #00C9FF;
  color: #ffffff;
  cursor: pointer; }

a.btn-primary.active,
a.btn-primary.active:hover,
a.btn-primary:active,
a.btn-primary:active:hover,
a.btn-primary:focus:active,
a.btn-primary:focus:active:hover,
.dropdown.open a.btn-primary.dropdown-toggle,
div.btn-primary.active,
div.btn-primary.active:hover,
div.btn-primary:active,
div.btn-primary:active:hover,
div.btn-primary:focus:active,
div.btn-primary:focus:active:hover,
.dropdown.open
div.btn-primary.dropdown-toggle,
button.btn-primary.active,
button.btn-primary.active:hover,
button.btn-primary:active,
button.btn-primary:active:hover,
button.btn-primary:focus:active,
button.btn-primary:focus:active:hover,
.dropdown.open
button.btn-primary.dropdown-toggle,
input.btn-primary.active,
input.btn-primary.active:hover,
input.btn-primary:active,
input.btn-primary:active:hover,
input.btn-primary:focus:active,
input.btn-primary:focus:active:hover,
.dropdown.open
input.btn-primary.dropdown-toggle {
  background-color: #6BDFFF;
  color: #ffffff;
  cursor: pointer; }

a.btn-primary.disabled,
a.btn-primary[disabled],
fieldset[disabled] a.btn-primary,
div.btn-primary.disabled,
div.btn-primary[disabled],
fieldset[disabled]
div.btn-primary,
button.btn-primary.disabled,
button.btn-primary[disabled],
fieldset[disabled]
button.btn-primary,
input.btn-primary.disabled,
input.btn-primary[disabled],
fieldset[disabled]
input.btn-primary {
  opacity: 1;
  font-style: italic;
  background-color: #383846;
  color: #545667;
  box-shadow: none; }

a.btn-primary.disabled:hover,
a.btn-primary.disabled:active,
a.btn-primary.disabled:focus,
a.btn-primary.disabled.active,
a.btn-primary.disabled:active:focus,
a.btn-primary[disabled]:hover,
a.btn-primary[disabled]:active,
a.btn-primary[disabled]:focus,
a.btn-primary[disabled].active,
a.btn-primary[disabled]:active:focus,
fieldset[disabled] a.btn-primary:hover,
fieldset[disabled] a.btn-primary:active,
fieldset[disabled] a.btn-primary:focus,
fieldset[disabled] a.btn-primary.active,
fieldset[disabled] a.btn-primary:active:focus,
div.btn-primary.disabled:hover,
div.btn-primary.disabled:active,
div.btn-primary.disabled:focus,
div.btn-primary.disabled.active,
div.btn-primary.disabled:active:focus,
div.btn-primary[disabled]:hover,
div.btn-primary[disabled]:active,
div.btn-primary[disabled]:focus,
div.btn-primary[disabled].active,
div.btn-primary[disabled]:active:focus,
fieldset[disabled]
div.btn-primary:hover,
fieldset[disabled]
div.btn-primary:active,
fieldset[disabled]
div.btn-primary:focus,
fieldset[disabled]
div.btn-primary.active,
fieldset[disabled]
div.btn-primary:active:focus,
button.btn-primary.disabled:hover,
button.btn-primary.disabled:active,
button.btn-primary.disabled:focus,
button.btn-primary.disabled.active,
button.btn-primary.disabled:active:focus,
button.btn-primary[disabled]:hover,
button.btn-primary[disabled]:active,
button.btn-primary[disabled]:focus,
button.btn-primary[disabled].active,
button.btn-primary[disabled]:active:focus,
fieldset[disabled]
button.btn-primary:hover,
fieldset[disabled]
button.btn-primary:active,
fieldset[disabled]
button.btn-primary:focus,
fieldset[disabled]
button.btn-primary.active,
fieldset[disabled]
button.btn-primary:active:focus,
input.btn-primary.disabled:hover,
input.btn-primary.disabled:active,
input.btn-primary.disabled:focus,
input.btn-primary.disabled.active,
input.btn-primary.disabled:active:focus,
input.btn-primary[disabled]:hover,
input.btn-primary[disabled]:active,
input.btn-primary[disabled]:focus,
input.btn-primary[disabled].active,
input.btn-primary[disabled]:active:focus,
fieldset[disabled]
input.btn-primary:hover,
fieldset[disabled]
input.btn-primary:active,
fieldset[disabled]
input.btn-primary:focus,
fieldset[disabled]
input.btn-primary.active,
fieldset[disabled]
input.btn-primary:active:focus {
  opacity: 1;
  background-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-primary.disabled:after,
a.btn-primary[disabled]:after,
fieldset[disabled] a.btn-primary:after,
div.btn-primary.disabled:after,
div.btn-primary[disabled]:after,
fieldset[disabled]
div.btn-primary:after,
button.btn-primary.disabled:after,
button.btn-primary[disabled]:after,
fieldset[disabled]
button.btn-primary:after,
input.btn-primary.disabled:after,
input.btn-primary[disabled]:after,
fieldset[disabled]
input.btn-primary:after {
  display: none; }

a.btn-success,
div.btn-success,
button.btn-success,
input.btn-success {
  background-color: #4ED8A0;
  color: #ffffff;
  text-shadow: none;
  border-width: 0; }

a.btn-success:focus,
div.btn-success:focus,
button.btn-success:focus,
input.btn-success:focus {
  background-color: #4ED8A0;
  color: #ffffff; }

a.btn-success:hover,
a.btn-success:focus:hover,
div.btn-success:hover,
div.btn-success:focus:hover,
button.btn-success:hover,
button.btn-success:focus:hover,
input.btn-success:hover,
input.btn-success:focus:hover {
  background-color: #7CE490;
  color: #ffffff;
  cursor: pointer; }

a.btn-success.active,
a.btn-success.active:hover,
a.btn-success:active,
a.btn-success:active:hover,
a.btn-success:focus:active,
a.btn-success:focus:active:hover,
.dropdown.open a.btn-success.dropdown-toggle,
div.btn-success.active,
div.btn-success.active:hover,
div.btn-success:active,
div.btn-success:active:hover,
div.btn-success:focus:active,
div.btn-success:focus:active:hover,
.dropdown.open
div.btn-success.dropdown-toggle,
button.btn-success.active,
button.btn-success.active:hover,
button.btn-success:active,
button.btn-success:active:hover,
button.btn-success:focus:active,
button.btn-success:focus:active:hover,
.dropdown.open
button.btn-success.dropdown-toggle,
input.btn-success.active,
input.btn-success.active:hover,
input.btn-success:active,
input.btn-success:active:hover,
input.btn-success:focus:active,
input.btn-success:focus:active:hover,
.dropdown.open
input.btn-success.dropdown-toggle {
  background-color: #A5F3B4;
  color: #ffffff;
  cursor: pointer; }

a.btn-success.disabled,
a.btn-success[disabled],
fieldset[disabled] a.btn-success,
div.btn-success.disabled,
div.btn-success[disabled],
fieldset[disabled]
div.btn-success,
button.btn-success.disabled,
button.btn-success[disabled],
fieldset[disabled]
button.btn-success,
input.btn-success.disabled,
input.btn-success[disabled],
fieldset[disabled]
input.btn-success {
  opacity: 1;
  font-style: italic;
  background-color: #383846;
  color: #545667;
  box-shadow: none; }

a.btn-success.disabled:hover,
a.btn-success.disabled:active,
a.btn-success.disabled:focus,
a.btn-success.disabled.active,
a.btn-success.disabled:active:focus,
a.btn-success[disabled]:hover,
a.btn-success[disabled]:active,
a.btn-success[disabled]:focus,
a.btn-success[disabled].active,
a.btn-success[disabled]:active:focus,
fieldset[disabled] a.btn-success:hover,
fieldset[disabled] a.btn-success:active,
fieldset[disabled] a.btn-success:focus,
fieldset[disabled] a.btn-success.active,
fieldset[disabled] a.btn-success:active:focus,
div.btn-success.disabled:hover,
div.btn-success.disabled:active,
div.btn-success.disabled:focus,
div.btn-success.disabled.active,
div.btn-success.disabled:active:focus,
div.btn-success[disabled]:hover,
div.btn-success[disabled]:active,
div.btn-success[disabled]:focus,
div.btn-success[disabled].active,
div.btn-success[disabled]:active:focus,
fieldset[disabled]
div.btn-success:hover,
fieldset[disabled]
div.btn-success:active,
fieldset[disabled]
div.btn-success:focus,
fieldset[disabled]
div.btn-success.active,
fieldset[disabled]
div.btn-success:active:focus,
button.btn-success.disabled:hover,
button.btn-success.disabled:active,
button.btn-success.disabled:focus,
button.btn-success.disabled.active,
button.btn-success.disabled:active:focus,
button.btn-success[disabled]:hover,
button.btn-success[disabled]:active,
button.btn-success[disabled]:focus,
button.btn-success[disabled].active,
button.btn-success[disabled]:active:focus,
fieldset[disabled]
button.btn-success:hover,
fieldset[disabled]
button.btn-success:active,
fieldset[disabled]
button.btn-success:focus,
fieldset[disabled]
button.btn-success.active,
fieldset[disabled]
button.btn-success:active:focus,
input.btn-success.disabled:hover,
input.btn-success.disabled:active,
input.btn-success.disabled:focus,
input.btn-success.disabled.active,
input.btn-success.disabled:active:focus,
input.btn-success[disabled]:hover,
input.btn-success[disabled]:active,
input.btn-success[disabled]:focus,
input.btn-success[disabled].active,
input.btn-success[disabled]:active:focus,
fieldset[disabled]
input.btn-success:hover,
fieldset[disabled]
input.btn-success:active,
fieldset[disabled]
input.btn-success:focus,
fieldset[disabled]
input.btn-success.active,
fieldset[disabled]
input.btn-success:active:focus {
  opacity: 1;
  background-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-success.disabled:after,
a.btn-success[disabled]:after,
fieldset[disabled] a.btn-success:after,
div.btn-success.disabled:after,
div.btn-success[disabled]:after,
fieldset[disabled]
div.btn-success:after,
button.btn-success.disabled:after,
button.btn-success[disabled]:after,
fieldset[disabled]
button.btn-success:after,
input.btn-success.disabled:after,
input.btn-success[disabled]:after,
fieldset[disabled]
input.btn-success:after {
  display: none; }

a.btn-info,
div.btn-info,
button.btn-info,
input.btn-info {
  background-color: #545667;
  color: #e7e8eb;
  text-shadow: none;
  border-width: 0; }

a.btn-info:focus,
div.btn-info:focus,
button.btn-info:focus,
input.btn-info:focus {
  background-color: #545667;
  color: #e7e8eb; }

a.btn-info:hover,
a.btn-info:focus:hover,
div.btn-info:hover,
div.btn-info:focus:hover,
button.btn-info:hover,
button.btn-info:focus:hover,
input.btn-info:hover,
input.btn-info:focus:hover {
  background-color: #676978;
  color: #ffffff;
  cursor: pointer; }

a.btn-info.active,
a.btn-info.active:hover,
a.btn-info:active,
a.btn-info:active:hover,
a.btn-info:focus:active,
a.btn-info:focus:active:hover,
.dropdown.open a.btn-info.dropdown-toggle,
div.btn-info.active,
div.btn-info.active:hover,
div.btn-info:active,
div.btn-info:active:hover,
div.btn-info:focus:active,
div.btn-info:focus:active:hover,
.dropdown.open
div.btn-info.dropdown-toggle,
button.btn-info.active,
button.btn-info.active:hover,
button.btn-info:active,
button.btn-info:active:hover,
button.btn-info:focus:active,
button.btn-info:focus:active:hover,
.dropdown.open
button.btn-info.dropdown-toggle,
input.btn-info.active,
input.btn-info.active:hover,
input.btn-info:active,
input.btn-info:active:hover,
input.btn-info:focus:active,
input.btn-info:focus:active:hover,
.dropdown.open
input.btn-info.dropdown-toggle {
  background-color: #757888;
  color: #ffffff;
  cursor: pointer; }

a.btn-info.disabled,
a.btn-info[disabled],
fieldset[disabled] a.btn-info,
div.btn-info.disabled,
div.btn-info[disabled],
fieldset[disabled]
div.btn-info,
button.btn-info.disabled,
button.btn-info[disabled],
fieldset[disabled]
button.btn-info,
input.btn-info.disabled,
input.btn-info[disabled],
fieldset[disabled]
input.btn-info {
  opacity: 1;
  font-style: italic;
  background-color: #383846;
  color: #545667;
  box-shadow: none; }

a.btn-info.disabled:hover,
a.btn-info.disabled:active,
a.btn-info.disabled:focus,
a.btn-info.disabled.active,
a.btn-info.disabled:active:focus,
a.btn-info[disabled]:hover,
a.btn-info[disabled]:active,
a.btn-info[disabled]:focus,
a.btn-info[disabled].active,
a.btn-info[disabled]:active:focus,
fieldset[disabled] a.btn-info:hover,
fieldset[disabled] a.btn-info:active,
fieldset[disabled] a.btn-info:focus,
fieldset[disabled] a.btn-info.active,
fieldset[disabled] a.btn-info:active:focus,
div.btn-info.disabled:hover,
div.btn-info.disabled:active,
div.btn-info.disabled:focus,
div.btn-info.disabled.active,
div.btn-info.disabled:active:focus,
div.btn-info[disabled]:hover,
div.btn-info[disabled]:active,
div.btn-info[disabled]:focus,
div.btn-info[disabled].active,
div.btn-info[disabled]:active:focus,
fieldset[disabled]
div.btn-info:hover,
fieldset[disabled]
div.btn-info:active,
fieldset[disabled]
div.btn-info:focus,
fieldset[disabled]
div.btn-info.active,
fieldset[disabled]
div.btn-info:active:focus,
button.btn-info.disabled:hover,
button.btn-info.disabled:active,
button.btn-info.disabled:focus,
button.btn-info.disabled.active,
button.btn-info.disabled:active:focus,
button.btn-info[disabled]:hover,
button.btn-info[disabled]:active,
button.btn-info[disabled]:focus,
button.btn-info[disabled].active,
button.btn-info[disabled]:active:focus,
fieldset[disabled]
button.btn-info:hover,
fieldset[disabled]
button.btn-info:active,
fieldset[disabled]
button.btn-info:focus,
fieldset[disabled]
button.btn-info.active,
fieldset[disabled]
button.btn-info:active:focus,
input.btn-info.disabled:hover,
input.btn-info.disabled:active,
input.btn-info.disabled:focus,
input.btn-info.disabled.active,
input.btn-info.disabled:active:focus,
input.btn-info[disabled]:hover,
input.btn-info[disabled]:active,
input.btn-info[disabled]:focus,
input.btn-info[disabled].active,
input.btn-info[disabled]:active:focus,
fieldset[disabled]
input.btn-info:hover,
fieldset[disabled]
input.btn-info:active,
fieldset[disabled]
input.btn-info:focus,
fieldset[disabled]
input.btn-info.active,
fieldset[disabled]
input.btn-info:active:focus {
  opacity: 1;
  background-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-info.disabled:after,
a.btn-info[disabled]:after,
fieldset[disabled] a.btn-info:after,
div.btn-info.disabled:after,
div.btn-info[disabled]:after,
fieldset[disabled]
div.btn-info:after,
button.btn-info.disabled:after,
button.btn-info[disabled]:after,
fieldset[disabled]
button.btn-info:after,
input.btn-info.disabled:after,
input.btn-info[disabled]:after,
fieldset[disabled]
input.btn-info:after {
  display: none; }

a.btn-warning,
div.btn-warning,
button.btn-warning,
input.btn-warning {
  background-color: #7A65F2;
  color: #ffffff;
  text-shadow: none;
  border-width: 0; }

a.btn-warning:focus,
div.btn-warning:focus,
button.btn-warning:focus,
input.btn-warning:focus {
  background-color: #7A65F2;
  color: #ffffff; }

a.btn-warning:hover,
a.btn-warning:focus:hover,
div.btn-warning:hover,
div.btn-warning:focus:hover,
button.btn-warning:hover,
button.btn-warning:focus:hover,
input.btn-warning:hover,
input.btn-warning:focus:hover {
  background-color: #9394FF;
  color: #ffffff;
  cursor: pointer; }

a.btn-warning.active,
a.btn-warning.active:hover,
a.btn-warning:active,
a.btn-warning:active:hover,
a.btn-warning:focus:active,
a.btn-warning:focus:active:hover,
.dropdown.open a.btn-warning.dropdown-toggle,
div.btn-warning.active,
div.btn-warning.active:hover,
div.btn-warning:active,
div.btn-warning:active:hover,
div.btn-warning:focus:active,
div.btn-warning:focus:active:hover,
.dropdown.open
div.btn-warning.dropdown-toggle,
button.btn-warning.active,
button.btn-warning.active:hover,
button.btn-warning:active,
button.btn-warning:active:hover,
button.btn-warning:focus:active,
button.btn-warning:focus:active:hover,
.dropdown.open
button.btn-warning.dropdown-toggle,
input.btn-warning.active,
input.btn-warning.active:hover,
input.btn-warning:active,
input.btn-warning:active:hover,
input.btn-warning:focus:active,
input.btn-warning:focus:active:hover,
.dropdown.open
input.btn-warning.dropdown-toggle {
  background-color: #B1B6FF;
  color: #ffffff;
  cursor: pointer; }

a.btn-warning.disabled,
a.btn-warning[disabled],
fieldset[disabled] a.btn-warning,
div.btn-warning.disabled,
div.btn-warning[disabled],
fieldset[disabled]
div.btn-warning,
button.btn-warning.disabled,
button.btn-warning[disabled],
fieldset[disabled]
button.btn-warning,
input.btn-warning.disabled,
input.btn-warning[disabled],
fieldset[disabled]
input.btn-warning {
  opacity: 1;
  font-style: italic;
  background-color: #383846;
  color: #545667;
  box-shadow: none; }

a.btn-warning.disabled:hover,
a.btn-warning.disabled:active,
a.btn-warning.disabled:focus,
a.btn-warning.disabled.active,
a.btn-warning.disabled:active:focus,
a.btn-warning[disabled]:hover,
a.btn-warning[disabled]:active,
a.btn-warning[disabled]:focus,
a.btn-warning[disabled].active,
a.btn-warning[disabled]:active:focus,
fieldset[disabled] a.btn-warning:hover,
fieldset[disabled] a.btn-warning:active,
fieldset[disabled] a.btn-warning:focus,
fieldset[disabled] a.btn-warning.active,
fieldset[disabled] a.btn-warning:active:focus,
div.btn-warning.disabled:hover,
div.btn-warning.disabled:active,
div.btn-warning.disabled:focus,
div.btn-warning.disabled.active,
div.btn-warning.disabled:active:focus,
div.btn-warning[disabled]:hover,
div.btn-warning[disabled]:active,
div.btn-warning[disabled]:focus,
div.btn-warning[disabled].active,
div.btn-warning[disabled]:active:focus,
fieldset[disabled]
div.btn-warning:hover,
fieldset[disabled]
div.btn-warning:active,
fieldset[disabled]
div.btn-warning:focus,
fieldset[disabled]
div.btn-warning.active,
fieldset[disabled]
div.btn-warning:active:focus,
button.btn-warning.disabled:hover,
button.btn-warning.disabled:active,
button.btn-warning.disabled:focus,
button.btn-warning.disabled.active,
button.btn-warning.disabled:active:focus,
button.btn-warning[disabled]:hover,
button.btn-warning[disabled]:active,
button.btn-warning[disabled]:focus,
button.btn-warning[disabled].active,
button.btn-warning[disabled]:active:focus,
fieldset[disabled]
button.btn-warning:hover,
fieldset[disabled]
button.btn-warning:active,
fieldset[disabled]
button.btn-warning:focus,
fieldset[disabled]
button.btn-warning.active,
fieldset[disabled]
button.btn-warning:active:focus,
input.btn-warning.disabled:hover,
input.btn-warning.disabled:active,
input.btn-warning.disabled:focus,
input.btn-warning.disabled.active,
input.btn-warning.disabled:active:focus,
input.btn-warning[disabled]:hover,
input.btn-warning[disabled]:active,
input.btn-warning[disabled]:focus,
input.btn-warning[disabled].active,
input.btn-warning[disabled]:active:focus,
fieldset[disabled]
input.btn-warning:hover,
fieldset[disabled]
input.btn-warning:active,
fieldset[disabled]
input.btn-warning:focus,
fieldset[disabled]
input.btn-warning.active,
fieldset[disabled]
input.btn-warning:active:focus {
  opacity: 1;
  background-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-warning.disabled:after,
a.btn-warning[disabled]:after,
fieldset[disabled] a.btn-warning:after,
div.btn-warning.disabled:after,
div.btn-warning[disabled]:after,
fieldset[disabled]
div.btn-warning:after,
button.btn-warning.disabled:after,
button.btn-warning[disabled]:after,
fieldset[disabled]
button.btn-warning:after,
input.btn-warning.disabled:after,
input.btn-warning[disabled]:after,
fieldset[disabled]
input.btn-warning:after {
  display: none; }

a.btn-danger,
div.btn-danger,
button.btn-danger,
input.btn-danger {
  background-color: #F95F53;
  color: #ffffff;
  text-shadow: none;
  border-width: 0; }

a.btn-danger:focus,
div.btn-danger:focus,
button.btn-danger:focus,
input.btn-danger:focus {
  background-color: #F95F53;
  color: #ffffff; }

a.btn-danger:hover,
a.btn-danger:focus:hover,
div.btn-danger:hover,
div.btn-danger:focus:hover,
button.btn-danger:hover,
button.btn-danger:focus:hover,
input.btn-danger:hover,
input.btn-danger:focus:hover {
  background-color: #FF8564;
  color: #ffffff;
  cursor: pointer; }

a.btn-danger.active,
a.btn-danger.active:hover,
a.btn-danger:active,
a.btn-danger:active:hover,
a.btn-danger:focus:active,
a.btn-danger:focus:active:hover,
.dropdown.open a.btn-danger.dropdown-toggle,
div.btn-danger.active,
div.btn-danger.active:hover,
div.btn-danger:active,
div.btn-danger:active:hover,
div.btn-danger:focus:active,
div.btn-danger:focus:active:hover,
.dropdown.open
div.btn-danger.dropdown-toggle,
button.btn-danger.active,
button.btn-danger.active:hover,
button.btn-danger:active,
button.btn-danger:active:hover,
button.btn-danger:focus:active,
button.btn-danger:focus:active:hover,
.dropdown.open
button.btn-danger.dropdown-toggle,
input.btn-danger.active,
input.btn-danger.active:hover,
input.btn-danger:active,
input.btn-danger:active:hover,
input.btn-danger:focus:active,
input.btn-danger:focus:active:hover,
.dropdown.open
input.btn-danger.dropdown-toggle {
  background-color: #FFB6A0;
  color: #ffffff;
  cursor: pointer; }

a.btn-danger.disabled,
a.btn-danger[disabled],
fieldset[disabled] a.btn-danger,
div.btn-danger.disabled,
div.btn-danger[disabled],
fieldset[disabled]
div.btn-danger,
button.btn-danger.disabled,
button.btn-danger[disabled],
fieldset[disabled]
button.btn-danger,
input.btn-danger.disabled,
input.btn-danger[disabled],
fieldset[disabled]
input.btn-danger {
  opacity: 1;
  font-style: italic;
  background-color: #383846;
  color: #545667;
  box-shadow: none; }

a.btn-danger.disabled:hover,
a.btn-danger.disabled:active,
a.btn-danger.disabled:focus,
a.btn-danger.disabled.active,
a.btn-danger.disabled:active:focus,
a.btn-danger[disabled]:hover,
a.btn-danger[disabled]:active,
a.btn-danger[disabled]:focus,
a.btn-danger[disabled].active,
a.btn-danger[disabled]:active:focus,
fieldset[disabled] a.btn-danger:hover,
fieldset[disabled] a.btn-danger:active,
fieldset[disabled] a.btn-danger:focus,
fieldset[disabled] a.btn-danger.active,
fieldset[disabled] a.btn-danger:active:focus,
div.btn-danger.disabled:hover,
div.btn-danger.disabled:active,
div.btn-danger.disabled:focus,
div.btn-danger.disabled.active,
div.btn-danger.disabled:active:focus,
div.btn-danger[disabled]:hover,
div.btn-danger[disabled]:active,
div.btn-danger[disabled]:focus,
div.btn-danger[disabled].active,
div.btn-danger[disabled]:active:focus,
fieldset[disabled]
div.btn-danger:hover,
fieldset[disabled]
div.btn-danger:active,
fieldset[disabled]
div.btn-danger:focus,
fieldset[disabled]
div.btn-danger.active,
fieldset[disabled]
div.btn-danger:active:focus,
button.btn-danger.disabled:hover,
button.btn-danger.disabled:active,
button.btn-danger.disabled:focus,
button.btn-danger.disabled.active,
button.btn-danger.disabled:active:focus,
button.btn-danger[disabled]:hover,
button.btn-danger[disabled]:active,
button.btn-danger[disabled]:focus,
button.btn-danger[disabled].active,
button.btn-danger[disabled]:active:focus,
fieldset[disabled]
button.btn-danger:hover,
fieldset[disabled]
button.btn-danger:active,
fieldset[disabled]
button.btn-danger:focus,
fieldset[disabled]
button.btn-danger.active,
fieldset[disabled]
button.btn-danger:active:focus,
input.btn-danger.disabled:hover,
input.btn-danger.disabled:active,
input.btn-danger.disabled:focus,
input.btn-danger.disabled.active,
input.btn-danger.disabled:active:focus,
input.btn-danger[disabled]:hover,
input.btn-danger[disabled]:active,
input.btn-danger[disabled]:focus,
input.btn-danger[disabled].active,
input.btn-danger[disabled]:active:focus,
fieldset[disabled]
input.btn-danger:hover,
fieldset[disabled]
input.btn-danger:active,
fieldset[disabled]
input.btn-danger:focus,
fieldset[disabled]
input.btn-danger.active,
fieldset[disabled]
input.btn-danger:active:focus {
  opacity: 1;
  background-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-danger.disabled:after,
a.btn-danger[disabled]:after,
fieldset[disabled] a.btn-danger:after,
div.btn-danger.disabled:after,
div.btn-danger[disabled]:after,
fieldset[disabled]
div.btn-danger:after,
button.btn-danger.disabled:after,
button.btn-danger[disabled]:after,
fieldset[disabled]
button.btn-danger:after,
input.btn-danger.disabled:after,
input.btn-danger[disabled]:after,
fieldset[disabled]
input.btn-danger:after {
  display: none; }

a.btn-alert,
div.btn-alert,
button.btn-alert,
input.btn-alert {
  background-color: #FFB94A;
  color: #ffffff;
  text-shadow: none;
  border-width: 0; }

a.btn-alert:focus,
div.btn-alert:focus,
button.btn-alert:focus,
input.btn-alert:focus {
  background-color: #FFB94A;
  color: #ffffff; }

a.btn-alert:hover,
a.btn-alert:focus:hover,
div.btn-alert:hover,
div.btn-alert:focus:hover,
button.btn-alert:hover,
button.btn-alert:focus:hover,
input.btn-alert:hover,
input.btn-alert:focus:hover {
  background-color: #FFD255;
  color: #ffffff;
  cursor: pointer; }

a.btn-alert.active,
a.btn-alert.active:hover,
a.btn-alert:active,
a.btn-alert:active:hover,
a.btn-alert:focus:active,
a.btn-alert:focus:active:hover,
.dropdown.open a.btn-alert.dropdown-toggle,
div.btn-alert.active,
div.btn-alert.active:hover,
div.btn-alert:active,
div.btn-alert:active:hover,
div.btn-alert:focus:active,
div.btn-alert:focus:active:hover,
.dropdown.open
div.btn-alert.dropdown-toggle,
button.btn-alert.active,
button.btn-alert.active:hover,
button.btn-alert:active,
button.btn-alert:active:hover,
button.btn-alert:focus:active,
button.btn-alert:focus:active:hover,
.dropdown.open
button.btn-alert.dropdown-toggle,
input.btn-alert.active,
input.btn-alert.active:hover,
input.btn-alert:active,
input.btn-alert:active:hover,
input.btn-alert:focus:active,
input.btn-alert:focus:active:hover,
.dropdown.open
input.btn-alert.dropdown-toggle {
  background-color: #FFE480;
  color: #ffffff;
  cursor: pointer; }

a.btn-alert.disabled,
a.btn-alert[disabled],
fieldset[disabled] a.btn-alert,
div.btn-alert.disabled,
div.btn-alert[disabled],
fieldset[disabled]
div.btn-alert,
button.btn-alert.disabled,
button.btn-alert[disabled],
fieldset[disabled]
button.btn-alert,
input.btn-alert.disabled,
input.btn-alert[disabled],
fieldset[disabled]
input.btn-alert {
  opacity: 1;
  font-style: italic;
  background-color: #383846;
  color: #545667;
  box-shadow: none; }

a.btn-alert.disabled:hover,
a.btn-alert.disabled:active,
a.btn-alert.disabled:focus,
a.btn-alert.disabled.active,
a.btn-alert.disabled:active:focus,
a.btn-alert[disabled]:hover,
a.btn-alert[disabled]:active,
a.btn-alert[disabled]:focus,
a.btn-alert[disabled].active,
a.btn-alert[disabled]:active:focus,
fieldset[disabled] a.btn-alert:hover,
fieldset[disabled] a.btn-alert:active,
fieldset[disabled] a.btn-alert:focus,
fieldset[disabled] a.btn-alert.active,
fieldset[disabled] a.btn-alert:active:focus,
div.btn-alert.disabled:hover,
div.btn-alert.disabled:active,
div.btn-alert.disabled:focus,
div.btn-alert.disabled.active,
div.btn-alert.disabled:active:focus,
div.btn-alert[disabled]:hover,
div.btn-alert[disabled]:active,
div.btn-alert[disabled]:focus,
div.btn-alert[disabled].active,
div.btn-alert[disabled]:active:focus,
fieldset[disabled]
div.btn-alert:hover,
fieldset[disabled]
div.btn-alert:active,
fieldset[disabled]
div.btn-alert:focus,
fieldset[disabled]
div.btn-alert.active,
fieldset[disabled]
div.btn-alert:active:focus,
button.btn-alert.disabled:hover,
button.btn-alert.disabled:active,
button.btn-alert.disabled:focus,
button.btn-alert.disabled.active,
button.btn-alert.disabled:active:focus,
button.btn-alert[disabled]:hover,
button.btn-alert[disabled]:active,
button.btn-alert[disabled]:focus,
button.btn-alert[disabled].active,
button.btn-alert[disabled]:active:focus,
fieldset[disabled]
button.btn-alert:hover,
fieldset[disabled]
button.btn-alert:active,
fieldset[disabled]
button.btn-alert:focus,
fieldset[disabled]
button.btn-alert.active,
fieldset[disabled]
button.btn-alert:active:focus,
input.btn-alert.disabled:hover,
input.btn-alert.disabled:active,
input.btn-alert.disabled:focus,
input.btn-alert.disabled.active,
input.btn-alert.disabled:active:focus,
input.btn-alert[disabled]:hover,
input.btn-alert[disabled]:active,
input.btn-alert[disabled]:focus,
input.btn-alert[disabled].active,
input.btn-alert[disabled]:active:focus,
fieldset[disabled]
input.btn-alert:hover,
fieldset[disabled]
input.btn-alert:active,
fieldset[disabled]
input.btn-alert:focus,
fieldset[disabled]
input.btn-alert.active,
fieldset[disabled]
input.btn-alert:active:focus {
  opacity: 1;
  background-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-alert.disabled:after,
a.btn-alert[disabled]:after,
fieldset[disabled] a.btn-alert:after,
div.btn-alert.disabled:after,
div.btn-alert[disabled]:after,
fieldset[disabled]
div.btn-alert:after,
button.btn-alert.disabled:after,
button.btn-alert[disabled]:after,
fieldset[disabled]
button.btn-alert:after,
input.btn-alert.disabled:after,
input.btn-alert[disabled]:after,
fieldset[disabled]
input.btn-alert:after {
  display: none; }

a.btn-link,
div.btn-link,
button.btn-link {
  line-height: 34px;
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #22ADF6; }

a.btn-link.btn-xs,
div.btn-link.btn-xs,
button.btn-link.btn-xs {
  line-height: 18px; }

a.btn-link.btn-sm,
div.btn-link.btn-sm,
button.btn-link.btn-sm {
  line-height: 26px; }

a.btn-link.btn-md,
div.btn-link.btn-md,
button.btn-link.btn-md {
  line-height: 34px; }

a.btn-link.btn-lg,
div.btn-link.btn-lg,
button.btn-link.btn-lg {
  line-height: 42px; }

a.btn-link:focus,
div.btn-link:focus,
button.btn-link:focus {
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #22ADF6; }

a.btn-link:hover,
div.btn-link:hover,
button.btn-link:hover {
  background-color: transparent;
  border-color: #434453;
  color: #00C9FF; }

a.btn-link.active,
a.btn-link.active:hover,
a.btn-link:active,
a.btn-link:active:hover,
.open a.btn-link.dropdown-toggle,
div.btn-link.active,
div.btn-link.active:hover,
div.btn-link:active,
div.btn-link:active:hover,
.open
div.btn-link.dropdown-toggle,
button.btn-link.active,
button.btn-link.active:hover,
button.btn-link:active,
button.btn-link:active:hover,
.open
button.btn-link.dropdown-toggle {
  box-shadow: none;
  background-color: transparent;
  border-color: #00C9FF;
  color: #00C9FF; }

a.btn-link.disabled,
a.btn-link[disabled],
fieldset[disabled] a.btn-link,
div.btn-link.disabled,
div.btn-link[disabled],
fieldset[disabled]
div.btn-link,
button.btn-link.disabled,
button.btn-link[disabled],
fieldset[disabled]
button.btn-link {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  box-shadow: none;
  font-style: italic; }

a.btn-link.disabled:hover,
a.btn-link.disabled:active,
a.btn-link.disabled:focus,
a.btn-link.disabled.active,
a.btn-link.disabled:active:focus,
a.btn-link[disabled]:hover,
a.btn-link[disabled]:active,
a.btn-link[disabled]:focus,
a.btn-link[disabled].active,
a.btn-link[disabled]:active:focus,
fieldset[disabled] a.btn-link:hover,
fieldset[disabled] a.btn-link:active,
fieldset[disabled] a.btn-link:focus,
fieldset[disabled] a.btn-link.active,
fieldset[disabled] a.btn-link:active:focus,
div.btn-link.disabled:hover,
div.btn-link.disabled:active,
div.btn-link.disabled:focus,
div.btn-link.disabled.active,
div.btn-link.disabled:active:focus,
div.btn-link[disabled]:hover,
div.btn-link[disabled]:active,
div.btn-link[disabled]:focus,
div.btn-link[disabled].active,
div.btn-link[disabled]:active:focus,
fieldset[disabled]
div.btn-link:hover,
fieldset[disabled]
div.btn-link:active,
fieldset[disabled]
div.btn-link:focus,
fieldset[disabled]
div.btn-link.active,
fieldset[disabled]
div.btn-link:active:focus,
button.btn-link.disabled:hover,
button.btn-link.disabled:active,
button.btn-link.disabled:focus,
button.btn-link.disabled.active,
button.btn-link.disabled:active:focus,
button.btn-link[disabled]:hover,
button.btn-link[disabled]:active,
button.btn-link[disabled]:focus,
button.btn-link[disabled].active,
button.btn-link[disabled]:active:focus,
fieldset[disabled]
button.btn-link:hover,
fieldset[disabled]
button.btn-link:active,
fieldset[disabled]
button.btn-link:focus,
fieldset[disabled]
button.btn-link.active,
fieldset[disabled]
button.btn-link:active:focus {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-link.disabled:after,
a.btn-link[disabled]:after,
fieldset[disabled] a.btn-link:after,
div.btn-link.disabled:after,
div.btn-link[disabled]:after,
fieldset[disabled]
div.btn-link:after,
button.btn-link.disabled:after,
button.btn-link[disabled]:after,
fieldset[disabled]
button.btn-link:after {
  display: none; }

a.btn-link-success,
div.btn-link-success,
button.btn-link-success {
  line-height: 34px;
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #4ED8A0; }

a.btn-link-success.btn-xs,
div.btn-link-success.btn-xs,
button.btn-link-success.btn-xs {
  line-height: 18px; }

a.btn-link-success.btn-sm,
div.btn-link-success.btn-sm,
button.btn-link-success.btn-sm {
  line-height: 26px; }

a.btn-link-success.btn-md,
div.btn-link-success.btn-md,
button.btn-link-success.btn-md {
  line-height: 34px; }

a.btn-link-success.btn-lg,
div.btn-link-success.btn-lg,
button.btn-link-success.btn-lg {
  line-height: 42px; }

a.btn-link-success:focus,
div.btn-link-success:focus,
button.btn-link-success:focus {
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #4ED8A0; }

a.btn-link-success:hover,
div.btn-link-success:hover,
button.btn-link-success:hover {
  background-color: transparent;
  border-color: #434453;
  color: #7CE490; }

a.btn-link-success.active,
a.btn-link-success.active:hover,
a.btn-link-success:active,
a.btn-link-success:active:hover,
.open a.btn-link-success.dropdown-toggle,
div.btn-link-success.active,
div.btn-link-success.active:hover,
div.btn-link-success:active,
div.btn-link-success:active:hover,
.open
div.btn-link-success.dropdown-toggle,
button.btn-link-success.active,
button.btn-link-success.active:hover,
button.btn-link-success:active,
button.btn-link-success:active:hover,
.open
button.btn-link-success.dropdown-toggle {
  box-shadow: none;
  background-color: transparent;
  border-color: #7CE490;
  color: #7CE490; }

a.btn-link-success.disabled,
a.btn-link-success[disabled],
fieldset[disabled] a.btn-link-success,
div.btn-link-success.disabled,
div.btn-link-success[disabled],
fieldset[disabled]
div.btn-link-success,
button.btn-link-success.disabled,
button.btn-link-success[disabled],
fieldset[disabled]
button.btn-link-success {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  box-shadow: none;
  font-style: italic; }

a.btn-link-success.disabled:hover,
a.btn-link-success.disabled:active,
a.btn-link-success.disabled:focus,
a.btn-link-success.disabled.active,
a.btn-link-success.disabled:active:focus,
a.btn-link-success[disabled]:hover,
a.btn-link-success[disabled]:active,
a.btn-link-success[disabled]:focus,
a.btn-link-success[disabled].active,
a.btn-link-success[disabled]:active:focus,
fieldset[disabled] a.btn-link-success:hover,
fieldset[disabled] a.btn-link-success:active,
fieldset[disabled] a.btn-link-success:focus,
fieldset[disabled] a.btn-link-success.active,
fieldset[disabled] a.btn-link-success:active:focus,
div.btn-link-success.disabled:hover,
div.btn-link-success.disabled:active,
div.btn-link-success.disabled:focus,
div.btn-link-success.disabled.active,
div.btn-link-success.disabled:active:focus,
div.btn-link-success[disabled]:hover,
div.btn-link-success[disabled]:active,
div.btn-link-success[disabled]:focus,
div.btn-link-success[disabled].active,
div.btn-link-success[disabled]:active:focus,
fieldset[disabled]
div.btn-link-success:hover,
fieldset[disabled]
div.btn-link-success:active,
fieldset[disabled]
div.btn-link-success:focus,
fieldset[disabled]
div.btn-link-success.active,
fieldset[disabled]
div.btn-link-success:active:focus,
button.btn-link-success.disabled:hover,
button.btn-link-success.disabled:active,
button.btn-link-success.disabled:focus,
button.btn-link-success.disabled.active,
button.btn-link-success.disabled:active:focus,
button.btn-link-success[disabled]:hover,
button.btn-link-success[disabled]:active,
button.btn-link-success[disabled]:focus,
button.btn-link-success[disabled].active,
button.btn-link-success[disabled]:active:focus,
fieldset[disabled]
button.btn-link-success:hover,
fieldset[disabled]
button.btn-link-success:active,
fieldset[disabled]
button.btn-link-success:focus,
fieldset[disabled]
button.btn-link-success.active,
fieldset[disabled]
button.btn-link-success:active:focus {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-link-success.disabled:after,
a.btn-link-success[disabled]:after,
fieldset[disabled] a.btn-link-success:after,
div.btn-link-success.disabled:after,
div.btn-link-success[disabled]:after,
fieldset[disabled]
div.btn-link-success:after,
button.btn-link-success.disabled:after,
button.btn-link-success[disabled]:after,
fieldset[disabled]
button.btn-link-success:after {
  display: none; }

a.btn-link-warning,
div.btn-link-warning,
button.btn-link-warning {
  line-height: 34px;
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #7A65F2; }

a.btn-link-warning.btn-xs,
div.btn-link-warning.btn-xs,
button.btn-link-warning.btn-xs {
  line-height: 18px; }

a.btn-link-warning.btn-sm,
div.btn-link-warning.btn-sm,
button.btn-link-warning.btn-sm {
  line-height: 26px; }

a.btn-link-warning.btn-md,
div.btn-link-warning.btn-md,
button.btn-link-warning.btn-md {
  line-height: 34px; }

a.btn-link-warning.btn-lg,
div.btn-link-warning.btn-lg,
button.btn-link-warning.btn-lg {
  line-height: 42px; }

a.btn-link-warning:focus,
div.btn-link-warning:focus,
button.btn-link-warning:focus {
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #7A65F2; }

a.btn-link-warning:hover,
div.btn-link-warning:hover,
button.btn-link-warning:hover {
  background-color: transparent;
  border-color: #434453;
  color: #9394FF; }

a.btn-link-warning.active,
a.btn-link-warning.active:hover,
a.btn-link-warning:active,
a.btn-link-warning:active:hover,
.open a.btn-link-warning.dropdown-toggle,
div.btn-link-warning.active,
div.btn-link-warning.active:hover,
div.btn-link-warning:active,
div.btn-link-warning:active:hover,
.open
div.btn-link-warning.dropdown-toggle,
button.btn-link-warning.active,
button.btn-link-warning.active:hover,
button.btn-link-warning:active,
button.btn-link-warning:active:hover,
.open
button.btn-link-warning.dropdown-toggle {
  box-shadow: none;
  background-color: transparent;
  border-color: #9394FF;
  color: #9394FF; }

a.btn-link-warning.disabled,
a.btn-link-warning[disabled],
fieldset[disabled] a.btn-link-warning,
div.btn-link-warning.disabled,
div.btn-link-warning[disabled],
fieldset[disabled]
div.btn-link-warning,
button.btn-link-warning.disabled,
button.btn-link-warning[disabled],
fieldset[disabled]
button.btn-link-warning {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  box-shadow: none;
  font-style: italic; }

a.btn-link-warning.disabled:hover,
a.btn-link-warning.disabled:active,
a.btn-link-warning.disabled:focus,
a.btn-link-warning.disabled.active,
a.btn-link-warning.disabled:active:focus,
a.btn-link-warning[disabled]:hover,
a.btn-link-warning[disabled]:active,
a.btn-link-warning[disabled]:focus,
a.btn-link-warning[disabled].active,
a.btn-link-warning[disabled]:active:focus,
fieldset[disabled] a.btn-link-warning:hover,
fieldset[disabled] a.btn-link-warning:active,
fieldset[disabled] a.btn-link-warning:focus,
fieldset[disabled] a.btn-link-warning.active,
fieldset[disabled] a.btn-link-warning:active:focus,
div.btn-link-warning.disabled:hover,
div.btn-link-warning.disabled:active,
div.btn-link-warning.disabled:focus,
div.btn-link-warning.disabled.active,
div.btn-link-warning.disabled:active:focus,
div.btn-link-warning[disabled]:hover,
div.btn-link-warning[disabled]:active,
div.btn-link-warning[disabled]:focus,
div.btn-link-warning[disabled].active,
div.btn-link-warning[disabled]:active:focus,
fieldset[disabled]
div.btn-link-warning:hover,
fieldset[disabled]
div.btn-link-warning:active,
fieldset[disabled]
div.btn-link-warning:focus,
fieldset[disabled]
div.btn-link-warning.active,
fieldset[disabled]
div.btn-link-warning:active:focus,
button.btn-link-warning.disabled:hover,
button.btn-link-warning.disabled:active,
button.btn-link-warning.disabled:focus,
button.btn-link-warning.disabled.active,
button.btn-link-warning.disabled:active:focus,
button.btn-link-warning[disabled]:hover,
button.btn-link-warning[disabled]:active,
button.btn-link-warning[disabled]:focus,
button.btn-link-warning[disabled].active,
button.btn-link-warning[disabled]:active:focus,
fieldset[disabled]
button.btn-link-warning:hover,
fieldset[disabled]
button.btn-link-warning:active,
fieldset[disabled]
button.btn-link-warning:focus,
fieldset[disabled]
button.btn-link-warning.active,
fieldset[disabled]
button.btn-link-warning:active:focus {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-link-warning.disabled:after,
a.btn-link-warning[disabled]:after,
fieldset[disabled] a.btn-link-warning:after,
div.btn-link-warning.disabled:after,
div.btn-link-warning[disabled]:after,
fieldset[disabled]
div.btn-link-warning:after,
button.btn-link-warning.disabled:after,
button.btn-link-warning[disabled]:after,
fieldset[disabled]
button.btn-link-warning:after {
  display: none; }

a.btn-link-danger,
div.btn-link-danger,
button.btn-link-danger {
  line-height: 34px;
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #F95F53; }

a.btn-link-danger.btn-xs,
div.btn-link-danger.btn-xs,
button.btn-link-danger.btn-xs {
  line-height: 18px; }

a.btn-link-danger.btn-sm,
div.btn-link-danger.btn-sm,
button.btn-link-danger.btn-sm {
  line-height: 26px; }

a.btn-link-danger.btn-md,
div.btn-link-danger.btn-md,
button.btn-link-danger.btn-md {
  line-height: 34px; }

a.btn-link-danger.btn-lg,
div.btn-link-danger.btn-lg,
button.btn-link-danger.btn-lg {
  line-height: 42px; }

a.btn-link-danger:focus,
div.btn-link-danger:focus,
button.btn-link-danger:focus {
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #F95F53; }

a.btn-link-danger:hover,
div.btn-link-danger:hover,
button.btn-link-danger:hover {
  background-color: transparent;
  border-color: #434453;
  color: #FF8564; }

a.btn-link-danger.active,
a.btn-link-danger.active:hover,
a.btn-link-danger:active,
a.btn-link-danger:active:hover,
.open a.btn-link-danger.dropdown-toggle,
div.btn-link-danger.active,
div.btn-link-danger.active:hover,
div.btn-link-danger:active,
div.btn-link-danger:active:hover,
.open
div.btn-link-danger.dropdown-toggle,
button.btn-link-danger.active,
button.btn-link-danger.active:hover,
button.btn-link-danger:active,
button.btn-link-danger:active:hover,
.open
button.btn-link-danger.dropdown-toggle {
  box-shadow: none;
  background-color: transparent;
  border-color: #FF8564;
  color: #FF8564; }

a.btn-link-danger.disabled,
a.btn-link-danger[disabled],
fieldset[disabled] a.btn-link-danger,
div.btn-link-danger.disabled,
div.btn-link-danger[disabled],
fieldset[disabled]
div.btn-link-danger,
button.btn-link-danger.disabled,
button.btn-link-danger[disabled],
fieldset[disabled]
button.btn-link-danger {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  box-shadow: none;
  font-style: italic; }

a.btn-link-danger.disabled:hover,
a.btn-link-danger.disabled:active,
a.btn-link-danger.disabled:focus,
a.btn-link-danger.disabled.active,
a.btn-link-danger.disabled:active:focus,
a.btn-link-danger[disabled]:hover,
a.btn-link-danger[disabled]:active,
a.btn-link-danger[disabled]:focus,
a.btn-link-danger[disabled].active,
a.btn-link-danger[disabled]:active:focus,
fieldset[disabled] a.btn-link-danger:hover,
fieldset[disabled] a.btn-link-danger:active,
fieldset[disabled] a.btn-link-danger:focus,
fieldset[disabled] a.btn-link-danger.active,
fieldset[disabled] a.btn-link-danger:active:focus,
div.btn-link-danger.disabled:hover,
div.btn-link-danger.disabled:active,
div.btn-link-danger.disabled:focus,
div.btn-link-danger.disabled.active,
div.btn-link-danger.disabled:active:focus,
div.btn-link-danger[disabled]:hover,
div.btn-link-danger[disabled]:active,
div.btn-link-danger[disabled]:focus,
div.btn-link-danger[disabled].active,
div.btn-link-danger[disabled]:active:focus,
fieldset[disabled]
div.btn-link-danger:hover,
fieldset[disabled]
div.btn-link-danger:active,
fieldset[disabled]
div.btn-link-danger:focus,
fieldset[disabled]
div.btn-link-danger.active,
fieldset[disabled]
div.btn-link-danger:active:focus,
button.btn-link-danger.disabled:hover,
button.btn-link-danger.disabled:active,
button.btn-link-danger.disabled:focus,
button.btn-link-danger.disabled.active,
button.btn-link-danger.disabled:active:focus,
button.btn-link-danger[disabled]:hover,
button.btn-link-danger[disabled]:active,
button.btn-link-danger[disabled]:focus,
button.btn-link-danger[disabled].active,
button.btn-link-danger[disabled]:active:focus,
fieldset[disabled]
button.btn-link-danger:hover,
fieldset[disabled]
button.btn-link-danger:active,
fieldset[disabled]
button.btn-link-danger:focus,
fieldset[disabled]
button.btn-link-danger.active,
fieldset[disabled]
button.btn-link-danger:active:focus {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-link-danger.disabled:after,
a.btn-link-danger[disabled]:after,
fieldset[disabled] a.btn-link-danger:after,
div.btn-link-danger.disabled:after,
div.btn-link-danger[disabled]:after,
fieldset[disabled]
div.btn-link-danger:after,
button.btn-link-danger.disabled:after,
button.btn-link-danger[disabled]:after,
fieldset[disabled]
button.btn-link-danger:after {
  display: none; }

a.btn-link-alert,
div.btn-link-alert,
button.btn-link-alert {
  line-height: 34px;
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #FFB94A; }

a.btn-link-alert.btn-xs,
div.btn-link-alert.btn-xs,
button.btn-link-alert.btn-xs {
  line-height: 18px; }

a.btn-link-alert.btn-sm,
div.btn-link-alert.btn-sm,
button.btn-link-alert.btn-sm {
  line-height: 26px; }

a.btn-link-alert.btn-md,
div.btn-link-alert.btn-md,
button.btn-link-alert.btn-md {
  line-height: 34px; }

a.btn-link-alert.btn-lg,
div.btn-link-alert.btn-lg,
button.btn-link-alert.btn-lg {
  line-height: 42px; }

a.btn-link-alert:focus,
div.btn-link-alert:focus,
button.btn-link-alert:focus {
  border-width: 2px;
  background-color: transparent;
  border-color: #383846;
  color: #FFB94A; }

a.btn-link-alert:hover,
div.btn-link-alert:hover,
button.btn-link-alert:hover {
  background-color: transparent;
  border-color: #434453;
  color: #FFD255; }

a.btn-link-alert.active,
a.btn-link-alert.active:hover,
a.btn-link-alert:active,
a.btn-link-alert:active:hover,
.open a.btn-link-alert.dropdown-toggle,
div.btn-link-alert.active,
div.btn-link-alert.active:hover,
div.btn-link-alert:active,
div.btn-link-alert:active:hover,
.open
div.btn-link-alert.dropdown-toggle,
button.btn-link-alert.active,
button.btn-link-alert.active:hover,
button.btn-link-alert:active,
button.btn-link-alert:active:hover,
.open
button.btn-link-alert.dropdown-toggle {
  box-shadow: none;
  background-color: transparent;
  border-color: #FFD255;
  color: #FFD255; }

a.btn-link-alert.disabled,
a.btn-link-alert[disabled],
fieldset[disabled] a.btn-link-alert,
div.btn-link-alert.disabled,
div.btn-link-alert[disabled],
fieldset[disabled]
div.btn-link-alert,
button.btn-link-alert.disabled,
button.btn-link-alert[disabled],
fieldset[disabled]
button.btn-link-alert {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  box-shadow: none;
  font-style: italic; }

a.btn-link-alert.disabled:hover,
a.btn-link-alert.disabled:active,
a.btn-link-alert.disabled:focus,
a.btn-link-alert.disabled.active,
a.btn-link-alert.disabled:active:focus,
a.btn-link-alert[disabled]:hover,
a.btn-link-alert[disabled]:active,
a.btn-link-alert[disabled]:focus,
a.btn-link-alert[disabled].active,
a.btn-link-alert[disabled]:active:focus,
fieldset[disabled] a.btn-link-alert:hover,
fieldset[disabled] a.btn-link-alert:active,
fieldset[disabled] a.btn-link-alert:focus,
fieldset[disabled] a.btn-link-alert.active,
fieldset[disabled] a.btn-link-alert:active:focus,
div.btn-link-alert.disabled:hover,
div.btn-link-alert.disabled:active,
div.btn-link-alert.disabled:focus,
div.btn-link-alert.disabled.active,
div.btn-link-alert.disabled:active:focus,
div.btn-link-alert[disabled]:hover,
div.btn-link-alert[disabled]:active,
div.btn-link-alert[disabled]:focus,
div.btn-link-alert[disabled].active,
div.btn-link-alert[disabled]:active:focus,
fieldset[disabled]
div.btn-link-alert:hover,
fieldset[disabled]
div.btn-link-alert:active,
fieldset[disabled]
div.btn-link-alert:focus,
fieldset[disabled]
div.btn-link-alert.active,
fieldset[disabled]
div.btn-link-alert:active:focus,
button.btn-link-alert.disabled:hover,
button.btn-link-alert.disabled:active,
button.btn-link-alert.disabled:focus,
button.btn-link-alert.disabled.active,
button.btn-link-alert.disabled:active:focus,
button.btn-link-alert[disabled]:hover,
button.btn-link-alert[disabled]:active,
button.btn-link-alert[disabled]:focus,
button.btn-link-alert[disabled].active,
button.btn-link-alert[disabled]:active:focus,
fieldset[disabled]
button.btn-link-alert:hover,
fieldset[disabled]
button.btn-link-alert:active,
fieldset[disabled]
button.btn-link-alert:focus,
fieldset[disabled]
button.btn-link-alert.active,
fieldset[disabled]
button.btn-link-alert:active:focus {
  opacity: 1;
  background-color: transparent;
  border-color: #383846;
  color: #545667;
  cursor: not-allowed;
  box-shadow: none; }

a.btn-link-alert.disabled:after,
a.btn-link-alert[disabled]:after,
fieldset[disabled] a.btn-link-alert:after,
div.btn-link-alert.disabled:after,
div.btn-link-alert[disabled]:after,
fieldset[disabled]
div.btn-link-alert:after,
button.btn-link-alert.disabled:after,
button.btn-link-alert[disabled]:after,
fieldset[disabled]
button.btn-link-alert:after {
  display: none; }

/*
   Tables
   -----------------------------------------------------------------------------
*/
.table {
  width: 100%;
  max-width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  margin: 0; }

.table th,
.table td {
  font-size: 13px;
  text-align: left; }

.table th.monotype,
.table td.monotype {
  font-family: "RobotoMono", monospace;
  letter-spacing: 0; }

.table th.text-left,
.table td.text-left {
  text-align: left; }

.table th.text-center,
.table td.text-center {
  text-align: center; }

.table th.text-right,
.table td.text-right {
  text-align: right; }

.table > thead > tr > th,
.table > thead > tr > td {
  color: #eeeff2;
  font-weight: 600;
  padding: 8px;
  border: 0;
  border-bottom: 2px solid #383846; }

.table > tbody > tr > td {
  text-align: left;
  color: #bec2cc;
  font-weight: 500;
  padding: 4px 8px;
  border: 0; }

.table.v-center td,
.table.v-center td > * {
  vertical-align: middle; }

.table.table-bordered {
  border: 2px solid #383846; }

.table.table-bordered > thead > tr > th,
.table.table-bordered > thead > tr > td,
.table.table-bordered > tbody > tr > th,
.table.table-bordered > tbody > tr > td {
  border: 2px solid #383846; }

.table.table-striped > tbody > tr:nth-child(odd) {
  background-color: #31313d; }

.table.table-striped > tbody > tr:nth-child(even) {
  background-color: transparent; }

.table.table-highlight > tbody > tr:hover {
  background-color: #31313d; }

.table > tbody > tr .table--show-on-row-hover {
  visibility: hidden; }

.table > tbody > tr:hover .table--show-on-row-hover,
.table > tbody > tr .table--show-on-row-hover.active {
  visibility: visible; }

.table-dot {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #eeeff2; }

.table-dot.dot-success {
  background-color: #4ED8A0; }

.table-dot.dot-primary {
  background-color: #22ADF6; }

.table-dot.dot-warning {
  background-color: #FFB94A; }

.table-dot.dot-danger {
  background-color: #FF8564; }

.table-dot.dot-critical {
  background-color: #DC4E58; }

.table th .btn,
.table td .btn {
  display: inline-block; }

/*
   Dropdowns
   -----------------------------------------------------------------------------
*/
.dropdown {
  display: inline-block;
  position: relative;
  width: auto; }

.dropdown .dropdown-toggle {
  width: 120px; }

.dropdown-80 .dropdown-toggle {
  width: 80px; }

.dropdown-90 .dropdown-toggle {
  width: 90px; }

.dropdown-100 .dropdown-toggle {
  width: 100px; }

.dropdown-110 .dropdown-toggle {
  width: 110px; }

.dropdown-120 .dropdown-toggle {
  width: 120px; }

.dropdown-130 .dropdown-toggle {
  width: 130px; }

.dropdown-140 .dropdown-toggle {
  width: 140px; }

.dropdown-150 .dropdown-toggle {
  width: 150px; }

.dropdown-160 .dropdown-toggle {
  width: 160px; }

.dropdown-170 .dropdown-toggle {
  width: 170px; }

.dropdown-180 .dropdown-toggle {
  width: 180px; }

.dropdown-190 .dropdown-toggle {
  width: 190px; }

.dropdown-200 .dropdown-toggle {
  width: 200px; }

.dropdown-210 .dropdown-toggle {
  width: 210px; }

.dropdown-220 .dropdown-toggle {
  width: 220px; }

.dropdown-230 .dropdown-toggle {
  width: 230px; }

.dropdown-240 .dropdown-toggle {
  width: 240px; }

.dropdown-250 .dropdown-toggle {
  width: 250px; }

.dropdown-260 .dropdown-toggle {
  width: 260px; }

.dropdown-270 .dropdown-toggle {
  width: 270px; }

.dropdown-280 .dropdown-toggle {
  width: 280px; }

.dropdown-290 .dropdown-toggle {
  width: 290px; }

.dropdown-300 .dropdown-toggle {
  width: 300px; }

.dropdown-310 .dropdown-toggle {
  width: 310px; }

.dropdown-320 .dropdown-toggle {
  width: 320px; }

.dropdown-330 .dropdown-toggle {
  width: 330px; }

.dropdown-340 .dropdown-toggle {
  width: 340px; }

.dropdown:focus,
.dropdown.open,
.dropdown.open:focus {
  outline: none; }

.dropdown:focus > .btn.dropdown-toggle,
.dropdown:focus > .btn.dropdown-toggle:hover,
.dropdown:focus > .btn.dropdown-toggle:hover:active,
.dropdown:focus > .btn.dropdown-toggle.active,
.dropdown:focus > .btn.dropdown-toggle.active:active,
.dropdown:focus > .btn.dropdown-toggle.active:active:hover,
.dropdown.open > .btn.dropdown-toggle,
.dropdown.open > .btn.dropdown-toggle:hover,
.dropdown.open > .btn.dropdown-toggle:hover:active,
.dropdown.open > .btn.dropdown-toggle.active,
.dropdown.open > .btn.dropdown-toggle.active:active,
.dropdown.open > .btn.dropdown-toggle.active:active:hover,
.dropdown.open:focus > .btn.dropdown-toggle,
.dropdown.open:focus > .btn.dropdown-toggle:hover,
.dropdown.open:focus > .btn.dropdown-toggle:hover:active,
.dropdown.open:focus > .btn.dropdown-toggle.active,
.dropdown.open:focus > .btn.dropdown-toggle.active:active,
.dropdown.open:focus > .btn.dropdown-toggle.active:active:hover {
  box-shadow: 0 0 5px 3px #22ADF6; }

.dropdown > .dropdown-toggle {
  position: relative;
  text-align: left;
  display: flex;
  align-items: center; }

.dropdown > .dropdown-toggle .caret {
  right: 14px; }

.dropdown > .dropdown-toggle > .icon {
  display: inline-block;
  vertical-align: middle;
  margin-right: 6px; }

.dropdown > .dropdown-toggle .dropdown-selected {
  display: inline-block;
  flex: 1 0 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 14px; }

.dropdown > .dropdown-toggle.btn-xs .caret {
  right: 7px; }

.dropdown > .dropdown-toggle.btn-xs .dropdown-selected {
  padding-right: 7px; }

.dropdown > .dropdown-toggle.btn-sm .caret {
  right: 11px; }

.dropdown > .dropdown-toggle.btn-sm .dropdown-selected {
  padding-right: 11px; }

.dropdown > .dropdown-toggle.btn-md .caret {
  right: 14px; }

.dropdown > .dropdown-toggle.btn-md .dropdown-selected {
  padding-right: 14px; }

.dropdown > .dropdown-toggle.btn-lg .caret {
  right: 17px; }

.dropdown > .dropdown-toggle.btn-lg .dropdown-selected {
  padding-right: 17px; }

.dropdown-autocomplete {
  position: relative;
  padding: 0 !important; }

.dropdown-autocomplete.btn-xs {
  height: 22px; }

.dropdown-autocomplete.btn-sm {
  height: 30px; }

.dropdown-autocomplete.btn-md {
  height: 38px; }

.dropdown-autocomplete.btn-lg {
  height: 46px; }

.dropdown-autocomplete--input {
  position: absolute;
  width: 100%;
  height: 100%;
  outline: none;
  background-color: transparent;
  border: 0;
  color: #ffffff;
  padding: 0;
  font-weight: 500; }

.btn-xs .dropdown-autocomplete--input {
  padding: 0 14px 0 7px;
  font-size: 13px; }

.btn-sm .dropdown-autocomplete--input {
  padding: 0 22px 0 11px;
  font-size: 13px; }

.btn-md .dropdown-autocomplete--input {
  padding: 0 28px 0 14px;
  font-size: 15px; }

.btn-lg .dropdown-autocomplete--input {
  padding: 0 34px 0 17px;
  font-size: 17px; }

.dropdown-autocomplete--input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
  font-weight: 500 !important; }

.dropdown-autocomplete--input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
  font-weight: 500 !important; }

.dropdown-autocomplete--input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
  font-weight: 500 !important; }

.dropdown-autocomplete--input:-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
  font-weight: 500 !important; }

.dropdown-autocomplete--input:focus {
  color: #ffffff; }

.dropdown-empty {
  padding: 7px 9px;
  font-size: 13px;
  line-height: 13px;
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500; }

.dropdown .dropdown-menu {
  min-width: 100%;
  box-shadow: 0 2px 5px 0.6px rgba(15, 14, 21, 0.2);
  border-radius: 4px;
  padding: 0;
  margin: 0;
  border: 0;
  background: #4591ED;
  background: -moz-linear-gradient(left, #4591ED 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #4591ED 0%, #22ADF6 100%);
  background: linear-gradient(to right, #4591ED 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  overflow: hidden;
  display: none;
  position: absolute;
  top: 100%; }

.dropdown.open {
  z-index: 9999; }

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

.dropdown-menu li.dropdown-item {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0; }

.dropdown-menu li.dropdown-item:hover,
.dropdown-menu li.dropdown-item.highlight,
.dropdown-menu li.dropdown-item.highlight:hover {
  background: #00C9FF;
  background: -moz-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: linear-gradient(to right, #00C9FF 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown-menu li.dropdown-item > a {
  font-size: 13px;
  line-height: 13px;
  transition: color 0.25s ease;
  color: #F0FCFF;
  font-weight: 500;
  padding: 7px 9px;
  outline: none;
  overflow: hidden;
  text-overflow: ellipsis; }

.dropdown-menu li.dropdown-item > a,
.dropdown-menu li.dropdown-item > a:hover,
.dropdown-menu li.dropdown-item > a:focus {
  background: none;
  background-color: transparent; }

.dropdown-menu li.dropdown-item > a:hover {
  color: #ffffff; }

.dropdown-menu li.dropdown-item > a.active,
.dropdown-menu li.dropdown-item > a.active:hover,
.dropdown-menu li.dropdown-item > a:active,
.dropdown-menu li.dropdown-item > a:active:hover,
.dropdown-menu li.dropdown-item > a:focus:active,
.dropdown-menu li.dropdown-item > a:focus:active:hover {
  background: #326BBA;
  background: -moz-linear-gradient(left, #326BBA 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #326BBA 0%, #22ADF6 100%);
  background: linear-gradient(to right, #326BBA 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.dropdown-menu li.dropdown-item.active {
  background: #326BBA;
  background: -moz-linear-gradient(left, #326BBA 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #326BBA 0%, #22ADF6 100%);
  background: linear-gradient(to right, #326BBA 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.dropdown-menu .dropdown-sub-item {
  display: inline-block;
  font-size: 12px;
  line-height: 12px;
  opacity: 0.66;
  margin-top: 4px;
  white-space: pre-wrap; }

.dropdown-menu .dropdown-sub-item.dropdown-sub-item--success {
  opacity: 1;
  color: #A5F3B4; }

.dropdown-menu .dropdown-sub-item span.icon {
  margin-right: 3px; }

.dropdown .dropdown-menu .dropdown-actions {
  position: absolute;
  top: 50%;
  right: 4px;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 2;
  opacity: 0; }

.dropdown .dropdown-menu li.dropdown-item:hover .dropdown-actions {
  opacity: 1; }

.dropdown .dropdown-menu .dropdown-action {
  width: 20px;
  height: 27px;
  border: 0;
  background-color: transparent;
  outline: none;
  color: #326BBA;
  transition: color 0.25s ease;
  text-align: center;
  padding: 0;
  margin: 0;
  line-height: 27px; }

.dropdown .dropdown-menu .dropdown-action:hover {
  cursor: pointer;
  color: #ffffff; }

.dropdown .dropdown-menu li.dropdown-header {
  font-size: 13px;
  line-height: 13px;
  background-color: #22ADF6;
  color: #326BBA;
  font-weight: 600;
  padding: 7px 9px;
  margin: 0; }

.dropdown .dropdown-menu li.dropdown-divider {
  width: 100%;
  margin: 0;
  background-color: #22ADF6;
  height: 2px; }

/*
    Dropdown Menu (only js highlighting, works with autocomplete feature)
    ----------------------------------------------------------------------------
*/
.dropdown .dropdown-menu.dropdown-menu--no-highlight li.dropdown-item:hover {
  background: none;
  background-color: transparent; }

.dropdown .dropdown-menu.dropdown-menu--no-highlight li.dropdown-item.highlight,
.dropdown .dropdown-menu.dropdown-menu--no-highlight li.dropdown-item.highlight:hover {
  background: #00C9FF;
  background: -moz-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: linear-gradient(to right, #00C9FF 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

/*
    Multi-Select Dropdowns
    ----------------------------------------------------------------------------
*/
.multi-select--item,
.multi-select--apply {
  padding: 7px 9px;
  margin: 0; }

.multi-select--checkbox {
  width: 14px;
  height: 14px;
  border-radius: 3px;
  margin-right: 7px;
  background-color: #326BBA;
  position: relative; }

.multi-select--checkbox:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(2, 2);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #ffffff;
  opacity: 0;
  transition: transform 0.25s ease, opacity 0.25s ease; }

.multi-select--item {
  color: #BEF0FF;
  font-size: 13px;
  line-height: 13px;
  transition: color 0.25s ease;
  font-weight: 600;
  display: flex;
  align-items: center; }

.multi-select--item > span {
  width: calc(100% - 21px);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }

.multi-select--item:hover {
  background: #00C9FF;
  background: -moz-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: linear-gradient(to right, #00C9FF 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff;
  cursor: pointer; }

.multi-select--item.checked {
  color: #ffffff; }

.multi-select--item.checked .multi-select--checkbox:after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1, 1); }

.multi-select--apply .btn {
  width: 100%; }

/*
  Kapacitor Theme Dropdowns
*/
.dropdown .dropdown-menu.dropdown-malachite {
  background: #32B08C;
  background: -moz-linear-gradient(left, #32B08C 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #32B08C 0%, #22ADF6 100%);
  background: linear-gradient(to right, #32B08C 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item:hover,
.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item.highlight,
.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item.highlight:hover {
  background: #7CE490;
  background: -moz-linear-gradient(left, #7CE490 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #7CE490 0%, #22ADF6 100%);
  background: linear-gradient(to right, #7CE490 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item > a {
  color: #F2FFF4; }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item > a:hover {
  color: #ffffff; }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item > a.active,
.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item > a.active:hover,
.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item > a:active,
.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item > a:active:hover,
.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item > a:focus:active,
.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item > a:focus:active:hover {
  background: #108174;
  background: -moz-linear-gradient(left, #108174 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #108174 0%, #22ADF6 100%);
  background: linear-gradient(to right, #108174 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item .dropdown-action {
  color: #326BBA; }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item .dropdown-action:hover {
  color: #ffffff; }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-item.active {
  background: #108174;
  background: -moz-linear-gradient(left, #108174 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #108174 0%, #22ADF6 100%);
  background: linear-gradient(to right, #108174 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-divider {
  background: #108174;
  background: -moz-linear-gradient(left, #108174 0%, #4591ED 100%);
  background: -webkit-linear-gradient(left, #108174 0%, #4591ED 100%);
  background: linear-gradient(to right, #108174 0%, #4591ED 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown .dropdown-menu.dropdown-malachite li.dropdown-header {
  background: #108174;
  background: -moz-linear-gradient(left, #108174 0%, #4591ED 100%);
  background: -webkit-linear-gradient(left, #108174 0%, #4591ED 100%);
  background: linear-gradient(to right, #108174 0%, #4591ED 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #C6FFD0; }

.dropdown .dropdown-menu.dropdown-malachite.dropdown-menu--no-highlight li.dropdown-item.highlight,
.dropdown .dropdown-menu.dropdown-malachite.dropdown-menu--no-highlight li.dropdown-item.highlight:hover {
  background: #7CE490;
  background: -moz-linear-gradient(left, #7CE490 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #7CE490 0%, #22ADF6 100%);
  background: linear-gradient(to right, #7CE490 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

/*
  Purple Theme Dropdowns
*/
.dropdown .dropdown-menu.dropdown-astronaut {
  background: #7A65F2;
  background: -moz-linear-gradient(left, #7A65F2 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #7A65F2 0%, #22ADF6 100%);
  background: linear-gradient(to right, #7A65F2 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item:hover,
.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item.highlight,
.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item.highlight:hover {
  background: #9394FF;
  background: -moz-linear-gradient(left, #9394FF 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #9394FF 0%, #22ADF6 100%);
  background: linear-gradient(to right, #9394FF 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item > a {
  color: #F2F4FF; }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item > a:hover {
  color: #ffffff; }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item > a.active,
.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item > a.active:hover,
.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item > a:active,
.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item > a:active:hover,
.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item > a:focus:active,
.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item > a:focus:active:hover {
  background: #513CC6;
  background: -moz-linear-gradient(left, #513CC6 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #513CC6 0%, #22ADF6 100%);
  background: linear-gradient(to right, #513CC6 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item.active {
  background: #513CC6;
  background: -moz-linear-gradient(left, #513CC6 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #513CC6 0%, #22ADF6 100%);
  background: linear-gradient(to right, #513CC6 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item .dropdown-action {
  color: #513CC6; }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-item .dropdown-action:hover {
  color: #ffffff; }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-divider {
  background: #513CC6;
  background: -moz-linear-gradient(left, #513CC6 0%, #4591ED 100%);
  background: -webkit-linear-gradient(left, #513CC6 0%, #4591ED 100%);
  background: linear-gradient(to right, #513CC6 0%, #4591ED 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.dropdown .dropdown-menu.dropdown-astronaut li.dropdown-header {
  background: #513CC6;
  background: -moz-linear-gradient(left, #513CC6 0%, #4591ED 100%);
  background: -webkit-linear-gradient(left, #513CC6 0%, #4591ED 100%);
  background: linear-gradient(to right, #513CC6 0%, #4591ED 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #B1B6FF; }

.dropdown .dropdown-menu.dropdown-astronaut.dropdown-menu--no-highlight li.dropdown-item.highlight,
.dropdown .dropdown-menu.dropdown-astronaut.dropdown-menu--no-highlight li.dropdown-item.highlight:hover {
  background: #9394FF;
  background: -moz-linear-gradient(left, #9394FF 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #9394FF 0%, #22ADF6 100%);
  background: linear-gradient(to right, #9394FF 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

/*
  Form Elements
   -----------------------------------------------------------------------------
*/
.form-control {
  width: 100%;
  border: 2px solid #383846;
  border-radius: 4px;
  color: #d4d7dd;
  letter-spacing: 0px;
  background-color: #202028;
  font-weight: 600;
  box-shadow: none;
  outline: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  transition: color 0.25s ease, background-color 0.25s ease, border-color 0.4s ease, box-shadow 0.4s ease; }

.form-control:hover {
  border-color: #434453; }

.form-control:focus {
  border-color: #22ADF6;
  color: #ffffff;
  box-shadow: 0 0 6px 0 #22ADF6;
  background-color: #202028; }

.form-control[disabled],
.form-control[disabled]:hover,
.form-control[readonly],
.form-control[readonly]:hover,
fieldset[disabled] .form-control,
fieldset[disabled] .form-control:hover,
.form-control.disabled,
.form-control.disabled:hover {
  border-color: #383846;
  background-color: #292933 !important;
  color: #757888 !important; }

.has-error .form-control,
.has-success .form-control,
.has-warning .form-control {
  box-shadow: none;
  transition: color 0.25s ease, background-color 0.25s ease, border-color 0.4s ease, box-shadow 0.4s ease; }

.has-error .form-control:focus,
.has-success .form-control:focus,
.has-warning .form-control:focus {
  background-color: #202028; }

.has-success .form-control {
  border-color: #4ED8A0; }

.has-success .form-control:focus {
  border-color: #7CE490;
  box-shadow: 0 0 8px #4ED8A0; }

.has-success .form-control::selection {
  background-color: #4ED8A0; }

.has-success .form-control::-moz-selection {
  background-color: #4ED8A0; }

.has-error .form-control {
  background-color: #202028;
  border-color: #F95F53; }

.has-error .form-control:focus {
  background-color: #2F1F29;
  border-color: #FF8564;
  box-shadow: 0 0 8px #DC4E58; }

.has-error .form-control::selection {
  background-color: #FF8564; }

.has-error .form-control::-moz-selection {
  background-color: #FF8564; }

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

.has-warning .form-control:focus {
  border-color: #9394FF;
  box-shadow: 0 0 8px #7A65F2; }

.has-warning .form-control::selection {
  background-color: #9394FF; }

.has-warning .form-control::-moz-selection {
  background-color: #9394FF; }

.form-control::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
  color: #757888;
  font-weight: 600 !important;
  font-style: italic; }

.form-control::-moz-placeholder,
textarea::-moz-placeholder,
input::-moz-placeholder {
  color: #757888;
  font-weight: 600 !important;
  font-style: italic; }

.form-control:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input:-ms-input-placeholder {
  color: #757888;
  font-weight: 600 !important;
  font-style: italic; }

.form-control:-moz-placeholder,
textarea:-moz-placeholder,
input:-moz-placeholder {
  color: #757888;
  font-weight: 600 !important;
  font-style: italic; }

input.form-control.input-xs {
  height: 22px;
  padding: 0 7px;
  font-size: 13px; }

input.form-control.input-sm {
  height: 30px;
  padding: 0 11px;
  font-size: 13px; }

input.form-control,
input.form-control.input-md {
  height: 38px;
  padding: 0 14px;
  font-size: 15px; }

input.form-control.input-lg {
  height: 46px;
  padding: 0 17px;
  font-size: 17px; }

textarea.form-control.input-xs {
  padding: 7px;
  font-size: 13px; }

textarea.form-control.input-sm {
  padding: 11px;
  font-size: 13px; }

textarea.form-control,
textarea.form-control.input-md {
  padding: 14px;
  font-size: 15px; }

textarea.form-control.input-lg {
  padding: 17px;
  font-size: 17px; }

.input-group-addon {
  border: 2px solid #383846;
  background-color: #31313d;
  color: #8e91a1;
  font-weight: 600;
  padding-left: 13px;
  padding-right: 13px; }

.has-error .input-group-addon {
  background-color: #31313d;
  color: #FF8564;
  border-color: #F95F53; }

.has-success .input-group-addon {
  background-color: #31313d;
  color: #4ED8A0;
  border-color: #4ED8A0; }

.has-warning .input-group-addon {
  background-color: #31313d;
  color: #9394FF;
  border-color: #7A65F2; }

.form-group {
  margin-bottom: 8px; }

.form-group > .btn {
  display: inline-block; }

.form-group > label,
label.form-label {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  color: #999dab;
  margin: 0 0 4px 0;
  padding: 0 13px; }

label.form-helper {
  font-style: italic;
  line-height: 16px; }

.form-control-static {
  min-height: 38px;
  padding: 7px 9px;
  border: 2px solid #383846;
  border-radius: 4px;
  display: flex;
  align-items: center;
  flex-wrap: wrap; }

.form-control-static label {
  font-weight: 500;
  font-size: 14px; }

.form-control-static input[type="checkbox"] {
  position: relative;
  left: -9999px;
  visibility: hidden;
  width: 0;
  height: 0;
  margin: 0; }

.form-control-static input[type="checkbox"] + label {
  transition: color 0.25s ease;
  padding-left: 30px;
  position: relative;
  color: #999dab; }

.form-control-static input[type="checkbox"] + label:before {
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border-radius: 3px;
  border: 2px solid #383846;
  background-color: #202028;
  transition: border-color 0.25s ease; }

.form-control-static input[type="checkbox"] + label:after {
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translate(-50%, -50%) scale(2, 2);
  width: 8px;
  height: 8px;
  background-color: #22ADF6;
  border-radius: 50%;
  transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.25s ease;
  opacity: 0; }

.form-control-static input[type="checkbox"] + label:hover {
  color: #f6f6f8;
  cursor: pointer; }

.form-control-static input[type="checkbox"] + label:hover:before {
  border-color: #434453; }

.form-control-static input[type="checkbox"]:checked + label {
  color: #f6f6f8; }

.form-control-static input[type="checkbox"]:checked + label:after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1, 1); }

.form-control-static > .radio-item {
  width: 100%;
  margin-bottom: 6px; }

.form-control-static > .radio-item:last-child {
  margin-bottom: 0; }

.form-control-static input[type="radio"] {
  position: relative;
  left: -9999px;
  visibility: hidden;
  width: 0;
  height: 0;
  margin: 0; }

.form-control-static input[type="radio"] + label {
  transition: color 0.25s ease;
  padding-left: 30px;
  position: relative;
  color: #999dab; }

.form-control-static input[type="radio"] + label:before {
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #383846;
  background-color: #202028;
  transition: border-color 0.25s ease; }

.form-control-static input[type="radio"] + label:after {
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translate(-50%, -50%) scale(2, 2);
  width: 8px;
  height: 8px;
  background-color: #22ADF6;
  border-radius: 50%;
  transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.25s ease;
  opacity: 0; }

.form-control-static input[type="radio"] + label:hover {
  color: #f6f6f8;
  cursor: pointer; }

.form-control-static input[type="radio"] + label:hover:before {
  border-color: #434453; }

.form-control-static input[type="radio"]:checked + label {
  color: #f6f6f8; }

.form-control-static input[type="radio"]:checked + label:after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1, 1); }

input.form-control.form-plutonium,
textarea.form-control.form-plutonium {
  color: #22ADF6; }

input.form-control.form-plutonium:focus,
textarea.form-control.form-plutonium:focus {
  color: #ffffff; }

input.form-control.form-malachite,
textarea.form-control.form-malachite {
  color: #4ED8A0; }

input.form-control.form-malachite:focus,
textarea.form-control.form-malachite:focus {
  border-color: #4ED8A0;
  color: #ffffff;
  box-shadow: 0 0 8px #4ED8A0; }

input.form-control.form-malachite::selection,
textarea.form-control.form-malachite::selection {
  background-color: #4ED8A0; }

input.form-control.form-malachite::-moz-selection,
textarea.form-control.form-malachite::-moz-selection {
  background-color: #4ED8A0; }

input.form-control.form-astronaut,
textarea.form-control.form-astronaut {
  color: #9394FF; }

input.form-control.form-astronaut:focus,
textarea.form-control.form-astronaut:focus {
  border-color: #7A65F2;
  color: #ffffff;
  box-shadow: 0 0 8px #7A65F2; }

input.form-control.form-astronaut::selection,
textarea.form-control.form-astronaut::selection {
  background-color: #9394FF; }

input.form-control.form-astronaut::-moz-selection,
textarea.form-control.form-astronaut::-moz-selection {
  background-color: #9394FF; }

input.form-control.form-volcano,
textarea.form-control.form-volcano {
  color: #FF8564; }

input.form-control.form-volcano:focus,
textarea.form-control.form-volcano:focus {
  background-color: #2F1F29;
  border-color: #FF8564;
  color: #FFF7F4;
  box-shadow: 0 0 8px #F95F53; }

input.form-control.form-volcano::selection,
textarea.form-control.form-volcano::selection {
  background-color: #F95F53; }

input.form-control.form-volcano::-moz-selection,
textarea.form-control.form-volcano::-moz-selection {
  background-color: #F95F53; }

.form-control.monotype {
  font-family: "RobotoMono", monospace; }

.dark-checkbox input {
  position: absolute;
  left: -9999px;
  visibility: hidden; }

.dark-checkbox label {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: #1c1c21;
  border-radius: 3px;
  position: relative;
  vertical-align: middle;
  margin: 0;
  transition: background-color 0.25s ease; }

.dark-checkbox label:hover {
  cursor: pointer;
  background-color: #202028; }

.dark-checkbox label:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  background-color: #22ADF6;
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(2, 2);
  opacity: 0;
  z-index: 3;
  transition: opacity 0.25s ease, transform 0.25s ease; }

.dark-checkbox input:checked + label:after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1, 1); }

.dark-radio input {
  position: absolute;
  left: -9999px;
  visibility: hidden; }

.dark-radio label {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: #1c1c21;
  border-radius: 50%;
  position: relative;
  vertical-align: middle;
  margin: 0;
  transition: background-color 0.25s ease; }

.dark-radio label:hover {
  cursor: pointer;
  background-color: #202028; }

.dark-radio label:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  background-color: #22ADF6;
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(2, 2);
  opacity: 0;
  z-index: 3;
  transition: opacity 0.25s ease, transform 0.25s ease; }

.dark-radio input:checked + label:after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1, 1); }

/*
   Notifications
   -----------------------------------------------------------------------------
*/
.notification-center,
.notification-center__presentation-mode {
  position: fixed;
  right: 12px;
  width: 360px;
  top: 72px;
  z-index: 9999; }

.notification-center__presentation-mode {
  top: 12px; }

.notification {
  border-style: solid;
  border-width: 0;
  border-radius: 4px;
  position: relative;
  padding: 12px 40px;
  transform: translateX(105%);
  transition: transform 0.25s ease 0.25s, opacity 0.25s ease; }

.notification > span.icon {
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translate(-50%, -50%);
  font-size: 21px; }

.notification-message {
  font-weight: 500;
  font-size: 14px;
  line-height: 16px; }

.notification-close {
  outline: none;
  position: absolute;
  top: 50%;
  border: 0;
  background-color: transparent;
  transform: translateY(-50%);
  right: 12px;
  font-size: 14.5px;
  width: 20px;
  height: 20px;
  opacity: 0.25;
  transition: opacity 0.25s ease; }

.notification-close:before,
.notification-close:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  border-radius: 1px;
  background-color: #ffffff; }

.notification-close:before {
  transform: translate(-50%, -50%) rotate(-45deg); }

.notification-close:after {
  transform: translate(-50%, -50%) rotate(45deg); }

.notification-close:hover {
  cursor: pointer;
  opacity: 1; }

.notification-container {
  overflow: hidden;
  height: 0;
  transition: height 0.25s ease; }

.notification-container.show .notification {
  transform: translateX(0); }

.notification-container.notification-dismissed {
  height: 0 !important; }

.notification-container.notification-dismissed .notification {
  opacity: 0; }

.notification-success {
  font-size: 16px;
  background: #4ED8A0;
  background: -moz-linear-gradient(left, #4ED8A0 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #4ED8A0 0%, #22ADF6 100%);
  background: linear-gradient(to right, #4ED8A0 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.notification-success a:link,
.notification-success a:visited {
  color: #C6FFD0;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.notification-success a:hover {
  color: #ffffff;
  border-color: #ffffff; }

.notification-success span.icon {
  color: #ffffff; }

.notification-success .notification-close:before,
.notification-success .notification-close:after {
  background-color: #ffffff; }

.notification-primary {
  font-size: 16px;
  background: #22ADF6;
  background: -moz-linear-gradient(left, #22ADF6 0%, #4591ED 100%);
  background: -webkit-linear-gradient(left, #22ADF6 0%, #4591ED 100%);
  background: linear-gradient(to right, #22ADF6 0%, #4591ED 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.notification-primary a:link,
.notification-primary a:visited {
  color: #BEF0FF;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.notification-primary a:hover {
  color: #ffffff;
  border-color: #ffffff; }

.notification-primary span.icon {
  color: #ffffff; }

.notification-primary .notification-close:before,
.notification-primary .notification-close:after {
  background-color: #ffffff; }

.notification-warning {
  font-size: 16px;
  background: #7A65F2;
  background: -moz-linear-gradient(left, #7A65F2 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #7A65F2 0%, #22ADF6 100%);
  background: linear-gradient(to right, #7A65F2 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.notification-warning a:link,
.notification-warning a:visited {
  color: #BEF0FF;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.notification-warning a:hover {
  color: #ffffff;
  border-color: #ffffff; }

.notification-warning span.icon {
  color: #ffffff; }

.notification-warning .notification-close:before,
.notification-warning .notification-close:after {
  background-color: #ffffff; }

.notification-error {
  font-size: 16px;
  background: #F95F53;
  background: -moz-linear-gradient(left, #F95F53 0%, #7A65F2 100%);
  background: -webkit-linear-gradient(left, #F95F53 0%, #7A65F2 100%);
  background: linear-gradient(to right, #F95F53 0%, #7A65F2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.notification-error a:link,
.notification-error a:visited {
  color: #FFDCCF;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.notification-error a:hover {
  color: #ffffff;
  border-color: #ffffff; }

.notification-error span.icon {
  color: #ffffff; }

.notification-error .notification-close:before,
.notification-error .notification-close:after {
  background-color: #ffffff; }

.notification-info {
  font-size: 16px;
  background: #ffffff;
  background: -moz-linear-gradient(left, #ffffff 0%, #e7e8eb 100%);
  background: -webkit-linear-gradient(left, #ffffff 0%, #e7e8eb 100%);
  background: linear-gradient(to right, #ffffff 0%, #e7e8eb 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #676978; }

.notification-info a:link,
.notification-info a:visited {
  color: #22ADF6;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.notification-info a:hover {
  color: #00C9FF;
  border-color: #00C9FF; }

.notification-info span.icon {
  color: #676978; }

.notification-info .notification-close:before,
.notification-info .notification-close:after {
  background-color: #676978; }

.notification-dark {
  font-size: 16px;
  background: #326BBA;
  background: -moz-linear-gradient(left, #326BBA 0%, #1F2039 100%);
  background: -webkit-linear-gradient(left, #326BBA 0%, #1F2039 100%);
  background: linear-gradient(to right, #326BBA 0%, #1F2039 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #C9D0FF; }

.notification-dark a:link,
.notification-dark a:visited {
  color: #22ADF6;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.notification-dark a:hover {
  color: #00C9FF;
  border-color: #00C9FF; }

.notification-dark span.icon {
  color: #C9D0FF; }

.notification-dark .notification-close:before,
.notification-dark .notification-close:after {
  background-color: #C9D0FF; }

/*
   Alerts
   -----------------------------------------------------------------------------
*/
.alert {
  border-style: solid;
  border-width: 0;
  border-radius: 4px;
  padding: 16px 16px 16px 44px;
  position: relative;
  margin-bottom: 12px; }

.alert > span.icon {
  position: absolute;
  top: 50%;
  left: 24px;
  transform: translate(-50%, -50%);
  font-size: 21px; }

.alert-message {
  font-weight: 500;
  font-size: 14px;
  line-height: 16px; }

.alert-success {
  font-size: 16px;
  background: #4ED8A0;
  background: -moz-linear-gradient(left, #4ED8A0 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #4ED8A0 0%, #22ADF6 100%);
  background: linear-gradient(to right, #4ED8A0 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.alert-success a:link,
.alert-success a:visited {
  color: #C6FFD0;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.alert-success a:hover {
  color: #ffffff;
  border-color: #ffffff; }

.alert-success span.icon {
  color: #ffffff; }

.alert-success .alert-close:before,
.alert-success .alert-close:after {
  background-color: #ffffff; }

.alert-primary {
  font-size: 16px;
  background: #22ADF6;
  background: -moz-linear-gradient(left, #22ADF6 0%, #4591ED 100%);
  background: -webkit-linear-gradient(left, #22ADF6 0%, #4591ED 100%);
  background: linear-gradient(to right, #22ADF6 0%, #4591ED 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.alert-primary a:link,
.alert-primary a:visited {
  color: #BEF0FF;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.alert-primary a:hover {
  color: #ffffff;
  border-color: #ffffff; }

.alert-primary span.icon {
  color: #ffffff; }

.alert-primary .alert-close:before,
.alert-primary .alert-close:after {
  background-color: #ffffff; }

.alert-warning {
  font-size: 16px;
  background: #7A65F2;
  background: -moz-linear-gradient(left, #7A65F2 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #7A65F2 0%, #22ADF6 100%);
  background: linear-gradient(to right, #7A65F2 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.alert-warning a:link,
.alert-warning a:visited {
  color: #BEF0FF;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.alert-warning a:hover {
  color: #ffffff;
  border-color: #ffffff; }

.alert-warning span.icon {
  color: #ffffff; }

.alert-warning .alert-close:before,
.alert-warning .alert-close:after {
  background-color: #ffffff; }

.alert-error {
  font-size: 16px;
  background: #F95F53;
  background: -moz-linear-gradient(left, #F95F53 0%, #7A65F2 100%);
  background: -webkit-linear-gradient(left, #F95F53 0%, #7A65F2 100%);
  background: linear-gradient(to right, #F95F53 0%, #7A65F2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.alert-error a:link,
.alert-error a:visited {
  color: #FFDCCF;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.alert-error a:hover {
  color: #ffffff;
  border-color: #ffffff; }

.alert-error span.icon {
  color: #ffffff; }

.alert-error .alert-close:before,
.alert-error .alert-close:after {
  background-color: #ffffff; }

.alert-info {
  font-size: 16px;
  background: #ffffff;
  background: -moz-linear-gradient(left, #ffffff 0%, #e7e8eb 100%);
  background: -webkit-linear-gradient(left, #ffffff 0%, #e7e8eb 100%);
  background: linear-gradient(to right, #ffffff 0%, #e7e8eb 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #676978; }

.alert-info a:link,
.alert-info a:visited {
  color: #22ADF6;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.alert-info a:hover {
  color: #00C9FF;
  border-color: #00C9FF; }

.alert-info span.icon {
  color: #676978; }

.alert-info .alert-close:before,
.alert-info .alert-close:after {
  background-color: #676978; }

.alert-dark {
  font-size: 16px;
  background: #326BBA;
  background: -moz-linear-gradient(left, #326BBA 0%, #1F2039 100%);
  background: -webkit-linear-gradient(left, #326BBA 0%, #1F2039 100%);
  background: linear-gradient(to right, #326BBA 0%, #1F2039 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #C9D0FF; }

.alert-dark a:link,
.alert-dark a:visited {
  color: #22ADF6;
  font-weight: 700;
  text-decoration: underline;
  transition: color 0.25s ease; }

.alert-dark a:hover {
  color: #00C9FF;
  border-color: #00C9FF; }

.alert-dark span.icon {
  color: #C9D0FF; }

.alert-dark .alert-close:before,
.alert-dark .alert-close:after {
  background-color: #C9D0FF; }

/*
   Panels
   -----------------------------------------------------------------------------
*/
.panel {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  margin-bottom: 30px; }

.panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 30px 0; }

.panel-title {
  font-weight: 400;
  font-size: 19px;
  color: #a4a8b6;
  letter-spacing: 0.015em;
  margin: 0;
  line-height: 1em; }

.panel-body {
  background-color: #292933;
  padding: 30px; }

.panel-heading + .panel-body,
.panel-body:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px; }

.panel-body:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.panel-body > *:first-child {
  margin-top: 0; }

.panel-body > *:last-child {
  margin-bottom: 0; }

.panel-footer {
  padding: 14px 30px;
  border-radius: 0 0 4px 4px;
  background: #202028;
  background: -moz-linear-gradient(top, #202028 0%, #292933 100%);
  background: -webkit-linear-gradient(top, #202028 0%, #292933 100%);
  background: linear-gradient(to bottom, #202028 0%, #292933 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 );
  color: #757888; }

.panel > .table {
  border-top: 2px; }

.panel > .table * {
  border-color: #fafafc; }

.panel-heading + .table {
  border: none; }

.panel > .table td:first-child,
.panel > .table th:first-child {
  padding-left: 30px; }

.panel > .table td:last-child,
.panel > .table th:last-child {
  padding-right: 30px; }

.panel.panel-solid {
  background-color: #292933;
  border-radius: 4px; }

.panel.panel-solid .panel-heading {
  padding: 30px; }

.panel.panel-solid .panel-body {
  background-color: transparent; }

.panel-body hr {
  margin: 16px 0; }

/*
   Radio Buttons
   -----------------------------------------------------------------------------
*/
.nav-tablist {
  display: inline-flex;
  align-items: stretch;
  margin: 0;
  padding: 0;
  width: auto;
  border: 2px solid #383846;
  background-color: #383846;
  height: 38px;
  border-radius: 4px;
  overflow: hidden; }

.nav-tablist > li {
  display: flex;
  align-items: center;
  padding: 0 14px;
  font-size: 15px;
  font-weight: 600;
  margin: 0 2px 0 0;
  background-color: #202028;
  color: #999dab;
  transition: background-color 0.25s ease, color 0.25s ease; }

.nav-tablist > li:hover {
  background-color: #31313d;
  color: #d4d7dd;
  cursor: pointer; }

.nav-tablist > li.active {
  background-color: #383846;
  color: #f6f6f8; }

.nav-tablist > li.disabled,
.nav-tablist > li.disabled:hover,
.nav-tablist > li[disabled="true"],
.nav-tablist > li[disabled="true"]:hover {
  background-color: #202028;
  font-style: italic;
  color: #545667;
  cursor: not-allowed; }

.nav-tablist > li:last-child {
  margin-right: 0; }

.nav-tablist.nav-tablist-lg {
  height: 46px; }

.nav-tablist.nav-tablist-lg > li {
  padding: 0 17px;
  font-size: 17px; }

.nav-tablist.nav-tablist-md {
  height: 38px; }

.nav-tablist.nav-tablist-md > li {
  padding: 0 14px;
  font-size: 15px; }

.nav-tablist.nav-tablist-sm {
  height: 30px; }

.nav-tablist.nav-tablist-sm > li {
  padding: 0 11px;
  font-size: 13px; }

.nav-tablist.nav-tablist-xs {
  height: 22px; }

.nav-tablist.nav-tablist-xs > li {
  padding: 0 7px;
  font-size: 13px; }

.nav-tablist.nav-tablist-malachite > li {
  background-color: #292933; }

.nav-tablist.nav-tablist-malachite > li:hover {
  background-color: #31313d; }

.nav-tablist.nav-tablist-malachite > li.active {
  background-color: #383846;
  color: #4ED8A0; }

.nav-tablist.nav-tablist-malachite > li.disabled,
.nav-tablist.nav-tablist-malachite > li.disabled:hover,
.nav-tablist.nav-tablist-malachite > li[disabled="true"],
.nav-tablist.nav-tablist-malachite > li[disabled="true"]:hover {
  background-color: #292933;
  color: #545667; }

/*
   Miscellaneous
   -----------------------------------------------------------------------------
*/
.caret {
  position: absolute;
  top: calc(50% + 1px);
  right: 14px;
  transform: translateY(-50%);
  width: 11px;
  height: 16px; }

.caret:after {
  content: "\E902";
  font-family: 'icomoon' !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: inherit;
  display: inline;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -55%);
  font-size: 11px; }

/*
   Code Styles
   -----------------------------------------------------------------------------
*/
code {
  font-weight: 500;
  background-color: #202028;
  border: 0;
  color: #22ADF6;
  font-family: "RobotoMono", monospace;
  font-size: 11px;
  line-height: 11px;
  letter-spacing: 0.02em;
  border-radius: 2px;
  padding: 2.5px 5px;
  margin: 0 1px 0 2px;
  /* Reset default tag styles */ }

code b,
code strong,
code i,
code em,
code mark,
code small,
code del,
code ins,
code sub,
code sup,
code u {
  font-size: 11px;
  font-weight: 500;
  text-decoration: none;
  font-style: normal;
  background-color: inherit;
  color: #22ADF6;
  position: static;
  top: 0;
  bottom: 0;
  padding: 0; }

code sup,
code sub {
  position: relative;
  font-size: 85%;
  margin-left: 2px;
  color: inherit; }

code sup {
  top: -4px; }

code sub {
  top: 4px; }

code b {
  color: #FF8564; }

code i {
  color: #22ADF6; }

code u {
  color: #4ED8A0; }

code.rainbow-highlighter {
  text-shadow: none;
  background-image: none; }

pre {
  font-size: 11px;
  line-height: 17px;
  background-color: #202028;
  border: 0;
  color: #22ADF6;
  white-space: normal;
  border-radius: 4px;
  position: relative;
  font-family: "RobotoMono", monospace; }

pre code {
  margin: 0;
  border: none;
  background-color: transparent;
  background-image: none;
  white-space: pre-wrap;
  word-break: normal;
  word-wrap: normal;
  border-radius: 0; }

pre::-webkit-scrollbar {
  width: 16px; }

pre::-webkit-scrollbar-button {
  background-color: #202028; }

pre::-webkit-scrollbar-track {
  background-color: #202028; }

pre::-webkit-scrollbar-track-piece {
  background-color: #202028;
  border: 3px solid #202028;
  border-radius: 8px; }

pre::-webkit-scrollbar-thumb {
  background-color: #22ADF6;
  border: 3px solid #202028;
  border-radius: 8px; }

pre::-webkit-scrollbar-corner {
  background-color: #202028; }

pre::-webkit-resizer {
  background-color: #202028; }

pre.rainbow-highlighter {
  background-image: none; }

pre.rainbow-highlighter::-webkit-scrollbar {
  width: 16px; }

pre.rainbow-highlighter::-webkit-scrollbar-button {
  background-color: #202028; }

pre.rainbow-highlighter::-webkit-scrollbar-track {
  background-color: #202028; }

pre.rainbow-highlighter::-webkit-scrollbar-track-piece {
  background-color: #202028;
  border: 3px solid #202028;
  border-radius: 8px; }

pre.rainbow-highlighter::-webkit-scrollbar-thumb {
  background-color: #22ADF6;
  border: 3px solid #202028;
  border-radius: 8px; }

pre.rainbow-highlighter::-webkit-scrollbar-corner {
  background-color: #202028; }

pre.rainbow-highlighter::-webkit-resizer {
  background-color: #202028; }

pre.rainbow-highlighter code {
  text-shadow: none; }

/* Code Highlighting */
code.rainbow-highlighter,
pre.rainbow-highlighter {
  color: #B1B6FF;
  border-color: #1F2039;
  /* Literal highlighting */ }

code.rainbow-highlighter b,
pre.rainbow-highlighter b {
  color: #8e91a1; }

code.rainbow-highlighter strong,
pre.rainbow-highlighter strong {
  color: #6BDFFF; }

code.rainbow-highlighter i,
pre.rainbow-highlighter i {
  color: #22ADF6; }

code.rainbow-highlighter em,
pre.rainbow-highlighter em {
  color: #32B08C; }

code.rainbow-highlighter mark,
pre.rainbow-highlighter mark {
  color: #7CE490; }

code.rainbow-highlighter small,
pre.rainbow-highlighter small {
  color: #ffffff; }

code.rainbow-highlighter del,
pre.rainbow-highlighter del {
  color: #F95F53; }

code.rainbow-highlighter ins,
pre.rainbow-highlighter ins {
  color: #FFB6A0; }

code.rainbow-highlighter sub,
pre.rainbow-highlighter sub {
  color: #7CE490; }

code.rainbow-highlighter sup,
pre.rainbow-highlighter sup {
  color: #9394FF; }

code.rainbow-highlighter u,
pre.rainbow-highlighter u {
  color: #B1B6FF;
  background-color: #434453;
  padding: 2px 4px;
  text-indent: -4px; }

code.rainbow-highlighter sup,
code.rainbow-highlighter sub,
pre.rainbow-highlighter sup,
pre.rainbow-highlighter sub {
  position: initial;
  top: 0;
  margin: 0;
  font-size: 100%; }

/* Language Labels */
pre:before {
  display: inline-block;
  width: 100%;
  color: #545667;
  font-weight: 700;
  margin-bottom: 4px;
  text-transform: uppercase; }

pre[data-lang="html"]:before {
  content: 'HTML'; }

pre[data-lang="css"]:before {
  content: 'CSS'; }

pre[data-lang="js"]:before {
  content: 'Javascript'; }

/**
 * FixedDataTable v0.6.1
 *
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 */
/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableCellGroupLayout
 */
.fixedDataTableCellGroupLayout_cellGroup {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  white-space: nowrap; }

.fixedDataTableCellGroupLayout_cellGroup > .public_fixedDataTableCell_main {
  display: inline-block;
  vertical-align: top;
  white-space: normal; }

.fixedDataTableCellGroupLayout_cellGroupWrapper {
  position: absolute;
  top: 0; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableCellLayout
 */
.fixedDataTableCellLayout_main {
  border-right-style: solid;
  border-right-width: 2px;
  border-width: 0 2px 0 0;
  box-sizing: border-box;
  display: block;
  overflow: hidden;
  position: absolute;
  white-space: normal; }

.fixedDataTableCellLayout_lastChild {
  border-width: 0 2px 2px 0; }

.fixedDataTableCellLayout_alignRight {
  text-align: right; }

.fixedDataTableCellLayout_alignCenter {
  text-align: center; }

.fixedDataTableCellLayout_wrap1 {
  display: table; }

.fixedDataTableCellLayout_wrap2 {
  display: table-row; }

.fixedDataTableCellLayout_wrap3 {
  display: table-cell;
  vertical-align: middle; }

.fixedDataTableCellLayout_columnResizerContainer {
  position: absolute;
  right: 0;
  width: 6px;
  z-index: 1; }

.fixedDataTableCellLayout_columnResizerContainer:hover {
  cursor: ew-resize; }

.fixedDataTableCellLayout_columnResizerContainer:hover .fixedDataTableCellLayout_columnResizerKnob {
  visibility: visible; }

.fixedDataTableCellLayout_columnResizerKnob {
  position: absolute;
  right: 0;
  visibility: hidden;
  width: 4px; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableColumnResizerLineLayout
 */
.fixedDataTableColumnResizerLineLayout_mouseArea {
  cursor: ew-resize;
  position: absolute;
  right: -5px;
  width: 12px; }

.fixedDataTableColumnResizerLineLayout_main {
  border-right-style: solid;
  border-right-width: 2px;
  box-sizing: border-box;
  position: absolute;
  z-index: 10; }

body[dir="rtl"] .fixedDataTableColumnResizerLineLayout_main {
  /* the resizer line is in the wrong position in RTL with no easy fix.
   * Disabling is more useful than displaying it.
   * #167 (github) should look into this and come up with a permanent fix.
   */
  display: none !important; }

.fixedDataTableColumnResizerLineLayout_hiddenElem {
  display: none !important; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableLayout
 */
.fixedDataTableLayout_main {
  border-style: solid;
  border-width: 2px;
  box-sizing: border-box;
  overflow: hidden;
  position: relative; }

.fixedDataTableLayout_header,
.fixedDataTableLayout_hasBottomBorder {
  border-bottom-style: solid;
  border-bottom-width: 2px; }

.fixedDataTableLayout_footer .public_fixedDataTableCell_main {
  border-top-style: solid;
  border-top-width: 2px; }

.fixedDataTableLayout_topShadow,
.fixedDataTableLayout_bottomShadow {
  height: 4px;
  left: 0;
  position: absolute;
  right: 0;
  z-index: 1; }

.fixedDataTableLayout_bottomShadow {
  margin-top: -4px; }

.fixedDataTableLayout_rowsContainer {
  overflow: hidden;
  position: relative; }

.fixedDataTableLayout_horizontalScrollbar {
  bottom: 0;
  position: absolute; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableRowLayout
 */
.fixedDataTableRowLayout_main {
  box-sizing: border-box;
  overflow: hidden;
  position: absolute;
  top: 0; }

.fixedDataTableRowLayout_body {
  left: 0;
  position: absolute;
  top: 0; }

.fixedDataTableRowLayout_fixedColumnsDivider {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-left-style: solid;
  border-left-width: 2px;
  left: 0;
  position: absolute;
  top: 0;
  width: 0; }

.fixedDataTableRowLayout_columnsShadow {
  width: 4px; }

.fixedDataTableRowLayout_rowWrapper {
  position: absolute;
  top: 0; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule ScrollbarLayout
 */
.ScrollbarLayout_main {
  box-sizing: border-box;
  outline: none;
  overflow: hidden;
  position: absolute;
  -webkit-transition-duration: 250ms;
  transition-duration: 250ms;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.ScrollbarLayout_mainVertical {
  bottom: 0;
  right: 0;
  top: 0;
  -webkit-transition-property: background-color width;
  transition-property: background-color width;
  width: 15px; }

.ScrollbarLayout_mainVertical.public_Scrollbar_mainActive,
.ScrollbarLayout_mainVertical:hover {
  width: 15px; }

.ScrollbarLayout_mainHorizontal {
  bottom: 0;
  height: 15px;
  left: 0;
  -webkit-transition-property: background-color height;
  transition-property: background-color height; }

/* Touching the scroll-track directly makes the scroll-track bolder */
.ScrollbarLayout_mainHorizontal.public_Scrollbar_mainActive,
.ScrollbarLayout_mainHorizontal:hover {
  height: 15px; }

.ScrollbarLayout_face {
  left: 0;
  overflow: hidden;
  position: absolute;
  z-index: 1; }

/**
 * This selector renders the "nub" of the scrollface. The nub must
 * be rendered as pseudo-element so that it won't receive any UI events then
 * we can get the correct `event.offsetX` and `event.offsetY` from the
 * scrollface element while dragging it.
 */
.ScrollbarLayout_face:after {
  border-radius: 6px;
  content: '';
  display: block;
  position: absolute;
  -webkit-transition: background-color 250ms ease;
  transition: background-color 250ms ease; }

.ScrollbarLayout_faceHorizontal {
  bottom: 0;
  left: 0;
  top: 0; }

.ScrollbarLayout_faceHorizontal:after {
  bottom: 4px;
  left: 0;
  top: 4px;
  width: 100%; }

.ScrollbarLayout_faceVertical {
  left: 0;
  right: 0;
  top: 0; }

.ScrollbarLayout_faceVertical:after {
  height: 100%;
  left: 4px;
  right: 4px;
  top: 0; }

/**
 * FixedDataTable v0.6.1
 *
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 */
/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTable
 *
 */
/**
 * Table.
 */
.public_fixedDataTable_main {
  width: 100% !important;
  border-color: #434453;
  border-width: 8px;
  border-radius: 0 3px 3px 3px; }

.public_fixedDataTable_header,
.public_fixedDataTable_hasBottomBorder {
  border-color: #434453; }

.public_fixedDataTable_header .public_fixedDataTableCell_main {
  font-weight: bold; }

.public_fixedDataTable_header,
.public_fixedDataTable_header .public_fixedDataTableCell_main {
  background-color: #434453;
  border-color: #545667; }

.public_fixedDataTable_footer .public_fixedDataTableCell_main {
  background-color: #434453;
  border-color: #434453; }

.public_fixedDataTable_horizontalScrollbar .public_Scrollbar_mainHorizontal {
  background-color: #fff; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableCell
 */
/**
 * Table cell.
 */
.public_fixedDataTableCell_main {
  background-color: #31313d;
  border-color: #434453;
  line-height: 34px;
  padding: 0 8px;
  color: #d4d7dd; }

.public_fixedDataTableCell_main span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  display: inline-block;
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  font-size: 13px; }

.public_fixedDataTableCell_highlighted {
  background-color: #292933; }

.public_fixedDataTableCell_columnResizerKnob {
  background-color: #22ADF6; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableColumnResizerLine
 *
 */
/**
 * Column resizer line.
 */
.public_fixedDataTableColumnResizerLine_main {
  border-color: #22ADF6; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableRow
 */
/**
 * Table row.
 */
.fixedDataTableLayout_header.fixedDataTableRowLayout_main {
  background-color: #434453 !important; }

.public_fixedDataTableRow_main {
  background-color: #31313d; }

.public_fixedDataTableRow_highlighted,
.public_fixedDataTableRow_highlighted .public_fixedDataTableCell_main {
  background-color: #292933; }

.public_fixedDataTableRow_fixedColumnsDivider {
  border-color: #434453; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule Scrollbar
 *
 */
/**
 * Scrollbars.
 */
/* Touching the scroll-track directly makes the scroll-track bolder */
.public_Scrollbar_main.public_Scrollbar_mainActive,
.public_Scrollbar_main:hover {
  background-color: #383846; }

.public_Scrollbar_mainOpaque,
.public_Scrollbar_mainOpaque.public_Scrollbar_mainActive,
.public_Scrollbar_mainOpaque:hover {
  background-color: #434453; }

.public_Scrollbar_face:after {
  background-color: #545667; }

.public_Scrollbar_main:hover .public_Scrollbar_face:after,
.public_Scrollbar_mainActive .public_Scrollbar_face:after,
.public_Scrollbar_faceActive:after {
  background-color: #22ADF6; }

/**
 * FixedDataTable v0.6.1 
 *
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 */
/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableCellGroupLayout
 */
.fixedDataTableCellGroupLayout_cellGroup {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  white-space: nowrap; }

.fixedDataTableCellGroupLayout_cellGroup > .public_fixedDataTableCell_main {
  display: inline-block;
  vertical-align: top;
  white-space: normal; }

.fixedDataTableCellGroupLayout_cellGroupWrapper {
  position: absolute;
  top: 0; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableCellLayout
 */
.fixedDataTableCellLayout_main {
  border-right-style: solid;
  border-right-width: 2px;
  border-width: 0 2px 0 0;
  box-sizing: border-box;
  display: block;
  overflow: hidden;
  position: absolute;
  white-space: normal; }

.fixedDataTableCellLayout_lastChild {
  border-width: 0 2px 2px 0; }

.fixedDataTableCellLayout_alignRight {
  text-align: right; }

.fixedDataTableCellLayout_alignCenter {
  text-align: center; }

.fixedDataTableCellLayout_wrap1 {
  display: table; }

.fixedDataTableCellLayout_wrap2 {
  display: table-row; }

.fixedDataTableCellLayout_wrap3 {
  display: table-cell;
  vertical-align: middle; }

.fixedDataTableCellLayout_columnResizerContainer {
  position: absolute;
  right: 0;
  width: 6px;
  z-index: 1; }

.fixedDataTableCellLayout_columnResizerContainer:hover {
  cursor: ew-resize; }

.fixedDataTableCellLayout_columnResizerContainer:hover .fixedDataTableCellLayout_columnResizerKnob {
  visibility: visible; }

.fixedDataTableCellLayout_columnResizerKnob {
  position: absolute;
  right: 0;
  visibility: hidden;
  width: 4px; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableColumnResizerLineLayout
 */
.fixedDataTableColumnResizerLineLayout_mouseArea {
  cursor: ew-resize;
  position: absolute;
  right: -5px;
  width: 12px; }

.fixedDataTableColumnResizerLineLayout_main {
  border-right-style: solid;
  border-right-width: 2px;
  box-sizing: border-box;
  position: absolute;
  z-index: 10; }

body[dir="rtl"] .fixedDataTableColumnResizerLineLayout_main {
  /* the resizer line is in the wrong position in RTL with no easy fix.
   * Disabling is more useful than displaying it.
   * #167 (github) should look into this and come up with a permanent fix.
   */
  display: none !important; }

.fixedDataTableColumnResizerLineLayout_hiddenElem {
  display: none !important; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableLayout
 */
.fixedDataTableLayout_main {
  border-style: solid;
  border-width: 2px;
  box-sizing: border-box;
  overflow: hidden;
  position: relative; }

.fixedDataTableLayout_header,
.fixedDataTableLayout_hasBottomBorder {
  border-bottom-style: solid;
  border-bottom-width: 2px; }

.fixedDataTableLayout_footer .public_fixedDataTableCell_main {
  border-top-style: solid;
  border-top-width: 2px; }

.fixedDataTableLayout_topShadow,
.fixedDataTableLayout_bottomShadow {
  height: 4px;
  left: 0;
  position: absolute;
  right: 0;
  z-index: 1; }

.fixedDataTableLayout_bottomShadow {
  margin-top: -4px; }

.fixedDataTableLayout_rowsContainer {
  overflow: hidden;
  position: relative; }

.fixedDataTableLayout_horizontalScrollbar {
  bottom: 0;
  position: absolute; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule fixedDataTableRowLayout
 */
.fixedDataTableRowLayout_main {
  box-sizing: border-box;
  overflow: hidden;
  position: absolute;
  top: 0; }

.fixedDataTableRowLayout_body {
  left: 0;
  position: absolute;
  top: 0; }

.fixedDataTableRowLayout_fixedColumnsDivider {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-left-style: solid;
  border-left-width: 2px;
  left: 0;
  position: absolute;
  top: 0;
  width: 0; }

.fixedDataTableRowLayout_columnsShadow {
  width: 4px; }

.fixedDataTableRowLayout_rowWrapper {
  position: absolute;
  top: 0; }

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule ScrollbarLayout
 */
.ScrollbarLayout_main {
  box-sizing: border-box;
  outline: none;
  overflow: hidden;
  position: absolute;
  -webkit-transition-duration: 250ms;
  transition-duration: 250ms;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.ScrollbarLayout_mainVertical {
  bottom: 0;
  right: 0;
  top: 0;
  -webkit-transition-property: background-color width;
  transition-property: background-color width;
  width: 15px; }

.ScrollbarLayout_mainVertical.public_Scrollbar_mainActive,
.ScrollbarLayout_mainVertical:hover {
  width: 15px; }

.ScrollbarLayout_mainHorizontal {
  bottom: 0;
  height: 15px;
  left: 0;
  -webkit-transition-property: background-color height;
  transition-property: background-color height; }

/* Touching the scroll-track directly makes the scroll-track bolder */
.ScrollbarLayout_mainHorizontal.public_Scrollbar_mainActive,
.ScrollbarLayout_mainHorizontal:hover {
  height: 15px; }

.ScrollbarLayout_face {
  left: 0;
  overflow: hidden;
  position: absolute;
  z-index: 1; }

/**
 * This selector renders the "nub" of the scrollface. The nub must
 * be rendered as pseudo-element so that it won't receive any UI events then
 * we can get the correct `event.offsetX` and `event.offsetY` from the
 * scrollface element while dragging it.
 */
.ScrollbarLayout_face:after {
  border-radius: 6px;
  content: '';
  display: block;
  position: absolute;
  -webkit-transition: background-color 250ms ease;
  transition: background-color 250ms ease; }

.ScrollbarLayout_faceHorizontal {
  bottom: 0;
  left: 0;
  top: 0; }

.ScrollbarLayout_faceHorizontal:after {
  bottom: 4px;
  left: 0;
  top: 4px;
  width: 100%; }

.ScrollbarLayout_faceVertical {
  left: 0;
  right: 0;
  top: 0; }

.ScrollbarLayout_faceVertical:after {
  height: 100%;
  left: 4px;
  right: 4px;
  top: 0; }

/* BASICS */
.CodeMirror {
  /* Set height, width, borders, and global font properties here */
  font-family: monospace;
  height: calc(100vh - 140px);
  color: black; }

/* PADDING */
.CodeMirror-lines {
  padding: 4px 0;
  /* Vertical padding around content */ }

.CodeMirror pre {
  padding: 0 4px;
  /* Horizontal padding of content */ }

.CodeMirror-scrollbar-filler,
.CodeMirror-gutter-filler {
  background-color: white;
  /* The little square between H and V scrollbars */ }

/* GUTTER */
.CodeMirror-gutters {
  border-right: 1px solid #ddd;
  background-color: #f7f7f7;
  white-space: nowrap; }

.CodeMirror-linenumber {
  padding: 0 3px 0 5px;
  min-width: 20px;
  text-align: right;
  color: #999;
  white-space: nowrap; }

.CodeMirror-guttermarker {
  color: black; }

.CodeMirror-guttermarker-subtle {
  color: #999; }

/* CURSOR */
.CodeMirror-cursor {
  border-left: 1px solid black;
  border-right: none;
  width: 0; }

/* Shown when moving in bi-directional text */
.CodeMirror div.CodeMirror-secondarycursor {
  border-left: 1px solid silver; }

.cm-fat-cursor .CodeMirror-cursor {
  width: auto;
  border: 0 !important;
  background: #7e7; }

.cm-fat-cursor div.CodeMirror-cursors {
  z-index: 1; }

.cm-animate-fat-cursor {
  width: auto;
  border: 0;
  -webkit-animation: blink 1.06s steps(1) infinite;
  -moz-animation: blink 1.06s steps(1) infinite;
  animation: blink 1.06s steps(1) infinite;
  background-color: #7e7; }

@-moz-keyframes blink {
  0% { }
  50% {
    background-color: transparent; }
  100% { } }

@-webkit-keyframes blink {
  0% { }
  50% {
    background-color: transparent; }
  100% { } }

@keyframes blink {
  0% { }
  50% {
    background-color: transparent; }
  100% { } }

/* Can style cursor different in overwrite (non-insert) mode */
.cm-tab {
  display: inline-block;
  text-decoration: inherit; }

.CodeMirror-rulers {
  position: absolute;
  left: 0;
  right: 0;
  top: -50px;
  bottom: -20px;
  overflow: hidden; }

.CodeMirror-ruler {
  border-left: 1px solid #ccc;
  top: 0;
  bottom: 0;
  position: absolute; }

/* DEFAULT THEME */
.cm-s-default .cm-header {
  color: blue; }

.cm-s-default .cm-quote {
  color: #090; }

.cm-negative {
  color: #d44; }

.cm-positive {
  color: #292; }

.cm-header,
.cm-strong {
  font-weight: bold; }

.cm-em {
  font-style: italic; }

.cm-link {
  text-decoration: underline; }

.cm-strikethrough {
  text-decoration: line-through; }

.cm-s-default .cm-keyword {
  color: #708; }

.cm-s-default .cm-atom {
  color: #219; }

.cm-s-default .cm-number {
  color: #164; }

.cm-s-default .cm-def {
  color: #00f; }

.cm-s-default .cm-variable-2 {
  color: #05a; }

.cm-s-default .cm-variable-3,
.cm-s-default .cm-type {
  color: #085; }

.cm-s-default .cm-comment {
  color: #a50; }

.cm-s-default .cm-string {
  color: #a11; }

.cm-s-default .cm-string-2 {
  color: #f50; }

.cm-s-default .cm-meta {
  color: #555; }

.cm-s-default .cm-qualifier {
  color: #555; }

.cm-s-default .cm-builtin {
  color: #30a; }

.cm-s-default .cm-bracket {
  color: #997; }

.cm-s-default .cm-tag {
  color: #170; }

.cm-s-default .cm-attribute {
  color: #00c; }

.cm-s-default .cm-hr {
  color: #999; }

.cm-s-default .cm-link {
  color: #00c; }

.cm-s-default .cm-error {
  color: #f00; }

.cm-invalidchar {
  color: #f00; }

.CodeMirror-composing {
  border-bottom: 2px solid; }

/* Default styles for common addons */
div.CodeMirror span.CodeMirror-matchingbracket {
  color: #0f0; }

div.CodeMirror span.CodeMirror-nonmatchingbracket {
  color: #f22; }

.CodeMirror-matchingtag {
  background: rgba(255, 150, 0, 0.3); }

.CodeMirror-activeline-background {
  background: #e8f2ff; }

/* STOP */
/* The rest of this file contains styles related to the mechanics of
   the editor. You probably shouldn't touch them. */
.CodeMirror {
  position: relative;
  overflow: hidden;
  background: white; }

.CodeMirror-scroll {
  overflow: scroll !important;
  /* Things will break if this is overridden */
  /* 30px is the magic margin used to hide the element's real scrollbars */
  /* See overflow: hidden in .CodeMirror */
  margin-bottom: -30px;
  margin-right: -30px;
  padding-bottom: 30px;
  height: 100%;
  outline: none;
  /* Prevent dragging from highlighting the element */
  position: relative; }

.CodeMirror-sizer {
  position: relative;
  border-right: 30px solid transparent; }

/* The fake, visible scrollbars. Used to force redraw during scrolling
   before actual scrolling happens, thus preventing shaking and
   flickering artifacts. */
.CodeMirror-vscrollbar,
.CodeMirror-hscrollbar,
.CodeMirror-scrollbar-filler,
.CodeMirror-gutter-filler {
  position: absolute;
  z-index: 6;
  display: none; }

.CodeMirror-vscrollbar {
  right: 0;
  top: 0;
  overflow-x: hidden;
  overflow-y: scroll; }

.CodeMirror-hscrollbar {
  bottom: 0;
  left: 0;
  overflow-y: hidden;
  overflow-x: scroll; }

.CodeMirror-scrollbar-filler {
  right: 0;
  bottom: 0; }

.CodeMirror-gutter-filler {
  left: 0;
  bottom: 0; }

.CodeMirror-gutters {
  position: absolute;
  left: 0;
  top: 0;
  min-height: 100%;
  z-index: 3; }

.CodeMirror-gutter {
  white-space: normal;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: -30px; }

.CodeMirror-gutter-wrapper {
  position: absolute;
  z-index: 4;
  background: none !important;
  border: none !important; }

.CodeMirror-gutter-background {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 4; }

.CodeMirror-gutter-elt {
  position: absolute;
  cursor: default;
  z-index: 4; }

.CodeMirror-gutter-wrapper ::selection {
  background-color: transparent; }

.CodeMirror-gutter-wrapper ::-moz-selection {
  background-color: transparent; }

.CodeMirror-lines {
  cursor: text;
  min-height: 1px;
  /* prevents collapsing before first draw */ }

.CodeMirror pre {
  /* Reset some styles that the rest of the page might have set */
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  border-width: 0;
  background: transparent;
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  white-space: pre;
  word-wrap: normal;
  line-height: inherit;
  color: inherit;
  z-index: 2;
  position: relative;
  overflow: visible;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-variant-ligatures: contextual;
  font-variant-ligatures: contextual; }

.CodeMirror-wrap pre {
  word-wrap: break-word;
  white-space: pre-wrap;
  word-break: normal; }

.CodeMirror-linebackground {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 0; }

.CodeMirror-linewidget {
  position: relative;
  z-index: 2;
  overflow: auto; }

.CodeMirror-rtl pre {
  direction: rtl; }

.CodeMirror-code {
  outline: none; }

/* Force content-box sizing for the elements where we expect it */
.CodeMirror-scroll,
.CodeMirror-sizer,
.CodeMirror-gutter,
.CodeMirror-gutters,
.CodeMirror-linenumber {
  -moz-box-sizing: content-box;
  box-sizing: content-box; }

.CodeMirror-measure {
  position: absolute;
  width: 100%;
  height: 0;
  overflow: hidden;
  visibility: hidden; }

.CodeMirror-cursor {
  position: absolute;
  pointer-events: none; }

.CodeMirror-measure pre {
  position: static; }

div.CodeMirror-cursors {
  visibility: hidden;
  position: relative;
  z-index: 3; }

div.CodeMirror-dragcursors {
  visibility: visible; }

.CodeMirror-focused div.CodeMirror-cursors {
  visibility: visible; }

.CodeMirror-selected {
  background: #d9d9d9; }

.CodeMirror-focused .CodeMirror-selected {
  background: #d7d4f0; }

.CodeMirror-crosshair {
  cursor: crosshair; }

.CodeMirror-line::selection,
.CodeMirror-line > span::selection,
.CodeMirror-line > span > span::selection {
  background: #d7d4f0; }

.CodeMirror-line::-moz-selection,
.CodeMirror-line > span::-moz-selection,
.CodeMirror-line > span > span::-moz-selection {
  background: #d7d4f0; }

.cm-searching {
  background: #ffa;
  background: rgba(255, 255, 0, 0.4); }

/* Used to force a border model for a node */
.cm-force-border {
  padding-right: .1px; }

@media print {
  /* Hide the cursor when printing */
  .CodeMirror div.CodeMirror-cursors {
    visibility: hidden; } }

/* See issue #2901 */
.cm-tab-wrap-hack:after {
  content: ''; }

/* Help users use markselection to safely style text background */
span.CodeMirror-selectedtext {
  background: none; }

/*
    Page Layout
    ----------------------------------------------------------------------------
*/
.chronograf-root {
  display: flex;
  align-items: stretch;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  color: #eeeff2; }

.page {
  flex-grow: 1; }

.page-contents,
.page-contents--split {
  position: absolute !important;
  top: 60px;
  left: 0;
  width: 100%;
  height: calc(100% - 60px) !important;
  background: #202028;
  background: -moz-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: -webkit-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: linear-gradient(to bottom, #202028 0%, #0f0e15 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.page-contents:only-child,
.page-contents--split:only-child {
  top: 0;
  height: 100%; }

.page-contents--split {
  display: flex;
  align-items: stretch; }

.template-control-bar.show + .page-contents {
  top: 120px;
  height: calc(100% - 120px) !important; }

.container-fluid {
  margin: 0 auto;
  padding: 30px 60px;
  max-width: 1300px; }

.container-fluid.full-width {
  max-width: 100%; }

/* Presentation Mode */
.page-contents.presentation-mode {
  top: 0;
  height: 100% !important; }

.page-contents.presentation-mode .container-fluid {
  padding: 8px !important; }

.page-contents.presentation-mode .template-control--manage {
  display: none; }

/*
  Dashboard Page
  ------------------------------------------------------------------------------
  Using a flex based layout so that the Template Variable Control Bar can
  have any height without disrupting the layout
*/
.page.dashboard-page {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex-wrap: nowrap; }

.page.dashboard-page .page-header {
  position: relative; }

.page.dashboard-page .page-contents {
  position: relative !important;
  flex: 1 0 0;
  height: 100% !important;
  top: 0; }

/*
    Page Header
    ----------------------------------------------
*/
.page-header {
  height: 60px;
  width: 100%;
  padding: 0 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #0f0e15;
  border: none;
  margin: 0; }

.page-header.full-width .page-header__container {
  max-width: 100%; }

.page-header__container {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 1180px; }

.page-header__container.page-header__source-page {
  justify-content: center; }

.page-header__col-md-8 {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between; }

@media screen and (min-width: 992px) {
  /*
    NOTE:
    Breakpoint and % width are based on the bootstrap grid
    If the source form column sizing is ever changed, this
    will have to be manually updated
  */
  .page-header__col-md-8 {
    width: 66.66667%; } }

.page-header__left,
.page-header__right {
  display: flex;
  align-items: center; }

.page-header__left {
  justify-content: flex-start; }

.page-header__left > * {
  margin: 0 4px 0 0; }

.page-header__right {
  justify-content: flex-end; }

.page-header__right > * {
  margin: 0 0 0 4px !important; }

.page-header__right > *:only-child {
  margin-right: 0 !important; }

.page-header__title {
  letter-spacing: 0;
  text-transform: none;
  font-size: 19px;
  font-weight: 400 !important;
  margin: 0;
  display: inline-block;
  vertical-align: middle;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  cursor: default; }

.page-header__title,
.page-header__title:hover {
  cursor: default; }

.page-header__dismiss {
  width: 40px;
  height: 40px;
  position: relative;
  /* Use psuedo elements to render the X */
  /* Hover State */ }

.page-header__dismiss:before,
.page-header__dismiss:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 22px;
  height: 2px;
  border-radius: 1px;
  background-color: #999dab;
  transition: background-color 0.25s ease; }

.page-header__dismiss:before {
  transform: translate(-50%, -50%) rotate(45deg); }

.page-header__dismiss:after {
  transform: translate(-50%, -50%) rotate(-45deg); }

.page-header__dismiss:hover {
  cursor: pointer; }

.page-header__dismiss:hover:before,
.page-header__dismiss:hover:after {
  background-color: #f6f6f8; }

/*
    Page Sub-Sections
    ----------------------------------------------------------------------------
*/
.subsection .panel {
  border-top-left-radius: 0; }

.subsection .panel-heading {
  height: 60px;
  padding-top: 0;
  padding-bottom: 0; }

.subsection .panel-heading + .panel-body {
  padding-top: 0; }

.subsection .panel-body {
  min-height: 500px; }

.subsection .panel-title {
  font-size: 17px; }

.subsection--tabs {
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.subsection--tab {
  border-radius: 4px 0 0 4px;
  padding: 0 8px 0 16px;
  height: 60px;
  white-space: nowrap;
  line-height: 60px;
  text-align: left;
  font-size: 17px;
  font-weight: 500;
  color: #999dab;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  transition: background-color 0.25s ease, color 0.25s ease; }

.subsection--tab,
.subsection--tab:hover {
  cursor: default; }

.subsection--tab:hover,
.subsection--tab.active {
  cursor: pointer;
  color: #f6f6f8;
  background-color: #292933; }

@media screen and (min-width: 992px) {
  .subsection .subsection--nav {
    padding-right: 0; }
  .subsection .subsection--content {
    padding-left: 0; } }

/*
    Sidebar Navigation Styles
    ----------------------------------------------
*/
.sidebar {
  display: flex;
  flex-direction: column;
  width: 60px;
  background: #545667;
  background: -moz-linear-gradient(top, #545667 0%, #31313d 100%);
  background: -webkit-linear-gradient(top, #545667 0%, #31313d 100%);
  background: linear-gradient(to bottom, #545667 0%, #31313d 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.sidebar--bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 60px; }

/*
    Sidebar Items
    ----------------------------------------------
*/
.sidebar--item {
  width: 60px;
  height: 60px;
  position: relative; }

.sidebar--square {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  background-color: transparent;
  transition: none; }

.sidebar--icon {
  position: absolute;
  color: #999dab;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 25.332px;
  transition: text-shadow 0.4s ease; }

/*
  Sidebar Item Active State
*/
.sidebar--item.active .sidebar--square {
  background-color: #31313d; }

.sidebar--item.active .sidebar--icon {
  color: #ffffff;
  text-shadow: 0 0 9px #00C9FF, 0 0 15px #4591ED, 0 0 20px #513CC6; }

/*
  Sidebar Item Hover State
*/
.sidebar--item:hover {
  cursor: pointer;
  z-index: 5; }

.sidebar--item:hover .sidebar--square {
  background-color: #22ADF6; }

.sidebar--item:hover .sidebar--icon {
  color: #ffffff; }

.sidebar--item:hover .sidebar-menu {
  display: flex; }

.sidebar--item.active:hover .sidebar--icon {
  text-shadow: 0 0 9px #F0FCFF, 0 0 15px #6BDFFF, 0 0 20px #00C9FF; }

/*
  Sidebar Logo Square
*/
.sidebar--square.sidebar--logo {
  background-color: #fafafc; }

.sidebar--square.sidebar--logo .sidebar--icon {
  color: #22ADF6; }

.sidebar--item:hover .sidebar--square.sidebar--logo {
  background-color: #ffffff; }

.sidebar--item:hover .sidebar--square.sidebar--logo .sidebar--icon {
  color: #00C9FF; }

.sidebar--item.active .sidebar--square.sidebar--logo {
  background-color: #ffffff; }

.sidebar--item.active .sidebar--square.sidebar--logo .sidebar--icon {
  color: #00C9FF;
  text-shadow: 0 0 9px #6BDFFF, 0 0 15px #BEF0FF, 0 0 20px #F0FCFF; }

/*
    Sidebar Sub Menus
    ----------------------------------------------
*/
.sidebar-menu {
  position: absolute;
  top: 0;
  left: 100%;
  border-radius: 0 4px 4px 0;
  background: #22ADF6;
  background: -moz-linear-gradient(left, #22ADF6 0%, #9394FF 100%);
  background: -webkit-linear-gradient(left, #22ADF6 0%, #9394FF 100%);
  background: linear-gradient(to right, #22ADF6 0%, #9394FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  transition: opacity 0.25s ease;
  display: none;
  flex-direction: column; }

.sidebar-menu--heading,
.sidebar-menu--item {
  width: 100%;
  white-space: nowrap;
  display: block;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.sidebar-menu--heading,
.sidebar-menu--heading:hover,
.sidebar-menu--item,
.sidebar-menu--item:hover {
  cursor: default; }

.sidebar-menu--heading:hover,
.sidebar-menu--item:hover {
  cursor: pointer; }

.sidebar-menu--heading.sidebar--no-hover,
.sidebar-menu--heading.sidebar--no-hover:hover {
  cursor: default; }

.sidebar-menu--item,
.sidebar-menu--item:link,
.sidebar-menu--item:active,
.sidebar-menu--item:visited {
  color: #BEF0FF;
  font-size: 15px;
  line-height: 22px;
  font-weight: 500;
  position: relative;
  padding: 4px 18px;
  transition: none; }

.sidebar-menu--item:nth-last-child(2),
.sidebar-menu--item:link:nth-last-child(2),
.sidebar-menu--item:active:nth-last-child(2),
.sidebar-menu--item:visited:nth-last-child(2) {
  border-bottom-right-radius: 4px; }

.sidebar-menu--item.active,
.sidebar-menu--item.active:link,
.sidebar-menu--item.active:active,
.sidebar-menu--item.active:visited {
  background: #4591ED;
  background: -moz-linear-gradient(left, #4591ED 0%, #7A65F2 100%);
  background: -webkit-linear-gradient(left, #4591ED 0%, #7A65F2 100%);
  background: linear-gradient(to right, #4591ED 0%, #7A65F2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff;
  font-weight: 700; }

.sidebar-menu--item:hover,
.sidebar-menu--item.active:hover {
  background: #00C9FF;
  background: -moz-linear-gradient(left, #00C9FF 0%, #B1B6FF 100%);
  background: -webkit-linear-gradient(left, #00C9FF 0%, #B1B6FF 100%);
  background: linear-gradient(to right, #00C9FF 0%, #B1B6FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.sidebar-menu--heading,
.sidebar-menu--heading:link,
.sidebar-menu--heading:visited,
.sidebar-menu--heading:active,
.sidebar-menu--heading:hover {
  color: #ffffff;
  height: 60px;
  line-height: 60px;
  font-size: 19px;
  font-weight: 400;
  padding: 0px 18px; }

.sidebar-menu--item > strong {
  opacity: 0.6; }

.sidebar-menu--triangle {
  position: absolute;
  z-index: -1; }

.sidebar-menu .sidebar-menu--triangle {
  width: 50px;
  height: 60px;
  bottom: 12px;
  left: 6px;
  transform: translate(-50%, -50%) rotate(30deg); }

.sidebar-menu--section {
  white-space: nowrap;
  font-size: 13px;
  line-height: 22px;
  font-weight: 600;
  padding: 4px 18px;
  text-transform: uppercase;
  color: #6BDFFF;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  position: relative; }

.sidebar-menu--section,
.sidebar-menu--section:hover {
  cursor: default; }

.sidebar-menu--section:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #00C9FF;
  background: -moz-linear-gradient(left, #00C9FF 0%, #B1B6FF 100%);
  background: -webkit-linear-gradient(left, #00C9FF 0%, #B1B6FF 100%);
  background: linear-gradient(to right, #00C9FF 0%, #B1B6FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

span.icon.sidebar--icon.sidebar--icon__superadmin {
  font-size: 10px;
  top: 23%; }

.sidebar-menu--superadmin {
  padding: 4px 18px;
  font-size: 15px;
  font-weight: 500;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.sidebar-menu--superadmin,
.sidebar-menu--superadmin:hover {
  cursor: default; }

.sidebar-menu--superadmin > div {
  background: #FFB94A;
  background: -moz-linear-gradient(left, #FFB94A 0%, #F48D38 100%);
  background: -webkit-linear-gradient(left, #FFB94A 0%, #F48D38 100%);
  background: linear-gradient(to right, #FFB94A 0%, #F48D38 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #326BBA; }

.sidebar-menu--superadmin span.icon {
  display: inline-block;
  margin-right: 6px;
  position: relative;
  top: -2px; }

.sidebar-menu--superadmin:hover {
  cursor: default; }

.sidebar-menu--provider {
  padding: 4px 18px;
  font-size: 15px;
  font-weight: 500;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.sidebar-menu--provider,
.sidebar-menu--provider:hover {
  cursor: default; }

.sidebar-menu--provider > div {
  background: #4ED8A0;
  background: -moz-linear-gradient(left, #4ED8A0 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #4ED8A0 0%, #22ADF6 100%);
  background: linear-gradient(to right, #4ED8A0 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.sidebar-menu--provider span.icon {
  display: inline-block;
  margin-right: 6px;
  position: relative;
  top: -2px; }

.sidebar-menu--provider:hover {
  cursor: default; }

.sidebar-menu--superadmin > div,
.sidebar-menu--provider > div {
  display: flex;
  padding: 4px 8px;
  align-items: center;
  border-radius: 3px;
  white-space: nowrap; }

.fancy-scroll--container.sidebar-menu--scrollbar .fancy-scroll--thumb-h {
  display: none !important; }

.fancy-scroll--container.sidebar-menu--scrollbar .fancy-scroll--thumb-v {
  background: #ffffff;
  background: -moz-linear-gradient(top, #ffffff 0%, #BEF0FF 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%, #BEF0FF 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #BEF0FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.sidebar-menu--user-nav {
  top: initial;
  bottom: 0; }

.sidebar-menu--user-nav .sidebar-menu--section__custom-links {
  order: 0; }

.sidebar-menu--user-nav .sidebar-menu--item__link-name {
  order: 1; }

.sidebar-menu--user-nav .sidebar-menu--section__switch-orgs {
  order: 2; }

.sidebar-menu--user-nav .sidebar-menu--scrollbar {
  order: 3; }

.sidebar-menu--user-nav .sidebar-menu--section__account {
  order: 4; }

.sidebar-menu--user-nav .sidebar-menu--provider {
  order: 5; }

.sidebar-menu--user-nav .sidebar-menu--item__logout {
  order: 6; }

.sidebar-menu--user-nav .sidebar-menu--heading {
  order: 7; }

.sidebar-menu--user-nav .sidebar-menu--triangle {
  order: 8; }

.sidebar-menu--user-nav .sidebar-menu--section__custom-links:after {
  display: none;
  border-top-right-radius: 4px; }

@media only screen and (min-height: 800px) {
  .sidebar-menu--user-nav {
    top: 0;
    bottom: initial; }
  .sidebar-menu--user-nav .sidebar-menu--heading {
    order: 0; }
  .sidebar-menu--user-nav .sidebar-menu--section__account {
    order: 1; }
  .sidebar-menu--user-nav .sidebar-menu--provider {
    order: 2; }
  .sidebar-menu--user-nav .sidebar-menu--item__logout {
    order: 3; }
  .sidebar-menu--user-nav .sidebar-menu--section__switch-orgs {
    order: 4; }
  .sidebar-menu--user-nav .sidebar-menu--scrollbar {
    order: 5; }
  .sidebar-menu--user-nav .sidebar-menu--section__custom-links {
    order: 6; }
  .sidebar-menu--user-nav .sidebar-menu--item__link-name {
    order: 7; }
  .sidebar-menu--user-nav .sidebar-menu--triangle {
    order: 8; }
  .sidebar-menu--user-nav .sidebar-menu--section__custom-links:after {
    display: initial;
    border-top-right-radius: 0; }
  .sidebar-menu--user-nav .sidebar-menu--triangle {
    width: 40px;
    height: 40px;
    top: 60px;
    left: 0;
    transform: translate(-50%, -50%) rotate(45deg); } }

.page,
.sidebar {
  position: relative; }

.page {
  z-index: 2; }

.sidebar {
  z-index: 1; }

.sidebar:hover {
  z-index: 2; }

.sidebar:hover + .page {
  z-index: 1; }

/*
    Overlay Technology Styles
    ----------------------------------------------------------------------------
*/
.overlay--mask,
.overlay-tech {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.overlay--mask {
  z-index: 1;
  opacity: 0;
  transition: opacity 0.25s ease;
  background: #22ADF6;
  background: -moz-linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  background: -webkit-linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  background: linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ) !important; }

.overlay--dialog {
  position: relative;
  z-index: 2;
  transform: translateY(72px);
  opacity: 0;
  transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.25s ease; }

.overlay-tech {
  visibility: hidden;
  transition: all 0.25s ease;
  z-index: 9999; }

.overlay-tech.show {
  visibility: visible; }

.overlay-tech.show .overlay--mask {
  opacity: 0.7; }

.overlay-tech.show .overlay--dialog {
  opacity: 1;
  transform: translateY(0); }

.annotation {
  position: absolute;
  top: 8px;
  z-index: 3;
  background-color: #ffffff;
  height: calc(100% - 36px);
  width: 2px;
  transform: translateX(-1px);
  transition: background-color 0.25s ease;
  visibility: visible; }

.annotation.dragging {
  background-color: #6BDFFF;
  z-index: 4; }

.annotation-point--flag,
.annotation-point--flag__dragging {
  position: absolute;
  z-index: 2;
  top: -3px;
  left: -2px;
  width: 6px;
  height: 6px;
  background-color: #ffffff;
  border-radius: 50%;
  transition: transform 0.25s ease, background-color 0.25s ease; }

.annotation-point--flag__dragging {
  transform: scale(1.5, 1.5);
  background-color: #6BDFFF; }

.annotation-span--flag,
.annotation-span--left-flag,
.annotation-span--right-flag {
  position: absolute;
  z-index: 2;
  top: -6px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-radius: 0;
  background: none;
  transition: transform 0.25s ease; }

.annotation-span--flag.mouseover,
.mouseover.annotation-span--left-flag,
.mouseover.annotation-span--right-flag {
  transform: scale(1.5, 1.5); }

.annotation-span--left-flag {
  transform-origin: 0% 50%;
  left: 0;
  border-left-color: #ffffff; }

.annotation-span--left-flag.dragging {
  border-left-color: #6BDFFF; }

.annotation-span--right-flag {
  transform-origin: 100% 50%;
  right: 0;
  border-right-color: #ffffff; }

.annotation-span--right-flag.dragging {
  border-right-color: #6BDFFF; }

.annotation-tooltip {
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
  background-color: #0f0e15;
  z-index: 3;
  padding: 6px 12px;
  border-radius: 4px;
  white-space: nowrap;
  user-select: none;
  display: flex;
  box-shadow: 0 0 10px 2px #202028; }

.annotation-tooltip:before {
  content: '';
  display: block;
  position: absolute;
  width: calc(100% + 16px);
  height: calc(100% + 28px);
  top: -14px;
  left: -8px;
  z-index: -1; }

.annotation-tooltip.hidden {
  display: none; }

.annotation-tooltip--delete {
  position: relative;
  width: 22px;
  height: 22px;
  margin-left: 4px;
  padding: 0;
  border-radius: 3px;
  background-color: #202028;
  color: #F95F53;
  transition: color 0.25s ease;
  outline: none;
  border: none;
  font-size: 13px; }

.annotation-tooltip--delete:hover {
  color: #FFB6A0;
  cursor: pointer; }

.annotation-tooltip--input-container {
  flex: 1 0 0;
  margin-bottom: 4px; }

.annotation-tooltip--input,
.annotation-tooltip--input-container .input-cte,
.annotation-tooltip--input-container .input-cte__empty {
  width: 100%; }

.annotation-tooltip--input-container .input-cte,
.annotation-tooltip--input-container .input-cte__empty {
  height: 22px;
  font-size: 12px;
  line-height: 18px;
  padding: 0 7px; }

.annotation-tooltip--input-container .input-cte > span.icon,
.annotation-tooltip--input-container .input-cte__empty > span.icon {
  right: 9px; }

.annotation-tooltip--timestamp {
  color: #ffffff;
  display: block;
  font-size: 14px;
  font-weight: 600; }

.annotation-tooltip--items {
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.annotation-tooltip--items > div {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center; }

.annotation-tooltip--form {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  width: 100%; }

.annotation-tooltip--input-button {
  margin-left: 2px; }

.annotation--click-area {
  position: absolute;
  top: -8px;
  left: -7px;
  width: 16px;
  height: 16px;
  z-index: 4;
  cursor: default; }

.annotation--click-area.editing {
  left: -5px;
  width: 12px;
  height: calc(100% + 8px);
  cursor: col-resize; }

.annotation-window {
  position: absolute;
  top: 8px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0) 100%);
  border-top: 2px dotted rgba(255, 255, 255, 0.35);
  z-index: 1; }

.annotation-window.active {
  background: linear-gradient(to bottom, rgba(107, 223, 255, 0.15) 0%, rgba(107, 223, 255, 0) 100%);
  border-top: 2px dotted rgba(107, 223, 255, 0.35); }

/*
  New Annotations
  ------------------------------------------------------------------------------
*/
.new-annotation {
  position: absolute;
  z-index: 9999;
  top: 8px;
  width: calc(100% - 32px);
  height: calc(100% - 16px);
  cursor: pointer; }

.new-annotation.hover .new-annotation--crosshair {
  opacity: 1; }

.new-annotation--crosshair {
  opacity: 0;
  position: absolute;
  top: 0;
  height: calc(100% - 20px);
  width: 2px;
  transform: translateX(-1px);
  background: linear-gradient(to bottom, #6BDFFF 0%, #22ADF6 100%);
  transition: opacity 0.4s ease;
  z-index: 5;
  cursor: pointer; }

.new-annotation-tooltip {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: linear-gradient(to bottom, #22ADF6 0%, #4591ED 100%);
  border-radius: 4px;
  padding: 6px 12px;
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  z-index: 10; }

.new-annotation-helper {
  white-space: nowrap;
  font-size: 13px;
  line-height: 13px;
  font-weight: 600;
  color: #BEF0FF;
  margin-bottom: 4px; }

.new-annotation-timestamp {
  white-space: nowrap;
  font-size: 14px;
  line-height: 14px;
  font-weight: 600;
  color: #ffffff; }

/*
  Crosshairs
  ------------------------------------------------------------------------------
*/
.crosshair {
  position: absolute;
  cursor: pointer; }

.crosshair {
  top: 0;
  height: calc(100% - 20px);
  width: 0.5px;
  background-color: #c6cad3;
  pointer-events: none;
  z-index: 3; }

/*
  Cell Editor Overlay - Display Options
  ------------------------------------------------------------------------------
*/
.display-options {
  height: 100%;
  display: flex;
  background-color: #202028;
  padding: 0 18px 8px 18px;
  flex-wrap: nowrap;
  align-items: stretch; }

.display-options--cell {
  flex: 1 0 0;
  margin-right: 8px;
  border-radius: 3px;
  background-color: #292933; }

.display-options--cell:last-of-type {
  margin: 0; }

.display-options--cellx2 {
  flex: 2 0 0; }

.display-options--cell-wrapper {
  width: 100%;
  position: relative;
  display: inline-block;
  padding: 30px; }

.display-options--header {
  margin: 0 0 12px 0;
  font-weight: 400;
  color: #999dab;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.display-options--header,
.display-options--header:hover {
  cursor: default; }

.viz-type-selector {
  width: 100%;
  display: inline-block;
  margin: 0 -2px;
  margin-bottom: -4px; }

.viz-type-selector--option {
  float: left;
  width: 33.3333%;
  padding-bottom: 33.3333%;
  position: relative; }

.viz-type-selector--option > div > p {
  margin: 0;
  font-size: 14px;
  font-weight: 900;
  position: absolute;
  bottom: 18px;
  left: 10px;
  width: calc(100% - 20px);
  text-align: center;
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.viz-type-selector--option > div {
  background-color: #202028;
  color: #999dab;
  border-radius: 4px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  position: absolute;
  top: 2px;
  left: 2px;
  transition: color 0.25s ease, border-color 0.25s ease, background-color 0.25s ease; }

.viz-type-selector--option > div:hover {
  cursor: pointer;
  background-color: #31313d;
  color: #d4d7dd; }

@media only screen and (min-width: 1000px) {
  .viz-type-selector--option {
    width: 25%;
    padding-bottom: 25%; } }

@media only screen and (min-width: 1270px) {
  .viz-type-selector--option {
    width: 20%;
    padding-bottom: 20%; } }

@media only screen and (min-width: 1600px) {
  .viz-type-selector--option {
    width: 16.6667%;
    padding-bottom: 16.6667%; } }

@media only screen and (min-width: 2000px) {
  .viz-type-selector--option {
    width: 12.5%;
    padding-bottom: 12.5%; } }

.viz-type-selector--option.active > div,
.viz-type-selector--option.active > div:hover {
  background-color: #383846;
  color: #f6f6f8; }

.viz-type-selector--graphic {
  width: calc(100% - 54px);
  height: calc(100% - 54px);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.viz-type-selector--graphic > svg,
.viz-type-selector--graphic > svg * {
  transform: translate3d(0, 0, 0); }

.viz-type-selector--graphic > svg {
  width: 100%;
  height: 100%; }

.viz-type-selector--graphic-line {
  stroke-width: 2px;
  fill: none;
  stroke-linecap: round;
  stroke-miterlimit: 10; }

.viz-type-selector--graphic-line.graphic-line-a {
  stroke: #999dab; }

.viz-type-selector--graphic-line.graphic-line-b {
  stroke: #757888; }

.viz-type-selector--graphic-line.graphic-line-c {
  stroke: #545667; }

.viz-type-selector--graphic-line.graphic-line-d {
  stroke: #bec2cc; }

.viz-type-selector--graphic-fill {
  opacity: 0.045; }

.viz-type-selector--graphic-fill.graphic-fill-a {
  fill: #999dab; }

.viz-type-selector--graphic-fill.graphic-fill-b {
  fill: #757888; }

.viz-type-selector--graphic-fill.graphic-fill-c {
  fill: #545667; }

.viz-type-selector--graphic-fill.graphic-fill-d {
  fill: #bec2cc;
  opacity: 1; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-line.graphic-line-a {
  stroke: #22ADF6; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-line.graphic-line-b {
  stroke: #FF8564; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-line.graphic-line-c {
  stroke: #4ED8A0; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-line.graphic-line-d {
  stroke: #eeeff2; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-a {
  fill: #22ADF6; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-b {
  fill: #FF8564; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-c {
  fill: #4ED8A0; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-a,
.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-b,
.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-c {
  opacity: 0.22; }

.viz-type-selector--option.active .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-d {
  fill: #eeeff2;
  opacity: 1; }

.display-options--cell .form-group .nav.nav-tablist {
  display: flex;
  width: 100%; }

.display-options--cell .form-group .nav.nav-tablist > li {
  flex: 1 0 0;
  justify-content: center; }

.display-options--footnote {
  color: #999dab;
  margin: 0;
  margin-top: 8px;
  font-style: italic;
  display: inline-block;
  width: 100%;
  padding-left: 6px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.display-options--footnote,
.display-options--footnote:hover {
  cursor: default; }

/*
  Cell Editor Overlay - Gauge Controls
  ------------------------------------------------------------------------------
*/
.gauge-controls {
  width: 100%; }

.gauge-controls--section {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  height: 30px;
  margin-top: 8px; }

.gauge-controls--section > * {
  margin-left: 4px; }

.gauge-controls--section > *:first-child {
  margin-left: 0; }

button.btn.btn-primary.btn-sm.gauge-controls--add-threshold {
  width: 100%; }

.gauge-controls--label,
.gauge-controls--label-editable {
  height: 30px;
  line-height: 30px;
  font-weight: 600;
  font-size: 13px;
  padding: 0 11px;
  border-radius: 4px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.gauge-controls--label,
.gauge-controls--label-editable,
.gauge-controls--label:hover,
.gauge-controls--label-editable:hover {
  cursor: default; }

.gauge-controls--label {
  color: #999dab;
  background-color: #31313d;
  width: 120px; }

.gauge-controls--label-editable {
  color: #e7e8eb;
  width: 90px; }

.gauge-controls--input {
  flex: 1 0 0; }

.gauge-controls--section .color-dropdown.color-dropdown--stretch {
  width: auto;
  flex: 1 0 0; }

/*
  Cell Editor Overlay - Single-Stat Controls
  ------------------------------------------------------------------------------
*/
.graph-options-group {
  margin-top: 30px; }

.form-group-wrapper {
  display: inline-block;
  width: calc(100% + 12px);
  margin-left: -6px;
  margin-right: -6px; }

.form-group-wrapper .form-group:last-of-type {
  margin-bottom: 0; }

/*
    Confirm Button
    ----------------------------------------------------------------------------
    This button requires a second click to confirm the action
*/
.confirm-button .confirm-button--tooltip {
  visibility: hidden;
  transition: all;
  position: absolute;
  z-index: 1; }

.confirm-button .confirm-button--tooltip.bottom {
  top: calc(100% + 4px);
  left: 50%;
  transform: translateX(-50%); }

.confirm-button .confirm-button--tooltip.left {
  top: 50%;
  right: calc(100% + 4px);
  transform: translateY(-50%); }

.confirm-button--confirmation {
  white-space: pre;
  max-width: 210px;
  border-radius: 3px;
  background-color: #F95F53;
  opacity: 0;
  padding: 0 7px;
  color: #ffffff;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  transition: opacity 0.25s ease, background-color 0.25s ease; }

.confirm-button--confirmation:after {
  content: '';
  border: 8px solid transparent;
  border-bottom-color: #F95F53;
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  transition: border-color 0.25s ease;
  z-index: 100; }

.confirm-button--confirmation:hover {
  background-color: #FF8564;
  cursor: pointer; }

.confirm-button--confirmation:hover:after {
  border-bottom-color: #FF8564; }

.confirm-button--tooltip.bottom .confirm-button--confirmation:after {
  bottom: 100%;
  left: 50%;
  border-bottom-color: #F95F53;
  transform: translateX(-50%); }

.confirm-button--tooltip.bottom .confirm-button--confirmation:hover:after {
  border-bottom-color: #FF8564; }

.confirm-button--tooltip.left .confirm-button--confirmation:after {
  left: 100%;
  top: 50%;
  border-left-color: #F95F53;
  transform: translateY(-50%); }

.confirm-button--tooltip.left .confirm-button--confirmation:hover:after {
  border-left-color: #FF8564; }

.confirm-button.active {
  z-index: 999; }

.confirm-button.active .confirm-button--tooltip {
  visibility: visible; }

.confirm-button.active .confirm-button--confirmation {
  opacity: 1; }

.confirm-button.btn.btn-default.btn-xs.btn-xxs {
  padding-right: 0;
  margin-top: -1px; }

.confirm-button.btn.btn-default.btn-xs.btn-xxs:hover {
  background-color: #383846;
  color: #c6cad3; }

.confirm-button.btn.btn-default.btn-xs.btn-xxs span.icon.remove {
  margin-right: 0; }

/*
    "Confirm or Cancel" Buttons
    ----------------------------------------------------------------------------
*/
.confirm-or-cancel {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: nowrap; }

.confirm-or-cancel .confirm-or-cancel--confirm {
  order: 2;
  margin-left: 4px; }

.confirm-or-cancel .confirm-or-cancel--cancel {
  order: 1; }

.confirm-or-cancel.reversed .confirm-or-cancel--confirm {
  order: 1;
  margin-left: 0; }

.confirm-or-cancel.reversed .confirm-or-cancel--cancel {
  order: 2;
  margin-left: 4px; }

/*

    Name:       CHRONOGRAF YO
    Author:     Michael Kaminsky (http://github.com/mkaminsky11)

    Original material color scheme by Mattia Astorino (https://github.com/equinusocio/material-theme)

*/
.react-codemirror2 {
  position: relative;
  width: 100%;
  height: 100%; }

.cm-s-material.CodeMirror {
  border-radius: 0 0 4px 4px;
  font-family: "RobotoMono", monospace;
  background-color: transparent;
  color: #bec2cc;
  font-weight: 600;
  height: 100%; }

.CodeMirror-vscrollbar::-webkit-scrollbar {
  width: 16px;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.CodeMirror-vscrollbar::-webkit-scrollbar-button {
  background-color: #202028; }

.CodeMirror-vscrollbar::-webkit-scrollbar-track {
  background-color: #202028;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px; }

.CodeMirror-vscrollbar::-webkit-scrollbar-track-piece {
  background-color: #202028;
  border: 3px solid #202028;
  border-radius: 8px; }

.CodeMirror-vscrollbar::-webkit-scrollbar-thumb {
  background-color: #434453;
  border: 3px solid #202028;
  border-radius: 8px; }

.CodeMirror-vscrollbar::-webkit-scrollbar-corner {
  background-color: #202028; }

.CodeMirror-vscrollbar::-webkit-resizer {
  background-color: #202028; }

.CodeMirror-hscrollbar::-webkit-scrollbar {
  width: 16px;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.CodeMirror-hscrollbar::-webkit-scrollbar-button {
  background-color: #0f0e15; }

.CodeMirror-hscrollbar::-webkit-scrollbar-track {
  background-color: #0f0e15;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px; }

.CodeMirror-hscrollbar::-webkit-scrollbar-track-piece {
  background-color: #0f0e15;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.CodeMirror-hscrollbar::-webkit-scrollbar-thumb {
  background-color: #434453;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.CodeMirror-hscrollbar::-webkit-scrollbar-corner {
  background-color: #0f0e15; }

.CodeMirror-hscrollbar::-webkit-resizer {
  background-color: #0f0e15; }

.cm-s-material .CodeMirror-gutters {
  background: #202028;
  background: -moz-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: -webkit-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: linear-gradient(to bottom, #202028 0%, #0f0e15 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 );
  border: none; }

.cm-s-material .CodeMirror-gutters .CodeMirror-gutter {
  background-color: rgba(49, 49, 61, 0.25);
  height: calc(100% + 30px); }

.CodeMirror-gutter.CodeMirror-linenumbers {
  width: 60px; }

.cm-s-material.CodeMirror .CodeMirror-sizer {
  margin-left: 60px; }

.cm-s-material.CodeMirror .CodeMirror-linenumber.CodeMirror-gutter-elt {
  padding-right: 9px;
  width: 46px;
  color: #676978; }

.cm-s-material .CodeMirror-guttermarker,
.cm-s-material .CodeMirror-guttermarker-subtle,
.cm-s-material .CodeMirror-linenumber {
  color: #537f7e; }

.cm-s-material .CodeMirror-cursor {
  width: 2px;
  border: 0;
  background-color: #ffffff;
  box-shadow: 0 0 3px #00C9FF, 0 0 6px #4591ED, 0 0 11px #513CC6; }

.cm-s-material div.CodeMirror-selected,
.cm-s-material.CodeMirror-focused div.CodeMirror-selected {
  background-color: rgba(103, 105, 120, 0.3); }

.cm-s-material .CodeMirror-line::selection,
.cm-s-material .CodeMirror-line > span::selection,
.cm-s-material .CodeMirror-line > span > span::selection {
  background: rgba(255, 255, 255, 0.1); }

.cm-s-material .CodeMirror-line::-moz-selection,
.cm-s-material .CodeMirror-line > span::-moz-selection,
.cm-s-material .CodeMirror-line > span > span::-moz-selection {
  background: rgba(255, 255, 255, 0.1); }

.cm-s-material .CodeMirror-activeline-background {
  background: transparent; }

.cm-s-material .cm-keyword {
  color: #9394FF; }

.cm-s-material .cm-operator {
  color: #FF8564; }

.cm-s-material .cm-variable-2 {
  color: #80CBC4; }

.cm-s-material .cm-variable-3,
.cm-s-material .cm-type {
  color: #00C9FF; }

.cm-s-material .cm-builtin {
  color: #DECB6B; }

.cm-s-material .cm-atom {
  color: #32B08C; }

.cm-s-material .cm-number {
  color: #FFF6B8; }

.cm-s-material .cm-def {
  color: #e9eded; }

.cm-s-material .cm-string {
  color: #A5F3B4; }

.cm-s-material .cm-string-2 {
  color: #80CBC4; }

.cm-s-material .cm-comment {
  color: #8e91a1; }

.cm-s-material .cm-variable {
  color: #00C9FF; }

.cm-s-material .cm-tag {
  color: #80CBC4; }

.cm-s-material .cm-meta {
  color: #80CBC4; }

.cm-s-material .cm-attribute {
  color: #FFCB6B; }

.cm-s-material .cm-property {
  color: #80CBAE; }

.cm-s-material .cm-qualifier {
  color: #DECB6B; }

.cm-s-material .cm-variable-3,
.cm-s-material .cm-type {
  color: #DECB6B; }

.cm-s-material .cm-tag {
  color: #ff5370; }

.cm-s-material .cm-error {
  color: white;
  background-color: #EC5F67; }

.cm-s-material .CodeMirror-matchingbracket {
  text-decoration: underline;
  color: white !important; }

.CodeMirror-hints {
  position: absolute;
  z-index: 10;
  overflow: hidden;
  list-style: none;
  margin: 0;
  padding: 2px;
  -webkit-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.2);
  box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  border: 1px solid silver;
  background: white;
  font-size: 90%;
  font-family: monospace;
  max-height: 20em;
  overflow-y: auto; }

.CodeMirror-hint {
  margin: 0;
  padding: 0 4px;
  border-radius: 2px;
  white-space: pre;
  color: black;
  cursor: pointer; }

li.CodeMirror-hint-active {
  background: #08f;
  color: white; }

/*
  Color Dropdown
  ------------------------------------------------------------------------------
*/
.color-dropdown {
  width: 140px;
  height: 30px;
  position: relative; }

.color-dropdown.color-dropdown--stretch {
  width: 100%; }

.color-dropdown--toggle {
  width: 100%;
  position: relative; }

.color-dropdown--toggle span.caret {
  font-style: normal !important;
  position: absolute;
  top: 50%;
  right: 11px;
  transform: translateY(-50%); }

.color-dropdown--menu {
  position: absolute;
  top: 30px;
  left: 0;
  z-index: 5;
  width: 100%;
  border-radius: 4px;
  box-shadow: 0 2px 5px 0.6px rgba(15, 14, 21, 0.3);
  background: #0f0e15;
  background: -moz-linear-gradient(left, #0f0e15 0%, #202028 100%);
  background: -webkit-linear-gradient(left, #0f0e15 0%, #202028 100%);
  background: linear-gradient(to right, #0f0e15 0%, #202028 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.color-dropdown--item {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  width: 100%;
  height: 28px;
  position: relative;
  color: #999dab;
  transition: color 0.25s ease, background-color 0.25s ease; }

.color-dropdown--item,
.color-dropdown--item:hover {
  cursor: default; }

.color-dropdown--item:hover {
  background-color: #31313d;
  color: #f6f6f8; }

.color-dropdown--item:hover,
.color-dropdown--item:hover > * {
  cursor: pointer !important; }

.color-dropdown--item.active {
  background-color: #292933;
  color: #d4d7dd; }

.color-dropdown--item:first-child {
  border-radius: 4px 4px 0 0; }

.color-dropdown--item:last-child {
  border-radius: 0 0 4px 4px; }

.color-dropdown--swatch,
.color-dropdown--swatches,
.color-dropdown--name {
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }

.color-dropdown--swatch {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  left: 11px; }

.color-dropdown--swatches {
  width: 104px;
  height: 10px;
  border-radius: 5px;
  left: 11px; }

.color-dropdown--name {
  text-align: left;
  right: 20px;
  left: 34px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 600;
  text-transform: capitalize; }

.color-dropdown--swatches + .color-dropdown--name {
  left: 124px; }

.color-dropdown .color-dropdown--menu .fancy-scroll--container .fancy-scroll--track-v .fancy-scroll--thumb-v {
  background: #757888;
  background: -moz-linear-gradient(top, #757888 0%, #545667 100%);
  background: -webkit-linear-gradient(top, #757888 0%, #545667 100%);
  background: linear-gradient(to bottom, #757888 0%, #545667 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.color-dropdown--toggle.color-dropdown__disabled {
  color: #545667;
  font-style: italic;
  cursor: not-allowed; }

.color-dropdown--toggle.color-dropdown__disabled > .color-dropdown--swatch {
  background-color: #545667 !important; }

/*
  Custom Time Range Dropdown
  ------------------------------------------------------
*/
.custom-time-range {
  position: relative; }

.custom-time--container {
  display: none;
  position: absolute;
  flex-direction: row;
  align-items: stretch;
  top: 35px;
  right: 0;
  border-radius: 4px;
  z-index: 1000;
  box-shadow: 0 2px 5px 0.6px rgba(15, 14, 21, 0.2); }

.custom-time--wrap,
.custom-time--moving-dates {
  display: flex;
  flex-direction: column; }

.custom-time--wrap {
  padding: 8px;
  align-items: center;
  border-radius: 0 4px 4px 0;
  background: #383846; }

.custom-time--dates {
  display: flex;
  align-items: flex-start;
  justify-content: space-between; }

.custom-time--upper-container,
.custom-time--lower-container {
  position: relative; }

.custom-time--lower {
  margin-right: 4px;
  text-align: center; }

.custom-time--upper {
  margin-left: 4px;
  text-align: center; }

.custom-time--mask {
  position: absolute;
  width: 100%;
  height: calc(100% - 30px);
  top: 30px;
  left: 0;
  opacity: 0.5;
  background-color: #383846;
  z-index: 2; }

.custom-time--now {
  position: absolute !important;
  right: 0;
  top: 4px; }

.custom-time--shortcuts {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  align-items: stretch;
  background-color: #434453;
  border-radius: 4px 0 0 4px; }

.custom-time--shortcuts,
.custom-time--shortcuts:hover {
  cursor: default; }

.custom-time--shortcuts-header {
  white-space: nowrap;
  padding: 16px;
  color: #d4d7dd;
  font-weight: 700; }

.custom-time--shortcut {
  white-space: nowrap;
  padding: 6px 16px;
  transition: color 0.25s ease, background-color 0.25s ease;
  color: #999dab;
  font-weight: 500; }

.custom-time--shortcut:hover {
  cursor: pointer;
  background-color: #545667;
  color: #eeeff2; }

.rd-container {
  display: flex !important;
  flex-direction: column;
  align-items: center; }

.rd-date {
  position: relative; }

.rd-back,
.rd-next,
.rd-month-label {
  position: absolute;
  top: 0;
  height: 28px;
  line-height: 28px; }

.rd-back,
.rd-next {
  outline: none;
  width: 28px;
  border: 0;
  background-color: transparent;
  border-radius: 50%;
  color: #d4d7dd;
  transition: background-color 0.25s ease, color 0.25s ease; }

.rd-back:after,
.rd-next:after {
  font-family: 'icomoon' !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  color: inherit;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 16px; }

.rd-back:hover,
.rd-next:hover {
  background-color: #434453;
  color: #ffffff; }

.rd-back {
  left: 0; }

.rd-back:after {
  left: calc(50% - 1px);
  content: "\E90C"; }

.rd-next {
  left: calc(100% - 28px); }

.rd-next:after {
  left: calc(50% + 1px);
  content: "\E911"; }

.rd-month-label {
  font-weight: 600;
  color: #d4d7dd;
  left: 28px;
  text-align: center;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  width: calc(100% - 56px); }

.rd-month-label,
.rd-month-label:hover {
  cursor: default; }

.rd-days {
  margin-top: 36px;
  background-color: transparent;
  border-radius: 3px;
  /* Cancel out default table styles */ }

.rd-days tr:hover {
  background-color: transparent !important;
  color: inherit !important; }

.rd-days thead.rd-days-head th.rd-day-head,
.rd-days tbody.rd-days-body td.rd-day-body {
  padding: 0 !important;
  min-height: 30px !important;
  height: 30px !important;
  max-height: 30px !important;
  min-width: 30px !important;
  width: 30px !important;
  max-width: 30px !important;
  vertical-align: middle;
  text-align: center;
  border: 2px solid #383846 !important; }

.rd-days thead.rd-days-head th.rd-day-head {
  color: #d4d7dd !important;
  background-color: #383846 !important; }

.rd-days tbody.rd-days-body td.rd-day-body {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  letter-spacing: -1px;
  font-family: "RobotoMono", monospace;
  transition: background-color 0.25s ease, color 0.25s ease;
  color: #bec2cc !important;
  background-color: #292933;
  border-radius: 5px; }

.rd-days tbody.rd-days-body td.rd-day-body,
.rd-days tbody.rd-days-body td.rd-day-body:hover {
  cursor: default; }

.rd-days tbody.rd-days-body td.rd-day-body:hover {
  cursor: pointer;
  color: #ffffff !important;
  background-color: #434453; }

.rd-days tbody.rd-days-body td.rd-day-body.rd-day-next-month,
.rd-days tbody.rd-days-body td.rd-day-body.rd-day-prev-month {
  cursor: default;
  visibility: hidden; }

.rd-days tbody.rd-days-body td.rd-day-body.rd-day-selected {
  background-color: #22ADF6 !important;
  color: #ffffff !important; }

.rd-days tbody.rd-days-body td.rd-day-body.rd-day-disabled {
  color: #676978 !important;
  background-color: #383846 !important;
  cursor: default; }

.rd-time {
  margin: 0 2px;
  width: calc(100% - 4px);
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative; }

.rd-time-selected {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  height: 28px;
  line-height: 28px;
  background-color: #292933;
  border-radius: 3px;
  width: 100%;
  letter-spacing: -1px;
  font-family: "RobotoMono", monospace;
  color: #bec2cc;
  display: inline-block;
  transition: color 0.25s ease, background-color 0.25s ease;
  text-align: center; }

.rd-time-selected,
.rd-time-selected:hover {
  cursor: default; }

.rd-time-selected:hover {
  color: #ffffff;
  background-color: #434453;
  cursor: pointer; }

.rd-time-list {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 120px;
  height: 200px;
  transform: translate(-50%, -50%);
  overflow: auto;
  overflow-x: hidden;
  overflow-y: scroll;
  background: #4591ED;
  background: -moz-linear-gradient(left, #4591ED 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #4591ED 0%, #22ADF6 100%);
  background: linear-gradient(to right, #4591ED 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  border-radius: 4px;
  box-shadow: 0 2px 5px 0.6px rgba(15, 14, 21, 0.2); }

.rd-time-list::-webkit-scrollbar {
  width: 16px;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.rd-time-list::-webkit-scrollbar-button {
  background-color: #22ADF6; }

.rd-time-list::-webkit-scrollbar-track {
  background-color: #22ADF6;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px; }

.rd-time-list::-webkit-scrollbar-track-piece {
  background-color: #22ADF6;
  border: 3px solid #22ADF6;
  border-radius: 8px; }

.rd-time-list::-webkit-scrollbar-thumb {
  background-color: #00C9FF;
  border: 3px solid #22ADF6;
  border-radius: 8px; }

.rd-time-list::-webkit-scrollbar-corner {
  background-color: #22ADF6; }

.rd-time-list::-webkit-resizer {
  background-color: #22ADF6; }

.rd-time-option {
  width: 100%;
  height: 24px;
  line-height: 24px;
  padding-left: 16px;
  text-align: center;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  font-family: "RobotoMono", monospace;
  color: #F0FCFF;
  letter-spacing: -1px; }

.rd-time-option,
.rd-time-option:hover {
  cursor: default; }

.rd-time-option:hover,
.rd-time-option:active,
.rd-time-option:focus {
  color: #ffffff;
  cursor: pointer;
  outline: none;
  background: #00C9FF;
  background: -moz-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: linear-gradient(to right, #00C9FF 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.custom-time--container .btn.custom-time--apply {
  margin-top: 8px;
  width: 210px; }

/* Open State */
.custom-time-range.open .custom-time--container {
  display: flex; }

.custom-time-range.open .custom-time-range--btn {
  color: #ffffff !important;
  background-color: #434453; }

/* Custom positioning for dashboard use */
.time-range-dropdown {
  position: relative; }

.custom-time--overlay {
  position: absolute;
  top: 0;
  right: calc(100% + 4px);
  z-index: 4; }

.custom-time--overlay .custom-time--container {
  display: flex; }

/*
    Customize Fields
    ----------------------------------------------------------------------------
    Primarily used within Table Options inside Cell Editor Overlay
*/
.customizable-field {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  height: 30px;
  margin-top: 8px; }

.customizable-field:first-of-type {
  margin-top: 0; }

.customizable-field.dragging {
  border-radius: 4px;
  opacity: 0.25;
  background: #22ADF6;
  background: -moz-linear-gradient(left, #22ADF6 0%, #7A65F2 100%);
  background: -webkit-linear-gradient(left, #22ADF6 0%, #7A65F2 100%);
  background: linear-gradient(to right, #22ADF6 0%, #7A65F2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.customizable-field.dragging > * {
  opacity: 0; }

.customizable-field--label,
.customizable-field--label__hidden {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  height: 30px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  padding: 0 11px 0 0;
  border-radius: 4px;
  width: 60%;
  transition: background-color 0.25s ease, color 0.25s ease; }

.customizable-field--label,
.customizable-field--label:hover,
.customizable-field--label__hidden,
.customizable-field--label__hidden:hover {
  cursor: default; }

.customizable-field--label > span,
.customizable-field--label__hidden > span {
  margin-right: 5px; }

.customizable-field--label {
  color: #c6cad3;
  background-color: #383846; }

.customizable-field--label__hidden {
  background-color: #31313d;
  color: #545667;
  font-style: italic; }

.customizable-field--input {
  margin-left: 4px;
  width: calc(40% - 4px);
  display: flex;
  align-items: center;
  height: 100%; }

.customizable-field .input-cte__empty {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.customizable-field--name {
  flex: 1 0 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 600;
  font-size: 13px;
  margin-left: 6px; }

.customizable-field--drag,
.customizable-field--visibility {
  display: inline-block;
  width: 30px;
  height: 30px;
  position: relative; }

.customizable-field--drag:hover,
.customizable-field--visibility:hover {
  cursor: pointer; }

.customizable-field--visibility {
  width: 18px; }

.customizable-field--drag .hamburger,
.customizable-field--visibility .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.customizable-field--drag .hamburger {
  width: 10px;
  height: 2px;
  background-color: #999dab;
  transition: background-color 0.25s ease;
  border-radius: 1px; }

.customizable-field--drag .hamburger:before,
.customizable-field--drag .hamburger:after {
  position: absolute;
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background-color: #999dab;
  transition: background-color 0.25s ease;
  border-radius: 1px;
  left: 0; }

.customizable-field--drag .hamburger:before {
  top: -4px; }

.customizable-field--drag .hamburger:after {
  top: 4px; }

.customizable-field--label__hidden .customizable-field--drag .hamburger,
.customizable-field--label__hidden .customizable-field--drag .hamburger:before,
.customizable-field--label__hidden .customizable-field--drag .hamburger:after {
  background-color: #545667; }

.dygraph:hover {
  cursor: default; }

.graph-vertical-marker {
  top: 0;
  bottom: 0;
  width: 2px;
  transform: translateX(15px);
  position: absolute;
  pointer-events: none;
  display: none;
  background: rgba(255, 255, 255, 0);
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.29) 6%, rgba(255, 255, 255, 0.29) 80%, rgba(255, 255, 255, 0) 100%);
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.29) 6%, rgba(255, 255, 255, 0.29) 80%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.29) 6%, rgba(255, 255, 255, 0.29) 80%, rgba(255, 255, 255, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='fade-out($g20-white, 0.71)', endColorstr='fade-out($g20-white, 0.71)',GradientType=0 ); }

/* Axis Labels */
.dygraph-axis-label {
  color: #999dab !important;
  font-weight: 600 !important;
  user-select: none;
  font-size: 11px; }

.dygraph-axis-label-y {
  padding: 0 9px 0 0 !important;
  text-align: left !important;
  left: 0 !important;
  user-select: none; }

.dygraph-axis-label-y2 {
  padding: 0 0 0 9px !important;
  text-align: right !important;
  user-select: none; }

/* Vertical Axis Labels */
.dygraph-ylabel,
.dygraph-y2label {
  user-select: none;
  position: absolute;
  width: 100%;
  text-align: center;
  font-size: 11px;
  top: -12px !important;
  color: #999dab;
  font-weight: 600;
  padding: 0 0 2px 0 !important;
  border-bottom: 2px solid #31313d !important;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }

.dygraph-ylabel {
  transform: rotate(-90deg); }

.dygraph-y2label {
  transform: rotate(90deg); }

.graph--hasYLabel .dygraph-axis-label-y {
  padding: 0 1px 0 16px !important; }

.graph--hasYLabel .dygraph-axis-label-y2 {
  padding: 0 16px 0 1px !important; }

/* Single Stat Cells */
.single-stat {
  position: absolute;
  left: 2px;
  width: calc(100% - 4px);
  height: calc(100% - 2px);
  pointer-events: none;
  border-radius: 3px;
  transition: background-color 0.25s ease, color 0.25s ease;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  color: #00C9FF; }

.single-stat,
.single-stat:hover {
  cursor: default; }

.single-stat.graph-single-stat {
  top: 0; }

.single-stat > canvas.gauge {
  width: 100% !important;
  height: 100% !important; }

.dygraph-child > .single-stat {
  z-index: 3; }

.single-stat--value {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  max-width: calc(100% - 32px);
  text-align: center;
  font-size: 54px;
  line-height: 54px;
  font-weight: 300;
  color: inherit;
  z-index: 1; }

.single-stat--value.single-stat--small {
  font-weight: 400;
  font-size: 34px;
  line-height: 34px; }

.single-stat--shadow {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.single-stat--shadow:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 90%;
  height: 0;
  transform: translate(-50%, -50%);
  box-shadow: rgba(32, 32, 40, 0.7) 0 0 50px 30px;
  z-index: -1; }

.single-stat--small .single-stat--shadow:after {
  box-shadow: rgba(32, 32, 40, 0.7) 0 0 30px 10px; }

/*
  Legend Styles
  ------------------------------------------------------------------------------
*/
.dygraph-child-container .dygraph-legend {
  display: none !important; }

.dygraph-legend {
  background-color: #0f0e15;
  display: block !important;
  position: absolute;
  padding: 11px;
  z-index: 500;
  border-radius: 3px;
  min-width: 350px;
  user-select: text;
  transform: translateX(-50%);
  box-shadow: 0 0 10px 2px #202028; }

.dygraph-legend.hidden {
  display: none !important; }

.dygraph-legend:after {
  content: '';
  position: absolute;
  border-width: 8px;
  border-style: solid;
  border-color: transparent; }

.dygraph-legend.dygraph-legend--top:after {
  top: -16px;
  border-bottom-color: #0f0e15;
  left: 50%;
  transform: translateX(-50%); }

.dygraph-legend.dygraph-legend--bottom:after {
  bottom: -16px;
  border-top-color: #0f0e15;
  left: 50%;
  transform: translateX(-50%); }

.dygraph-legend.dygraph-legend--left:after {
  left: -16px;
  border-right-color: #0f0e15;
  top: 50%;
  transform: translateY(-50%); }

.dygraph-legend.dygraph-legend--right:after {
  right: -16px;
  border-left-color: #0f0e15;
  top: 50%;
  transform: translateY(-50%); }

.dygraph-legend--header {
  display: flex;
  align-items: center;
  flex-wrap: nowrap; }

.dygraph-legend--header > .btn {
  margin-left: 4px; }

.dygraph-legend--timestamp {
  margin-right: 8px;
  height: 30px;
  font-size: 13px;
  white-space: nowrap;
  line-height: 30px;
  font-weight: 600;
  color: #bec2cc;
  flex: 1 0 0%; }

.dygraph-legend--filter {
  flex: 1 0 0%;
  margin-top: 8px; }

.dygraph-legend--divider {
  width: 100%;
  margin: 8px 0;
  height: 2px;
  background-color: #383846; }

.dygraph-legend--contents {
  font-size: 13px;
  color: #d4d7dd;
  font-weight: 600;
  line-height: 13px;
  max-height: 123px;
  overflow-y: auto; }

.dygraph-legend--contents::-webkit-scrollbar {
  width: 16px;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.dygraph-legend--contents::-webkit-scrollbar-button {
  background-color: #0f0e15; }

.dygraph-legend--contents::-webkit-scrollbar-track {
  background-color: #0f0e15;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px; }

.dygraph-legend--contents::-webkit-scrollbar-track-piece {
  background-color: #0f0e15;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.dygraph-legend--contents::-webkit-scrollbar-thumb {
  background-color: #292933;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.dygraph-legend--contents::-webkit-scrollbar-corner {
  background-color: #0f0e15; }

.dygraph-legend--contents::-webkit-resizer {
  background-color: #0f0e15; }

.dygraph-legend--row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: nowrap;
  opacity: 0.5;
  font-size: 11px;
  line-height: 11px;
  font-weight: 600;
  padding: 3px 0; }

.dygraph-legend--row span {
  font-weight: 900;
  padding: 0;
  white-space: nowrap; }

.dygraph-legend--row figure {
  white-space: nowrap;
  padding-left: 10px;
  font-family: "RobotoMono", monospace; }

.dygraph-legend--row.highlight {
  opacity: 1;
  background-color: #292933; }

.dygraph-legend--row.highlight figure {
  color: #ffffff; }

.dygraph-legend--row.highlight:only-child {
  background-color: transparent; }

/* Sorting Buttons */
.sort-btn {
  position: relative; }

.sort-btn--arrow {
  position: absolute;
  top: 8px;
  right: 8px;
  height: calc(100% - 16px);
  width: 2px;
  background-color: #ffffff;
  transform: rotate(0deg);
  transition: transform 0.25s ease; }

.sort-btn--arrow:after {
  content: '';
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%) scaleX(0.7);
  border-style: solid;
  border-width: 6px;
  border-color: transparent;
  border-bottom-color: #ffffff; }

.sort-btn--asc .sort-btn--arrow {
  transform: rotate(180deg); }

.sort-btn--top,
.sort-btn--bottom {
  position: absolute;
  font-size: 10px;
  font-weight: 900;
  color: #ffffff;
  left: 6px; }

.sort-btn--top {
  top: -5px; }

.sort-btn--bottom {
  bottom: -6px; }

/*
  Fancy Scrollbars
  ------------------------------------------------------
*/
.fancy-scroll--track-h:hover,
.fancy-scroll--track-v:hover {
  cursor: pointer; }

/* Horizontal Scrollbar Styles */
.fancy-scroll--track-h {
  padding: 3px;
  width: 100%;
  height: 12px !important;
  bottom: 0;
  left: 0; }

.fancy-scroll--thumb-h {
  height: 6px !important;
  border-radius: 3px;
  background: #22ADF6;
  background: -moz-linear-gradient(left, #22ADF6 0%, #9394FF 100%);
  background: -webkit-linear-gradient(left, #22ADF6 0%, #9394FF 100%);
  background: linear-gradient(to right, #22ADF6 0%, #9394FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

/* Vertical Scrollbar Styles */
.fancy-scroll--track-v {
  padding: 3px;
  width: 12px !important;
  height: 100%;
  top: 0;
  right: 0; }

.fancy-scroll--thumb-v {
  width: 6px !important;
  border-radius: 3px;
  background: #22ADF6;
  background: -moz-linear-gradient(top, #22ADF6 0%, #9394FF 100%);
  background: -webkit-linear-gradient(top, #22ADF6 0%, #9394FF 100%);
  background: linear-gradient(to bottom, #22ADF6 0%, #9394FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

/* Kapacitor Theme Scrollbars */
.fancy-scroll--kapacitor .fancy-scroll--thumb-h {
  background: #4ED8A0;
  background: -moz-linear-gradient(left, #4ED8A0 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #4ED8A0 0%, #22ADF6 100%);
  background: linear-gradient(to right, #4ED8A0 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.fancy-scroll--kapacitor .fancy-scroll--thumb-v {
  background: #4ED8A0;
  background: -moz-linear-gradient(top, #4ED8A0 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(top, #4ED8A0 0%, #22ADF6 100%);
  background: linear-gradient(to bottom, #4ED8A0 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

/* Kapacitor Theme Scrollbars */
.fancy-scroll--func-selector .fancy-scroll--thumb-h {
  background: #BEF0FF;
  background: -moz-linear-gradient(left, #BEF0FF 0%, #6BDFFF 100%);
  background: -webkit-linear-gradient(left, #BEF0FF 0%, #6BDFFF 100%);
  background: linear-gradient(to right, #BEF0FF 0%, #6BDFFF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.fancy-scroll--func-selector .fancy-scroll--thumb-v {
  background: #BEF0FF;
  background: -moz-linear-gradient(top, #BEF0FF 0%, #6BDFFF 100%);
  background: -webkit-linear-gradient(top, #BEF0FF 0%, #6BDFFF 100%);
  background: linear-gradient(to bottom, #BEF0FF 0%, #6BDFFF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

/* Dropdown Theme Scrollbars */
ul.dropdown-menu .fancy-scroll--thumb-h {
  background: #BEF0FF;
  background: -moz-linear-gradient(left, #BEF0FF 0%, #00C9FF 100%);
  background: -webkit-linear-gradient(left, #BEF0FF 0%, #00C9FF 100%);
  background: linear-gradient(to right, #BEF0FF 0%, #00C9FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

ul.dropdown-menu .fancy-scroll--thumb-v {
  background: #BEF0FF;
  background: -moz-linear-gradient(top, #BEF0FF 0%, #00C9FF 100%);
  background: -webkit-linear-gradient(top, #BEF0FF 0%, #00C9FF 100%);
  background: linear-gradient(to bottom, #BEF0FF 0%, #00C9FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

/* Hacky Fix to make fancy scrollbars work in Safari */
.query-builder--list {
  position: relative; }

.query-builder--list .fancy-scroll--container {
  position: absolute !important; }

/*
  Styles for Fancy Tables
  ------------------------------------------------------------------------------
*/
.fancytable--row,
.fancytable--labels {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  align-items: center; }

.fancytable--row > div:not(.confirm-or-cancel),
.fancytable--row > div:not(.confirm-button),
.fancytable--labels > div:not(.confirm-or-cancel),
.fancytable--labels > div:not(.confirm-button) {
  margin-right: 4px; }

.fancytable--row {
  margin-bottom: 4px;
  position: relative; }

.fancytable--row:last-of-type {
  margin-bottom: 0; }

.fancytable--labels {
  border-bottom: 2px solid #383846;
  margin-bottom: 10px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.fancytable--labels,
.fancytable--labels:hover {
  cursor: default; }

.fancytable--th,
.fancytable--td {
  font-weight: 500;
  height: 34px;
  line-height: 34px;
  font-size: 13px; }

.fancytable--th {
  color: #eeeff2;
  padding: 0 11px; }

.fancytable--th:last-of-type {
  margin-right: 0; }

.fancytable--td {
  display: flex;
  align-items: center;
  color: #bec2cc; }

/*
  Fill Query
  ------------------------------------------------------------------------------
  Small widget for supplying a fill() value in a query
*/
.fill-query {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  margin-left: 8px; }

.fill-query--label {
  order: 1;
  margin: 0;
  color: #a4a8b6;
  padding: 0 6px;
  height: 30px;
  line-height: 30px; }

.fill-query--dropdown {
  order: 2; }

.fill-query--dropdown .dropdown-selected {
  font-family: "RobotoMono", monospace; }

.fill-query--dropdown .dropdown-menu .dropdown-item a {
  font-family: "RobotoMono", monospace; }

input.form-control.fill-query--input {
  width: 70px;
  order: 3;
  margin: 0;
  font-weight: 600;
  border-color: #545667;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

input.form-control.fill-query--input:hover {
  border-color: #676978; }

input.form-control.fill-query--input:focus {
  border-color: #22ADF6; }

input.form-control.fill-query--input + .fill-query--dropdown .dropdown-toggle {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

/*
  Flip Toggle
  ------------------------------------------------------------------------------
  Toggles between 2 options using a 3D transition
  Aesthetic and space conservative
*/
.flip-toggle {
  width: 28px;
  height: 28px;
  perspective: 1000px; }

.flip-toggle:hover {
  cursor: pointer; }

.flip-toggle:hover .flip-toggle--front,
.flip-toggle:hover .flip-toggle--back {
  border-color: #545667;
  color: #f6f6f8; }

.flip-toggle--container {
  transition: transform 0.6s ease;
  transform-style: preserve-3d;
  position: relative; }

.flip-toggle--front,
.flip-toggle--back {
  border: 2px solid #434453;
  background-color: #202028;
  transition: color 0.25s ease, border-color 0.25s ease;
  border-radius: 3px;
  width: 28px;
  height: 28px;
  text-align: center;
  line-height: 24px;
  /* Subtract for border width */
  color: #999dab;
  position: absolute;
  top: 0;
  left: 0;
  backface-visibility: hidden; }

.flip-toggle--front {
  z-index: 2;
  transform: rotateY(0deg); }

.flip-toggle--back {
  z-index: 1;
  transform: rotateY(180deg); }

/* Flip Animation happens on class toggle */
.flip-toggle.flipped .flip-toggle--container {
  transform: rotateY(180deg); }

/*
  Disabled State
  ------------------------------------------------------------------------------
*/
.flip-toggle.disabled .flip-toggle--front,
.flip-toggle.disabled .flip-toggle--back,
.flip-toggle.disabled:hover .flip-toggle--front,
.flip-toggle.disabled:hover .flip-toggle--back {
  cursor: not-allowed;
  background-color: #292933;
  color: #757888;
  border-color: #383846; }

/*
  Function Selector
  ------------------------------------------------------
  Used within the FieldListItem component
*/
.function-selector {
  padding: 4px 11px 8px 32px;
  background-color: #31313d; }

.function-selector--header {
  background-color: #202028;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px;
  border-radius: 4px 4px 0 0;
  font-size: 12px;
  font-weight: 600;
  color: #999dab;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.function-selector--header,
.function-selector--header:hover {
  cursor: default; }

.function-selector--grid {
  display: flex;
  flex-wrap: wrap;
  padding: 6px;
  border-radius: 0 0 4px 4px;
  background-color: #202028; }

.function-selector--header + .function-selector--grid {
  padding-top: 0; }

.function-selector--item {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  font-family: "RobotoMono", monospace;
  flex: 0 0 calc(25% - 2px);
  margin: 1px;
  text-align: center;
  height: 26px;
  line-height: 23px;
  background-color: #292933;
  color: #999dab;
  transition: background-color 0.25s ease, color 0.25s ease; }

.function-selector--item,
.function-selector--item:hover {
  cursor: default; }

.function-selector--item:hover {
  background-color: #31313d;
  color: #d4d7dd;
  cursor: pointer; }

.function-selector--item.active {
  background-color: #22ADF6;
  color: #ffffff; }

/*
    Graph Tips component styles
    ----------------------------------------------------------------
*/
.graph-tips {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  display: inline-block;
  padding: 0 4px;
  border: 0;
  height: 30px;
  line-height: 30px; }

.graph-tips,
.graph-tips:hover {
  cursor: default; }

.graph-tips > span {
  display: inline-block;
  text-align: center;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background-color: #bec2cc;
  color: #0f0e15;
  line-height: 18px;
  font-weight: 900;
  cursor: default; }

/*
  Variables
  ---------------------------------------------
*/
/*
  Graph Styles
  ---------------------------------------------
*/
.graph,
.graph-heading,
.graph-container,
.graph > .table-container {
  position: relative; }

.graph {
  margin: 0 60px;
  height: 100%; }

.graph-heading {
  background-color: #292933;
  border-radius: 4px 4px 0 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 44px;
  top: 16px;
  padding: 0 7px;
  transition: background-color 0.25s ease; }

.graph-heading .toggle-btn {
  text-transform: capitalize; }

.graph-name {
  width: 100%;
  background-color: transparent;
  color: #bec2cc;
  font-size: 15px;
  line-height: 28px;
  border-radius: 4px;
  border: 2px solid transparent;
  position: relative;
  transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease; }

.graph-name:after {
  content: "\F058";
  font-family: 'icomoon';
  position: absolute;
  font-size: 15px;
  top: 50%;
  right: 11px;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.25s ease;
  color: #999dab; }

.graph-name:hover {
  cursor: text;
  background-color: #383846;
  color: #ffffff; }

.graph-name:hover:after {
  opacity: 1; }

.graph-name__untitled {
  color: #757888;
  font-style: italic; }

.graph-heading > input[type="text"].form-control {
  font-size: 14px;
  line-height: 26px; }

.graph-heading > input[type="text"].form-control,
.graph-name {
  height: 30px;
  font-weight: 600;
  padding: 0 11px;
  letter-spacing: 0;
  font-stretch: normal; }

.graph .table-container,
.graph-container {
  top: 16px;
  background-color: #292933;
  border-radius: 0 0 4px 4px;
  height: calc(100% - 76px); }

.graph .table-container {
  padding: 8px 16px; }

.graph .table-container > div > div:last-child {
  position: absolute;
  top: 30px;
  height: calc(100% - 30px) !important;
  width: 100%; }

.graph .table-container .fixedDataTableLayout_main {
  height: 100% !important; }

.graph-container {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.graph-container,
.graph-container:hover {
  cursor: default; }

.graph-container > .dygraph {
  position: absolute;
  width: 100%;
  height: 100%; }

.graph-container > .dygraph > .dygraph-child {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 8px 16px; }

.graph-empty {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.graph-empty,
.graph-empty:hover {
  cursor: default; }

.graph-empty > p {
  font-size: 20px;
  font-weight: 400;
  margin: 0;
  text-align: center;
  color: #676978;
  white-space: pre-wrap; }

.graph-fetching {
  width: 100%;
  height: 320px;
  display: flex;
  align-items: center;
  justify-content: center; }

.graph-spinner {
  width: 121px !important;
  height: 121px !important;
  background-image: url(/926b127b9cb6575cbf3b673f7ccffa31.png);
  background-size: 100% 100%;
  background-position: center center;
  background-repeat: no-repeat;
  animation: graph-panel-spinner 1s infinite linear; }

@keyframes graph-panel-spinner {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/*
  Click to Edit Input Styles
  ------------------------------------------------------------------------------
*/
.input-cte,
.input-cte__empty,
.input-cte__disabled {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  height: 30px;
  width: 100%;
  font-weight: 600;
  font-size: 13px;
  line-height: 28px;
  padding: 0 11px;
  border-radius: 4px;
  border-style: solid;
  border-width: 2px;
  letter-spacing: 0; }

.input-cte,
.input-cte__empty,
.input-cte:hover,
.input-cte__empty:hover,
.input-cte__disabled,
.input-cte__disabled:hover {
  cursor: default; }

.input-cte,
.input-cte__empty {
  border-color: #202028;
  background-color: #202028;
  color: #bec2cc;
  position: relative;
  transition: color 0.4s ease, background-color 0.4s ease, border-color 0.4s ease; }

.input-cte > span.icon,
.input-cte__empty > span.icon {
  position: absolute;
  top: 50%;
  right: 11px;
  transform: translateY(-50%);
  color: #676978;
  opacity: 0;
  transition: opacity 0.25s ease; }

.input-cte:hover,
.input-cte__empty:hover {
  color: #ffffff;
  background-color: #383846;
  border-color: #383846;
  cursor: text; }

.input-cte:hover > span.icon,
.input-cte__empty:hover > span.icon {
  opacity: 1; }

.input-cte__disabled {
  border-color: #31313d;
  background-color: #31313d;
  font-style: italic;
  color: #757888; }

.input-cte__empty {
  color: #757888;
  font-weight: 500;
  font-style: italic;
  line-height: 27px; }

.input-cte__empty:hover {
  color: #757888; }

.input-cte__normal .input-cte,
.input-cte__normal .input-cte__empty {
  border-color: #383846; }

.input-cte__normal .input-cte:hover,
.input-cte__normal .input-cte__empty:hover {
  border-color: #434453;
  background-color: #202028; }

.input-cte__normal .input-cte__empty {
  background-color: #202028; }

.input-cte__normal .input-cte__disabled,
.input-cte__normal .input-cte__disabled:hover {
  border-color: #383846;
  background-color: #292933; }

/*
  Input Tag List Styles
  ---------------------------------------------
*/
.input-tag-list {
  margin: 1px -1px;
  display: flex;
  flex-wrap: wrap; }

.tag-input + .input-tag-list {
  padding: 0 11px;
  margin: 4px -1px; }

.input-tag--item,
.tags-add {
  height: 24px;
  line-height: 24px;
  border-radius: 3px;
  margin: 1px; }

.input-tag--item {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  white-space: nowrap;
  padding: 0 0 0 9px;
  font-size: 12px;
  font-weight: 600;
  background-color: #383846;
  color: #f6f6f8;
  cursor: default; }

.btn.confirm-button.input-tag--remove {
  margin-left: 2px;
  color: #676978;
  background-color: transparent; }

.btn.confirm-button.input-tag--remove:hover {
  background-color: transparent;
  color: #FF8564; }

.tags-add {
  position: relative;
  width: 24px;
  background-color: #22ADF6;
  color: #ffffff;
  text-align: center;
  transition: background-color 0.25s ease; }

.tags-add .icon {
  font-size: 14px; }

.tags-add:hover,
.tags-add.open {
  cursor: pointer;
  background-color: #00C9FF; }

.tags-add--menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 99;
  display: none;
  flex-direction: column;
  align-items: stretch;
  border-radius: 4px;
  overflow: auto;
  max-height: 200px;
  background: #4591ED;
  background: -moz-linear-gradient(left, #4591ED 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #4591ED 0%, #22ADF6 100%);
  background: linear-gradient(to right, #4591ED 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.tags-add--menu-item {
  text-align: left;
  font-size: 13px;
  line-height: 13px;
  font-weight: 500;
  padding: 7px 9px;
  white-space: nowrap;
  color: #F0FCFF;
  transition: color 0.25s ease;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.tags-add--menu-item,
.tags-add--menu-item:hover {
  cursor: default; }

.tags-add--menu-item:hover {
  cursor: pointer;
  color: #ffffff;
  background: #00C9FF;
  background: -moz-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #00C9FF 0%, #22ADF6 100%);
  background: linear-gradient(to right, #00C9FF 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.tags-add--menu-item:active,
.tags-add--menu-item:active:focus {
  cursor: pointer;
  color: #ffffff;
  background: #326BBA;
  background: -moz-linear-gradient(left, #326BBA 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #326BBA 0%, #22ADF6 100%);
  background: linear-gradient(to right, #326BBA 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.tags-add.open .tags-add--menu {
  display: flex; }

/*
  Newsfeed Cell (Status Dash)
  ------------------------------------------------------
*/
.newsfeed--container .fancy-scroll--track-h {
  display: none; }

.newsfeed {
  padding: 0 16px; }

.newsfeed--post {
  position: relative;
  margin-bottom: 4px;
  background-color: #202028;
  border-radius: 3px; }

.newsfeed--post:last-child {
  margin-bottom: 0; }

.newsfeed--post-title {
  font-size: 14px;
  font-weight: 700;
  color: #f6f6f8;
  padding: 12px;
  padding-right: 76px; }

.newsfeed--date {
  position: absolute;
  top: 0;
  right: 0;
  height: 22px;
  line-height: 20px;
  background-color: #292933;
  color: #8e91a1;
  font-size: 13px;
  font-weight: 900;
  width: 56px;
  text-align: center;
  border-bottom-left-radius: 8px; }

.newsfeed--content {
  padding: 12px;
  /* Condensing default typography styles to better suit the context */ }

.newsfeed--content p {
  margin-top: 0; }

.newsfeed--content p,
.newsfeed--content li {
  font-size: 13px; }

.newsfeed--content blockquote {
  margin: 0 0 8px 0;
  padding: 0 12px; }

.newsfeed--content blockquote:before,
.newsfeed--content blockquote:after {
  content: none; }

.newsfeed--content ol,
.newsfeed--content ul {
  margin: 0 0 8px 0; }

.newsfeed--content li {
  padding-left: 0; }

.newsfeed--content hr {
  margin: 8px 0; }

.newsfeed--content img {
  width: calc(100% - 48px);
  margin: 8px 24px;
  border-radius: 3px; }

/*
  Opt In Component
  ------------------------------------------------------------------------------
  User can toggle between a single value or any value
*/
.opt-in {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap; }

.opt-in--container {
  display: flex;
  align-items: stretch;
  border: 2px solid #383846;
  border-left: 0;
  border-radius: 0 4px 4px 0; }

.opt-in--label {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  color: #22ADF6;
  background-color: #202028;
  font-family: "RobotoMono", monospace;
  padding-right: 11px;
  line-height: 24px;
  font-size: 13px;
  font-weight: 500;
  transition: background-color 0.25s ease, color 0.25s ease; }

.opt-in--label:hover {
  cursor: pointer; }

.opt-in--label:hover:active {
  cursor: pointer;
  color: #00C9FF; }

.opt-in--groove-knob {
  width: 48px;
  position: relative;
  background-color: #202028; }

.opt-in--groove-knob,
.opt-in--groove-knob:hover {
  cursor: pointer; }

.opt-in--groove-knob:before,
.opt-in--groove-knob:after {
  position: absolute;
  top: 50%;
  content: ''; }

.opt-in--groove-knob:before {
  z-index: 2;
  width: 28px;
  height: 8px;
  border-radius: 4px;
  background-color: #434453;
  transform: translate(-50%, -50%);
  left: 50%; }

.opt-in--groove-knob:after {
  z-index: 3;
  left: 50%;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #22ADF6;
  transition: background-color 0.25s ease, transform 0.25s ease;
  transform: translate(0%, -50%); }

.opt-in--groove-knob .opt-in--gradient {
  z-index: 1;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #202028;
  background: -moz-linear-gradient(left, #202028 0%, #292933 100%);
  background: -webkit-linear-gradient(left, #202028 0%, #292933 100%);
  background: linear-gradient(to right, #202028 0%, #292933 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  transition: opacity 0.25s ease;
  opacity: 0; }

.opt-in > input.form-control {
  border-radius: 4px 0 0 4px;
  font-family: "RobotoMono", monospace;
  flex: 1 0 0; }

.opt-in.right-toggled .opt-in--groove-knob:after {
  transform: translate(-100%, -50%); }

.opt-in.right-toggled .opt-in--gradient {
  opacity: 1; }

.opt-in.right-toggled .opt-in--label {
  background-color: #292933;
  color: #676978;
  font-style: italic; }

.opt-in.right-toggled .opt-in--label:hover {
  color: #22ADF6; }

.opt-in.right-toggled .opt-in--label:hover:active {
  font-style: normal;
  color: #00C9FF; }

/*
  Styles for the Manage Organizations Page
  ------------------------------------------------------------------------------
  Is not actually a table
*/
.orgs-table--name {
  flex: 1 0 0; }

.orgs-table--public {
  width: 90px;
  text-align: center; }

.orgs-table--default-role {
  width: 130px; }

.orgs-table--delete {
  width: 30px; }

.orgs-table--active {
  width: 102px;
  justify-content: center;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.orgs-table--active,
.orgs-table--active:hover {
  cursor: default; }

.orgs-table--active .btn {
  width: 100%; }

.orgs-table--default-role.creating {
  width: 96px; }

.orgs-table--public-toggle {
  height: 30px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #31313d;
  border-radius: 4px;
  position: relative; }

.orgs-table--public-toggle > .slide-toggle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.orgs-table--public-toggle.disabled {
  color: #757888;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.orgs-table--public-toggle.disabled,
.orgs-table--public-toggle.disabled:hover {
  cursor: default; }

.page-header-dropdown {
  /* Hover & Open State */
  /* Menu */ }

.page-header-dropdown .dropdown-toggle {
  height: 38px;
  padding-left: 0;
  padding-right: 23px;
  padding-top: 0;
  padding-bottom: 0;
  min-width: 50px;
  width: auto;
  border: 0;
  background-color: transparent;
  text-transform: none;
  font-size: 19px;
  font-weight: 400 !important;
  transition: color 0.25s ease;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.page-header-dropdown .dropdown-toggle,
.page-header-dropdown .dropdown-toggle:hover {
  cursor: default; }

.page-header-dropdown .dropdown-toggle > .caret {
  right: 0; }

.page-header-dropdown .dropdown-toggle > .caret:after {
  content: "\E910";
  font-size: 17px; }

.page-header-dropdown.open .dropdown-toggle,
.page-header-dropdown .dropdown-toggle:hover {
  color: #22ADF6; }

.page-header-dropdown .dropdown-menu {
  z-index: 9000;
  width: 250px;
  min-width: 250px;
  max-width: 250px; }

.page-header-dropdown .dropdown-menu > li > a {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.page-header-dropdown .dropdown-menu > li > a,
.page-header-dropdown .dropdown-menu > li > a:hover {
  cursor: default; }

/*
    Click to Rename Page Header
    ----------------------------------------------------------------
*/
.page-header--editable {
  transition: color 0.25s ease; }

.page-header--editable:hover {
  color: #22ADF6;
  cursor: text !important; }

.page-header--editable.kapacitor-theme:hover {
  color: #4ED8A0; }

.page-header--editable .icon {
  cursor: inherit;
  margin-left: 5px;
  position: relative;
  top: -1.5px; }

.page-header--editing {
  border: 0;
  outline: none;
  background-color: #0f0e15;
  font-size: 19px;
  font-weight: 400 !important;
  padding: 0;
  flex: 1; }

.page-header--editing:focus {
  color: #22ADF6; }

.page-header--editing.kapacitor-theme:focus {
  color: #4ED8A0; }

.page-header--editing::-webkit-input-placeholder {
  color: #757888; }

.page-header--editing::-moz-placeholder {
  color: #757888; }

.page-header--editing:-ms-input-placeholder {
  color: #757888; }

.page-header--editing:-moz-placeholder {
  color: #757888; }

.page-spinner {
  border: 4px solid rgba(51, 51, 51, 0.4);
  border-left-color: #22ADF6;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: pageSpinner 0.8s infinite linear; }

.chronograf-root > .page-spinner {
  left: calc(50% + 60px); }

@keyframes pageSpinner {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
    border-left-color: #22ADF6; }
  25% {
    border-left-color: #9394FF; }
  50% {
    border-left-color: #22ADF6; }
  75% {
    border-left-color: #4ED8A0; }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
    border-left-color: #22ADF6; } }

/*
  static Legend
  ------------------------------------------------------------------------------
  Seen in a dashboard cell, below the graph
  NOTE: Styles for the parent are stored in Javascript, in staticLegend.js
*/
.static-legend {
  position: absolute;
  width: calc(100% - 32px);
  bottom: 8px;
  left: 16px;
  display: flex;
  padding-top: 8px;
  align-items: flex-end;
  flex-wrap: wrap;
  max-height: 50%;
  overflow: auto; }

.static-legend::-webkit-scrollbar {
  width: 16px; }

.static-legend::-webkit-scrollbar-button {
  background-color: #292933; }

.static-legend::-webkit-scrollbar-track {
  background-color: #292933; }

.static-legend::-webkit-scrollbar-track-piece {
  background-color: #292933;
  border: 3px solid #292933;
  border-radius: 8px; }

.static-legend::-webkit-scrollbar-thumb {
  background-color: #434453;
  border: 3px solid #292933;
  border-radius: 8px; }

.static-legend::-webkit-scrollbar-corner {
  background-color: #292933; }

.static-legend::-webkit-resizer {
  background-color: #292933; }

.static-legend--item,
.static-legend--single {
  height: 19px;
  line-height: 19px;
  white-space: nowrap;
  background-color: #31313d;
  border-radius: 3px;
  color: #ffffff;
  font-size: 11px;
  font-weight: 600;
  padding: 0 6px;
  margin: 1px; }

.static-legend--item {
  transition: background-color 0.25s ease, color 0.25s ease; }

.static-legend--item span {
  opacity: 0.8;
  transition: opacity 0.25s ease; }

.static-legend--item:hover {
  cursor: pointer;
  background-color: #434453; }

.static-legend--item:hover span {
  opacity: 1; }

.static-legend--item.disabled {
  background-color: #1c1c21;
  font-style: italic; }

.static-legend--item.disabled span {
  opacity: 0.35; }

.static-legend--item.disabled:hover {
  background-color: #202028; }

.static-legend--item.disabled:hover span {
  opacity: 0.65; }

/*
    Query Maker
    -------------------------------------------------------------
    Consists of two parts:
      - Query Editor (Manual query entry)
      - Query Builder (Asssited query construction)
*/
.query-maker {
  height: 100%;
  margin: 0 60px;
  display: flex;
  flex-direction: column;
  align-items: stretch; }

/*
    Variables
    -------------------------------------------------------------
*/
/* ^ These 2 should total 86px */
/*
    Tabs & Tab Contents
    -------------------------------------------------------------
    Controls which query is currently being modified
*/
.query-maker--tabs {
  margin: 16px 0 0 0;
  display: flex;
  height: 44px;
  align-items: center; }

.query-maker--tabs > div.btn.query-maker--new {
  margin-left: 6px;
  padding: 0 8px !important; }

.query-maker--new > span.icon {
  margin: 0 !important; }

.query-maker--tab {
  border-radius: 4px 4px 0 0;
  height: 44px;
  margin: 0 2px 0 0;
  max-width: 340px;
  flex: 1 0 0;
  color: #999dab;
  background: #292933;
  position: relative;
  transition: color 0.25s ease, background-color 0.25s ease; }

.query-maker--tab:hover {
  cursor: pointer;
  color: #d4d7dd;
  background-color: #31313d; }

.query-maker--tab.active {
  color: #f6f6f8;
  background: #383846; }

.query-maker--tab > label,
.query-maker--delete {
  top: 50%;
  transform: translateY(-50%);
  position: absolute; }

.query-maker--tab > label {
  left: 12px;
  font-size: 14px;
  font-weight: 600;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  width: calc(100% - 44px);
  text-overflow: ellipsis;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  cursor: inherit !important; }

.query-maker--tab > label,
.query-maker--tab > label:hover {
  cursor: default; }

.query-maker--delete {
  margin: 0;
  width: 18px;
  height: 18px;
  background-color: transparent;
  display: block;
  right: 9px; }

.query-maker--delete:before,
.query-maker--delete:after {
  display: block;
  content: '';
  width: 10px;
  height: 2px;
  border-radius: 1px;
  background-color: #676978;
  transition: background-color 0.25s ease;
  position: absolute;
  top: 50%;
  left: 50%; }

.query-maker--delete:before {
  transform: translate(-50%, -50%) rotate(45deg); }

.query-maker--delete:after {
  transform: translate(-50%, -50%) rotate(-45deg); }

.query-maker--delete:hover:before,
.query-maker--delete:hover:after {
  background-color: #FF8564; }

.query-maker--tab-contents {
  border-radius: 0 4px 4px 4px;
  display: flex;
  flex-direction: column; }

.query-maker--tab-contents,
.query-maker--empty {
  flex: 1 0 0%;
  margin: 0 0 16px 0;
  background-color: #292933; }

.query-maker--empty {
  border-radius: 4px;
  text-align: center;
  color: #8e91a1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }

.query-maker--empty,
.query-maker--empty > * {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.query-maker--empty,
.query-maker--empty:hover,
.query-maker--empty > *,
.query-maker--empty > *:hover {
  cursor: default; }

/*
    Sub-Components
    -------------------------------------------------------------
*/
/*
  Query Editor
  -------------------------------------
  Displays generated query from Query Builder
  User can manually type a query as well

  NOTE: Variables are located in query-maker.scss
*/
.query-editor {
  padding: 8px 8px 0 8px;
  border-radius: 0 4px 0 0;
  background-color: #383846;
  position: relative;
  z-index: 3;
  /* Minimum amount to obcure the toggle flip within Query Builder. Will fix later */ }

.query-editor--field {
  font-family: "RobotoMono", monospace;
  font-size: 12px;
  line-height: 14px;
  font-weight: 600;
  word-wrap: break-word;
  word-break: break-all;
  display: block;
  resize: none;
  width: 100%;
  height: 52px;
  transition: color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease;
  border: 2px solid #383846;
  border-bottom: 0;
  background-color: #202028;
  color: #22ADF6;
  padding: 12px 10px 0 10px;
  border-radius: 4px 4px 0 0;
  margin: 0; }

.query-editor--field::-webkit-scrollbar {
  width: 16px; }

.query-editor--field::-webkit-scrollbar-button {
  background-color: #202028; }

.query-editor--field::-webkit-scrollbar-track {
  background-color: #202028; }

.query-editor--field::-webkit-scrollbar-track-piece {
  background-color: #202028;
  border: 3px solid #202028;
  border-radius: 8px; }

.query-editor--field::-webkit-scrollbar-thumb {
  background-color: #22ADF6;
  border: 3px solid #202028;
  border-radius: 8px; }

.query-editor--field::-webkit-scrollbar-corner {
  background-color: #202028; }

.query-editor--field::-webkit-resizer {
  background-color: #202028; }

.query-editor--field:hover,
.query-editor--field:hover + .query-editor--status {
  border-color: #383846; }

.query-editor--field:focus {
  outline: none;
  color: #22ADF6 !important;
  border-color: #22ADF6; }

.query-editor--field:focus + .varmoji {
  border-color: #22ADF6; }

.query-editor--status {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 34px;
  /* Loading State */ }

.query-editor--status .loading-dots {
  bottom: 15px;
  left: 25px;
  transform: translateY(50%); }

.query-status-output {
  flex: 1 0 0%;
  display: inline-block;
  color: #999dab;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 10px;
  line-height: 34px;
  font-size: 12px;
  font-family: "RobotoMono", monospace;
  /* Error State */
  /* Warning State */
  /* Success State */ }

.query-status-output span.icon {
  margin-right: 5px; }

.query-status-output.query-status-output--error {
  color: #FF8564; }

.query-status-output.query-status-output--warning {
  color: #FFB94A; }

.query-status-output.query-status-output--success {
  color: #4ED8A0; }

.dropdown.query-editor--templates {
  margin: 0 4px 0 0; }

.dropdown.query-editor--templates .dropdown-menu {
  left: initial;
  right: 0;
  width: 200px;
  min-width: 200px;
  max-width: 200px; }

/*
  Varmoji Flipper
  -------------------------------------
  Handles the 3D flip transition between two states (isTemplating)
  Contents could in theory be anything
*/
.varmoji {
  transition: border-color 0.25s ease;
  border: 2px solid #383846;
  border-top: 0;
  background-color: #202028;
  border-radius: 0 0 4px 4px;
  height: 34px;
  width: 100%;
  perspective: 1000px; }

.varmoji-container {
  transition: transform 0.6s ease;
  transform-style: preserve-3d;
  position: relative;
  transform-origin: 100% 17px; }

.varmoji-front,
.varmoji-back {
  backface-visibility: hidden;
  width: 100%;
  height: 34px;
  position: absolute;
  top: 0;
  left: 0; }

.varmoji-front {
  z-index: 3;
  transform: rotateX(0deg); }

.varmoji-back {
  z-index: 2;
  transform: rotateX(180deg); }

.varmoji.varmoji-rotated .varmoji-container {
  transform: rotateX(-180deg); }

/*
  Template Drawer
  -------------------------------------
  Not sure if this needs its own stylesheet
*/
.template-drawer {
  height: 34px;
  width: 100%;
  display: flex;
  align-items: center;
  padding: 0 4px; }

.template-drawer--item {
  margin-right: 2px;
  display: inline-block;
  font-family: "RobotoMono", monospace;
  font-weight: 700;
  font-size: 12px;
  height: 20px;
  line-height: 20px;
  padding: 0 6px;
  background-color: #202028;
  color: #9394FF;
  border-radius: 3px;
  cursor: pointer;
  transition: color 0.25s ease, background-color 0.25s ease;
  /* Selected State */ }

.template-drawer--item.template-drawer--selected {
  color: #ffffff;
  background-color: #7A65F2; }

.template-drawer--item .divider {
  background: linear-gradient(to right, #00C9FF 0%, #22ADF6 100%); }

/*
    Query Builder
    -------------------------------------------------------------
    NOTE: Variables are located in query-maker.scss
*/
.query-builder {
  width: 100%;
  flex: 1 0 0%;
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap; }

.query-builder--column {
  display: flex;
  flex-direction: column;
  flex: 2 0 0%; }

.query-builder--column-db {
  flex: 1 0 0%; }

.query-builder--heading {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  width: 100%;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 14px;
  font-weight: 600;
  color: #bec2cc;
  background-color: #383846;
  padding: 0 16px 0 11px;
  line-height: 50px;
  /* Accounting for headings w/ optional second item */ }

.query-builder--heading,
.query-builder--heading:hover {
  cursor: default; }

.query-builder--heading > span {
  margin-right: 16px; }

.query-builder--list,
.query-builder--list-empty {
  flex: 1 0 0%; }

.query-builder--list {
  padding: 0;
  background-color: #292933; }

.query-builder--list-empty {
  background-color: #292933;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #8e91a1; }

.query-builder--list-empty,
.query-builder--list-empty * {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.query-builder--list-empty,
.query-builder--list-empty:hover,
.query-builder--list-empty *,
.query-builder--list-empty *:hover {
  cursor: default; }

.query-builder--list-item {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  background-color: transparent;
  color: #999dab;
  height: 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style-type: none;
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  padding: 0 11px;
  transition: color 0.25s ease, background-color 0.25s ease;
  /* Active State */
  /* Hide dropdowns unless item is active */
  /* Sub-item group for layout purposes */
  /* Disabled State */ }

.query-builder--list-item,
.query-builder--list-item:hover {
  cursor: default; }

.query-builder--list-item:hover {
  background-color: #31313d;
  color: #d4d7dd;
  cursor: pointer; }

.query-builder--list-item.active {
  background-color: #31313d;
  color: #f6f6f8; }

.query-builder--list-item > .dropdown {
  visibility: hidden; }

.query-builder--list-item.active > .dropdown {
  visibility: visible; }

.query-builder--list-item > span {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  white-space: nowrap;
  margin-right: 8px; }

.query-builder--list-item.disabled {
  font-style: italic;
  color: #757888; }

.query-builder--list-item.disabled:hover {
  cursor: default;
  background-color: transparent; }

.query-builder--list-item.disabled.active {
  background-color: #31313d; }

/* Filter Element */
.query-builder--filter {
  flex: 1 0 0%;
  display: flex; }

.query-builder--filter > span {
  font-size: 12px;
  line-height: 30px;
  order: 1;
  width: 20px;
  margin-right: -20px;
  text-align: right;
  position: relative;
  z-index: 2;
  transition: color 0.25s ease;
  color: #757888; }

.query-builder--filter > input.form-control {
  order: 2;
  padding-left: 24px;
  border-color: #434453 !important; }

.query-builder--filter > input.form-control:hover {
  border-color: #545667 !important; }

.query-builder--filter > input.form-control:focus {
  border-color: #22ADF6 !important; }

.query-builder--filter > input.form-control:focus + span {
  color: #22ADF6; }

/* Checkbox Element */
.query-builder--checkbox {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  border-radius: 3px;
  background-color: #202028;
  position: relative;
  margin-right: 5px; }

.query-builder--checkbox:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1, 1);
  width: 20px;
  height: 20px;
  opacity: 0;
  background-color: #22ADF6;
  border-radius: 50%;
  transition: transform 0.25s ease, opacity 0.25s ease; }

.disabled .query-builder--checkbox:after {
  background-color: #383846; }

.query-builder--list-item.active .query-builder--checkbox:after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(0.4, 0.4); }

/* Caret Element */
.query-builder--caret {
  margin-right: 5px;
  transform: rotate(0deg);
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }

.query-builder--list-item.active .query-builder--caret {
  transform: rotate(90deg); }

/* Sub lists (Used for the tags list) */
.query-builder--sub-list {
  padding: 4px 11px 4px 24px;
  background-color: #31313d; }

.query-builder--sub-list .query-builder--list-item {
  padding: 0; }

.query-builder--sub-list .query-builder--filter {
  margin-bottom: 4px; }

/* Toggle for grouping by tags in tags list */
.group-by-tag {
  visibility: hidden; }

.group-by-tag.active {
  visibility: visible;
  background: #22ADF6;
  color: #ffffff; }

.group-by-tag.active:hover {
  background: #00C9FF;
  color: #ffffff; }

.query-builder--list-item:hover .group-by-tag,
.query-builder--list-item.active .group-by-tag,
.query-builder--list-item .group-by-tag.btn-primary {
  visibility: visible; }

.query-builder--db-dropdown {
  display: inline-block; }

/* Container for group by and fill dropdowns to live side-by-side */
.query-builder--groupby-fill-container {
  display: flex;
  alignItems: center; }

@media only screen and (min-width: 1500px) {
  .data-explorer .query-builder--list-item {
    font-size: 14px; }
  .data-explorer .query-builder--heading {
    font-size: 15px; } }

@media only screen and (min-width: 1800px) {
  .data-explorer .query-builder--list-item {
    font-size: 15px; }
  .data-explorer .query-builder--heading {
    font-size: 16px; }
  .data-explorer .query-editor--field {
    font-size: 14px;
    line-height: 16px; } }

@media only screen and (min-width: 2100px) {
  .data-explorer .query-builder--list-item {
    letter-spacing: 0.3px; }
  .data-explorer .query-builder--heading {
    font-size: 17px;
    font-weight: 400; }
  .data-explorer .query-maker .multi-select-dropdown .dropdown-toggle {
    width: 140px; }
  .data-explorer .query-editor--field {
    font-size: 16px;
    line-height: 18px; } }

/*
    Custom Tooltips
    ----------------------------------------------

    Using npm/react-tooltip
    http://wwayne.com/react-tooltip/
*/
.__react_component_tooltip.influx-tooltip,
.__react_component_tooltip.influx-tooltip__hover {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3em;
  padding: 8px;
  white-space: pre-wrap;
  word-break: keep-all;
  border-radius: 5px;
  text-transform: none;
  text-align: left;
  cursor: default;
  /* Kapacitor Style Tooltip */ }

.__react_component_tooltip.influx-tooltip.type-dark,
.__react_component_tooltip.type-dark.influx-tooltip__hover {
  background-color: #383846;
  color: #fafafc;
  border: 2px solid #22ADF6; }

.__react_component_tooltip.influx-tooltip.type-dark.place-top:after,
.__react_component_tooltip.type-dark.place-top.influx-tooltip__hover:after {
  border-top-color: #22ADF6; }

.__react_component_tooltip.influx-tooltip.type-dark.place-right:after,
.__react_component_tooltip.type-dark.place-right.influx-tooltip__hover:after {
  border-right-color: #22ADF6; }

.__react_component_tooltip.influx-tooltip.type-dark.place-bottom:after,
.__react_component_tooltip.type-dark.place-bottom.influx-tooltip__hover:after {
  border-bottom-color: #22ADF6; }

.__react_component_tooltip.influx-tooltip.type-dark.place-left:after,
.__react_component_tooltip.type-dark.place-left.influx-tooltip__hover:after {
  border-left-color: #22ADF6; }

.__react_component_tooltip.influx-tooltip h1,
.__react_component_tooltip.influx-tooltip__hover h1 {
  font-size: 14px;
  font-weight: 600;
  margin: 8px 0;
  line-height: 1.125em;
  letter-spacing: 0;
  font-family: "Roboto", Helvetica, sans-serif; }

.__react_component_tooltip.influx-tooltip h1:first-of-type,
.__react_component_tooltip.influx-tooltip__hover h1:first-of-type {
  margin-top: 0; }

.__react_component_tooltip.influx-tooltip p,
.__react_component_tooltip.influx-tooltip__hover p {
  margin: 0;
  width: 100%;
  display: inline-block;
  padding: 0;
  white-space: nowrap; }

.__react_component_tooltip.influx-tooltip code,
.__react_component_tooltip.influx-tooltip__hover code {
  background-color: #202028;
  border: 0;
  padding: 3px 6px 4px 6px;
  font-size: 11px;
  border-radius: 3px;
  margin: 1px 2px 1px 0;
  color: #B1B6FF;
  white-space: nowrap;
  display: inline-block;
  font-weight: 900; }

.__react_component_tooltip.influx-tooltip.kapacitor-tooltip,
.__react_component_tooltip.kapacitor-tooltip.influx-tooltip__hover {
  border-color: #4ED8A0 !important; }

.__react_component_tooltip.influx-tooltip.kapacitor-tooltip code,
.__react_component_tooltip.kapacitor-tooltip.influx-tooltip__hover code {
  color: #22ADF6 !important; }

.__react_component_tooltip.influx-tooltip.kapacitor-tooltip.type-dark.place-top:after,
.__react_component_tooltip.kapacitor-tooltip.type-dark.place-top.influx-tooltip__hover:after {
  border-top-color: #4ED8A0; }

.__react_component_tooltip.influx-tooltip.kapacitor-tooltip.type-dark.place-right:after,
.__react_component_tooltip.kapacitor-tooltip.type-dark.place-right.influx-tooltip__hover:after {
  border-right-color: #4ED8A0; }

.__react_component_tooltip.influx-tooltip.kapacitor-tooltip.type-dark.place-bottom:after,
.__react_component_tooltip.kapacitor-tooltip.type-dark.place-bottom.influx-tooltip__hover:after {
  border-bottom-color: #4ED8A0; }

.__react_component_tooltip.influx-tooltip.kapacitor-tooltip.type-dark.place-left:after,
.__react_component_tooltip.kapacitor-tooltip.type-dark.place-left.influx-tooltip__hover:after {
  border-left-color: #4ED8A0; }

.influx-tooltip__hover {
  pointer-events: auto !important; }

.influx-tooltip__hover:hover {
  visibility: visible !important;
  opacity: 1 !important; }

/*
    Question Mark Tooltip
    ----------------------------------------------
*/
.question-mark-tooltip {
  display: inline-block; }

.question-mark-tooltip--icon {
  position: relative;
  top: -1px;
  vertical-align: middle;
  display: inline-block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  text-align: center;
  line-height: 16px;
  font-weight: 900;
  background-color: #8e91a1;
  color: #0f0e15;
  margin: 0 5px;
  transition: background-color 0.25s ease; }

.question-mark-tooltip:hover {
  cursor: default; }

.question-mark-tooltip:hover .question-mark-tooltip--icon {
  background-color: #22ADF6; }

a > .question-mark-tooltip:hover {
  cursor: pointer; }

.redacted-input {
  height: 38px;
  align-items: center;
  justify-content: space-between; }

.alert-value-set {
  font-weight: 700;
  font-size: 13px;
  color: #4ED8A0;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.alert-value-set,
.alert-value-set:hover {
  cursor: default; }

.alert-value-set .icon {
  margin-right: 5px; }

/*
    Resizable Container
    ----------------------------------------------
*/
.resize--container {
  overflow: hidden !important; }

.resize--container.resize--dragging * {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.resize--container.resize--dragging *,
.resize--container.resize--dragging *:hover {
  cursor: default; }

.resize--top,
.resize--bottom {
  position: absolute;
  width: 100%;
  left: 0; }

.resizer--full-size {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/*
    Resizable Container Handle
    ----------------------------------------------
*/
.resizer--handle {
  top: 60%;
  left: 0;
  height: 28px;
  margin-top: -14px;
  margin-bottom: -14px;
  width: 100%;
  z-index: 1;
  user-select: none;
  -webkit-user-select: none;
  position: absolute; }

.resizer--handle:before {
  z-index: 3;
  color: #292933;
  letter-spacing: 1.3px;
  font-size: 7px;
  content: '\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF\25CF';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 160px;
  height: 10px;
  line-height: 10px;
  background-color: #383846;
  border-radius: 3px;
  white-space: nowrap;
  text-align: center;
  transition: background-color 0.25s ease; }

.resizer--handle:after {
  z-index: 2;
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  height: 2px;
  background-color: #383846;
  box-shadow: 0 0 0 transparent;
  transition: background-color 0.19s ease; }

.resizer--handle:hover {
  cursor: ns-resize; }

.resizer--handle:hover:before {
  background-color: #676978; }

.resizer--handle:hover:after {
  background-color: #676978; }

.resizer--handle.dragging:before,
.resizer--handle.dragging:after {
  transition: box-shadow 0.3s ease, background-color 0.3s ease;
  background-color: #22ADF6;
  box-shadow: 0 0 14px #22ADF6; }

/* Kapacitor Theme */
.resizer--handle.resizer--malachite.dragging:before,
.resizer--handle.resizer--malachite.dragging:after {
  background-color: #4ED8A0;
  box-shadow: 0 0 14px #4ED8A0; }

/*
    Search Widget
    ----------------------------------------------------------------------------
*/
.search-widget {
  position: relative; }

.search-widget:first-child {
  margin-right: 8px; }

.search-widget:only-child {
  margin-right: 0; }

.search-widget input.form-control {
  position: relative;
  z-index: 1;
  padding-left: 34px; }

.search-widget input.form-control:focus + .icon {
  color: #22ADF6; }

.search-widget .icon {
  position: absolute;
  color: #8e91a1;
  top: 50%;
  left: 20px;
  transform: translate(-50%, -50%);
  z-index: 4;
  transition: color 0.25s ease; }

/*
  Slide Toggle Component
  ------------------------------------------------------------------------------
*/
.slide-toggle {
  background-color: #1c1c21;
  position: relative;
  padding: 0 4px;
  display: inline-block;
  transition: background-color 0.25s ease; }

.slide-toggle:hover {
  cursor: pointer;
  background-color: #202028; }

.slide-toggle--knob {
  position: absolute;
  top: 50%;
  transition: background-color 0.25s ease, transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  background-color: #434453;
  transform: translate(0, -50%);
  border-radius: 50%; }

.slide-toggle:hover .slide-toggle--knob {
  background-color: #676978; }

/* Active State */
.slide-toggle.active .slide-toggle--knob {
  background-color: #4ED8A0;
  transform: translate(100%, -50%); }

.slide-toggle.active:hover .slide-toggle--knob {
  background-color: #7CE490; }

/* Disabled State */
.slide-toggle.disabled,
.slide-toggle.disabled:hover,
.slide-toggle.disabled.active,
.slide-toggle.disabled.active:hover {
  background-color: #202028;
  cursor: not-allowed; }

.slide-toggle.disabled .slide-toggle--knob,
.slide-toggle.disabled:hover .slide-toggle--knob,
.slide-toggle.disabled.active .slide-toggle--knob,
.slide-toggle.disabled.active:hover .slide-toggle--knob {
  opacity: 0.25; }

.slide-toggle.disabled .slide-toggle--knob,
.slide-toggle.disabled:hover .slide-toggle--knob {
  background-color: #434453; }

.slide-toggle.disabled.active .slide-toggle--knob,
.slide-toggle.disabled.active:hover .slide-toggle--knob {
  background-color: #4ED8A0; }

/* Size Modifiers */
.slide-toggle {
  /* Extra Small */
  /* Extra Small */ }

.slide-toggle.slide-toggle__xs {
  height: 22px;
  border-radius: 11px;
  width: 40px; }

.slide-toggle.slide-toggle__xs .slide-toggle--knob {
  width: 16px;
  height: 16px; }

.slide-toggle.slide-toggle__sm {
  height: 30px;
  border-radius: 15px;
  width: 52px; }

.slide-toggle.slide-toggle__sm .slide-toggle--knob {
  width: 22px;
  height: 22px; }

/*
    Source & Role Indicator component styles
    ----------------------------------------------------------------------------
*/
.role-indicator,
.source-indicator {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  display: inline-block;
  padding: 0 4px;
  border: 0;
  height: 30px;
  line-height: 30px;
  color: #bec2cc;
  font-weight: 700;
  font-size: 12px; }

.role-indicator,
.role-indicator:hover,
.source-indicator,
.source-indicator:hover {
  cursor: default; }

.role-indicator > .icon,
.source-indicator > .icon {
  display: inline-block;
  font-size: 16px;
  margin: 0 4px; }

/*
    Source Selector component styles
    ----------------------------------------------------------------
*/
.source-selector {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  flex: 1 0 0; }

.source-selector h3 {
  margin: 0 4px 0 0;
  font-size: 17px;
  color: #bec2cc;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.source-selector h3,
.source-selector h3:hover {
  cursor: default; }

/*
    Table Styles
    ----------------------------------------------
    Most table styles are located in the Bootstrap
    Theme. Styles in here are for specific additions
    to tables that bootstrap does not do on its own
*/
.table-custom {
  display: table !important;
  border-collapse: separate;
  border-spacing: 2px;
  width: 100%;
  padding: 10px; }

.table-custom .thead {
  display: table-header-group;
  color: white;
  color: #eeeff2 !important;
  border-width: 1px; }

.table-custom .th {
  display: table-cell;
  font-weight: 700;
  color: #c6cad3 !important;
  border: 0 !important;
  padding: 6px 8px !important; }

.table-custom .tbody {
  display: table-row-group; }

.table-custom .tr {
  display: table-row; }

.table-custom .td {
  display: table-cell;
  font-weight: 500;
  color: #c6cad3 !important;
  border: 0 !important;
  padding: 6px 8px !important; }

.table-custom .tr .td .input {
  background-color: #383846;
  color: #fafafc !important; }

/*
    Sortable Tables
    ----------------------------------------------
*/
table.table thead th.sortable-header,
.alert-history-table--th.sortable-header {
  transition: color 0.25s ease, background-color 0.25s ease;
  position: relative; }

table.table thead th.sortable-header:after,
.alert-history-table--th.sortable-header:after {
  content: '\E910';
  display: block;
  position: absolute;
  top: 50%;
  right: 8px;
  color: #ffffff;
  font-family: 'icomoon';
  opacity: 0;
  transform: translateY(-50%);
  transition: opacity 0.25s ease, color 0.25s ease, transform 0.35s ease; }

table.table thead th.sortable-header:hover,
.alert-history-table--th.sortable-header:hover {
  cursor: pointer;
  color: #fafafc;
  background-color: #383846; }

table.table thead th.sortable-header.sorting-ascending,
table.table thead th.sortable-header.sorting-descending,
.alert-history-table--th.sortable-header.sorting-ascending,
.alert-history-table--th.sortable-header.sorting-descending {
  background-color: #383846;
  color: #fafafc; }

table.table thead th.sortable-header.sorting-ascending:after,
table.table thead th.sortable-header.sorting-descending:after,
.alert-history-table--th.sortable-header.sorting-ascending:after,
.alert-history-table--th.sortable-header.sorting-descending:after {
  opacity: 1; }

table.table thead th.sortable-header.sorting-ascending:after,
.alert-history-table--th.sortable-header.sorting-ascending:after {
  transform: translateY(-50%) rotate(180deg); }

table.table thead th.sortable-header.sorting-descending:after,
.alert-history-table--th.sortable-header.sorting-descending:after {
  transform: translateY(-50%) rotate(0deg); }

/*
    Empty State for Tables
    ----------------------------------------------
*/
tr.table-empty-state,
.table.table-highlight > tbody > tr.table-empty-state:hover {
  background-color: transparent; }

tr.table-empty-state > th,
.table.table-highlight > tbody > tr.table-empty-state:hover > th {
  text-align: center;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

tr.table-empty-state > th,
tr.table-empty-state > th:hover,
.table.table-highlight > tbody > tr.table-empty-state:hover > th,
.table.table-highlight > tbody > tr.table-empty-state:hover > th:hover {
  cursor: default; }

tr.table-empty-state > th > p,
.table.table-highlight > tbody > tr.table-empty-state:hover > th > p {
  font-weight: 400;
  font-size: 18px;
  color: #757888;
  margin-bottom: 16px; }

tr.table-empty-state > th > *:first-child,
.table.table-highlight > tbody > tr.table-empty-state:hover > th > *:first-child {
  margin-top: 75px; }

tr.table-empty-state > th > *:last-child,
.table.table-highlight > tbody > tr.table-empty-state:hover > th > *:last-child {
  margin-bottom: 75px; }

/*
    Table Tabs
    ----------------------------------------------
*/
.table--tabs {
  display: flex;
  height: 30px;
  align-items: center; }

.table--tab {
  font-size: 12px;
  font-weight: 600;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  height: 30px;
  border-radius: 3px 3px 0 0;
  line-height: 30px;
  padding: 0 6px;
  background-color: #31313d;
  color: #999dab;
  margin-right: 2px;
  transition: color 0.25s ease, background-color 0.25s ease; }

.table--tab,
.table--tab:hover {
  cursor: default; }

.table--tab:hover {
  background-color: #383846;
  color: #d4d7dd;
  cursor: pointer; }

.table--tab.active {
  background-color: #434453;
  color: #f6f6f8; }

.table--tabs-dropdown {
  display: inline-block; }

.table--tabs-content {
  width: 100%;
  height: calc(100% - 30px);
  position: absolute;
  top: 30px; }

.table--tabs + .table--tabs-content > .generic-empty-state {
  background-color: #434453 !important;
  border-radius: 0 3px 3px 3px; }

.table > tbody > tr.highlight,
.table.table-highlight > tbody > tr.highlight {
  background-color: #31313d; }

/*
    Alert History "Page"
    ----------------------------------------------
*/
.alert-history-page .page-contents > .container-fluid,
.alert-history-page .page-contents > .container-fluid > .row,
.alert-history-page .page-contents > .container-fluid > .row > .col-md-12,
.alert-history-page .page-contents > .container-fluid > .row > .col-md-12 > .panel,
.hosts-list-page .page-contents > .container-fluid,
.hosts-list-page .page-contents > .container-fluid > .row,
.hosts-list-page .page-contents > .container-fluid > .row > .col-md-12,
.hosts-list-page .page-contents > .container-fluid > .row > .col-md-12 > .panel {
  height: 100%; }

.alert-history-page .col-md-12 > .panel,
.hosts-list-page .col-md-12 > .panel {
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.alert-history-page .col-md-12 > .panel > .panel-body,
.hosts-list-page .col-md-12 > .panel > .panel-body {
  flex: 1 0 0%; }

.alert-history-page .col-md-12 > .panel .generic-empty-state,
.hosts-list-page .col-md-12 > .panel .generic-empty-state {
  height: 100%; }

/*
    Misc
    ----------------------------------------------
*/
.table .empty-string {
  font-weight: 500;
  color: #676978;
  font-style: italic; }

.table .table--temp-var {
  color: #9394FF;
  font-weight: 600; }

/*
    Alert History "Table"
    ----------------------------------------------
*/
.alert-history-table {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.alert-history-table--thead {
  display: flex;
  width: 100%;
  border-bottom: 2px solid #383846; }

.alert-history-table--th {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  padding: 8px;
  font-size: 13px;
  font-weight: 500;
  color: #eeeff2; }

.alert-history-table--th,
.alert-history-table--th:hover {
  cursor: default; }

.alert-history-table--tbody {
  flex: 1 0 0;
  width: 100%; }

.alert-history-table--tr {
  display: flex;
  width: 100%; }

.alert-history-table--tr:hover {
  background-color: #31313d; }

.alert-history-table--td {
  font-size: 12px;
  font-family: "RobotoMono", monospace;
  font-weight: 500;
  padding: 4px 8px;
  line-height: 1.42857143em;
  color: #bec2cc;
  white-space: pre-wrap;
  word-break: break-all; }

.alert-history-table--td.alert-history-table--host {
  white-space: nowrap;
  word-break: normal;
  overflow: hidden;
  text-overflow: ellipsis; }

/*
    No Wrap Cells
    ----------------------------------------------
*/
table .table-cell-nowrap {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

/*
    Hosts "Table"
    ----------------------------------------------
*/
.hosts-table {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.hosts-table--thead {
  display: flex;
  width: 100%;
  border-bottom: 2px solid #383846; }

.hosts-table--th {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  padding: 8px;
  font-size: 13px;
  font-weight: 500;
  color: #eeeff2; }

.hosts-table--th,
.hosts-table--th:hover {
  cursor: default; }

.hosts-table--tbody {
  flex: 1 0 0;
  width: 100%; }

.hosts-table--tr {
  display: flex;
  width: 100%; }

.hosts-table--tr:hover {
  background-color: #31313d; }

.hosts-table--td {
  font-size: 12px;
  font-family: "RobotoMono", monospace;
  font-weight: 500;
  padding: 4px 8px;
  line-height: 1.42857143em;
  color: #bec2cc;
  white-space: pre-wrap;
  word-break: break-all; }

/*
    Table Type Graphs in Dashboards
    ----------------------------------------------------------------------------
*/
.table-graph-container {
  position: absolute;
  width: calc(100% - 32px);
  height: calc(100% - 16px);
  top: 8px;
  left: 16px;
  border: 2px solid #383846;
  border-radius: 3px;
  overflow: hidden; }

.table-graph-cell {
  user-select: text !important;
  -o-user-select: text !important;
  -moz-user-select: text !important;
  -webkit-user-select: text !important;
  line-height: 28px;
  padding: 0 6px;
  font-size: 12px;
  font-weight: 500;
  color: #a4a8b6;
  border: 1px solid #383846;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }

.table-graph-cell:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background-color: rgba(255, 255, 255, 0.2);
  visibility: hidden;
  box-sizing: border-box; }

.table-graph-cell__numerical {
  font-family: "RobotoMono", monospace;
  text-align: right; }

.table-graph-cell__fixed-row,
.table-graph-cell__fixed-column {
  font-weight: 700;
  color: #c6cad3;
  background-color: #31313d; }

.table-graph-cell__fixed-row {
  border-top: 0; }

.table-graph-cell__fixed-column {
  border-left: 0; }

.table-graph-cell__fixed-corner {
  font-weight: 700;
  border-top: 0;
  border-left: 0;
  color: #f6f6f8;
  background-color: #383846; }

.table-graph-cell__highlight-row:after,
.table-graph-cell__highlight-column:after {
  visibility: visible; }

.table-graph-cell__highlight-row.table-graph-cell__highlight-column {
  border-color: #ffffff; }

.table-graph-cell__highlight-row.table-graph-cell__highlight-column:after {
  visibility: hidden; }

.table-graph-cell__field-name {
  padding-right: 17px; }

.table-graph-cell__field-name:before {
  font-family: "icomoon";
  content: "\E902";
  font-size: 17px;
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
  font-size: 13px;
  opacity: 0;
  transition: opacity 0.25s ease, color 0.25s ease, transform 0.25s ease; }

.table-graph-cell__field-name:hover {
  cursor: pointer; }

.table-graph-cell__field-name:hover:before {
  opacity: 1; }

.table-graph-cell__sort-asc,
.table-graph-cell__sort-desc {
  color: #22ADF6; }

.table-graph-cell__sort-asc:before,
.table-graph-cell__sort-desc:before {
  opacity: 1; }

.table-graph-cell__sort-asc:before {
  transform: translateY(-50%) rotate(0deg); }

.table-graph-cell__sort-desc:before {
  transform: translateY(-50%) rotate(180deg); }

.ReactVirtualized__Grid:focus {
  outline: none; }

.ReactVirtualized__Grid::-webkit-scrollbar {
  width: 0px;
  height: 0px; }

.ReactVirtualized__Grid.table-graph--scroll-window::-webkit-scrollbar {
  width: 10px;
  height: 10px; }

.ReactVirtualized__Grid.table-graph--scroll-window::-webkit-scrollbar-button {
  background-color: #383846; }

.ReactVirtualized__Grid.table-graph--scroll-window::-webkit-scrollbar-track {
  background-color: #383846; }

.ReactVirtualized__Grid.table-graph--scroll-window::-webkit-scrollbar-track-piece {
  background-color: #383846;
  border: 2px solid #383846;
  border-radius: 5px; }

.ReactVirtualized__Grid.table-graph--scroll-window::-webkit-scrollbar-thumb {
  background-color: #999dab;
  border: 2px solid #383846;
  border-radius: 5px; }

.ReactVirtualized__Grid.table-graph--scroll-window::-webkit-scrollbar-corner {
  background-color: #383846; }

.ReactVirtualized__Grid.table-graph--scroll-window::-webkit-resizer {
  background-color: #383846; }

/*
  Resizable Container with 3 divisions
  ------------------------------------------------------------------------------
*/
.threesizer {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: stretch; }

.threesizer.dragging .threesizer--division {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  pointer-events: none; }

.threesizer.dragging .threesizer--division,
.threesizer.dragging .threesizer--division:hover {
  cursor: default; }

.threesizer.vertical {
  flex-direction: row; }

.threesizer.horizontal {
  flex-direction: column; }

.threesizer--division {
  overflow: hidden;
  display: flex;
  align-items: stretch;
  transition: height 0.25s ease-in-out, width 0.25s ease-in-out; }

.threesizer--division.dragging {
  transition: none; }

.threesizer--division.vertical {
  flex-direction: row; }

.threesizer--division.horizontal {
  flex-direction: column; }

/* Draggable Handle With Title */
.threesizer--handle {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  background-color: #31313d;
  transition: background-color 0.25s ease, color 0.25s ease; }

.threesizer--handle,
.threesizer--handle:hover {
  cursor: default; }

.threesizer--handle.vertical {
  border-right: solid 2px #292933; }

.threesizer--handle.vertical:hover,
.threesizer--handle.vertical.dragging {
  cursor: col-resize; }

.threesizer--handle.horizontal {
  border-bottom: solid 2px #292933; }

.threesizer--handle.horizontal:hover,
.threesizer--handle.horizontal.dragging {
  cursor: row-resize; }

.threesizer--handle:hover {
  color: #e7e8eb;
  background-color: #383846; }

.threesizer--handle:hover.disabled {
  cursor: pointer; }

.threesizer--handle.dragging {
  color: #00C9FF;
  background-color: #383846; }

.threesizer--title {
  padding-left: 14px;
  position: relative;
  font-size: 16px;
  font-weight: 500;
  white-space: nowrap;
  color: #999dab;
  z-index: 1;
  transition: transform 0.25s ease; }

.threesizer--title.vertical {
  transform: translate(28px, 14px); }

.threesizer--title.vertical.threesizer--collapsed {
  transform: translate(0, 3px) rotate(90deg); }

.threesizer--contents {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  position: relative; }

.threesizer--contents.horizontal {
  flex-direction: row; }

.threesizer--contents.vertical {
  flex-direction: column; }

.threesizer--contents.horizontal:after,
.threesizer--contents.vertical:after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 2; }

.threesizer--contents.horizontal:after {
  width: 100%;
  height: 9px;
  background: rgba(15, 14, 21, 0);
  background: -moz-linear-gradient(top, rgba(15, 14, 21, 0) 0%, rgba(15, 14, 21, 0.18) 100%);
  background: -webkit-linear-gradient(top, rgba(15, 14, 21, 0) 0%, rgba(15, 14, 21, 0.18) 100%);
  background: linear-gradient(to bottom, rgba(15, 14, 21, 0) 0%, rgba(15, 14, 21, 0.18) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.threesizer--contents.vertical:after {
  height: 100%;
  width: 9px;
  background: rgba(15, 14, 21, 0);
  background: -moz-linear-gradient(left, rgba(15, 14, 21, 0) 0%, rgba(15, 14, 21, 0.18) 100%);
  background: -webkit-linear-gradient(left, rgba(15, 14, 21, 0) 0%, rgba(15, 14, 21, 0.18) 100%);
  background: linear-gradient(to right, rgba(15, 14, 21, 0) 0%, rgba(15, 14, 21, 0.18) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.threesizer--contents.no-shadows:before,
.threesizer--contents.no-shadows:after,
.threesizer--division:last-child .threesizer--contents:after {
  content: none;
  display: none; }

.threesizer--header {
  background-color: #202028; }

.horizontal > .threesizer--header {
  width: 50px;
  border-right: 2px solid #31313d; }

.vertical > .threesizer--header {
  height: 50px;
  border-bottom: 2px solid #31313d; }

.horizontal > .threesizer--body:only-child {
  width: 100%; }

.vertical > .threesizer--body:only-child {
  height: 100%; }

.threesizer--header + .threesizer--body {
  flex: 1 0 0; }

/*
  Threshold Controls
  ------------------------------------------------------------------------------
  Used primarily within the Cell Editor Overlay for Single Stat, Gauge,
  and Table type cells
*/
.thresholds-list {
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.threshold-item {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  height: 30px;
  margin-top: 8px; }

.threshold-item > * {
  margin-left: 4px; }

.threshold-item > *:first-child {
  margin-left: 0; }

.threshold-item--label,
.threshold-item--label__editable {
  height: 30px;
  line-height: 30px;
  font-weight: 600;
  font-size: 13px;
  padding: 0 11px;
  border-radius: 4px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.threshold-item--label,
.threshold-item--label__editable,
.threshold-item--label:hover,
.threshold-item--label__editable:hover {
  cursor: default; }

.threshold-item--label {
  color: #999dab;
  background-color: #31313d;
  width: 120px; }

.threshold-item--label__editable {
  color: #e7e8eb;
  width: 90px; }

.threshold-item--input {
  flex: 1 0 0; }

.threshold-item .color-dropdown.color-dropdown--stretch {
  width: auto;
  flex: 1 0 0; }

/*
    Styles for Kapacitor Logs Table
    ----------------------------------------------------------------------------
*/
.logs-table {
  width: 50%;
  position: relative;
  height: 100%; }

.logs-table--header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  height: 60px;
  padding: 0 60px 0 30px;
  background-color: #31313d;
  white-space: nowrap;
  font-size: 17px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  letter-spacing: 0.015em;
  font-weight: 500; }

.logs-table--header,
.logs-table--header:hover {
  cursor: default; }

.logs-table--container {
  position: absolute !important;
  top: 60px;
  left: 0;
  width: 100%;
  height: calc(100% - 60px) !important;
  background: #25252e;
  background: -moz-linear-gradient(top, #25252e 0%, #16151b 100%);
  background: -webkit-linear-gradient(top, #25252e 0%, #16151b 100%);
  background: linear-gradient(to bottom, #25252e 0%, #16151b 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.logs-table--row {
  position: relative;
  padding: 8px 44px 8px 30px;
  border-bottom: 2px solid #292933;
  transition: background-color 0.25s ease; }

.logs-table--row:last-of-type {
  border-bottom: none; }

.logs-table--divider {
  display: flex;
  align-items: center; }

.logs-table--level {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  position: relative;
  margin-right: 6px; }

.logs-table--level.debug {
  background-color: #9394FF; }

.logs-table--level.info {
  background-color: #434453; }

.logs-table--level.warn {
  background-color: #FFB94A; }

.logs-table--level.ok {
  background-color: #22ADF6; }

.logs-table--level.error {
  background-color: #FF8564; }

.logs-table--timestamp {
  font-family: "RobotoMono", monospace;
  font-weight: 500;
  font-size: 13px;
  color: #757888;
  flex: 1 0 0; }

.logs-table--details {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  font-size: 13px;
  color: #999dab;
  font-weight: 600;
  padding-left: 14px; }

.logs-table--details .error {
  color: #FF8564; }

.logs-table--details .debug {
  color: #9394FF; }

/* Logs Table Item Types */
.logs-table--service,
.logs-table--column h1 {
  margin-top: 2px; }

.logs-table--session {
  text-transform: capitalize;
  font-style: italic; }

.logs-table--service {
  width: 140px; }

.logs-table--columns {
  display: flex;
  flex: 1 0 0;
  flex-wrap: wrap; }

.logs-table--column {
  color: #999dab;
  flex: 1 0 50%; }

.logs-table--column h1 {
  font-size: 13px;
  font-weight: 700;
  margin: 0;
  letter-spacing: normal;
  line-height: 1.42857143em;
  text-transform: uppercase;
  color: #e7e8eb; }

.logs-table--key-value {
  white-space: nowrap; }

.logs-table--key-value span {
  color: #4ED8A0; }

.logs-table--scrollbox {
  width: 100%;
  max-height: 300px;
  overflow-y: auto; }

.logs-table--scrollbox::-webkit-scrollbar {
  width: 16px;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.logs-table--scrollbox::-webkit-scrollbar-button {
  background-color: #0f0e15; }

.logs-table--scrollbox::-webkit-scrollbar-track {
  background-color: #0f0e15;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px; }

.logs-table--scrollbox::-webkit-scrollbar-track-piece {
  background-color: #0f0e15;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.logs-table--scrollbox::-webkit-scrollbar-thumb {
  background-color: #4ED8A0;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.logs-table--scrollbox::-webkit-scrollbar-corner {
  background-color: #0f0e15; }

.logs-table--scrollbox::-webkit-resizer {
  background-color: #0f0e15; }

/*
    Kapacitor Config Styles
    ----------------------------------------------
*/
.config-endpoint {
  display: flex;
  align-items: stretch; }

.config-endpoint--tabs {
  flex: 0 0 0%;
  display: flex; }

.config-endpoint--tabs .btn-group.tab-group {
  overflow: hidden;
  background-color: #202028;
  border-radius: 4px 0 0 4px;
  margin: 0;
  display: flex;
  flex: 1 0 0%;
  flex-direction: column;
  align-items: stretch; }

.config-endpoint--tabs .btn-group.tab-group .btn.tab {
  color: #8e91a1;
  background-color: transparent;
  border-radius: 0;
  height: 40px;
  border: 0;
  padding: 0 50px 0 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 500;
  font-size: 16px;
  position: relative; }

.config-endpoint--tabs .btn-group.tab-group .btn.tab:first-child {
  border-top-left-radius: 4px; }

.config-endpoint--tabs .btn-group.tab-group .btn.tab:hover {
  color: #d4d7dd;
  background-color: #292933; }

.config-endpoint--tabs .btn-group.tab-group .btn.tab.active {
  color: #f6f6f8;
  background-color: #292933; }

.config-endpoint--tabs .btn-group.tab-group .btn.tab:after {
  content: "\E918";
  font-family: 'icomoon';
  color: #4ED8A0;
  position: absolute;
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.25s ease; }

.config-endpoint--tabs .btn-group.tab-group .btn.tab.configured:after {
  opacity: 1; }

.config-endpoint--tab-contents {
  flex: 1 0 0%;
  background-color: #292933;
  border-radius: 0 4px 4px 0;
  padding: 16px 42px; }

#signup-page {
  padding: 100px 0; }

#signup-page .signup-progress-circle {
  margin-top: 20px;
  display: inline-block;
  width: 90px;
  height: 90px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  line-height: 90px;
  text-align: center;
  font-weight: 300;
  font-size: 22px; }

#signup-page .signup-progress-circle.step1of3 {
  background-image: url(/assets/images/signup-progress-circle-1.svg); }

#signup-page .signup-progress-circle.step2of3 {
  background-image: url(/assets/images/signup-progress-circle-2.svg); }

#signup-page .signup-progress-circle.step3of3 {
  background-image: url(/assets/images/signup-progress-circle-3.svg); }

#signup-page .signup-progress-circle.step1of2 {
  background-image: url(/assets/images/signup-progress-circle-1of2.svg); }

#signup-page .signup-progress-circle.step2of2 {
  background-image: url(/assets/images/signup-progress-circle-2of2.svg); }

#signup-page .btn.btn-next {
  margin-top: 40px;
  margin-bottom: 10px; }

#signup-page .btn.btn-next > span {
  font-weight: 400; }

#signup-page .panel-body {
  padding: 40px; }

#signup-page .user-invite-form {
  display: flex;
  align-items: center; }

#signup-page .user-invite-form input[type="email"] {
  flex: 6;
  margin-left: 5px; }

#signup-page .user-invite-form select {
  flex: 3; }

#signup-page .user-invite-form .btn {
  flex: 1;
  margin-left: 5px; }

#signup-page .role-description {
  color: #8e91a1;
  margin-top: 8px;
  margin-bottom: 40px; }

#signup-page table.table.invited-users tbody tr td,
#signup-page table.table.invited-users thead tr th {
  text-align: right; }

#signup-page table.table.invited-users tbody tr td:first-child,
#signup-page table.table.invited-users thead tr th:first-child {
  text-align: left;
  font-weight: 600; }

#signup-page table.table.invited-users tbody tr:last-child td {
  border-bottom: 2px solid #f6f6f8; }

#signup-page a.uninvite-user {
  color: #bec2cc; }

#signup-page a.uninvite-user:hover {
  color: #F95F53; }

#signup-page .database-options-container {
  display: flex;
  justify-content: space-around;
  margin-bottom: 20px; }

#signup-page #server {
  margin-bottom: -2px; }

#signup-page .server-group {
  display: flex;
  align-items: center; }

#signup-page .server-group .form-group {
  margin-bottom: 1px; }

#signup-page .server-group .btn {
  margin-left: 10px;
  align-self: flex-end; }

#signup-page .confirmation-group {
  margin-top: 20px; }

#signup-page .invite-user-group {
  display: flex;
  align-items: flex-end;
  justify-content: space-between; }

#signup-page .invite-user-group .form-group.invite-user-email {
  flex: none;
  margin-bottom: 0;
  width: 60%; }

#signup-page .invite-user-group .btn-invite {
  width: 15%; }

#signup-page .signup-progress {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  margin: auto;
  border-radius: 50px;
  border: none;
  font-size: large;
  margin-top: 20px; }

#signup-page .global-admin,
#signup-page .setup-database,
#signup-page .create-admin,
#signup-page .create-login,
#signup-page .access-info,
#signup-page .create-cluster {
  margin-top: 20px;
  padding: 0 60px;
  border: 1px solid #EEF0F2;
  display: flex;
  flex-direction: column; }

#signup-page .global-admin .password-group,
#signup-page .setup-database .password-group,
#signup-page .create-admin .password-group,
#signup-page .create-login .password-group,
#signup-page .access-info .password-group,
#signup-page .create-cluster .password-group {
  display: flex; }

#signup-page .global-admin .table-container,
#signup-page .setup-database .table-container,
#signup-page .create-admin .table-container,
#signup-page .create-login .table-container,
#signup-page .access-info .table-container,
#signup-page .create-cluster .table-container {
  max-height: 170px;
  overflow-y: auto; }

#signup-page .global-admin .server-table,
#signup-page .setup-database .server-table,
#signup-page .create-admin .server-table,
#signup-page .create-login .server-table,
#signup-page .access-info .server-table,
#signup-page .create-cluster .server-table {
  background-color: white;
  margin-bottom: 0; }

#signup-page .global-admin .confirmation-group,
#signup-page .setup-database .confirmation-group,
#signup-page .create-admin .confirmation-group,
#signup-page .create-login .confirmation-group,
#signup-page .access-info .confirmation-group,
#signup-page .create-cluster .confirmation-group {
  display: flex;
  justify-content: center; }

#signup-page .global-admin .confirmation-group .btn,
#signup-page .setup-database .confirmation-group .btn,
#signup-page .create-admin .confirmation-group .btn,
#signup-page .create-login .confirmation-group .btn,
#signup-page .access-info .confirmation-group .btn,
#signup-page .create-cluster .confirmation-group .btn {
  width: 200px;
  margin-right: 10px; }

#signup-page .global-admin .form-group,
#signup-page .setup-database .form-group,
#signup-page .create-admin .form-group,
#signup-page .create-login .form-group,
#signup-page .access-info .form-group,
#signup-page .create-cluster .form-group {
  flex: 1; }

#signup-page .global-admin h1,
#signup-page .setup-database h1,
#signup-page .create-admin h1,
#signup-page .create-login h1,
#signup-page .access-info h1,
#signup-page .create-cluster h1 {
  text-align: center; }

#signup-page .global-admin .copy,
#signup-page .setup-database .copy,
#signup-page .create-admin .copy,
#signup-page .create-login .copy,
#signup-page .access-info .copy,
#signup-page .create-cluster .copy {
  align-self: center;
  text-align: center;
  background-color: white;
  width: 100%; }

#signup-page .global-admin .label.label-success,
#signup-page .global-admin .label.label-danger,
#signup-page .setup-database .label.label-success,
#signup-page .setup-database .label.label-danger,
#signup-page .create-admin .label.label-success,
#signup-page .create-admin .label.label-danger,
#signup-page .create-login .label.label-success,
#signup-page .create-login .label.label-danger,
#signup-page .access-info .label.label-success,
#signup-page .access-info .label.label-danger,
#signup-page .create-cluster .label.label-success,
#signup-page .create-cluster .label.label-danger {
  margin-right: 5px; }

/*
    Styles for Authorization Page
    ----------------------------------------------------------------------------
*/
.auth-page {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background: #292933;
  background: -moz-linear-gradient(top, #292933 0%, #0f0e15 100%);
  background: -webkit-linear-gradient(top, #292933 0%, #0f0e15 100%);
  background: linear-gradient(to bottom, #292933 0%, #0f0e15 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 );
  padding: 60px; }

.auth-page::-webkit-scrollbar {
  width: 16px; }

.auth-page::-webkit-scrollbar-button {
  background-color: #292933; }

.auth-page::-webkit-scrollbar-track {
  background-color: #292933; }

.auth-page::-webkit-scrollbar-track-piece {
  background-color: #292933;
  border: 3px solid #292933;
  border-radius: 8px; }

.auth-page::-webkit-scrollbar-thumb {
  background-color: #22ADF6;
  border: 3px solid #292933;
  border-radius: 8px; }

.auth-page::-webkit-scrollbar-corner {
  background-color: #292933; }

.auth-page::-webkit-resizer {
  background-color: #292933; }

.auth-image {
  background-image: url(/2bb64b4255c3d298ecae22d2053b77c2.svg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2; }

.auth-box {
  z-index: 90;
  position: absolute;
  top: 43%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }

.auth-box h1 {
  color: #ffffff;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  font-weight: 200;
  font-size: 52px;
  letter-spacing: -2px; }

.auth-box h1,
.auth-box h1:hover {
  cursor: default; }

.auth-box p {
  color: #999dab;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.auth-box p,
.auth-box p:hover {
  cursor: default; }

.auth-box > .btn {
  margin-top: 6px;
  margin-bottom: 6px; }

.auth-box > .btn:first-of-type {
  margin-top: 30px; }

.auth-box > .btn:last-child {
  margin-bottom: 60px; }

.auth-box > .btn > .icon {
  font-size: 20px;
  margin-right: 8px; }

.auth-logo {
  background-image: url(/756cfeadfdbf9222a81d41b8931ba2a4.svg);
  background-size: 100% 100%;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100px;
  height: 100px; }

.auth-credits {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  font-weight: 600;
  z-index: 90;
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 13px;
  color: #999dab; }

.auth-credits,
.auth-credits:hover {
  cursor: default; }

.auth-credits .icon {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: -1px;
  margin-right: 2px; }

/*
    Styles for Purgatory Page
    ----------------------------------------------------------------------------
*/
.auth--purgatory {
  margin-top: 30px;
  min-width: 400px;
  background-color: #292933;
  border-radius: 4px;
  min-height: 200px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }

.auth--purgatory > h3 {
  white-space: nowrap; }

.auth--purgatory > p {
  text-align: center; }

.auth--purgatory hr {
  width: 100%; }

.auth--list {
  margin-top: 30px;
  width: 500px;
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.auth--list-item {
  height: 70px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #31313d;
  border-radius: 4px;
  margin: 2px 0; }

.auth--list-info {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.auth--list-info,
.auth--list-info:hover {
  cursor: default; }

.auth--list-org {
  font-size: 17px;
  font-weight: 400;
  color: #999dab; }

.auth--list-role {
  font-weight: 700;
  color: #bec2cc; }

.auth--list-item.current {
  background-color: #383846;
  width: calc(100% + 20px);
  margin: 2px -10px;
  padding: 0 30px; }

.auth--list-item.current > .auth--list-info > .auth--list-org,
.auth--list-item.current > .auth--list-info > .auth--list-role {
  color: #ffffff; }

.auth--list-blocked {
  font-size: 13px;
  text-align: center;
  font-style: italic;
  color: #757888;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.auth--list-blocked,
.auth--list-blocked:hover {
  cursor: default; }

.btn.auth--logout {
  margin-top: 30px; }

/*
    Kapacitor Rule Builder
    ---------------------------------------------------------------------------
*/
.rule-builder {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  margin-bottom: 60px; }

.rule-builder p {
  margin: 0 6px;
  font-weight: 600;
  color: #d4d7dd;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.rule-builder p,
.rule-builder p:hover {
  cursor: default; }

.rule-builder p:first-child {
  margin-left: 0; }

/*
  Generic Rule Section styles
  -----------------------------------------------------------------------------
*/
.rule-section--heading,
.rule-section--body {
  padding-left: 46px;
  position: relative; }

.rule-section--heading:before,
.rule-section--heading:after,
.rule-section--body:before,
.rule-section--body:after {
  content: '';
  display: block;
  position: absolute; }

.rule-section--heading:before,
.rule-section--body:before {
  transform: translateX(-50%);
  width: 3px;
  height: 100%;
  background-color: #383846;
  top: 0;
  left: 3px; }

.rule-section--heading {
  margin: 0;
  padding: 30px 0 13px 46px;
  font-size: 19px;
  font-weight: 400 !important;
  color: #a4a8b6;
  display: flex;
  justify-content: space-between;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.rule-section--heading,
.rule-section--heading:hover {
  cursor: default; }

.rule-section--heading:after {
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  background-color: #4ED8A0;
  border: 8px solid #383846;
  border-radius: 50%;
  top: 33px;
  left: 3px; }

.rule-section--sub-heading {
  margin: 0;
  padding: 30px 0 13px 0;
  font-size: 19px;
  font-weight: 400 !important;
  color: #a4a8b6;
  position: relative; }

.rule-section--sub-heading:after {
  content: '';
  position: absolute;
  width: 6px;
  height: 6px;
  background-color: #4ED8A0;
  border: 8px solid #383846;
  border-radius: 50%;
  top: 33px;
  left: -54px; }

.rule-section:first-of-type .rule-section--heading {
  padding-top: 0; }

.rule-section:first-of-type .rule-section--heading:before {
  top: 5px;
  height: calc(100% - 5px); }

.rule-section:first-of-type .rule-section--heading:after {
  top: 3px; }

.rule-section:last-of-type .rule-section--heading:before {
  top: 0;
  height: 36px; }

.rule-section:last-of-type .rule-section--body:before {
  display: none; }

.rule-section--border-top {
  border-top: 2px solid #202028; }

.rule-section--border-bottom {
  border-bottom: 2px solid #202028; }

.rule-section--row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  background-color: #292933;
  padding: 8px 24px; }

.rule-section--row-first {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px; }

.rule-section--row-last {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px; }

.rule-section--row .form-control + .form-control,
.rule-section--row .dropdown + .form-control {
  margin-left: 6px; }

/*
  Section 1 - Select a Time Series
  -----------------------------------------------------------------------------
  Overrides are scoped to the page class .rule-builder
*/
.rule-builder {
  /* Query Preview */ }

.rule-builder pre {
  font-size: 13px;
  background-color: #292933;
  border-radius: 5px 5px 0 0;
  margin: 0;
  padding: 13px 24px; }

.rule-builder pre code {
  line-height: 16px;
  white-space: pre-wrap; }

.rule-builder pre code.metric-placeholder {
  color: #676978;
  font-style: italic; }

.rule-builder .query-builder {
  height: 240px;
  overflow: visible; }

.rule-builder .query-builder--column {
  margin-right: 2px; }

.rule-builder .query-builder--column:last-child {
  margin-right: 0; }

.rule-builder .query-builder--column:first-of-type .query-builder--list {
  border-bottom-left-radius: 5px; }

.rule-builder .query-builder--column:first-of-type .query-builder--heading {
  border-top-left-radius: 5px; }

.rule-builder .query-builder--column:last-of-type .query-builder--list,
.rule-builder .query-builder--column:last-of-type .query-builder--list-empty {
  border-bottom-right-radius: 5px; }

.rule-builder .query-builder--column:last-of-type .query-builder--heading {
  border-top-right-radius: 5px; }

.rule-builder .query-builder--heading {
  background-color: #292933;
  margin-bottom: 2px; }

.rule-builder .query-builder--list::-webkit-scrollbar {
  width: 16px; }

.rule-builder .query-builder--list::-webkit-scrollbar-button {
  background-color: #292933; }

.rule-builder .query-builder--list::-webkit-scrollbar-track {
  background-color: #292933; }

.rule-builder .query-builder--list::-webkit-scrollbar-track-piece {
  background-color: #292933;
  border: 3px solid #292933;
  border-radius: 8px; }

.rule-builder .query-builder--list::-webkit-scrollbar-thumb {
  background-color: #4ED8A0;
  border: 3px solid #292933;
  border-radius: 8px; }

.rule-builder .query-builder--list::-webkit-scrollbar-corner {
  background-color: #292933; }

.rule-builder .query-builder--list::-webkit-resizer {
  background-color: #292933; }

.rule-builder .group-by-tag.active {
  background-color: #4ED8A0 !important; }

.rule-builder .group-by-tag.active:hover {
  background-color: #7CE490 !important; }

.rule-builder .query-builder--list-item .query-builder--checkbox:after {
  background-color: #4ED8A0; }

.rule-builder .query-builder--filter input.form-control {
  color: #4ED8A0 !important; }

.rule-builder .query-builder--filter input.form-control:focus {
  color: #ffffff !important;
  box-shadow: 0 0 6px 0px #4ED8A0 !important;
  border-color: #4ED8A0 !important; }

.rule-builder .query-builder--filter input.form-control:focus + span.icon {
  color: #4ED8A0 !important; }

/*
  Section 2 - Rule Conditions
  -----------------------------------------------------------------------------
*/
.rule-builder--metric {
  height: 30px;
  line-height: 30px;
  border-radius: 3px;
  background-color: #383846;
  color: #4ED8A0;
  font-size: 13px;
  font-weight: 700;
  padding: 0 9px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.rule-builder--metric,
.rule-builder--metric:hover {
  cursor: default; }

.rule-builder--graph,
.rule-builder--graph-empty {
  background-color: #292933;
  border-radius: 0 0 5px 5px;
  height: 316px;
  position: relative; }

.rule-builder--graph {
  padding: 0 8px; }

.rule-builder--graph > div.dygraph {
  position: absolute;
  top: 48px;
  left: 8px;
  width: calc(100% - 16px);
  height: calc(100% - 48px) !important; }

.rule-builder--graph > .dygraph > .dygraph-child {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 8px 16px; }

.rule-builder--graph-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.rule-builder--graph-empty,
.rule-builder--graph-empty:hover {
  cursor: default; }

.rule-builder--graph-empty p {
  margin: 0;
  font-size: 16px;
  line-height: 23px;
  text-align: center;
  color: #a4a8b6; }

.rule-builder--graph-empty p strong {
  color: #f6f6f8;
  font-weight: 900; }

.rule-builder--graph-options {
  width: 100%;
  padding: 8px 16px;
  display: flex;
  align-items: center;
  height: 48px; }

.rule-builder--graph-options p {
  font-weight: 600;
  color: #d4d7dd;
  margin: 0 6px 0 0;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.rule-builder--graph-options p,
.rule-builder--graph-options p:hover {
  cursor: default; }

/*
  Section 3 - Rule Message
  -----------------------------------------------------------------------------
*/
.rule-builder--message {
  background-color: #292933;
  padding: 22px;
  padding-bottom: 0;
  border-radius: 5px 5px 0 0; }

.rule-builder--message textarea {
  height: 100px;
  min-width: 100%;
  max-width: 100%; }

.rule-builder--message textarea::-webkit-scrollbar {
  width: 16px; }

.rule-builder--message textarea::-webkit-scrollbar-button {
  background-color: #292933; }

.rule-builder--message textarea::-webkit-scrollbar-track {
  background-color: #292933; }

.rule-builder--message textarea::-webkit-scrollbar-track-piece {
  background-color: #292933;
  border: 3px solid #292933;
  border-radius: 8px; }

.rule-builder--message textarea::-webkit-scrollbar-thumb {
  background-color: #4ED8A0;
  border: 3px solid #292933;
  border-radius: 8px; }

.rule-builder--message textarea::-webkit-scrollbar-corner {
  background-color: #292933; }

.rule-builder--message textarea::-webkit-resizer {
  background-color: #292933; }

.rule-builder--message-template {
  height: 30px;
  line-height: 30px;
  padding: 0 6px;
  margin: 2px;
  transition: color 0.25s ease;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.rule-builder--message-template,
.rule-builder--message-template:hover {
  cursor: default; }

.rule-builder--message-template:hover {
  color: #4ED8A0;
  cursor: pointer; }

/*
  Section 3 - Optional Alert Parameters
  -----------------------------------------------------------------------------
*/
.optional-alert-parameters {
  flex: 1 0 0;
  display: flex;
  flex-wrap: nowrap; }

.optional-alert-parameters .form-group {
  flex: 1 0 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin: 0;
  padding-right: 8px;
  position: relative; }

.optional-alert-parameters .form-group:last-of-type {
  padding-right: 0; }

.optional-alert-parameters .form-group > input.form-control {
  order: 2;
  border-top-left-radius: 0;
  position: relative;
  z-index: 1; }

.optional-alert-parameters .form-group > label {
  position: relative;
  z-index: 2;
  order: 1;
  background-color: #383846;
  border-radius: 4px 4px 0 0;
  margin: 0;
  height: 18px;
  line-height: 20px;
  transition: background-color 0.4s ease, color 0.4s ease, box-shadow 0.4s ease; }

.optional-alert-parameters .form-group > input.form-control:hover + label {
  background-color: #434453;
  color: #bec2cc; }

.optional-alert-parameters .form-group > input.form-control:focus + label {
  background-color: #4ED8A0;
  color: #202028;
  box-shadow: 0 0 8px #4ED8A0; }

/*
  Color coding for alerts in Alert History table
  -----------------------------------------------------------------------------
*/
.alert-level-ok,
.alert-level-ok:hover {
  color: #4ED8A0 !important; }

.alert-level-warning,
.alert-level-warning:hover {
  color: #FFB94A !important; }

.alert-level-critical,
.alert-level-critical:hover {
  color: #FF8564 !important; }

/*
  Styles for Endpoints section
  -----------------------------------------------------------------------------
*/
.rule-message--endpoints {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap; }

.rule-message--add-endpoint {
  margin-left: 4px; }

.rule-message--add-endpoint .dropdown-menu {
  max-height: 233px; }

.rule-message--add-endpoint .dropdown-menu.dropdown-malachite li.dropdown-divider {
  background: linear-gradient(to right, #a8e1cf 0%, #23adf6 100%) !important; }

.endpoint-tabs {
  width: 150px;
  background-color: #202028;
  border-bottom-left-radius: 5px;
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  overflow: hidden; }

.endpoint-tab {
  display: block;
  list-style: none;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  position: relative;
  height: 40px;
  line-height: 40px;
  padding: 0 24px;
  margin: 0 0 2px 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #757888;
  font-size: 14.5px;
  font-weight: 600;
  border-right: 2px solid #202028;
  transition: color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease; }

.endpoint-tab,
.endpoint-tab:hover {
  cursor: default; }

.endpoint-tab:last-child {
  margin-bottom: 0; }

.endpoint-tab:hover {
  cursor: pointer;
  background-color: #292933;
  color: #d4d7dd; }

.endpoint-tab.active {
  color: #4ED8A0;
  background-color: #292933;
  border-color: #292933; }

.endpoint-tab--delete {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border-radius: 3px;
  transition: background-color 0.25s ease;
  outline: none;
  background-color: transparent;
  border: none; }

.endpoint-tab--delete:before,
.endpoint-tab--delete:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #676978;
  border-radius: 1px;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: background-color 0.25s ease; }

.endpoint-tab--delete:before {
  width: 12px;
  height: 2px; }

.endpoint-tab--delete:after {
  width: 2px;
  height: 12px; }

.endpoint-tab--delete:hover {
  background-color: #383846;
  cursor: pointer; }

.endpoint-tab--delete:hover:before,
.endpoint-tab--delete:hover:after {
  background-color: #ffffff; }

.endpoint-tab--delete:hover:active {
  background-color: #F95F53; }

.endpoint-tab-contents {
  flex: 1 0 0;
  background-color: #292933;
  border-bottom-right-radius: 5px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 350px; }

.endpoint-tab-contents h4 {
  width: 100%;
  margin: 0;
  margin-bottom: 8px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  font-size: 14.5px;
  font-weight: 600;
  color: #d4d7dd; }

.endpoint-tab-contents h4,
.endpoint-tab-contents h4:hover {
  cursor: default; }

.endpoint-tab--parameters {
  padding: 24px;
  padding-bottom: 0; }

.endpoint-tab--parameters:last-child {
  padding-bottom: 24px; }

.endpoint-tab--parameters .faux-form {
  margin-left: -6px;
  margin-right: -6px;
  width: calc(100% + 12px);
  display: inline-block; }

.endpoint-tab--parameters--empty {
  align-items: center;
  justify-content: center;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.endpoint-tab--parameters--empty,
.endpoint-tab--parameters--empty:hover {
  cursor: default; }

.endpoint-tab--parameters--empty p {
  margin: 0;
  font-size: 16px;
  line-height: 23px;
  text-align: center;
  color: #a4a8b6; }

.endpoint-tab--parameters--empty p strong {
  color: #f6f6f8;
  font-weight: 900; }

.endpoint-tab--parameters .form-control-static {
  min-height: 30px;
  height: 30px; }

.endpoint-tab--parameters .handler-checkbox {
  margin-left: 10px;
  margin-right: 10px; }

.redacted-handler {
  height: 30px;
  align-items: center;
  justify-content: space-between; }

.endpoint-tab--parameters h4 .btn {
  margin-left: 6px; }

/*
 Rule Details
  -----------------------------------------------------------------------------
*/
.rule-builder--details {
  background-color: #292933;
  padding-top: 22px;
  padding-left: 6px;
  padding-right: 6px;
  padding-bottom: 0;
  border-radius: 5px 5px 0 0; }

.rule-builder--details textarea {
  height: 100px;
  min-width: 100%;
  max-width: 100%;
  width: 100% !important; }

.rule-builder--details textarea::-webkit-scrollbar {
  width: 16px; }

.rule-builder--details textarea::-webkit-scrollbar-button {
  background-color: #292933; }

.rule-builder--details textarea::-webkit-scrollbar-track {
  background-color: #292933; }

.rule-builder--details textarea::-webkit-scrollbar-track-piece {
  background-color: #292933;
  border: 3px solid #292933;
  border-radius: 8px; }

.rule-builder--details textarea::-webkit-scrollbar-thumb {
  background-color: #4ED8A0;
  border: 3px solid #292933;
  border-radius: 8px; }

.rule-builder--details textarea::-webkit-scrollbar-corner {
  background-color: #292933; }

.rule-builder--details textarea::-webkit-resizer {
  background-color: #292933; }

.rule-builder--details-template {
  height: 30px;
  line-height: 30px;
  padding: 0 6px;
  margin: 2px;
  transition: color 0.25s ease;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.rule-builder--details-template,
.rule-builder--details-template:hover {
  cursor: default; }

.rule-builder--details-template:hover {
  color: #4ED8A0;
  cursor: pointer; }

/*
  Variables
  ------------------------------------------------------
*/
/*
  Animations
  ------------------------------------------------------
*/
@keyframes refreshingSpinnerA {
  0% {
    transform: translate(-50%, -50%) scale(1.75);
    background-color: #545667; }
  33% {
    transform: translate(-50%, -50%) scale(1, 1); }
  66% {
    transform: translate(-50%, -50%) scale(1, 1); }
  100% {
    transform: translate(-50%, -50%) scale(1, 1); } }

@keyframes refreshingSpinnerB {
  0% {
    transform: translate(-50%, -50%) scale(1, 1); }
  33% {
    transform: translate(-50%, -50%) scale(1.75);
    background-color: #545667; }
  66% {
    transform: translate(-50%, -50%) scale(1, 1); }
  100% {
    transform: translate(-50%, -50%) scale(1, 1); } }

@keyframes refreshingSpinnerC {
  0% {
    transform: translate(-50%, -50%) scale(1, 1); }
  33% {
    transform: translate(-50%, -50%) scale(1, 1); }
  66% {
    transform: translate(-50%, -50%) scale(1.75);
    background-color: #545667; }
  100% {
    transform: translate(-50%, -50%) scale(1, 1); } }

/*
  Dashboard Index Page
  ------------------------------------------------------
*/
.dashboards-page--actions {
  display: flex;
  align-items: center; }

/*
  Default Dashboard Mode
  ------------------------------------------------------
*/
.cell-shell,
.dashboard .react-grid-item {
  background-color: #292933;
  border-radius: 4px;
  border: 2px solid #292933;
  transition-property: left, top, border-color, background-color; }

.dashboard .graph-empty {
  background-color: transparent;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.dash-graph {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.dash-graph--container {
  user-select: none !important;
  -o-user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  background-color: transparent;
  position: absolute;
  width: 100%;
  height: calc(100% - 30px);
  top: 30px;
  left: 0;
  padding: 0; }

.dash-graph--container .dygraph {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

.dash-graph--container .dygraph .dygraph-child {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 8px 16px; }

.dash-graph--container .graph-panel__refreshing {
  top: -25px !important; }

.dash-graph--heading {
  user-select: none !important;
  -o-user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  background-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 30px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 3px;
  font-weight: 600;
  font-size: 13px;
  color: #c6cad3;
  transition: color 0.25s ease, background-color 0.25s ease; }

.dash-graph--heading.dash-graph--heading-draggable:hover {
  cursor: move;
  background-color: #383846; }

.dash-graph--name {
  font-size: 12px;
  font-weight: 600;
  border-radius: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  position: relative;
  height: 30px;
  line-height: 30px;
  width: calc(100% - 78px);
  padding-left: 10px;
  transition: color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease; }

.dash-graph--name:only-child {
  width: 100%; }

.dash-graph--name.dash-graph--name__default {
  font-style: italic; }

.dash-graph--draggable {
  cursor: move !important; }

.dash-graph--custom-indicators {
  height: 24px;
  border-radius: 3px;
  display: flex;
  cursor: default; }

.dash-graph--custom-indicators > .custom-indicator,
.dash-graph--custom-indicators > .source-indicator {
  font-size: 10px;
  line-height: 24px;
  padding: 0 7px;
  font-style: normal;
  font-family: "RobotoMono", monospace;
  color: #22ADF6;
  background-color: #202028;
  margin-right: 2px;
  border-radius: 3px; }

.dash-graph--custom-indicators > .source-indicator {
  height: 24px; }

.dash-graph--custom-indicators > .source-indicator > .icon {
  font-size: 12px;
  margin: 0; }

.dash-graph-context {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 3px;
  height: 30px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap; }

.dash-graph-context.dash-graph-context__open {
  z-index: 20; }

.dash-graph-context--buttons {
  display: flex; }

.dash-graph-context--button {
  width: 24px;
  height: 24px;
  border-radius: 3px;
  font-size: 12px;
  position: relative;
  color: #999dab;
  margin-right: 2px;
  transition: color 0.25s ease, background-color 0.25s ease; }

.dash-graph-context--button:hover,
.dash-graph-context--button.active {
  cursor: pointer;
  color: #ffffff;
  background-color: #383846; }

.dash-graph-context--button:last-child {
  margin-right: 0; }

.dash-graph-context--button > .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.dash-graph-context--button.active {
  position: relative;
  z-index: 20; }

.dash-graph-context--menu,
.dash-graph-context--menu.default {
  z-index: 3;
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  background-color: #434453;
  transform: translateX(-50%);
  border-radius: 3px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center; }

.dash-graph-context--menu:before,
.dash-graph-context--menu.default:before {
  position: absolute;
  content: '';
  border: 6px solid transparent;
  border-bottom-color: #434453;
  left: 50%;
  top: 0;
  transform: translate(-50%, -100%);
  transition: border-color 0.25s ease; }

.dash-graph-context--menu .dash-graph-context--menu-item,
.dash-graph-context--menu.default .dash-graph-context--menu-item {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 700;
  line-height: 26px;
  height: 26px;
  padding: 0 10px;
  color: #ffffff;
  transition: background-color 0.25s ease; }

.dash-graph-context--menu .dash-graph-context--menu-item,
.dash-graph-context--menu .dash-graph-context--menu-item:hover,
.dash-graph-context--menu.default .dash-graph-context--menu-item,
.dash-graph-context--menu.default .dash-graph-context--menu-item:hover {
  cursor: default; }

.dash-graph-context--menu .dash-graph-context--menu-item:first-child,
.dash-graph-context--menu.default .dash-graph-context--menu-item:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px; }

.dash-graph-context--menu .dash-graph-context--menu-item:last-child,
.dash-graph-context--menu.default .dash-graph-context--menu-item:last-child {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px; }

.dash-graph-context--menu .dash-graph-context--menu-item:hover,
.dash-graph-context--menu.default .dash-graph-context--menu-item:hover {
  background-color: #676978;
  cursor: pointer; }

.dash-graph-context--menu .dash-graph-context--menu-item.disabled,
.dash-graph-context--menu .dash-graph-context--menu-item.disabled:hover,
.dash-graph-context--menu.default .dash-graph-context--menu-item.disabled,
.dash-graph-context--menu.default .dash-graph-context--menu-item.disabled:hover {
  cursor: default;
  background-color: transparent;
  font-style: italic;
  color: #999dab; }

.dash-graph-context--menu.primary {
  background-color: #4591ED; }

.dash-graph-context--menu.primary:before {
  border-bottom-color: #4591ED; }

.dash-graph-context--menu.primary .dash-graph-context--menu-item:hover {
  background-color: #22ADF6; }

.dash-graph-context--menu.warning {
  background-color: #7A65F2; }

.dash-graph-context--menu.warning:before {
  border-bottom-color: #7A65F2; }

.dash-graph-context--menu.warning .dash-graph-context--menu-item:hover {
  background-color: #9394FF; }

.dash-graph-context--menu.success {
  background-color: #4ED8A0; }

.dash-graph-context--menu.success:before {
  border-bottom-color: #4ED8A0; }

.dash-graph-context--menu.success .dash-graph-context--menu-item:hover {
  background-color: #7CE490; }

.dash-graph-context--menu.danger {
  background-color: #F95F53; }

.dash-graph-context--menu.danger:before {
  border-bottom-color: #F95F53; }

.dash-graph-context--menu.danger .dash-graph-context--menu-item:hover {
  background-color: #FF8564; }

/* Presentation Mode */
.presentation-mode .dash-graph-context {
  display: none; }

.presentation-mode .dash-graph--name {
  width: 100%; }

.graph-panel__refreshing {
  position: absolute;
  top: -18px !important;
  transform: translate(0, 0);
  right: 50%;
  transform: translateX(50%);
  width: 16px;
  height: 18px; }

.graph-panel__refreshing > div {
  width: 4px;
  height: 4px;
  background-color: #434453;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%); }

.graph-panel__refreshing div:nth-child(1) {
  left: 0;
  animation: refreshingSpinnerA 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) infinite; }

.graph-panel__refreshing div:nth-child(2) {
  left: 50%;
  animation: refreshingSpinnerB 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) infinite; }

.graph-panel__refreshing div:nth-child(3) {
  left: 100%;
  animation: refreshingSpinnerC 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) infinite; }

/*
  Dashboard Edit Mode
  ------------------------------------------------------
*/
.react-grid-placeholder {
  background: #22ADF6;
  background: -moz-linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  background: -webkit-linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  background: linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ) !important;
  border: 0 !important;
  opacity: 0.3;
  z-index: 2;
  border-radius: 4px !important; }

.react-grid-item.resizing {
  background-color: rgba(41, 41, 51, 0.91);
  border-color: #22ADF6;
  border-image-slice: 3%;
  border-image-repeat: initial;
  border-image-outset: 0;
  border-image-width: 2px;
  border-image-source: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTg0NjVDRkVGMEVFMTFFNkE0QjVFRTJGNEI1ODc0RDMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTg0NjVDRkZGMEVFMTFFNkE0QjVFRTJGNEI1ODc0RDMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxODQ2NUNGQ0YwRUUxMUU2QTRCNUVFMkY0QjU4NzREMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxODQ2NUNGREYwRUUxMUU2QTRCNUVFMkY0QjU4NzREMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PpeetfIAAAMnSURBVHja7N1PatwwFMfxJ5NlKT1DIfQKWZfSA/Q0hexDL9McoOQAPUKglwhp6dZ9Ho/HfyTZs6l+b/E1GDm27IH5oH9Pyji9//7XfLtNZt88/eT722TzlvrFseXHaXFmypuO8vd5nmW6nyeNefrKfZv7i9f75blU/NzafXvns2dV7tl8zqsnT55+9f3Xjf/xwQ9+evou+xLB+N8Ydi4AX3z/6PnvOj94AEOGMV/rB4P00J2rKTC0GNOTPne0GWEwhv1NB0YYjNPWgREHI00gYMTAOIGAEQdjuKcDIw7GXGWBEQJjrLLACIORrFBlgaHDsG2VBYYWY1VlgaHHSH3WqIOhxLB1ow6GGmPRqIMRAeMMAkYUDFuGTsDQYwxP6MCIg1Hp9oKhwih0e8FQYthuLAuM5hj1WBYYEoxUjGWBIcOwrFEHQ4qxLiFgyDFOvSww4mCM8yFghMEoDgzB0GGk2owhGBoMq5UQMDQYxRIChg4ja0PA0GLYMrgIhh7jUkLAiIExV1lghMA4GBiC0RrjNIULRhyMysAQDBVGYWAIhhJjM6cOhhpjUULAiIAxr1wEIwTGPDAEIwTGWGWBEQajHu0FQ4JRjvaCIcPIo71gSDHW0V4w5Bj5SB0MKUZxoRwYOoxsPgQMLcZqPgQMPUaxUQdDh2HVcQgYEoxUHIeAIcPIqywwpBjrKgsMOcb8f+pghMDIwu9gaDFWI3Uw9Bg2N+pgRMA497LAiIJRXf0OhgajuPodDB3G1dFeMNpgXBXtBaMdxmG0F4y2GLvRXjDaY2wGhmCoMawU7QVDh5G20V4wtBjzwBCMEBiXVx6BEQPjsJcFRluM3V4WGO0xqr0sMDQYVuplgaHDWL1YEgw9hi17WWDoMVJ1ChcMCYYVp3DBkGFUl5KCocGw6deAwIiBYUfBRTDaYmTdXjC0GFYLLoKhwSj+cAAYOgzbBhfB0GKsgotg6DGuWrkIRjuMudsLRgiMsQ0BIwzG5ZVHYMTAmKqsVzBiYPj2Z+j2PoERAmM4/2MoIfe+v4Ahx3jx5H4AefYLd37q0Y9/g9EcY/jOHz11A3v+J8AA9wisahRCWTQAAAAASUVORK5CYII=);
  z-index: 3; }

.react-grid-item.resizing > .react-resizable-handle:before,
.react-grid-item.resizing > .react-resizable-handle:after {
  background-color: #9394FF; }

.react-grid-item.react-draggable-dragging {
  background-color: rgba(41, 41, 51, 0.91);
  border-color: #22ADF6;
  border-image-slice: 3%;
  border-image-repeat: initial;
  border-image-outset: 0;
  border-image-width: 2px;
  border-image-source: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTg0NjVDRkVGMEVFMTFFNkE0QjVFRTJGNEI1ODc0RDMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTg0NjVDRkZGMEVFMTFFNkE0QjVFRTJGNEI1ODc0RDMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxODQ2NUNGQ0YwRUUxMUU2QTRCNUVFMkY0QjU4NzREMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxODQ2NUNGREYwRUUxMUU2QTRCNUVFMkY0QjU4NzREMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PpeetfIAAAMnSURBVHja7N1PatwwFMfxJ5NlKT1DIfQKWZfSA/Q0hexDL9McoOQAPUKglwhp6dZ9Ho/HfyTZs6l+b/E1GDm27IH5oH9Pyji9//7XfLtNZt88/eT722TzlvrFseXHaXFmypuO8vd5nmW6nyeNefrKfZv7i9f75blU/NzafXvns2dV7tl8zqsnT55+9f3Xjf/xwQ9+evou+xLB+N8Ydi4AX3z/6PnvOj94AEOGMV/rB4P00J2rKTC0GNOTPne0GWEwhv1NB0YYjNPWgREHI00gYMTAOIGAEQdjuKcDIw7GXGWBEQJjrLLACIORrFBlgaHDsG2VBYYWY1VlgaHHSH3WqIOhxLB1ow6GGmPRqIMRAeMMAkYUDFuGTsDQYwxP6MCIg1Hp9oKhwih0e8FQYthuLAuM5hj1WBYYEoxUjGWBIcOwrFEHQ4qxLiFgyDFOvSww4mCM8yFghMEoDgzB0GGk2owhGBoMq5UQMDQYxRIChg4ja0PA0GLYMrgIhh7jUkLAiIExV1lghMA4GBiC0RrjNIULRhyMysAQDBVGYWAIhhJjM6cOhhpjUULAiIAxr1wEIwTGPDAEIwTGWGWBEQajHu0FQ4JRjvaCIcPIo71gSDHW0V4w5Bj5SB0MKUZxoRwYOoxsPgQMLcZqPgQMPUaxUQdDh2HVcQgYEoxUHIeAIcPIqywwpBjrKgsMOcb8f+pghMDIwu9gaDFWI3Uw9Bg2N+pgRMA497LAiIJRXf0OhgajuPodDB3G1dFeMNpgXBXtBaMdxmG0F4y2GLvRXjDaY2wGhmCoMawU7QVDh5G20V4wtBjzwBCMEBiXVx6BEQPjsJcFRluM3V4WGO0xqr0sMDQYVuplgaHDWL1YEgw9hi17WWDoMVJ1ChcMCYYVp3DBkGFUl5KCocGw6deAwIiBYUfBRTDaYmTdXjC0GFYLLoKhwSj+cAAYOgzbBhfB0GKsgotg6DGuWrkIRjuMudsLRgiMsQ0BIwzG5ZVHYMTAmKqsVzBiYPj2Z+j2PoERAmM4/2MoIfe+v4Ahx3jx5H4AefYLd37q0Y9/g9EcY/jOHz11A3v+J8AA9wisahRCWTQAAAAASUVORK5CYII=);
  cursor: move; }

.react-grid-item.react-draggable-dragging:hover {
  cursor: move; }

.react-grid-item.react-draggable-dragging .dash-graph--heading {
  background-color: #383846;
  cursor: move; }

.react-grid-item > .react-resizable-handle {
  background-image: none;
  cursor: nwse-resize; }

.react-grid-item > .react-resizable-handle:before,
.react-grid-item > .react-resizable-handle:after {
  content: '';
  display: block;
  position: absolute;
  height: 2px;
  border-radius: 1px;
  background-color: #434453;
  transition: background-color 0.25s ease;
  top: 50%;
  left: 50%;
  border: 0; }

.react-grid-item > .react-resizable-handle:before {
  width: 20px;
  transform: translate(-50%, -50%) rotate(-45deg); }

.react-grid-item > .react-resizable-handle:after {
  width: 12px;
  transform: translate(-3px, 2px) rotate(-45deg); }

.react-grid-item > .react-resizable-handle:hover:before,
.react-grid-item > .react-resizable-handle:hover:after {
  background-color: #9394FF; }

/*
  Dashboard Empty State
  ------------------------------------------------------
*/
/*
    Dashboard Empty State
    ----------------------------------------------------------------------------
*/
.dashboard-empty {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center; }

.dashboard-empty p {
  color: #999dab;
  font-size: 18px;
  font-weight: 500;
  margin: 0 0 20px 0;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.dashboard-empty p,
.dashboard-empty p:hover {
  cursor: default; }

.dashboard-empty p strong {
  color: #d4d7dd; }

.dashboard-empty--menu {
  width: 70%;
  max-width: 800px;
  margin-bottom: 65px; }

.dashboard-empty--menu-option {
  float: left;
  width: 25%;
  padding-bottom: 25%;
  position: relative; }

.dashboard-empty--menu-option > div > p {
  margin: 0;
  font-size: 14px;
  font-weight: 900;
  position: absolute;
  bottom: 18px;
  left: 10px;
  width: calc(100% - 20px);
  text-align: center;
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.dashboard-empty--menu-option > div {
  background-color: #202028;
  color: #999dab;
  border-radius: 4px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  position: absolute;
  top: 2px;
  left: 2px;
  transition: color 0.25s ease, border-color 0.25s ease, background-color 0.25s ease; }

.dashboard-empty--menu-option:hover {
  cursor: pointer; }

.dashboard-empty--menu-option:hover > div {
  background-color: #383846;
  color: #f6f6f8; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-line.graphic-line-a {
  stroke: #22ADF6; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-line.graphic-line-b {
  stroke: #FF8564; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-line.graphic-line-c {
  stroke: #4ED8A0; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-line.graphic-line-d {
  stroke: #eeeff2; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-a {
  fill: #22ADF6; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-b {
  fill: #FF8564; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-c {
  fill: #4ED8A0; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-a,
.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-b,
.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-c {
  opacity: 0.22; }

.dashboard-empty--menu-option:hover > div .viz-type-selector--graphic .viz-type-selector--graphic-fill.graphic-fill-d {
  fill: #eeeff2;
  opacity: 1; }

/*
  Template Control Bar
  ------------------------------------------------------
*/
/*
  Template Control Bar
  ------------------------------------------------------
  Used within a dashboard to control values for
  template variables
*/
.template-control-bar {
  position: relative;
  display: none;
  background-color: #292933; }

.template-control-bar.show {
  display: block; }

.template-control-bar:after {
  content: '';
  z-index: 2;
  position: absolute;
  top: 100%;
  left: 0;
  width: calc(100% - 16px);
  height: 16px;
  pointer-events: none;
  background: #202028;
  background: -moz-linear-gradient(top, #202028 0%, rgba(32, 32, 40, 0) 100%);
  background: -webkit-linear-gradient(top, #202028 0%, rgba(32, 32, 40, 0) 100%);
  background: linear-gradient(to bottom, #202028 0%, rgba(32, 32, 40, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.template-control--container {
  width: 100%;
  min-height: 60px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  padding: 8px 60px; }

.template-control--heading {
  font-size: 16px;
  font-weight: 500;
  color: #bec2cc;
  margin: 0 8px 0 16px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  white-space: nowrap; }

.template-control--heading,
.template-control--heading:hover {
  cursor: default; }

button.btn.template-control--manage {
  margin: 7px 0 7px 8px; }

.template-control--controls {
  display: flex;
  flex: 1 0 0%;
  flex-wrap: wrap; }

.template-control--empty {
  color: #999dab;
  font-size: 14px;
  font-weight: 500;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.template-control--empty,
.template-control--empty:hover {
  cursor: default; }

.template-control--dropdown {
  flex: 0 1 auto;
  min-width: 146px;
  max-width: 300px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  margin: 2px; }

.template-control--dropdown .dropdown {
  order: 2;
  margin: 0;
  flex: 1 0 0%; }

.template-control--dropdown .dropdown-toggle {
  border-radius: 0 0 3px 3px;
  width: 100%;
  font-size: 12px;
  font-family: "RobotoMono", monospace; }

.template-control--dropdown .dropdown .dropdown-menu .fancy-scroll--view li.dropdown-item a {
  white-space: pre-wrap;
  word-break: break-all;
  overflow: hidden;
  font-family: "RobotoMono", monospace;
  font-size: 12px; }

.template-control--label {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  order: 1;
  height: 18px;
  padding: 0 8px;
  margin: 0;
  font-size: 11px;
  font-family: "RobotoMono", monospace;
  color: #B1B6FF;
  line-height: 18px;
  border-radius: 3px 3px 0 0;
  background-color: #31313d; }

.template-control--label,
.template-control--label:hover {
  cursor: default; }

/*
  Cell Editor Overlay
  ------------------------------------------------------
*/
/*
  Styles for Cell Editor Overlay
  ------------------------------------------------------------------------------
*/
.ceo {
  left: -60px !important; }

.ceo .ceo {
  left: 0 !important; }

.ceo .ceo:before {
  display: none; }

.ceo {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 100;
  padding: 0 30px;
  /*
    Semi-transparent gradient in background
    Makes it possible to leave opacity alone
  */ }

.ceo:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #22ADF6;
  background: -moz-linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  background: -webkit-linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  background: linear-gradient(135deg, #22ADF6 0%, #9394FF 100%) !important;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ) !important;
  opacity: 0.7;
  z-index: -1; }

.ceo .overlay-controls {
  padding: 0 18px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 0 0 60px;
  width: 100%;
  left: 0;
  border: 0;
  background-color: #202028; }

.ceo .overlay-controls .nav-tablist {
  width: 230px; }

.ceo .overlay-controls .nav-tablist li {
  white-space: nowrap;
  justify-content: center;
  flex: 1 0 50%; }

.ceo .overlay-controls--right {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: flex-end;
  flex: 1 0 0; }

.ceo .overlay-controls--right .toggle {
  margin: 0 0 0 5px; }

.ceo .overlay-controls--right p {
  font-weight: 600;
  color: #bec2cc;
  margin: 0 6px 0 0;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  white-space: nowrap; }

.ceo .overlay-controls--right p,
.ceo .overlay-controls--right p:hover {
  cursor: default; }

.ceo .overlay--graph-name {
  margin: 0;
  font-size: 17px;
  font-weight: 400;
  text-transform: uppercase;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.ceo .overlay--graph-name,
.ceo .overlay--graph-name:hover {
  cursor: default; }

.ceo--editor {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  height: 100%; }

.ceo--editor .query-maker--empty {
  margin-bottom: 8px; }

.overlay-controls .confirm-or-cancel {
  margin-left: 32px; }

/* Graph editing in Dashboards is a little smaller so the dash can be seen in the background */
.ceo .graph {
  margin: 0 15%; }

.ceo .query-maker {
  flex: 1 0 0%;
  padding: 0 18px;
  margin: 0;
  background-color: #202028; }

.ceo .query-maker--tabs {
  margin-top: 0; }

.ceo .query-maker--tab-contents {
  margin-bottom: 8px; }

/*
  Template Variables Manager
  ------------------------------------------------------
*/
/*
  Styles for the Template Variables Manager Panel
  ------------------------------------------------------
  Accessed via Dashboards
*/
.template-variable-manager {
  max-width: 1300px;
  margin: 0 auto; }

.template-variable-manager--header {
  height: 60px;
  background: #0f0e15;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 30px; }

.template-variable-manager--header .page-header__dismiss {
  margin-left: 10px;
  margin-right: -20px; }

.template-variable-manager--body {
  padding: 18px 22px 30px 22px;
  border-radius: 0 0 4px 4px;
  min-height: 150px;
  max-height: calc(100% - 90px);
  background: #202028;
  background: -moz-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: -webkit-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: linear-gradient(to bottom, #202028 0%, #0f0e15 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.template-variable-manager--body::-webkit-scrollbar {
  width: 16px;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.template-variable-manager--body::-webkit-scrollbar-button {
  background-color: #0f0e15; }

.template-variable-manager--body::-webkit-scrollbar-track {
  background-color: #0f0e15;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px; }

.template-variable-manager--body::-webkit-scrollbar-track-piece {
  background-color: #0f0e15;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.template-variable-manager--body::-webkit-scrollbar-thumb {
  background-color: #292933;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.template-variable-manager--body::-webkit-scrollbar-corner {
  background-color: #0f0e15; }

.template-variable-manager--body::-webkit-resizer {
  background-color: #0f0e15; }

.template-variable-manager--table,
.template-variable-manager--table-container {
  width: 100%; }

/* Column Widths */
.tvm--col-1 {
  flex: 0 0 140px; }

.tvm--col-2 {
  flex: 0 0 140px; }

.tvm--col-3 {
  flex: 1 0 0; }

.tvm--col-4 {
  flex: 0 0 30px; }

.tvm--col-4.editing {
  flex: 0 0 68px; }

/* Table Column Labels */
.template-variable-manager--table-heading {
  padding: 0 8px;
  height: 18px;
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  font-weight: 600;
  font-size: 12px;
  color: #999dab;
  white-space: nowrap; }

.template-variable-manager--table-heading > * {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  padding-left: 6px;
  margin-right: 8px; }

.template-variable-manager--table-heading > *,
.template-variable-manager--table-heading > *:hover {
  cursor: default; }

.template-variable-manager--table-heading > *:last-child {
  margin-right: 0; }

/* Table Body */
.template-variable-manager--table-rows {
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.template-variable-manager--table-row {
  border-radius: 4px;
  display: flex;
  align-items: flex-start;
  padding: 8px;
  transition: background-color 0.25s ease; }

.template-variable-manager--table-row.editing {
  background-color: #292933; }

.template-variable-manager--table-row > * {
  margin-right: 8px; }

.template-variable-manager--table-row > *:last-child {
  margin-right: 0; }

.tvm-input,
.form-control.tvm-input-edit {
  font-weight: 600 !important;
  width: 100% !important;
  padding: 0 6px !important;
  font-family: "RobotoMono", monospace;
  color: #9394FF !important;
  height: 30px !important; }

.tvm-input:focus,
.tvm-input:focus:hover,
.form-control.tvm-input-edit:focus,
.form-control.tvm-input-edit:focus:hover {
  color: #9394FF !important; }

.tvm-input {
  font-size: 12px;
  line-height: 26px;
  padding: 0 8px;
  border-radius: 4px;
  border: 2px solid #383846;
  background-color: #202028;
  overflow: hidden;
  transition: border-color 0.25s ease; }

.tvm-input:hover {
  cursor: text;
  border-color: #434453; }

.tvm-values,
.tvm-values-empty {
  width: 100%;
  white-space: pre-wrap;
  overflow: auto;
  font-size: 12px;
  font-weight: 600;
  font-family: "RobotoMono", monospace;
  color: #22ADF6;
  padding: 0 8px;
  min-height: 30px;
  max-height: 90px;
  line-height: 30px;
  border-radius: 4px;
  background-color: #383846; }

.tvm-values::-webkit-scrollbar,
.tvm-values-empty::-webkit-scrollbar {
  width: 16px;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.tvm-values::-webkit-scrollbar-button,
.tvm-values-empty::-webkit-scrollbar-button {
  background-color: #383846; }

.tvm-values::-webkit-scrollbar-track,
.tvm-values-empty::-webkit-scrollbar-track {
  background-color: #383846;
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px; }

.tvm-values::-webkit-scrollbar-track-piece,
.tvm-values-empty::-webkit-scrollbar-track-piece {
  background-color: #383846;
  border: 3px solid #383846;
  border-radius: 8px; }

.tvm-values::-webkit-scrollbar-thumb,
.tvm-values-empty::-webkit-scrollbar-thumb {
  background-color: #545667;
  border: 3px solid #383846;
  border-radius: 8px; }

.tvm-values::-webkit-scrollbar-corner,
.tvm-values-empty::-webkit-scrollbar-corner {
  background-color: #383846; }

.tvm-values::-webkit-resizer,
.tvm-values-empty::-webkit-resizer {
  background-color: #383846; }

.tvm-values-empty {
  color: #757888;
  font-style: italic; }

.tvm-csv-instructions {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 12px;
  font-weight: 600;
  font-family: "RobotoMono", monospace;
  padding: 0 8px;
  height: 30px;
  line-height: 30px;
  border-radius: 4px;
  background-color: #383846;
  margin-bottom: 2px;
  color: #757888;
  font-style: italic; }

.tvm-query-builder {
  display: flex;
  align-items: center;
  min-height: 30px;
  flex-wrap: wrap; }

.tvm-query-builder > * {
  margin-bottom: 2px;
  margin-right: 2px; }

.tvm-query-builder > *:last-child {
  margin-right: 0; }

.tvm-query-builder .dropdown {
  flex: 1 0 0; }

.tvm-query-builder .dropdown > .dropdown-toggle {
  width: 100%; }

.tvm-query-builder--text {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  background-color: #383846;
  border-radius: 3px;
  padding: 0 8px;
  white-space: nowrap;
  height: 30px;
  line-height: 30px;
  color: #22ADF6;
  font-size: 12px;
  font-weight: 600;
  font-family: "RobotoMono", monospace; }

.tvm-query-builder--text,
.tvm-query-builder--text:hover {
  cursor: default; }

.tvm-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end; }

.tvm-actions > .btn:nth-child(2) {
  margin-left: 8px; }

/*
  Write Data Form
  ------------------------------------------------------
*/
/*
  Styles for the Write Data overlay
  ------------------------------------------------------
  Accessed via Data Explorer
*/
.write-data-form {
  max-width: 960px;
  margin: 0 auto;
  position: relative;
  z-index: 2; }

.write-data-form--header {
  height: 60px;
  background: #0f0e15;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 30px; }

.write-data-form--header .page-header__dismiss {
  margin-left: 10px;
  margin-right: -10px; }

.write-data-form--header .dropdown {
  margin-left: 8px; }

.write-data-form--header .dropdown > .dropdown-toggle {
  width: 180px; }

.write-data-form--body {
  padding: 18px 30px;
  border-radius: 0 0 4px 4px;
  background: #202028;
  background: -moz-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: -webkit-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: linear-gradient(to bottom, #202028 0%, #0f0e15 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

textarea.form-control.write-data-form--input {
  height: calc(90vh - 48px - 60px - 36px);
  padding: 18px;
  max-width: 100%;
  min-width: 100%;
  font-family: "RobotoMono", monospace;
  resize: none; }

.write-data-form--footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 18px; }

.write-data-form--helper {
  font-size: 13px;
  font-style: italic;
  font-weight: 600;
  color: #757888;
  padding-left: 20px; }

.write-data-form--submit {
  width: 140px; }

.write-data-form--file {
  height: calc(90vh - 48px - 60px - 36px);
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  background-color: #202028;
  border: 2px solid #31313d;
  margin-bottom: 48px;
  border-radius: 3px;
  transition: background-color 0.25s ease, border-color 0.25s ease; }

.write-data-form--file > p {
  color: #a4a8b6;
  font-weight: 600;
  margin: 20px 0; }

.write-data-form--graphic {
  background-image: url(/506b526ac73ff3d5192138f62753fb65.svg);
  background-size: 100% 100%;
  background-position: center center;
  width: 90px;
  height: 90px;
  margin-bottom: 68px; }

.write-data-form--graphic.write-data-form--graphic_success {
  background-image: url(/5383d7502fba94c91b70fccf44116248.svg);
  margin-bottom: 0; }

input[type="file"].write-data-form--upload {
  display: none; }

.write-data-form--filepath_selected,
.write-data-form--filepath_empty {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  width: 100%;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 0 30px 0; }

.write-data-form--filepath_selected,
.write-data-form--filepath_selected:hover,
.write-data-form--filepath_empty,
.write-data-form--filepath_empty:hover {
  cursor: default; }

.write-data-form--filepath_empty {
  color: #a4a8b6; }

.write-data-form--filepath_selected {
  color: #4ED8A0; }

.write-data-form--file-submit {
  margin-top: 30px; }

.write-data-form--file-submit .btn {
  width: 124px;
  margin: 0 8px; }

/*
  Styles for hover state and drag-over state look the same
  ------------------------------------------------------------------------------
*/
.write-data-form--file.write-data-form--file_active:hover,
.overlay-technology.drag-over .write-data-form--file {
  cursor: pointer;
  background-color: #31313d;
  border-color: #434453; }

/*
    Styles for InfluxDB Admin Page
    ----------------------------------------------------------------------------
*/
/*
    Admin Table
    ----------------------------------------------------------------------------
*/
.admin-table .dropdown-toggle {
  background-color: transparent;
  font-weight: 600;
  color: #c6cad3;
  transition: none !important;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }

.admin-table .dropdown-toggle .caret {
  opacity: 0; }

.admin-table--multi-select-empty .dropdown-toggle {
  color: #676978; }

.admin-table tbody tr:hover .dropdown-toggle {
  color: #ffffff !important;
  background-color: #22ADF6; }

.admin-table tbody tr:hover .dropdown-toggle .caret {
  opacity: 1; }

.admin-table tbody tr:hover .dropdown-toggle:hover {
  transition: background-color 0.25s ease;
  background-color: #00C9FF; }

table > tbody > tr > td.admin-table--left-offset,
table > thead > tr > th.admin-table--left-offset {
  padding-left: 15px; }

table > tbody > tr.admin-table--edit-row,
table > tbody > tr.admin-table--edit-row:hover,
table.table-highlight > tbody > tr.admin-table--edit-row,
table.table-highlight > tbody > tr.admin-table--edit-row:hover {
  background-color: #383846; }

.admin-table--change-pw {
  display: flex;
  flex-wrap: nowrap; }

.admin-table--change-pw .form-control {
  margin: 0 4px 0 0;
  flex: 1 0 0%; }

pre.admin-table--query {
  width: 100%;
  padding: 0;
  border-radius: 0;
  background-color: transparent;
  margin-bottom: 0; }

.admin-table--delete-db {
  display: flex;
  align-items: center; }

.admin-table--delete-db > .form-control {
  flex: 1 0 0%;
  margin-right: 4px; }

/*
    Database Manager
    ----------------------------------------------------------------------------
*/
.db-manager {
  margin-bottom: 8px; }

.db-manager:last-child {
  margin-bottom: 0; }

.db-manager .db-manager-header--actions {
  visibility: hidden; }

.db-manager:hover .db-manager-header--actions {
  visibility: visible; }

.db-manager-header {
  padding: 0 11px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #31313d;
  border-radius: 3px 3px 0 0; }

.db-manager-header h4 {
  margin: 0;
  color: #B1B6FF;
  font-size: 16px;
  font-family: "RobotoMono", monospace;
  padding-left: 6px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.db-manager-header h4,
.db-manager-header h4:hover {
  cursor: default; }

.db-manager-header--actions {
  display: flex;
  align-items: center;
  justify-content: flex-end; }

.db-manager-header--edit {
  justify-content: flex-start; }

.db-manager-header--edit .form-control {
  margin: 0 8px 0 0;
  flex: 1 0 0%; }

.db-manager-table {
  background-color: #31313d;
  padding: 9px 11px;
  border-radius: 0 0 3px 3px; }

.db-manager-table .table-highlight > tbody > tr:hover {
  background-color: #383846; }

/*
    Chronograf Admin
    ----------------------------------------------------------------------------
*/
.all-users-admin-toggle {
  display: flex;
  align-items: center;
  margin-right: 30px; }

.all-users-admin-toggle span {
  display: inline-block;
  margin-left: 8px;
  font-weight: 500;
  font-style: italic;
  color: #8e91a1;
  transition: color 0.25s ease;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.all-users-admin-toggle span,
.all-users-admin-toggle span:hover {
  cursor: default; }

.all-users-admin-toggle .slide-toggle.active + span {
  font-style: normal;
  color: #d4d7dd; }

/*
    Styles for Chronograf Users Admin Page
    ----------------------------------------------------------------------------
*/
.chronograf-user--role,
.chronograf-user--org {
  display: inline-block;
  width: 100%;
  height: 22px;
  line-height: 22px; }

.chronograf-user--role,
.chronograf-user--org,
table.table.chronograf-admin-table .dropdown {
  margin-bottom: 2px; }

.chronograf-user--role:last-child,
.chronograf-user--org:last-child,
table.table.chronograf-admin-table .dropdown:last-child {
  margin: 0; }

.chronograf-user--org {
  padding-left: 7px; }

table.table.chronograf-admin-table thead tr th.align-with-col-text {
  padding-left: 15px; }

.dropdown-label {
  margin: 0 8px 0 0;
  font-weight: 700;
  color: #bec2cc;
  font-size: 14px; }

.panel-body.chronograf-admin-table--panel {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  padding-top: 11px; }

.chronograf-admin-table--batch {
  border-radius: 5px 5px 0 0;
  background-color: #31313d;
  padding: 11px 38px;
  display: flex;
  align-items: center; }

.chronograf-admin-table--batch-actions {
  display: flex;
  align-items: center; }

.chronograf-admin-table--batch-actions > .dropdown,
.chronograf-admin-table--batch-actions > .btn {
  margin-left: 4px; }

.chronograf-admin-table--num-selected {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  margin: 0px 11px 0 0;
  display: inline-block;
  height: 30px;
  line-height: 30px;
  font-size: 14px;
  font-weight: 500;
  color: #bec2cc; }

.chronograf-admin-table--num-selected,
.chronograf-admin-table--num-selected:hover {
  cursor: default; }

.super-admin-toggle .dropdown-toggle {
  width: 70px; }

/* Make dropdowns in admin table appear as plaintext until hover */
table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user td div.dropdown div.btn.dropdown-toggle {
  transition: none;
  background-color: #292933;
  color: #bec2cc; }

table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user td div.dropdown div.btn.dropdown-toggle > .caret {
  opacity: 0; }

table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user.selected td div.dropdown div.btn.dropdown-toggle {
  background-color: #383846; }

table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user:hover td div.dropdown div.btn.dropdown-toggle {
  background-color: #22ADF6;
  color: #ffffff; }

table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user:hover td div.dropdown div.btn.dropdown-toggle > .caret {
  opacity: 1; }

table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user:hover td div.dropdown div.btn.dropdown-toggle:hover {
  background-color: #00C9FF; }

table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user td div.dropdown.open div.btn.dropdown-toggle,
table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user td div.dropdown.open div.btn.dropdown-toggle:hover {
  background-color: #6BDFFF;
  color: #ffffff; }

table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user td div.dropdown.open div.btn.dropdown-toggle > .caret,
table.table.chronograf-admin-table tbody tr.chronograf-admin-table--user td div.dropdown.open div.btn.dropdown-toggle:hover > .caret {
  opacity: 1; }

/* Styles for new user row */
table.table.chronograf-admin-table tbody tr.chronograf-admin-table--new-user {
  background-color: #31313d; }

/* Highlight "Me" in the users table */
.chronograf-user--me {
  color: #4ED8A0;
  white-space: nowrap; }

.chronograf-user--me > span.icon {
  display: inline-block;
  margin-right: 4px; }

/*
    Styles for TICKscript Editor
    ----------------------------------------------------------------------------
*/
.tickscript {
  flex: 1 0 0;
  position: relative;
  max-width: 100%; }

.tickscript-controls,
.tickscript-console,
.tickscript-editor {
  width: 100%; }

.tickscript-console,
.tickscript-controls {
  padding: 0 60px;
  display: flex; }

.tickscript-controls {
  align-items: center;
  height: 60px;
  justify-content: space-between;
  background-color: #292933; }

.tickscript-controls--name {
  margin: 0;
  letter-spacing: 0;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  font-size: 17px;
  font-weight: 400;
  color: #bec2cc; }

.tickscript-controls--name,
.tickscript-controls--name:hover {
  cursor: default; }

.tickscript-controls--right {
  display: flex;
  align-items: center;
  flex-wrap: nowrap; }

.tickscript-controls--right > * {
  margin-left: 8px; }

.tickscript-console {
  align-items: flex-start;
  height: 135px;
  border-top: 2px solid #292933;
  background-color: #0f0e15;
  overflow-y: scroll; }

.tickscript-console::-webkit-scrollbar {
  width: 16px; }

.tickscript-console::-webkit-scrollbar-button {
  background-color: #0f0e15; }

.tickscript-console::-webkit-scrollbar-track {
  background-color: #0f0e15; }

.tickscript-console::-webkit-scrollbar-track-piece {
  background-color: #0f0e15;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.tickscript-console::-webkit-scrollbar-thumb {
  background-color: #31313d;
  border: 3px solid #0f0e15;
  border-radius: 8px; }

.tickscript-console::-webkit-scrollbar-corner {
  background-color: #0f0e15; }

.tickscript-console::-webkit-resizer {
  background-color: #0f0e15; }

.tickscript-console > p {
  position: relative;
  padding-left: 16px;
  font-family: "RobotoMono", monospace;
  margin: 11px 0;
  font-weight: 700;
  word-wrap: break-word;
  word-break: break-word; }

.tickscript-console > p:before {
  content: '>';
  position: absolute;
  top: 0;
  left: 0; }

.tickscript-console--default {
  color: #bec2cc; }

.tickscript-console--valid {
  color: #4ED8A0; }

.tickscript-console--error {
  color: #FF8564; }

.tickscript-editor {
  height: calc(100% - 195px); }

/*
    Toggle for displaying Logs
    ----------------------------------------------------------------------------
*/
.logs-toggle {
  position: absolute;
  left: 50%;
  transform: translateX(-50%); }

.logs-toggle > li {
  width: 100px;
  justify-content: center; }

.logs-toggle > li:not(.active) {
  background-color: #0f0e15; }

.logs-toggle > li:not(.active):hover {
  background-color: #292933; }

/*
    Styles for IFQL Builder aka TIME MACHINE aka DELOREAN
    ----------------------------------------------------------------------------
*/
/*
    IFQL Code Mirror Editor
    ----------------------------------------------------------------------------
*/
.time-machine-container {
  display: flex;
  height: 90%;
  justify-content: baseline;
  align-items: stretch; }

.func-nodes-container,
.time-machine-editor-container {
  flex: 1 0 50%; }

.time-machine-editor {
  width: 100%;
  height: 100%; }

/*
  Shared Node styles
  ------------------
*/
.variable-string,
.func-node {
  min-height: 30px;
  border-radius: 4px;
  padding: 0 10px;
  font-size: 13px;
  font-weight: 600;
  position: relative;
  background-color: #31313d;
  transition: background-color 0.25s ease; }

.variable-string:hover,
.func-node:hover {
  background-color: #434453; }

.body-builder {
  padding: 30px;
  min-width: 440px;
  overflow: hidden;
  height: 100%;
  width: 100%;
  background-color: #1c1c21; }

.declaration {
  width: 100%;
  margin-bottom: 24px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center; }

.declaration:last-of-type {
  margin-bottom: 0; }

.variable-string {
  color: #999dab;
  line-height: 30px;
  white-space: nowrap;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.variable-string,
.variable-string:hover {
  cursor: default; }

.variable-blank {
  font-style: italic; }

.variable-name {
  color: #22ADF6; }

.variable-value--string {
  color: #7CE490; }

.variable-value--boolean {
  color: #32B08C; }

.variable-value--number {
  color: #BEF0FF; }

.variable-value--invalid {
  color: #32B08C; }

.func-node {
  display: flex;
  align-items: center;
  margin-left: 5px; }

.func-node:after {
  content: '';
  height: 4px;
  width: 5px;
  background-color: #31313d;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-100%, -50%); }

.func-node:first-child:after {
  content: none;
  margin-left: 0; }

.func-node--name,
.func-node--preview {
  font-size: 13px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  white-space: nowrap;
  transition: color 0.25s ease;
  font-weight: 600; }

.func-node--name,
.func-node--name:hover,
.func-node--preview,
.func-node--preview:hover {
  cursor: default; }

.func-node--name {
  height: 30px;
  line-height: 30px;
  color: #9394FF; }

.func-node:hover .func-node--name {
  color: #B1B6FF; }

.func-node--preview {
  color: #999dab;
  margin-left: 4px;
  padding: 5px 0;
  display: flex;
  align-items: center; }

.func-node:hover .func-node--preview {
  color: #eeeff2; }

.func-node--tooltip,
.variable-name--tooltip {
  background-color: #292933;
  border-radius: 4px;
  padding: 10px;
  display: flex;
  align-items: stretch;
  flex-direction: column;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  z-index: 9999;
  box-shadow: 0 0 10px 2px #202028; }

.func-node--tooltip:before,
.variable-name--tooltip:before {
  content: '';
  border-width: 9px;
  border-style: solid;
  border-color: transparent;
  border-bottom-color: #292933;
  position: absolute;
  top: 0;
  left: 13px;
  transform: translate(-50%, -100%); }

.func-node--tooltip:after,
.variable-name--tooltip:after {
  content: '';
  width: 80%;
  height: 7px;
  position: absolute;
  top: -7px;
  left: 0; }

.func-node--buttons {
  display: flex;
  margin-top: 12px; }

.func-node--delete,
.func-node--build {
  width: 60px; }

.func-node--sub .func-arg {
  min-width: 120px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  margin-bottom: 4px; }

.func-node--sub .func-arg:last-of-type {
  margin-bottom: 0; }

.func-arg--label {
  white-space: nowrap;
  font-size: 13px;
  font-weight: 600;
  color: #8e91a1;
  padding-right: 8px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.func-arg--label,
.func-arg--label:hover {
  cursor: default; }

.func-arg--value {
  flex: 1 0 0; }

.func-arg--textarea {
  overflow: hidden;
  width: 300px; }

.variable-name--tooltip {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap; }

.variable-name--input {
  width: 140px; }

.variable-name--operator {
  width: 20px;
  height: 30px;
  text-align: center;
  line-height: 30px;
  font-weight: 600;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.variable-name--operator,
.variable-name--operator:hover {
  cursor: default; }

/*
  Filter Preview Styles
  ------------------------------------------------------------------------------
*/
.ifql-filter--key,
.ifql-filter--operator,
.ifql-filter--value,
.ifql-filter--paren-open,
.ifql-filter--paren-close {
  height: 26px;
  line-height: 26px;
  border-style: solid;
  border-width: 0; }

.ifql-filter--key {
  background-color: #292933;
  border-radius: 3px 0 0 3px;
  padding-left: 6px; }

.ifql-filter--operator {
  text-transform: uppercase;
  padding: 0 3px; }

.ifql-filter--value + .ifql-filter--operator,
.ifql-filter--paren-close + .ifql-filter--operator {
  padding: 0 6px; }

.ifql-filter--key + .ifql-filter--operator {
  background-color: #292933; }

.ifql-filter--key + .ifql-filter--operator + .ifql-filter--value {
  background-color: #292933;
  border-radius: 0 3px 3px 0; }

.ifql-filter--value {
  padding-right: 6px; }

.ifql-filter--value.number {
  color: #BEF0FF; }

.ifql-filter--value.string {
  color: #7CE490; }

.ifql-filter--value.boolean {
  color: #32B08C; }

.ifql-filter--paren-open,
.ifql-filter--paren-close {
  height: 34px;
  width: 4px;
  background-color: #383846;
  border: 4px solid #292933; }

.ifql-filter--paren-open {
  border-right: 0;
  border-radius: 3px 0 0 3px; }

.ifql-filter--paren-close {
  border-left: 0;
  border-radius: 0 3px 3px 0; }

.ifql-filter--paren-open + .ifql-filter--key,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value {
  position: relative;
  z-index: 2;
  background-color: #383846; }

.ifql-filter--paren-open + .ifql-filter--key:before,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator:before,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value:before,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key:before,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator:before,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value:before,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key:before,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator:before,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value:before {
  content: '';
  width: 100%;
  height: 34px;
  position: absolute;
  top: -4px;
  left: 0;
  border-style: solid;
  border-width: 4px 0;
  border-color: #292933;
  z-index: -1;
  box-sizing: border-box; }

.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator,
.ifql-filter--paren-open + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator + .ifql-filter--key + .ifql-filter--operator + .ifql-filter--value + .ifql-filter--operator {
  background-color: #292933;
  height: 34px;
  line-height: 34px; }

/*
    IFQL Schema Explorer -- Tree View
    ----------------------------------------------------------------------------
*/
.ifql-schema-explorer {
  width: 100%;
  height: 100%;
  background-color: #202028;
  min-width: 200px; }

.ifql-schema-tree {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding-left: 0; }

.ifql-schema-tree > .ifql-schema-tree {
  padding-left: 26px; }

.ifql-schema-tree__empty {
  height: 26px;
  display: flex;
  align-items: center;
  padding: 0 11px;
  font-size: 12px;
  font-weight: 600;
  color: #676978;
  font-style: italic; }

.ifql-schema-item-toggle {
  width: 26px;
  height: 26px;
  position: relative; }

.ifql-schema-item-toggle:before,
.ifql-schema-item-toggle:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #999dab;
  width: 8.66667px;
  height: 2px;
  transition: transform 0.25s ease, background-color 0.25s ease; }

.ifql-schema-item-toggle:after {
  transform: translate(-50%, -50%) rotate(90deg); }

.ifql-schema-item {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  position: relative;
  height: 26px;
  display: flex;
  align-items: center;
  padding: 0 11px;
  padding-left: 0;
  font-size: 12px;
  font-weight: 600;
  color: #999dab;
  white-space: nowrap;
  transition: color 0.25s ease, background-color 0.25s ease; }

.ifql-schema-item,
.ifql-schema-item:hover {
  cursor: default; }

.ifql-schema-item > span.icon {
  position: absolute;
  top: 50%;
  left: 13px;
  transform: translate(-50%, -50%); }

.ifql-schema-item:hover {
  color: #eeeff2;
  cursor: pointer;
  background-color: #31313d; }

.ifql-schema-item:hover .ifql-schema-item-toggle:before,
.ifql-schema-item:hover .ifql-schema-item-toggle:after {
  background-color: #eeeff2; }

.expanded > .ifql-schema-item {
  color: #22ADF6; }

.expanded > .ifql-schema-item .ifql-schema-item-toggle:before,
.expanded > .ifql-schema-item .ifql-schema-item-toggle:after {
  background-color: #22ADF6; }

.expanded > .ifql-schema-item .ifql-schema-item-toggle:before {
  transform: translate(-50%, -50%) rotate(-90deg);
  width: 2px; }

.expanded > .ifql-schema-item .ifql-schema-item-toggle:after {
  transform: translate(-50%, -50%) rotate(0deg); }

.expanded > .ifql-schema-item:hover {
  color: #00C9FF; }

.expanded > .ifql-schema-item:hover .ifql-schema-item-toggle:before,
.expanded > .ifql-schema-item:hover .ifql-schema-item-toggle:after {
  background-color: #00C9FF; }

.ifql-schema-item.readonly,
.ifql-schema-item.readonly:hover {
  padding-left: 34px;
  background-color: transparent;
  color: #999dab;
  cursor: default; }

/* Tree Node Lines */
.ifql-tree-node:before,
.ifql-tree-node:after {
  content: '';
  background-color: #31313d;
  position: absolute; }

.ifql-tree-node:before {
  top: 0;
  left: 13px;
  width: 2px;
  height: 100%; }

.ifql-tree-node:last-child:before {
  height: 13px; }

.ifql-tree-node:after {
  top: 13px;
  left: 13px;
  width: 13px;
  height: 2px; }

/*
    Controls
    ----------------------------------------------------------------------------
*/
.ifql-schema--controls {
  padding: 11px;
  display: flex;
  align-items: center;
  justify-content: space-between; }

.ifql-schema--filter {
  flex: 1 0 0;
  margin-right: 4px; }

.ifql-schema-type {
  color: #999dab;
  display: inline-block;
  margin-left: 8px;
  opacity: 0;
  transition: opacity 0.25s ease; }

.ifql-schema-item:hover .ifql-schema-type {
  opacity: 1; }

/*
    Time Machine Visualization
    ----------------------------------------------------------------------------
*/
.time-machine-visualization {
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #202028;
  background: -moz-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: -webkit-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: linear-gradient(to bottom, #202028 0%, #0f0e15 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.time-machine--graph {
  width: calc(100% - 60px);
  height: calc(100% - 60px);
  background-color: #292933;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex-wrap: nowrap; }

.time-machine--graph-header {
  height: 56px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  justify-content: center; }

.time-machine--graph-header .nav.nav-tablist {
  width: 180px; }

.time-machine--graph-header .nav.nav-tablist li {
  justify-content: center;
  flex: 1 0 0;
  white-space: nowrap; }

.time-machine--graph-body {
  padding: 0 16px 8px 16px;
  flex: 1 0 0; }

/*
    IFQL Add Function Button
    ----------------------------------------------------------------------------
*/
.ifql-func--selector {
  display: flex;
  align-items: center;
  position: relative; }

.ifql-func--selector.open {
  z-index: 9999; }

.func-selector--connector {
  width: 10px;
  height: 30px;
  position: relative; }

.func-selector--connector:after {
  content: '';
  position: absolute;
  top: 50%;
  width: 100%;
  height: 4px;
  transform: translateY(-50%);
  background: #31313d;
  background: -moz-linear-gradient(left, #31313d 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #31313d 0%, #22ADF6 100%);
  background: linear-gradient(to right, #31313d 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.btn.btn-sm.ifql-func--button {
  border-radius: 50%;
  float: left; }

.btn.btn-sm.ifql-func--button:focus {
  box-shadow: 0 0 8px 3px #513CC6; }

.ifql-func--autocomplete,
.ifql-func--list {
  position: absolute;
  width: 166px; }

.ifql-func--autocomplete {
  left: 0;
  top: 0; }

.func-selector--connector + .ifql-func--autocomplete {
  left: 10px; }

.ifql-func--list {
  left: 0;
  border-radius: 4px;
  top: 30px;
  padding: 0;
  margin: 0;
  background: #7A65F2;
  background: -moz-linear-gradient(left, #7A65F2 0%, #22ADF6 100%);
  background: -webkit-linear-gradient(left, #7A65F2 0%, #22ADF6 100%);
  background: linear-gradient(to right, #7A65F2 0%, #22ADF6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.ifql-func--item {
  height: 28px;
  line-height: 28px;
  padding: 0 11px;
  margin: 0;
  font-size: 13px;
  color: #BEF0FF; }

.ifql-func--item:first-child {
  border-radius: 4px 4px 0 0; }

.ifql-func--item:last-child {
  border-radius: 0 0 4px 4px; }

.ifql-func--item.active {
  background: #9394FF;
  background: -moz-linear-gradient(left, #9394FF 0%, #00C9FF 100%);
  background: -webkit-linear-gradient(left, #9394FF 0%, #00C9FF 100%);
  background: linear-gradient(to right, #9394FF 0%, #00C9FF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.ifql-func--item:hover {
  cursor: pointer; }

.ifql-func--item.empty {
  font-style: italic;
  color: #6BDFFF; }

/*
  Styles for the Manage Poviders Page
  ------------------------------------------------------------------------------
*/
.provider--id {
  width: 60px; }

.provider--scheme {
  width: 150px; }

.provider--provider {
  width: 150px; }

.provider--providerorg {
  width: 210px; }

.provider--redirect {
  width: 220px; }

.provider--delete {
  width: 30px;
  min-width: 30px; }

.provider--arrow {
  flex: 1 0 0; }

.fancytable--td.provider--id,
.fancytable--th.provider--id {
  padding: 0 8px; }

.provider--redirect.creating {
  width: 186px; }

.provider--arrow {
  display: flex;
  align-items: center;
  min-width: 36px; }

.provider--arrow.fancytable--td {
  padding: 0 8px; }

.provider--arrow > span {
  position: relative;
  height: 2px;
  width: 100%;
  background: #22ADF6;
  background: -moz-linear-gradient(left, #22ADF6 0%, #7A65F2 100%);
  background: -webkit-linear-gradient(left, #22ADF6 0%, #7A65F2 100%);
  background: linear-gradient(to right, #22ADF6 0%, #7A65F2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 ); }

.provider--arrow > span:before,
.provider--arrow > span:after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }

.provider--arrow > span:before {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #22ADF6;
  left: 0; }

.provider--arrow > span:after {
  right: -6px;
  border-style: solid;
  border-color: transparent;
  border-width: 6px;
  border-left-color: #7A65F2; }

/*
    Unsorted
    ----------------------------------------------
*/
.text-right .btn {
  margin: 0 0 0 4px; }

.text-center .btn {
  margin: 0 6px; }

.default-source-label {
  display: inline-block;
  vertical-align: middle;
  font-size: 13px;
  font-weight: 500;
  background-color: #202028;
  color: #22ADF6;
  border-radius: 3px;
  padding: 2px 6px;
  margin-left: 4px; }

.progress-label {
  margin-bottom: 4px;
  color: #999dab;
  width: 100%; }

.progress-label strong {
  font-weight: 500;
  color: #676978; }

.modal form {
  padding: 0;
  margin: 0;
  background-color: transparent; }

.modal .form-grid {
  width: 100%;
  display: inline-block; }

.modal .form-grid.padding-top {
  padding-top: 15px; }

/*
    Generic Empty State
    ----------------------------------------------
*/
.generic-empty-state {
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
  color: #a4a8b6;
  padding: 20px 0;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.generic-empty-state,
.generic-empty-state:hover {
  cursor: default; }

.generic-empty-state h4,
.generic-empty-state h5 {
  font-weight: 400; }

.generic-empty-state .icon {
  margin-bottom: 11px; }

/*
    Loading Dots
    ----------------------------------------------
*/
.loading-dots {
  position: absolute;
  transform: translate(0, 0);
  transform: translateX(50%);
  width: 16px;
  height: 18px; }

.loading-dots div {
  width: 4px;
  height: 4px;
  background-color: #434453;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%); }

.loading-dots div:nth-child(1) {
  left: 0;
  animation: refreshingSpinnerA 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) infinite; }

.loading-dots div:nth-child(2) {
  left: 50%;
  animation: refreshingSpinnerB 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) infinite; }

.loading-dots div:nth-child(3) {
  left: 100%;
  animation: refreshingSpinnerC 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) infinite; }

/*
    Custom Tabs
    ----------------------------------------------
*/
.tab-group {
  display: flex;
  justify-content: flex-start;
  display: inline-block; }

.tab-group .btn.tab {
  border: 2px solid #eeeff2;
  border-right-width: 0;
  padding: 10px 20px;
  margin: 0 !important;
  font-weight: 400;
  color: #999dab;
  background-color: #eeeff2;
  box-shadow: none;
  transition: color 0.25s ease, background-color 0.25s ease; }

.tab-group .btn.tab:hover {
  cursor: pointer;
  background-color: #f6f6f8;
  color: #757888; }

.tab-group .btn.tab:first-child {
  border-radius: 5px 0 0 5px; }

.tab-group .btn.tab:last-child {
  border-radius: 0 5px 5px 0;
  border-right-width: 2px; }

.tab-group .btn.tab.active {
  background-color: white;
  color: #676978; }

.currently-connected-source {
  color: #4ED8A0;
  font-weight: 600;
  font-size: 12px;
  margin: 0 4px;
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

.currently-connected-source,
.currently-connected-source:hover {
  cursor: default; }

br {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important; }

br,
br:hover {
  cursor: default; }

.select-source-page {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background: #202028;
  background: -moz-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: -webkit-linear-gradient(top, #202028 0%, #0f0e15 100%);
  background: linear-gradient(to bottom, #202028 0%, #0f0e15 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=0 ); }

.select-source-page::-webkit-scrollbar {
  width: 16px; }

.select-source-page::-webkit-scrollbar-button {
  background-color: #202028; }

.select-source-page::-webkit-scrollbar-track {
  background-color: #202028; }

.select-source-page::-webkit-scrollbar-track-piece {
  background-color: #202028;
  border: 3px solid #202028;
  border-radius: 8px; }

.select-source-page::-webkit-scrollbar-thumb {
  background-color: #22ADF6;
  border: 3px solid #202028;
  border-radius: 8px; }

.select-source-page::-webkit-scrollbar-corner {
  background-color: #202028; }

.select-source-page::-webkit-resizer {
  background-color: #202028; }

.source-table--connect {
  width: 74px; }

.source-table--connect-col {
  width: 90px; }

.source-table--kapacitor {
  border-left: 2px solid #383846;
  width: 278px; }

.source-table--kapacitor__view-only {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  font-size: 14px;
  font-weight: 600; }

.source-table--kapacitor__view-only,
.source-table--kapacitor__view-only:hover {
  cursor: default; }

/*
  Styles for the Status Dashboard
  -----------------------------------------------------------------------------
  Not enough of these to merit their own page, will organize later
*/
.alerts-widget,
.getting-started {
  padding: 0 16px; }

.getting-started--cell {
  color: #999dab;
  background-color: #202028;
  border-radius: 3px;
  padding: 12px;
  margin-bottom: 4px; }

.getting-started--cell.intro {
  background: #22ADF6;
  background: -moz-linear-gradient(left, #22ADF6 0%, #7A65F2 100%);
  background: -webkit-linear-gradient(left, #22ADF6 0%, #7A65F2 100%);
  background: linear-gradient(to right, #22ADF6 0%, #7A65F2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
  color: #ffffff; }

.getting-started--cell p {
  font-size: 13px; }

.alerts-widget {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch; }

.alerts-widget > .btn {
  margin: 20px 0; }

.alerts-widget .alert-history-table {
  flex: 1 0 0; }

/*
  Version Number
  -----------------------------------------------------------------------------
*/
.version-number {
  text-align: center;
  margin: 20px 0;
  font-family: "RobotoMono", monospace;
  color: #999dab;
  font-size: 13px; }

/*
  View TICKscript Overlay
  -----------------------------------------------------------------------------
*/
.tick-script-overlay {
  max-width: 960px;
  margin: 0 auto 30px auto;
  height: calc(100% - 30px);
  position: relative; }

.tick-script-overlay .write-data-form--body {
  height: calc(100% - 60px);
  display: flex;
  flex-direction: column; }

.tick-script-overlay--sample {
  margin: 0;
  white-space: pre-wrap;
  font-size: 14px;
  padding: 20px;
  border: 2px solid #31313d; }

/*
  GROUP BY TIME Dropdown
  -----------------------------------------------------------------------------
*/
.group-by-time {
  display: flex;
  align-items: center;
  flex-wrap: nowrap; }

.group-by-time--label {
  white-space: nowrap;
  margin: 0;
  color: #a4a8b6;
  padding: 0 6px;
  height: 30px;
  line-height: 30px; }

.group-by-time--dropdown .dropdown-toggle {
  width: 70px; }

.group-by-time--dropdown .dropdown-selected,
.group-by-time--dropdown .dropdown-item {
  font-family: "RobotoMono", monospace; }

/*
  Fix Display issue in Safari
  -----------------------------------------------------------------------------
  The pseudo elements offset items in the tablists
*/
.nav-tablist:before,
.nav-tablist:after {
  content: none;
  display: none; }

/*
  Data Explorer download CSV button
  -----------------------------------------------------------------------------
*/
.icon.download.dlcsv:before {
  content: '\E91D';
  font-weight: bold;
  color: #bec2cc; }

.btn.btn-sm.btn-default.dlcsv {
  margin-left: 10px; }

/*
  Dropdown clickable area fix
  -----------------------------------------------------------------------------
  TODO: Move this into theme, not sure how this broke
*/
.dropdown .dropdown-menu li.dropdown-item {
  display: block; }

.dropdown .dropdown-menu li.dropdown-item > a {
  display: block; }

/*  Deletable tabs in .nav-tablist
  -----------------------------------------------------------------------------
  TODO: Add this into the theme styles
*/
.nav-tab--delete {
  width: 16px;
  height: 16px;
  display: inline-block;
  margin-left: 4px;
  border-radius: 3px;
  position: relative;
  background-color: #383846; }

.nav-tab--delete:before,
.nav-tab--delete:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #999dab;
  width: 10px;
  height: 2px;
  border-radius: 1px; }

.nav-tab--delete:before {
  transform: translate(-50%, -50%) rotate(45deg); }

.nav-tab--delete:after {
  transform: translate(-50%, -50%) rotate(-45deg); }

/*
  Auto Refresh Dropdown
  -----------------------------------------------------------------------------
*/
.autorefresh-dropdown {
  display: flex;
  flex-wrap: nowrap; }

.autorefresh-dropdown.paused .dropdown {
  margin-right: 4px; }

.autorefresh-dropdown.paused .dropdown > .btn.dropdown-toggle {
  width: 126px; }

/*
  Dashboard Switcher
  -----------------------------------------------------------------------------
*/
.dropdown.dashboard-switcher {
  margin-right: 4px; }

.dropdown.dashboard-switcher .btn.dropdown-toggle {
  justify-content: center; }

.dropdown.dashboard-switcher + h1.page-header__title {
  margin-left: 6px; }

.dropdown.dashboard-switcher .dropdown-item {
  white-space: nowrap; }

/*
  Dashboard Name Editing
  -----------------------------------------------------------------------------
*/
.page-header__left.page-header__dash-editable,
.dashboard-title,
.dashboard-title input[type='text'].form-control.dashboard-title--input,
.dashboard-title h1 {
  flex: 1 0 0; }

.dashboard-title {
  display: flex; }

.dashboard-title input[type='text'].form-control.dashboard-title--input,
.dashboard-title input[type='text'].form-control.dashboard-title--input:focus,
.dashboard-title h1 {
  font-size: 19px;
  font-weight: 400 !important;
  padding: 0 7px; }

.dashboard-title input[type='text'].form-control.dashboard-title--input,
.dashboard-title input[type='text'].form-control.dashboard-title--input:focus {
  font-size: 19px;
  font-weight: 400 !important; }

.dashboard-title h1 {
  user-select: none !important;
  -moz-user-select: none !important;
  -webkit-user-select: none !important;
  -ms-user-select: none !important;
  -o-user-select: none !important;
  position: relative;
  border: 2px solid #0f0e15;
  color: #eeeff2;
  height: 30px;
  line-height: 28px;
  border-radius: 4px;
  margin: 0;
  letter-spacing: 0;
  text-transform: none;
  transition: color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease; }

.dashboard-title h1,
.dashboard-title h1:hover {
  cursor: default; }

.dashboard-title h1:after {
  content: '\F058';
  font-family: 'icomoon';
  position: absolute;
  font-size: 15px;
  top: 50%;
  right: 7px;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.25s ease;
  color: #999dab; }

.dashboard-title h1:hover {
  cursor: text;
  color: #ffffff;
  background-color: #292933;
  border-color: #292933; }

.dashboard-title h1:hover:after {
  opacity: 1; }

/*  Add borders between items in .nav-tablist
    -----------------------------------------------------------------------------
    TODO: Add these styles into the theme
  */
.nav.nav-tablist {
  background-color: #383846; }

.nav.nav-tablist > li {
  margin-right: 2px; }

.nav.nav-tablist > li:last-child {
  margin-right: 0; }

/*
  Fake form padding without <form>

*/
div.faux-form .form-group.col-xs-1,
div.faux-form .form-group.col-xs-2,
div.faux-form .form-group.col-xs-3,
div.faux-form .form-group.col-xs-4,
div.faux-form .form-group.col-xs-5,
div.faux-form .form-group.col-xs-6,
div.faux-form .form-group.col-xs-7,
div.faux-form .form-group.col-xs-8,
div.faux-form .form-group.col-xs-9,
div.faux-form .form-group.col-xs-10,
div.faux-form .form-group.col-xs-11,
div.faux-form .form-group.col-xs-12,
div.faux-form .form-group.col-sm-1,
div.faux-form .form-group.col-sm-2,
div.faux-form .form-group.col-sm-3,
div.faux-form .form-group.col-sm-4,
div.faux-form .form-group.col-sm-5,
div.faux-form .form-group.col-sm-6,
div.faux-form .form-group.col-sm-7,
div.faux-form .form-group.col-sm-8,
div.faux-form .form-group.col-sm-9,
div.faux-form .form-group.col-sm-10,
div.faux-form .form-group.col-sm-11,
div.faux-form .form-group.col-sm-12,
div.faux-form .form-group.col-md-1,
div.faux-form .form-group.col-md-2,
div.faux-form .form-group.col-md-3,
div.faux-form .form-group.col-md-4,
div.faux-form .form-group.col-md-5,
div.faux-form .form-group.col-md-6,
div.faux-form .form-group.col-md-7,
div.faux-form .form-group.col-md-8,
div.faux-form .form-group.col-md-9,
div.faux-form .form-group.col-md-10,
div.faux-form .form-group.col-md-11,
div.faux-form .form-group.col-md-12,
div.faux-form .form-group.col-lg-1,
div.faux-form .form-group.col-lg-2,
div.faux-form .form-group.col-lg-3,
div.faux-form .form-group.col-lg-4,
div.faux-form .form-group.col-lg-5,
div.faux-form .form-group.col-lg-6,
div.faux-form .form-group.col-lg-7,
div.faux-form .form-group.col-lg-8,
div.faux-form .form-group.col-lg-9,
div.faux-form .form-group.col-lg-10,
div.faux-form .form-group.col-lg-11,
div.faux-form .form-group.col-lg-12 {
  padding-left: 6px;
  padding-right: 6px; }

/*
  Stretch to fit Dropdowns
  -----------------------------------------------------------------------------
*/
div.dropdown.dropdown-stretch,
div.dropdown.dropdown-stretch > div.dropdown-toggle,
div.dropdown.dropdown-stretch > button.dropdown-toggle {
  width: 100%; }

/*
  Delete Source
  -----------------------------------------------------------------------------
*/
.delete-source {
  display: inline-block; }

/*
  Add spacing between time format dropdown and input
  -----------------------------------------------------------------------------
*/
.custom-time-format {
  margin-top: 4px; }

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY2hyb25vZ3JhZi5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9tb2R1bGVzL2luZmx1eC1jb2xvcnMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvbW9kdWxlcy92YXJpYWJsZXMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvbW9kdWxlcy9taXhpbnMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvbW9kdWxlcy9oZWxwZXJzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2ZvbnRzL2ZvbnRzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2ZvbnRzL2ljb24tZm9udC5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS90aGVtZS9jaHJvbm9ncmFmLXRoZW1lLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3RoZW1lL19yZXNldC5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS90aGVtZS9fZ3JpZC5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS90aGVtZS9fdHlwb2dyYXBoeS5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS90aGVtZS9fYnV0dG9ucy5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS90aGVtZS9fdGFibGVzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3RoZW1lL19kcm9wZG93bnMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvdGhlbWUvX2Zvcm0tZWxlbWVudHMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvdGhlbWUvX25vdGlmaWNhdGlvbnMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvdGhlbWUvX2FsZXJ0cy5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS90aGVtZS9fcGFuZWxzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3RoZW1lL19yYWRpby1idXR0b25zLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3RoZW1lL19taXNjLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3RoZW1lL19jb2RlLXN0eWxlcy5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9leHRlcm5hbC9yZWFjdC1ncmlkLWxheW91dC5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9leHRlcm5hbC9maXhlZC1kYXRhLXRhYmxlLWJhc2Uuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvZXh0ZXJuYWwvZml4ZWQtZGF0YS10YWJsZS1zdHlsZS5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9leHRlcm5hbC9maXhlZC1kYXRhLXRhYmxlLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2V4dGVybmFsL2NvZGVtaXJyb3Iuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvbGF5b3V0L3BhZ2Uuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvbGF5b3V0L3BhZ2UtaGVhZGVyLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2xheW91dC9wYWdlLXN1YnNlY3Rpb25zLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2xheW91dC9zaWRlYmFyLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2xheW91dC9vdmVybGF5LXRlY2hub2xvZ3kuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9hbm5vdGF0aW9ucy5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL2Nyb3NzaGFpcnMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9jZW8tZGlzcGxheS1vcHRpb25zLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvY29uZmlybS1idXR0b24uc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9jb25maXJtLW9yLWNhbmNlbC5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL2NvZGUtbWlycm9yLXRoZW1lLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvY29sb3ItZHJvcGRvd24uc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9jdXN0b20tdGltZS1yYW5nZS5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL2N1c3RvbWl6ZS1maWVsZHMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9keWdyYXBocy5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL2ZhbmN5LXNjcm9sbGJhcnMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9mYW5jeS10YWJsZS5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL2ZpbGwtcXVlcnkuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9mbGlwLXRvZ2dsZS5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL2Z1bmN0aW9uLXNlbGVjdG9yLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvZ3JhcGgtdGlwcy5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL2dyYXBoLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvaW5wdXQtY2xpY2stdG8tZWRpdC5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL2lucHV0LXRhZy1saXN0LnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvbmV3c2ZlZWQuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9vcHQtaW4uc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9vcmdhbml6YXRpb25zLXRhYmxlLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvcGFnZS1oZWFkZXItZHJvcGRvd24uc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9wYWdlLWhlYWRlci1lZGl0YWJsZS5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3BhZ2Utc3Bpbm5lci5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3N0YXRpYy1sZWdlbmQuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9xdWVyeS1tYWtlci5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3F1ZXJ5LWVkaXRvci5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9xdWVyeS1tYWtlci1yZXNwb25zaXZlLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvcmVhY3QtdG9vbHRpcHMuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9yZWRhY3RlZC1pbnB1dC5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3Jlc2l6ZXIuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy9zZWFyY2gtd2lkZ2V0LnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvc2xpZGUtdG9nZ2xlLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvaW5mby1pbmRpY2F0b3JzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvc291cmNlLXNlbGVjdG9yLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvdGFibGVzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvdGFibGUtZ3JhcGguc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy90aHJlZXNpemVyLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvdGhyZXNob2xkLWNvbnRyb2xzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMva2FwYWNpdG9yLWxvZ3MtdGFibGUuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvcGFnZXMvY29uZmlnLWVuZHBvaW50cy5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9wYWdlcy9zaWdudXAuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvcGFnZXMvYXV0aC1wYWdlLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3BhZ2VzL2thcGFjaXRvci5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9wYWdlcy9kYXNoYm9hcmRzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvZGFzaGJvYXJkLWVtcHR5LnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvdGVtcGxhdGUtY29udHJvbC1iYXIuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvcGFnZXMvY2VsbC1lZGl0b3Itb3ZlcmxheS5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3RlbXBsYXRlLXZhcmlhYmxlcy1tYW5hZ2VyLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvd3JpdGUtZGF0YS1mb3JtLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3BhZ2VzL2FkbWluLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3BhZ2VzL3VzZXJzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3BhZ2VzL3RpY2tzY3JpcHQtZWRpdG9yLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3BhZ2VzL3RpbWUtbWFjaGluZS5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3RpbWUtbWFjaGluZS9pZnFsLWVkaXRvci5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3RpbWUtbWFjaGluZS9pZnFsLWJ1aWxkZXIuc2NzcyIsIi9yb290L2dvL3NyYy9naXRodWIuY29tL2luZmx1eGRhdGEvY2hyb25vZ3JhZi91aS9zcmMvc3R5bGUvY29tcG9uZW50cy90aW1lLW1hY2hpbmUvaWZxbC1leHBsb3Jlci5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9jb21wb25lbnRzL3RpbWUtbWFjaGluZS92aXN1YWxpemF0aW9uLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL2NvbXBvbmVudHMvdGltZS1tYWNoaW5lL2FkZC1mdW5jLWJ1dHRvbi5zY3NzIiwiL3Jvb3QvZ28vc3JjL2dpdGh1Yi5jb20vaW5mbHV4ZGF0YS9jaHJvbm9ncmFmL3VpL3NyYy9zdHlsZS9wYWdlcy9tYW5hZ2UtcHJvdmlkZXJzLnNjc3MiLCIvcm9vdC9nby9zcmMvZ2l0aHViLmNvbS9pbmZsdXhkYXRhL2Nocm9ub2dyYWYvdWkvc3JjL3N0eWxlL3Vuc29ydGVkLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbiAgIENocm9ub2dyYWYgU3R5bGVzXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLy8gTW9kdWxlc1xuQGltcG9ydCAnbW9kdWxlcy9pbmZsdXgtY29sb3JzJztcbkBpbXBvcnQgJ21vZHVsZXMvdmFyaWFibGVzJztcbkBpbXBvcnQgJ21vZHVsZXMvbWl4aW5zJztcbkBpbXBvcnQgJ21vZHVsZXMvaGVscGVycyc7XG5cbi8vIEZvbnRzXG5AaW1wb3J0ICdmb250cy9mb250cyc7XG5AaW1wb3J0ICdmb250cy9pY29uLWZvbnQnO1xuXG4vLyBUaGVtZVxuQGltcG9ydCAndGhlbWUvY2hyb25vZ3JhZi10aGVtZSc7XG5cbi8vIFZlbmRvclxuQGltcG9ydCAnZXh0ZXJuYWwvcmVhY3QtZ3JpZC1sYXlvdXQnO1xuQGltcG9ydCAnZXh0ZXJuYWwvZml4ZWQtZGF0YS10YWJsZS1iYXNlJztcbkBpbXBvcnQgJ2V4dGVybmFsL2ZpeGVkLWRhdGEtdGFibGUtc3R5bGUnO1xuQGltcG9ydCAnZXh0ZXJuYWwvZml4ZWQtZGF0YS10YWJsZSc7XG5AaW1wb3J0ICdleHRlcm5hbC9jb2RlbWlycm9yJztcbkBpbXBvcnQgJy4uLy4uL25vZGVfbW9kdWxlcy9jb2RlbWlycm9yL3RoZW1lL21hdGVyaWFsLmNzcyc7XG5cbi8vIExheW91dFxuQGltcG9ydCAnbGF5b3V0L3BhZ2UnO1xuQGltcG9ydCAnbGF5b3V0L3BhZ2UtaGVhZGVyJztcbkBpbXBvcnQgJ2xheW91dC9wYWdlLXN1YnNlY3Rpb25zJztcbkBpbXBvcnQgJ2xheW91dC9zaWRlYmFyJztcbkBpbXBvcnQgJ2xheW91dC9vdmVybGF5LXRlY2hub2xvZ3knO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Fubm90YXRpb25zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY3Jvc3NoYWlycyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nlby1kaXNwbGF5LW9wdGlvbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb25maXJtLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbmZpcm0tb3ItY2FuY2VsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29kZS1taXJyb3ItdGhlbWUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb2xvci1kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2N1c3RvbS10aW1lLXJhbmdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY3VzdG9taXplLWZpZWxkcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2R5Z3JhcGhzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmFuY3ktc2Nyb2xsYmFycyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZhbmN5LXRhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmlsbC1xdWVyeSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsaXAtdG9nZ2xlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZnVuY3Rpb24tc2VsZWN0b3InO1xuQGltcG9ydCAnY29tcG9uZW50cy9ncmFwaC10aXBzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ3JhcGgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9pbnB1dC1jbGljay10by1lZGl0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaW5wdXQtdGFnLWxpc3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9uZXdzZmVlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29wdC1pbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yZ2FuaXphdGlvbnMtdGFibGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdlLWhlYWRlci1kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2UtaGVhZGVyLWVkaXRhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnZS1zcGlubmVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RhdGljLWxlZ2VuZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3F1ZXJ5LW1ha2VyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVhY3QtdG9vbHRpcHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZWRhY3RlZC1pbnB1dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc2l6ZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zZWFyY2gtd2lkZ2V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGUtdG9nZ2xlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaW5mby1pbmRpY2F0b3JzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc291cmNlLXNlbGVjdG9yJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGVzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUtZ3JhcGgnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHJlZXNpemVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGhyZXNob2xkLWNvbnRyb2xzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMva2FwYWNpdG9yLWxvZ3MtdGFibGUnO1xuXG4vLyBQYWdlc1xuQGltcG9ydCAncGFnZXMvY29uZmlnLWVuZHBvaW50cyc7XG5AaW1wb3J0ICdwYWdlcy9zaWdudXAnO1xuQGltcG9ydCAncGFnZXMvYXV0aC1wYWdlJztcbkBpbXBvcnQgJ3BhZ2VzL2thcGFjaXRvcic7XG5AaW1wb3J0ICdwYWdlcy9kYXNoYm9hcmRzJztcbkBpbXBvcnQgJ3BhZ2VzL2FkbWluJztcbkBpbXBvcnQgJ3BhZ2VzL3VzZXJzJztcbkBpbXBvcnQgJ3BhZ2VzL3RpY2tzY3JpcHQtZWRpdG9yJztcbkBpbXBvcnQgJ3BhZ2VzL3RpbWUtbWFjaGluZSc7XG5AaW1wb3J0ICdwYWdlcy9tYW5hZ2UtcHJvdmlkZXJzJztcblxuLy8gVE9ET1xuQGltcG9ydCAndW5zb3J0ZWQnO1xuIiwiLypcbiAgIEluZmx1eCBDb2xvciBQYWxldHRlXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLy8gTnVldHJhbHMgKERhcmsgdG8gTGlnaHQpXG4kZzAtb2JzaWRpYW46ICMwZjBlMTU7XG4kZzEtcmF2ZW46ICMxYzFjMjE7XG4kZzIta2V2bGFyOiAjMjAyMDI4O1xuJGczLWNhc3RsZTogIzI5MjkzMztcbiRnNC1vbnl4OiAjMzEzMTNkO1xuJGc1LXBlcHBlcjogIzM4Mzg0NjtcbiRnNi1zbW9rZTogIzQzNDQ1MztcbiRnNy1ncmFwaGl0ZTogIzU0NTY2NztcbiRnOC1zdG9ybTogIzY3Njk3ODtcbiRnOS1tb3VudGFpbjogIzc1Nzg4ODtcbiRnMTAtd29sZjogIzhlOTFhMTtcbiRnMTEtc2lkZXdhbGs6ICM5OTlkYWI7XG4kZzEyLWZvcmdlOiAjYTRhOGI2O1xuJGcxMy1taXN0OiAjYmVjMmNjO1xuJGcxNC1jaHJvbWl1bTogI2M2Y2FkMztcbiRnMTUtcGxhdGludW06ICNkNGQ3ZGQ7XG4kZzE2LXBlYXJsOiAjZTdlOGViO1xuJGcxNy13aGlzcGVyOiAjZWVlZmYyO1xuJGcxOC1jbG91ZDogI2Y2ZjZmODtcbiRnMTktZ2hvc3Q6ICNmYWZhZmM7XG4kZzIwLXdoaXRlOiAjZmZmZmZmO1xuXG4vLyBUZWxlZ3JhZiAoRGFyayB0byBMaWdodClcbiRjLWJhc2FsdDogIzJGMUYyOTtcbiRjLXJ1Ynk6ICNCRjNENUU7XG4kYy1maXJlOiAjREM0RTU4O1xuJGMtZmlyZS1kaXNhYmxlZDogIzZGMzk0MztcbiRjLWN1cmFjYW86ICNGOTVGNTM7XG4kYy1jdXJhY2FvLWRpc2FibGVkOiAjRUFEQUQ4O1xuJGMtZHJlYW1zaWNsZTogI0ZGODU2NDtcbiRjLXR1bmdzdGVuOiAjRkZCNkEwO1xuJGMtbWFybWVsYWRlOiAjRkZEQ0NGO1xuJGMtZmxhbjogI0ZGRjdGNDtcblxuLy8gSW5mbHV4REIgKERhcmsgdG8gTGlnaHQpXG4kYy1hYnlzczogIzE4MjgzODtcbiRjLXNhcHBoaXJlOiAjMzI2QkJBO1xuJGMtb2NlYW46ICM0NTkxRUQ7XG4kYy1vY2Vhbi1kaXNhYmxlZDogIzMyNTQ3RjtcbiRjLXBvb2w6ICMyMkFERjY7XG4kYy1wb29sLWRpc2FibGVkOiAjQzlFMEVEO1xuJGMtbGFzZXI6ICMwMEM5RkY7XG4kYy1oeWRyb2dlbjogIzZCREZGRjtcbiRjLW5ldXRyaW5vOiAjQkVGMEZGO1xuJGMteWV0aTogI0YwRkNGRjtcblxuLy8gQ2hyb25vZ3JhZiAoRGFyayB0byBMaWdodClcbiRjLXNoYWRvdzogIzFGMjAzOTtcbiRjLXZvaWQ6ICMzMTFGOTQ7XG4kYy1hbWV0aHlzdDogIzUxM0NDNjtcbiRjLWFtZXRoeXN0LWRpc2FibGVkOiAjNDg0MjgxO1xuJGMtc3RhcjogIzdBNjVGMjtcbiRjLXN0YXItZGlzYWJsZWQ6ICNENkQ1RUQ7XG4kYy1jb21ldDogIzkzOTRGRjtcbiRjLXBvdGFzc2l1bTogI0IxQjZGRjtcbiRjLW1vb25zdG9uZTogI0M5RDBGRjtcbiRjLXR3aWxpZ2h0OiAjRjJGNEZGO1xuXG4vLyBLYXBhY2l0b3IgKERhcmsgdG8gTGlnaHQpXG4kYy1neXBzeTogIzE1MkIyRDtcbiRjLWVtZXJhbGQ6ICMxMDgxNzQ7XG4kYy12aXJpZGlhbjogIzMyQjA4QztcbiRjLXZpcmlkaWFuLWRpc2FibGVkOiAjMkI2MDU4O1xuJGMtcmFpbmZvcmVzdDogIzRFRDhBMDtcbiRjLXJhaW5mb3Jlc3QtZGlzYWJsZWQ6ICNDRkU2RTE7XG4kYy1ob25leWRldzogIzdDRTQ5MDtcbiRjLWtyeXB0b246ICNBNUYzQjQ7XG4kYy13YXNhYmk6ICNDNkZGRDA7XG4kYy1taW50OiAjRjJGRkY0O1xuXG4vLyBXYXJuaW5ncyAoRGFyayB0byBMaWdodClcbiRjLW9hazogIzNGMjQxRjtcbiRjLXRvcGF6OiAjRTg1QjFDO1xuJGMtdGlnZXI6ICNGNDhEMzg7XG4kYy1waW5lYXBwbGU6ICNGRkI5NEE7XG4kYy10aHVuZGVyOiAjRkZEMjU1O1xuJGMtc3VsZnVyOiAjRkZFNDgwO1xuJGMtZGFpc3k6ICNGRkY2Qjg7XG4kYy1iYW5hbmE6ICNGRkZEREU7XG4iLCIvKlxuICAgVmFyaWFibGVzXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJHJhZGl1czogNHB4O1xuJHJhZGl1cy1zbWFsbDogM3B4O1xuJHBhZ2Utd3JhcHBlci1wYWRkaW5nOiA2MHB4O1xuJHBhZ2Utd3JhcHBlci1tYXgtd2lkdGg6IDEzMDBweDtcbiRjaHJvbm9ncmFmLXBhZ2UtaGVhZGVyLWhlaWdodDogNjBweDtcblxuJGl4LW1hcmctYTogNHB4O1xuJGl4LW1hcmctYjogOHB4O1xuJGl4LW1hcmctYzogMTZweDtcbiRpeC1tYXJnLWQ6IDMycHg7XG4kaXgtbWFyZy1lOiA2NHB4O1xuJGl4LW1hcmctZjogMTI4cHg7XG5cbiRpeC1ib3JkZXI6IDJweDtcbiRpeC1yYWRpdXM6IDRweDtcbiRpeC1yYWRpdXMtc206IDNweDtcblxuJGl4LXNjcm9sbGJhcjogMTRweDtcblxuJGl4LWxpbmstZGVmYXVsdDogJGMtcG9vbDtcbiRpeC1saW5rLWRlZmF1bHQtaG92ZXI6ICRjLWxhc2VyO1xuJGl4LWxpbmstc3VjY2VzczogJGMtcmFpbmZvcmVzdDtcbiRpeC1saW5rLXN1Y2Nlc3MtaG92ZXI6ICRjLWhvbmV5ZGV3O1xuJGl4LWxpbmstd2FybmluZzogJGMtcGluZWFwcGxlO1xuJGl4LWxpbmstd2FybmluZy1ob3ZlcjogJGMtdGh1bmRlcjtcbiRpeC1saW5rLWluZm86ICRjLXN0YXI7XG4kaXgtbGluay1pbmZvLWhvdmVyOiAkYy1jb21ldDtcbiRpeC1saW5rLWRhbmdlcjogJGMtY3VyYWNhbztcbiRpeC1saW5rLWRhbmdlci1ob3ZlcjogICRjLWRyZWFtc2ljbGU7XG5cbiRpeC10ZXh0LWRlZmF1bHQ6ICRnMTMtbWlzdDtcbiRpeC10ZXh0LWxpZ2h0OiAkZzEzLW1pc3Q7XG4kaXgtdGV4dC1saWdodGVyOiAkZzEzLW1pc3Q7XG4kaXgtdGV4dC1saWdodGVzdDogJGcxNS1wbGF0aW51bTtcblxuJGl4LXRleHQtZm9udDogJ1JvYm90bycsIEhlbHZldGljYSwgQXJpYWwsIFRhaG9tYSwgVmVyZGFuYSwgc2Fucy1zZXJpZjtcbiRpeC10ZXh0LXNlbGVjdGlvbi1iZzogJGMtcG9vbDtcbiRpeC10ZXh0LXNlbGVjdGlvbi1jb2xvcjogJGcyMC13aGl0ZTtcbiRpeC10ZXh0LXNjYWxlOiAxLjE5O1xuJGl4LWljb24tZm9udDogJ2ljb21vb24nO1xuXG4kaXgtdGV4dC10aW55OiAxMi41cHg7XG4kaXgtdGV4dC1iYXNlOiAxNC41cHg7XG4kaXgtdGV4dC1iYXNlLTE6IChjZWlsKCRpeC10ZXh0LWJhc2UgKiAkaXgtdGV4dC1zY2FsZSkpO1xuJGl4LXRleHQtYmFzZS0yOiAoY2VpbCgkaXgtdGV4dC1iYXNlICogJGl4LXRleHQtc2NhbGUgKiAkaXgtdGV4dC1zY2FsZSkpO1xuJGl4LXRleHQtYmFzZS0zOiAoY2VpbCgkaXgtdGV4dC1iYXNlICogJGl4LXRleHQtc2NhbGUgKiAkaXgtdGV4dC1zY2FsZSAqICRpeC10ZXh0LXNjYWxlKSk7XG4kaXgtdGV4dC1iYXNlLTQ6IChjZWlsKCRpeC10ZXh0LWJhc2UgKiAkaXgtdGV4dC1zY2FsZSAqICRpeC10ZXh0LXNjYWxlICogJGl4LXRleHQtc2NhbGUgKiAkaXgtdGV4dC1zY2FsZSkpO1xuJGl4LXRleHQtYmFzZS01OiAoY2VpbCgkaXgtdGV4dC1iYXNlICogJGl4LXRleHQtc2NhbGUgKiAkaXgtdGV4dC1zY2FsZSAqICRpeC10ZXh0LXNjYWxlICogJGl4LXRleHQtc2NhbGUgKiAkaXgtdGV4dC1zY2FsZSkpO1xuXG4kLWl4LWFwcC16OiAyO1xuXG4kaXgtc2lkZWJhci16OiAxMDtcbiRpeC1zaWRlYmFyLXdpZHRoOiA2MHB4O1xuXG4kaXgtc2lkZWJhci1kcmF3ZXItbWF4OiAyNzBweDtcblxuJGl4LWFwcC1oZWFkaW5nLXo6IDU7XG4kaXgtYXBwLWhlYWRpbmctaGVpZ2h0OiA2MHB4O1xuXG4kaXgtYXBwLXdyYXBwZXItejogMztcblxuJGZvcm0teHMtaGVpZ2h0OiAyMnB4O1xuJGZvcm0teHMtcGFkZGluZzogN3B4O1xuJGZvcm0teHMtZm9udDogMTNweDtcblxuJGZvcm0tc20taGVpZ2h0OiAzMHB4O1xuJGZvcm0tc20tcGFkZGluZzogMTFweDtcbiRmb3JtLXNtLWZvbnQ6IDEzcHg7XG5cbiRmb3JtLW1kLWhlaWdodDogMzhweDtcbiRmb3JtLW1kLXBhZGRpbmc6IDE0cHg7XG4kZm9ybS1tZC1mb250OiAxNXB4O1xuXG4kZm9ybS1sZy1oZWlnaHQ6IDQ2cHg7XG4kZm9ybS1sZy1wYWRkaW5nOiAxN3B4O1xuJGZvcm0tbGctZm9udDogMTdweDtcbiIsIi8vIEdyYWRpZW50c1xuQG1peGluIGdyYWRpZW50LXYoJHN0YXJ0Q29sb3IsICRlbmRDb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkc3RhcnRDb2xvcjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgJHN0YXJ0Q29sb3IgMCUsICRlbmRDb2xvciAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgJHN0YXJ0Q29sb3IgMCUsJGVuZENvbG9yIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgJHN0YXJ0Q29sb3IgMCUsJGVuZENvbG9yIDEwMCUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nJHN0YXJ0Q29sb3InLCBlbmRDb2xvcnN0cj0nJGVuZENvbG9yJyxHcmFkaWVudFR5cGU9MCApO1xufVxuQG1peGluIGdyYWRpZW50LWgoJHN0YXJ0Q29sb3IsICRlbmRDb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkc3RhcnRDb2xvcjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgICRzdGFydENvbG9yIDAlLCAkZW5kQ29sb3IgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICAkc3RhcnRDb2xvciAwJSwkZW5kQ29sb3IgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgICRzdGFydENvbG9yIDAlLCRlbmRDb2xvciAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRzdGFydENvbG9yJywgZW5kQ29sb3JzdHI9JyRlbmRDb2xvcicsR3JhZGllbnRUeXBlPTEgKTtcbn1cbkBtaXhpbiBncmFkaWVudC1kaWFnLXVwKCRzdGFydENvbG9yLCAkZW5kQ29sb3IpIHtcbiAgYmFja2dyb3VuZDogJHN0YXJ0Q29sb3I7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAgJHN0YXJ0Q29sb3IgMCUsICRlbmRDb2xvciAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsICAkc3RhcnRDb2xvciAwJSwkZW5kQ29sb3IgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgICRzdGFydENvbG9yIDAlLCRlbmRDb2xvciAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRzdGFydENvbG9yJywgZW5kQ29sb3JzdHI9JyRlbmRDb2xvcicsR3JhZGllbnRUeXBlPTEgKTtcbn1cbkBtaXhpbiBncmFkaWVudC1kaWFnLWRvd24oJHN0YXJ0Q29sb3IsICRlbmRDb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkc3RhcnRDb2xvcjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAgJHN0YXJ0Q29sb3IgMCUsICRlbmRDb2xvciAxMDAlKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgxMzVkZWcsICAkc3RhcnRDb2xvciAwJSwkZW5kQ29sb3IgMTAwJSkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgICRzdGFydENvbG9yIDAlLCRlbmRDb2xvciAxMDAlKSAhaW1wb3J0YW50O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nJHN0YXJ0Q29sb3InLCBlbmRDb2xvcnN0cj0nJGVuZENvbG9yJyxHcmFkaWVudFR5cGU9MSApICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcigkc3RhcnRDb2xvciwgJGVuZENvbG9yKSB7XG4gIGJhY2tncm91bmQ6ICRzdGFydENvbG9yO1xuICBiYWNrZ3JvdW5kOiAtbW96LXJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsICAkc3RhcnRDb2xvciAwJSwgJGVuZENvbG9yIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsICAkc3RhcnRDb2xvciAwJSwkZW5kQ29sb3IgMTAwJSk7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgICRzdGFydENvbG9yIDAlLCRlbmRDb2xvciAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyRzdGFydENvbG9yJywgZW5kQ29sb3JzdHI9JyRlbmRDb2xvcicsR3JhZGllbnRUeXBlPTEgKTtcbn1cblxuLy8gQ3VzdG9tIFNjcm9sbGJhcnMgKENocm9tZSBPbmx5KVxuJHNjcm9sbGJhci13aWR0aDogMTZweDtcbiRzY3JvbGxiYXItb2Zmc2V0OiAzcHg7XG5AbWl4aW4gY3VzdG9tLXNjcm9sbGJhcigkdHJhY2tDb2xvciwgJGhhbmRsZUNvbG9yKSB7XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogJHNjcm9sbGJhci13aWR0aDtcblxuICAgICYtYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0cmFja0NvbG9yO1xuICAgIH1cbiAgICAmLXRyYWNrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0cmFja0NvbG9yO1xuICAgIH1cbiAgICAmLXRyYWNrLXBpZWNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0cmFja0NvbG9yO1xuICAgICAgYm9yZGVyOiAkc2Nyb2xsYmFyLW9mZnNldCBzb2xpZCAkdHJhY2tDb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICgkc2Nyb2xsYmFyLXdpZHRoIC8gMik7XG4gICAgfVxuICAgICYtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbmRsZUNvbG9yO1xuICAgICAgYm9yZGVyOiAkc2Nyb2xsYmFyLW9mZnNldCBzb2xpZCAkdHJhY2tDb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICgkc2Nyb2xsYmFyLXdpZHRoIC8gMik7XG4gICAgfVxuICAgICYtY29ybmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0cmFja0NvbG9yO1xuICAgIH1cbiAgfVxuICAmOjotd2Via2l0LXJlc2l6ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0cmFja0NvbG9yO1xuICB9XG59XG5AbWl4aW4gY3VzdG9tLXNjcm9sbGJhci1yb3VuZCgkdHJhY2tDb2xvciwgJGhhbmRsZUNvbG9yKSB7XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogJHNjcm9sbGJhci13aWR0aDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG5cbiAgICAmLWJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2tDb2xvcjtcbiAgICB9XG4gICAgJi10cmFjayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2tDb2xvcjtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAoJHNjcm9sbGJhci13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogKCRzY3JvbGxiYXItd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkc2Nyb2xsYmFyLXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRzY3JvbGxiYXItd2lkdGggLyAyKTtcbiAgICB9XG4gICAgJi10cmFjay1waWVjZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2tDb2xvcjtcbiAgICAgIGJvcmRlcjogJHNjcm9sbGJhci1vZmZzZXQgc29saWQgJHRyYWNrQ29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAoJHNjcm9sbGJhci13aWR0aCAvIDIpO1xuICAgIH1cbiAgICAmLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW5kbGVDb2xvcjtcbiAgICAgIGJvcmRlcjogJHNjcm9sbGJhci1vZmZzZXQgc29saWQgJHRyYWNrQ29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAoJHNjcm9sbGJhci13aWR0aCAvIDIpO1xuICAgIH1cbiAgICAmLWNvcm5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2tDb2xvcjtcbiAgICB9XG4gIH1cbiAgJjo6LXdlYmtpdC1yZXNpemVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2tDb2xvcjtcbiAgfVxufVxuXG5cbi8vIEJsb2NrIHVzZXIgc2VsZWN0XG5AbWl4aW4gbm8tdXNlci1zZWxlY3QoKSB7XG4gIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgLW8tdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgJiwgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG4lbm8tdXNlci1zZWxlY3Qge1xuICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC1vLXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gICYsICY6aG92ZXIge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuIiwiLypcbiAgIEhlbHBlcnNcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBTbyBoYW5keSwgbXVjaCBkYW5keVxuKi9cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vLyAgRmxleGJveCBVdGlsaXRpZXNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi51LWZsZXgge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cblx0Ji51LWpjLWZsZXgtc3RhcnQgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblx0Ji51LWpjLWZsZXgtZW5kIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXHQmLnUtamMtY2VudGVyIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblx0Ji51LWpjLXNwYWNlLWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblx0Ji51LWpjLXNwYWNlLWFyb3VuZCB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cblx0Ji51LWFpLWZsZXgtc3RhcnQgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXHQmLnUtYWktZmxleC1lbmQgeyBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblx0Ji51LWFpLWNlbnRlciB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblx0Ji51LWFpLXN0cmV0Y2ggeyBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXHQmLnUtYWktYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH1cblxuXHQmLnUtYWMtZmxleC1zdGFydCB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblx0Ji51LWFjLWZsZXgtZW5kIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQ7IH1cblx0Ji51LWFjLWNlbnRlciB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuXHQmLnUtYWMtc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7IH1cblx0Ji51LWFjLXNwYWNlLWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cdCYudS1hYy1zcGFjZS1hcm91bmQgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbn1cblxuLy8gIE1pc2MuIFV0aWxpdGllc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1hcmdpbi16ZXJvIHtcblx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG4ubWFyZ2luLWJvdHRvbS16ZXJvIHtcblx0bWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLm1hcmdpbi10b3AtemVybyB7XG5cdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5tYXJnaW4tbGVmdC16ZXJvIHtcblx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cbi5tYXJnaW4tcmlnaHQtemVybyB7XG5cdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy16ZXJvIHtcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuLnBhZGRpbmctYm90dG9tLXplcm8ge1xuXHRwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLnBhZGRpbmctdG9wLXplcm8ge1xuXHRwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuLnBhZGRpbmctbGVmdC16ZXJvIHtcblx0cGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG4ucGFkZGluZy1yaWdodC16ZXJvIHtcblx0cGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuIiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMjAwO1xuICBzcmM6IHVybCgnUm9ib3RvLVRoaW4udHRmJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogdXJsKCdSb2JvdG8tTGlnaHQudHRmJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKCdSb2JvdG8tUmVndWxhci50dGYnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgc3JjOiB1cmwoJ1JvYm90by1NZWRpdW0udHRmJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHNyYzogdXJsKCdSb2JvdG8tQm9sZC50dGYnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiB1cmwoJ1JvYm90by1CbGFjay50dGYnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90b01vbm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzogdXJsKCdSb2JvdG9Nb25vLU1lZGl1bS50dGYnKTtcbn1cblxuJGRlZmF1bHQtZm9udDogJ1JvYm90bycsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiRjb2RlLWZvbnQ6ICdSb2JvdG9Nb25vJywgbW9ub3NwYWNlO1xuIiwiLypcbiAgIEljb24gRm9udFxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIENyZWF0ZWQgdXNpbmcgYSB0b29sIGNhbGxlZCBJY29Nb29uXG4gICBTZWUgbW9yZSBhdCBodHRwOi8vaWNvbW9vbi5pb1xuKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gIHNyYzogICAgdXJsKCdpY29tb29uLmVvdCcpO1xuICBzcmM6ICAgIHVybCgnaWNvbW9vbi5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICB1cmwoJ2ljb21vb24ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJ2ljb21vb24udHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgdXJsKCdpY29tb29uLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnaWNvbW9vbi5zdmcnKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5pY29uIHtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC8vIEJldHRlciBGb250IFJlbmRlcmluZ1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxuICAmLmNvbGxhcHNlOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MGZcIjt9XG4gICYub2t0YTpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTEyXCI7fVxuICAmLnVzZXItcmVtb3ZlOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MDRcIjt9XG4gICYudXNlci1hZGQ6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkwN1wiO31cbiAgJi5ncm91cDpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTA4XCI7fVxuICAmLnVzZXI6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkwZFwiO31cbiAgJi5leWUtY2xvc2VkOmJlZm9yZSB7Y29udGVudDogXCJcXGU5NTZcIjt9XG4gICYuZXllLW9wZW46YmVmb3JlIHtjb250ZW50OiBcIlxcZTk1N1wiO31cbiAgJi5hcnJvdy1kb3duOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MTBcIjt9XG4gICYuYXJyb3ctbGVmdDpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTBjXCI7fVxuICAmLmFycm93LXJpZ2h0OmJlZm9yZSB7Y29udGVudDogXCJcXGU5MTFcIjt9XG4gICYuYXJyb3ctdXA6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkwYlwiO31cbiAgJi5hdXRoemVybzpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTUxXCI7fVxuICAmLmJydXNoOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MzlcIjt9XG4gICYuY2FyZXQtZG93bjpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTAyXCI7fVxuICAmLmNhcmV0LWxlZnQ6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkwMFwiO31cbiAgJi5jYXJldC1yaWdodDpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTAzXCI7fVxuICAmLmNhcmV0LXVwOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MDFcIjt9XG4gICYuY2hlY2ttYXJrOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MThcIjt9XG4gICYuY2lyY2xlOmJlZm9yZSB7Y29udGVudDogXCJcXGU5NDBcIjt9XG4gICYuY2xvY2s6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkxYlwiO31cbiAgJi5jb2ctdGhpY2s6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkwNlwiO31cbiAgJi5jcm93bjI6YmVmb3JlIHtjb250ZW50OiBcIlxcZTk0YlwiO31cbiAgJi5jdWJlOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MmVcIjt9XG4gICYuY3Viby1ub2RlOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MTlcIjt9XG4gICYuY3Viby11bmlmb3JtOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MWFcIjt9XG4gICYuZGFzaC1mOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MjdcIjt9XG4gICYuZGFzaC1oOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MjlcIjt9XG4gICYuZGlza3M6YmVmb3JlIHtjb250ZW50OiBcIlxcZTk1MFwiO31cbiAgJi5kb3dubG9hZDpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTFkXCI7fVxuICAmLmR1cGxpY2F0ZTpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTE3XCI7fVxuICAmLmV4cGFuZC1hOmJlZm9yZSB7Y29udGVudDogXCJcXGU5NDRcIjt9XG4gICYuZXhwYW5kLWI6YmVmb3JlIHtjb250ZW50OiBcIlxcZTk0MlwiO31cbiAgJi5leHBvcnQ6YmVmb3JlIHtjb250ZW50OiBcIlxcZTk0MVwiO31cbiAgJi5ncmFwaGxpbmU6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkwZVwiO31cbiAgJi5oZXJva3U6YmVmb3JlIHtjb250ZW50OiBcIlxcZTk0N1wiO31cbiAgJi5oZXJva3Utc2ltcGxlOmJlZm9yZSB7Y29udGVudDogXCJcXGU5NDhcIjt9XG4gICYub2F1dGg6YmVmb3JlIHtjb250ZW50OiBcIlxcZTk0ZlwiO31cbiAgJi5vY3RhZ29uOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MmRcIjt9XG4gICYucGF1c2U6YmVmb3JlIHtjb250ZW50OiBcIlxcZTk0YVwiO31cbiAgJi5wbHVzOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MGFcIjt9XG4gICYucHVsc2UtYzpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTM2XCI7fVxuICAmLnJlZnJlc2g6YmVmb3JlIHtjb250ZW50OiBcIlxcZTk0OVwiO31cbiAgJi5yZW1vdmU6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkwOVwiO31cbiAgJi5zZWFyY2g6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkxNlwiO31cbiAgJi5zZXJ2ZXIyOmJlZm9yZSB7Y29udGVudDogXCJcXGU5NGNcIjt9XG4gICYuc2h1ZmZsZTpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTRlXCI7fVxuICAmLnNxdWFyZTpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlOTNlXCI7fVxuICAmLnRyYXNoOmJlZm9yZSB7Y29udGVudDogXCJcXGU5MDVcIjt9XG4gICYudHJpYW5nbGU6YmVmb3JlIHtjb250ZW50OiBcIlxcZTkyY1wiO31cbiAgJi5hbGVydC10cmlhbmdsZTpiZWZvcmUge2NvbnRlbnQ6IFwiXFxmMDJkXCI7fVxuICAmLmxpbms6YmVmb3JlIHtjb250ZW50OiBcIlxcZjA1Y1wiO31cbiAgJi5wZW5jaWw6YmVmb3JlIHtjb250ZW50OiBcIlxcZjA1OFwiO31cbiAgJi5zdGFyOmJlZm9yZSB7Y29udGVudDogXCJcXGYwMmFcIjt9XG4gICYuc3RvcDpiZWZvcmUge2NvbnRlbnQ6IFwiXFxmMDhmXCI7fVxuICAmLnphcDpiZWZvcmUge2NvbnRlbnQ6IFwiXFwyNmExXCI7fVxuICAmLmdvb2dsZTpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlYTg4XCI7fVxuICAmLmdpdGh1YjpiZWZvcmUge2NvbnRlbnQ6IFwiXFxlYWIwXCI7fVxufVxuIiwiLypcbiAgIENocm9ub2dyYWYgVGhlbWVcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBUaGUgdGhlbWUgY292ZXJzIGFwcC13aWRlIHN0eWxlcyBhbmQgaXMgaW50ZW5kZWQgdG8gYmUgb3ZlcndyaXR0ZW4gb25cbiAgIGEgY29tcG9uZW50IGJhc2lzXG4qL1xuXG5AaW1wb3J0ICdyZXNldCc7XG5AaW1wb3J0ICdncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHknO1xuQGltcG9ydCAnYnV0dG9ucyc7XG5AaW1wb3J0ICd0YWJsZXMnO1xuQGltcG9ydCAnZHJvcGRvd25zJztcbkBpbXBvcnQgJ2Zvcm0tZWxlbWVudHMnO1xuQGltcG9ydCAnbm90aWZpY2F0aW9ucyc7XG5AaW1wb3J0ICdhbGVydHMnO1xuQGltcG9ydCAncGFuZWxzJztcbkBpbXBvcnQgJ3JhZGlvLWJ1dHRvbnMnO1xuQGltcG9ydCAnbWlzYyc7XG5AaW1wb3J0ICdjb2RlLXN0eWxlcyc7XG4iLCIvKlxuICBTZXR0aW5nIGxvd2VybW9zdCBzdHlsZXMgaGVyZVxuKi9cbioge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwsIGJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzAtb2JzaWRpYW47XG59XG5ib2R5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICA+ICNyZWFjdC1yb290IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLypcbiAgIDEyIENvbHVtbiBHcmlkXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgVGhpcyBtb3JlIG9yIGxlc3MgY29waWVzIHdoYXQgQm9vdHN0cmFwIHVzZXNcbiovXG5cbiRncmlkLS1ndXR0ZXI6IDE0cHg7XG4kZ3JpZC0tZm9ybS1ndXR0ZXI6IDZweDtcblxuJGdyaWQtLWJyZWFrcG9pbnQtc206IDc2OHB4O1xuJGdyaWQtLWJyZWFrcG9pbnQtbWQ6IDk5MnB4O1xuJGdyaWQtLWJyZWFrcG9pbnQtbGc6IDEyMDBweDtcblxuJGdyaWQtLWNvbC0xOiA4LjMzMzMzMzMzJTtcbiRncmlkLS1jb2wtMjogMTYuNjY2NjY2NjclO1xuJGdyaWQtLWNvbC0zOiAyNSU7XG4kZ3JpZC0tY29sLTQ6IDMzLjMzMzMzMzMzJTtcbiRncmlkLS1jb2wtNTogNDEuNjY2NjY2NjclO1xuJGdyaWQtLWNvbC02OiA1MCU7XG4kZ3JpZC0tY29sLTc6IDU4LjMzMzMzMzMzJTtcbiRncmlkLS1jb2wtODogNjYuNjY2NjY2NjclO1xuJGdyaWQtLWNvbC05OiA3NSU7XG4kZ3JpZC0tY29sLTEwOiA4My4zMzMzMzMzMyU7XG4kZ3JpZC0tY29sLTExOiA5MS42NjY2NjY2NyU7XG4kZ3JpZC0tY29sLTEyOiAxMDAlO1xuXG4ucm93IHtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC0tZ3V0dGVyO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC0tZ3V0dGVyO1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gIH1cbn1cblxuLnBhbmVsLWJvZHkgZm9ybSB7XG4gIG1hcmdpbi1sZWZ0OiAtJGdyaWQtLWZvcm0tZ3V0dGVyO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC0tZm9ybS1ndXR0ZXI7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRncmlkLS1mb3JtLWd1dHRlciAqIDJ9KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZm9ybS1ncm91cC1zdWJtaXQge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4uY29sIHtcbiAgJi14cyxcbiAgJi1zbSxcbiAgJi1tZCxcbiAgJi1sZyB7XG4gICAgJi0xMixcbiAgICAmLTExLFxuICAgICYtMTAsXG4gICAgJi05LFxuICAgICYtOCxcbiAgICAmLTcsXG4gICAgJi02LFxuICAgICYtNSxcbiAgICAmLTQsXG4gICAgJi0zLFxuICAgICYtMixcbiAgICAmLTEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLS1ndXR0ZXI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC0tZ3V0dGVyO1xuXG4gICAgICAmLmZvcm0tZ3JvdXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLS1mb3JtLWd1dHRlcjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGdyaWQtLWZvcm0tZ3V0dGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAgRXh0cmEgU21hbGwgU2NyZWVuIEdyaWRcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY29sLXNtLFxuLmNvbC1tZCxcbi5jb2wtbGcge1xuICAmLTEyLFxuICAmLTExLFxuICAmLTEwLFxuICAmLTksXG4gICYtOCxcbiAgJi03LFxuICAmLTYsXG4gICYtNSxcbiAgJi00LFxuICAmLTMsXG4gICYtMixcbiAgJi0xIHtcbiAgICB3aWR0aDogJGdyaWQtLWNvbC0xMjtcbiAgfVxufVxuLmNvbC14cyB7XG4gICYtMSB7IHdpZHRoOiAkZ3JpZC0tY29sLTE7IH1cbiAgJi0yIHsgd2lkdGg6ICRncmlkLS1jb2wtMjsgfVxuICAmLTMgeyB3aWR0aDogJGdyaWQtLWNvbC0zOyB9XG4gICYtNCB7IHdpZHRoOiAkZ3JpZC0tY29sLTQ7IH1cbiAgJi01IHsgd2lkdGg6ICRncmlkLS1jb2wtNTsgfVxuICAmLTYgeyB3aWR0aDogJGdyaWQtLWNvbC02OyB9XG4gICYtNyB7IHdpZHRoOiAkZ3JpZC0tY29sLTc7IH1cbiAgJi04IHsgd2lkdGg6ICRncmlkLS1jb2wtODsgfVxuICAmLTkgeyB3aWR0aDogJGdyaWQtLWNvbC05OyB9XG4gICYtMTAgeyB3aWR0aDogJGdyaWQtLWNvbC0xMDsgfVxuICAmLTExIHsgd2lkdGg6ICRncmlkLS1jb2wtMTE7IH1cbiAgJi0xMiB7IHdpZHRoOiAkZ3JpZC0tY29sLTEyOyB9XG59XG4uY29sLXhzLW9mZnNldCB7XG4gICYtMSB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTE7IH1cbiAgJi0yIHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtMjsgfVxuICAmLTMgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0zOyB9XG4gICYtNCB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTQ7IH1cbiAgJi01IHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtNTsgfVxuICAmLTYgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC02OyB9XG4gICYtNyB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTc7IH1cbiAgJi04IHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtODsgfVxuICAmLTkgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC05OyB9XG4gICYtMTAgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0xMDsgfVxuICAmLTExIHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtMTE7IH1cbn1cblxuLy8gIFNtYWxsIFNjcmVlbiBHcmlkXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGdyaWQtLWJyZWFrcG9pbnQtc20pIHtcbiAgLmNvbC1zbSB7XG4gICAgJi0xIHsgd2lkdGg6ICRncmlkLS1jb2wtMTsgfVxuICAgICYtMiB7IHdpZHRoOiAkZ3JpZC0tY29sLTI7IH1cbiAgICAmLTMgeyB3aWR0aDogJGdyaWQtLWNvbC0zOyB9XG4gICAgJi00IHsgd2lkdGg6ICRncmlkLS1jb2wtNDsgfVxuICAgICYtNSB7IHdpZHRoOiAkZ3JpZC0tY29sLTU7IH1cbiAgICAmLTYgeyB3aWR0aDogJGdyaWQtLWNvbC02OyB9XG4gICAgJi03IHsgd2lkdGg6ICRncmlkLS1jb2wtNzsgfVxuICAgICYtOCB7IHdpZHRoOiAkZ3JpZC0tY29sLTg7IH1cbiAgICAmLTkgeyB3aWR0aDogJGdyaWQtLWNvbC05OyB9XG4gICAgJi0xMCB7IHdpZHRoOiAkZ3JpZC0tY29sLTEwOyB9XG4gICAgJi0xMSB7IHdpZHRoOiAkZ3JpZC0tY29sLTExOyB9XG4gICAgJi0xMiB7IHdpZHRoOiAkZ3JpZC0tY29sLTEyOyB9XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQge1xuICAgICYtMSB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTE7IH1cbiAgICAmLTIgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0yOyB9XG4gICAgJi0zIHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtMzsgfVxuICAgICYtNCB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTQ7IH1cbiAgICAmLTUgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC01OyB9XG4gICAgJi02IHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtNjsgfVxuICAgICYtNyB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTc7IH1cbiAgICAmLTggeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC04OyB9XG4gICAgJi05IHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtOTsgfVxuICAgICYtMTAgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0xMDsgfVxuICAgICYtMTEgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0xMTsgfVxuICB9XG59XG5cbi8vICBNZWRpdW0gU2NyZWVuIEdyaWRcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZ3JpZC0tYnJlYWtwb2ludC1tZCkge1xuICAuY29sLW1kIHtcbiAgICAmLTEgeyB3aWR0aDogJGdyaWQtLWNvbC0xOyB9XG4gICAgJi0yIHsgd2lkdGg6ICRncmlkLS1jb2wtMjsgfVxuICAgICYtMyB7IHdpZHRoOiAkZ3JpZC0tY29sLTM7IH1cbiAgICAmLTQgeyB3aWR0aDogJGdyaWQtLWNvbC00OyB9XG4gICAgJi01IHsgd2lkdGg6ICRncmlkLS1jb2wtNTsgfVxuICAgICYtNiB7IHdpZHRoOiAkZ3JpZC0tY29sLTY7IH1cbiAgICAmLTcgeyB3aWR0aDogJGdyaWQtLWNvbC03OyB9XG4gICAgJi04IHsgd2lkdGg6ICRncmlkLS1jb2wtODsgfVxuICAgICYtOSB7IHdpZHRoOiAkZ3JpZC0tY29sLTk7IH1cbiAgICAmLTEwIHsgd2lkdGg6ICRncmlkLS1jb2wtMTA7IH1cbiAgICAmLTExIHsgd2lkdGg6ICRncmlkLS1jb2wtMTE7IH1cbiAgICAmLTEyIHsgd2lkdGg6ICRncmlkLS1jb2wtMTI7IH1cbiAgfVxuICAuY29sLW1kLW9mZnNldCB7XG4gICAgJi0xIHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtMTsgfVxuICAgICYtMiB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTI7IH1cbiAgICAmLTMgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0zOyB9XG4gICAgJi00IHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtNDsgfVxuICAgICYtNSB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTU7IH1cbiAgICAmLTYgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC02OyB9XG4gICAgJi03IHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtNzsgfVxuICAgICYtOCB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTg7IH1cbiAgICAmLTkgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC05OyB9XG4gICAgJi0xMCB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTEwOyB9XG4gICAgJi0xMSB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTExOyB9XG4gIH1cbn1cblxuLy8gIExhcmdlIFNjcmVlbiBHcmlkXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGdyaWQtLWJyZWFrcG9pbnQtbGcpIHtcbiAgLmNvbC1sZyB7XG4gICAgJi0xIHsgd2lkdGg6ICRncmlkLS1jb2wtMTsgfVxuICAgICYtMiB7IHdpZHRoOiAkZ3JpZC0tY29sLTI7IH1cbiAgICAmLTMgeyB3aWR0aDogJGdyaWQtLWNvbC0zOyB9XG4gICAgJi00IHsgd2lkdGg6ICRncmlkLS1jb2wtNDsgfVxuICAgICYtNSB7IHdpZHRoOiAkZ3JpZC0tY29sLTU7IH1cbiAgICAmLTYgeyB3aWR0aDogJGdyaWQtLWNvbC02OyB9XG4gICAgJi03IHsgd2lkdGg6ICRncmlkLS1jb2wtNzsgfVxuICAgICYtOCB7IHdpZHRoOiAkZ3JpZC0tY29sLTg7IH1cbiAgICAmLTkgeyB3aWR0aDogJGdyaWQtLWNvbC05OyB9XG4gICAgJi0xMCB7IHdpZHRoOiAkZ3JpZC0tY29sLTEwOyB9XG4gICAgJi0xMSB7IHdpZHRoOiAkZ3JpZC0tY29sLTExOyB9XG4gICAgJi0xMiB7IHdpZHRoOiAkZ3JpZC0tY29sLTEyOyB9XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQge1xuICAgICYtMSB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTE7IH1cbiAgICAmLTIgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0yOyB9XG4gICAgJi0zIHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtMzsgfVxuICAgICYtNCB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTQ7IH1cbiAgICAmLTUgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC01OyB9XG4gICAgJi02IHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtNjsgfVxuICAgICYtNyB7IG1hcmdpbi1sZWZ0OiAkZ3JpZC0tY29sLTc7IH1cbiAgICAmLTggeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC04OyB9XG4gICAgJi05IHsgbWFyZ2luLWxlZnQ6ICRncmlkLS1jb2wtOTsgfVxuICAgICYtMTAgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0xMDsgfVxuICAgICYtMTEgeyBtYXJnaW4tbGVmdDogJGdyaWQtLWNvbC0xMTsgfVxuICB9XG59XG4iLCIvKlxuICAgVHlwb2dyYXBoeVxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGl4LXRleHQtZm9udDtcbiAgY29sb3I6ICRpeC10ZXh0LWRlZmF1bHQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyBCYXNlIExpbmsgU3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuYTpsaW5rLFxuYTp2aXNpdGVkIHtcbiAgY29sb3I6ICRpeC1saW5rLWRlZmF1bHQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogNzAwO1xuXG4gICYubGluay1kYW5nZXIge1xuICAgIGNvbG9yOiAkaXgtbGluay1kYW5nZXI7XG4gIH1cbiAgJi5saW5rLXN1Y2Nlc3Mge1xuICAgIGNvbG9yOiAkaXgtbGluay1zdWNjZXNzO1xuICB9XG4gICYubGluay13YXJuaW5nIHtcbiAgICBjb2xvcjogJGl4LWxpbmstd2FybmluZztcbiAgfVxuICAmLmxpbmstaW5mbyB7XG4gICAgY29sb3I6ICRpeC1saW5rLWluZm87XG4gIH1cbn1cbmE6aG92ZXIsXG5hOmFjdGl2ZSB7XG4gIGNvbG9yOiAkaXgtbGluay1kZWZhdWx0LWhvdmVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJi5saW5rLWRhbmdlciB7XG4gICAgY29sb3I6ICRpeC1saW5rLWRhbmdlci1ob3ZlcjtcbiAgfVxuICAmLmxpbmstc3VjY2VzcyB7XG4gICAgY29sb3I6ICRpeC1saW5rLXN1Y2Nlc3MtaG92ZXI7XG4gIH1cbiAgJi5saW5rLXdhcm5pbmcge1xuICAgIGNvbG9yOiAkaXgtbGluay13YXJuaW5nLWhvdmVyO1xuICB9XG4gICYubGluay1pbmZvIHtcbiAgICBjb2xvcjogJGl4LWxpbmstaW5mby1ob3ZlcjtcbiAgfVxufVxuXG4vLyBTZWxlY3Rpb24gU3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaXgtdGV4dC1zZWxlY3Rpb24tYmc7XG4gIGNvbG9yOiAkaXgtdGV4dC1zZWxlY3Rpb24tY29sb3I7IC8qIFdlYktpdC9CbGluayBCcm93c2VycyAqL1xufVxuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpeC10ZXh0LXNlbGVjdGlvbi1iZztcbiAgY29sb3I6ICRpeC10ZXh0LXNlbGVjdGlvbi1jb2xvcjsgLyogR2Vja28gQnJvd3NlcnMgKi9cbn1cblxuLy8gVHlwb2dyYXBoeSBCYXNlIFN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJXR5cGUtYmFzZS1zdHlsZXMge1xuICBtYXJnaW46ICRpeC1tYXJnLWIgMCAwLjU1ZW0gMDtcbn1cbiV0eXBlLXNtYWxsLXN0eWxlcyB7XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkaXgtdGV4dC1saWdodGVyO1xuICB9XG59XG5cbi8vIFR5cG9ncmFwaGljIEVsZW1lbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxucCB7XG4gIEBleHRlbmQgJXR5cGUtYmFzZS1zdHlsZXM7XG4gIGZvbnQtc2l6ZTogJGl4LXRleHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICBiLHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgfVxuXG4gIHNtYWxsIHtcbiAgICBjb2xvcjogJGl4LXRleHQtbGlnaHQ7XG4gICAgZm9udC1zaXplOiAkaXgtdGV4dC10aW55O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbn1cblxuaDEge1xuICBAZXh0ZW5kICV0eXBlLWJhc2Utc3R5bGVzO1xuICBAZXh0ZW5kICV0eXBlLXNtYWxsLXN0eWxlcztcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgZm9udC1zaXplOiAkaXgtdGV4dC1iYXNlLTU7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xufVxuaDIge1xuICBAZXh0ZW5kICV0eXBlLWJhc2Utc3R5bGVzO1xuICBAZXh0ZW5kICV0eXBlLXNtYWxsLXN0eWxlcztcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgZm9udC1zaXplOiAkaXgtdGV4dC1iYXNlLTQ7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xufVxuaDMge1xuICBAZXh0ZW5kICV0eXBlLWJhc2Utc3R5bGVzO1xuICBAZXh0ZW5kICV0eXBlLXNtYWxsLXN0eWxlcztcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgZm9udC1zaXplOiAkaXgtdGV4dC1iYXNlLTM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNtYWxsIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG59XG5oNCB7XG4gIEBleHRlbmQgJXR5cGUtYmFzZS1zdHlsZXM7XG4gIEBleHRlbmQgJXR5cGUtc21hbGwtc3R5bGVzO1xuICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICBmb250LXNpemU6ICRpeC10ZXh0LWJhc2UtMjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbn1cbmg1IHtcbiAgQGV4dGVuZCAldHlwZS1iYXNlLXN0eWxlcztcbiAgQGV4dGVuZCAldHlwZS1zbWFsbC1zdHlsZXM7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gIGZvbnQtc2l6ZTogJGl4LXRleHQtYmFzZS0xO1xuICBmb250LXdlaWdodDogNjAwO1xuICBzbWFsbCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxufVxuaDYge1xuICBAZXh0ZW5kICV0eXBlLWJhc2Utc3R5bGVzO1xuICBAZXh0ZW5kICV0eXBlLXNtYWxsLXN0eWxlcztcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgZm9udC1zaXplOiAkaXgtdGV4dC1iYXNlO1xuICBmb250LXdlaWdodDogOTAwO1xuICBzbWFsbCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxufVxub2wsdWwge1xuICBAZXh0ZW5kICV0eXBlLWJhc2Utc3R5bGVzO1xuICBwYWRkaW5nLWxlZnQ6ICRpeC1tYXJnLWM7XG4gIGZvbnQtc2l6ZTogJGl4LXRleHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbmxpIHtcbiAgbWFyZ2luOiAwIDAgJGl4LW1hcmctYiAwO1xuICBwYWRkaW5nLWxlZnQ6ICRpeC1tYXJnLWI7XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuYmxvY2txdW90ZSB7XG4gIEBleHRlbmQgJXR5cGUtYmFzZS1zdHlsZXM7XG4gIGZvbnQtc2l6ZTogJGl4LXRleHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAkaXgtbWFyZy1iICRpeC1tYXJnLWM7XG4gIGNvbG9yOiAkaXgtdGV4dC1saWdodDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogJGl4LW1hcmctZTtcbiAgICBoZWlnaHQ6ICRpeC1tYXJnLWQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRnNS1wZXBwZXI7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci13aWR0aDogJGl4LWJvcmRlciAwIDAgJGl4LWJvcmRlcjtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXdpZHRoOiAwICRpeC1ib3JkZXIgJGl4LWJvcmRlciAwO1xuICB9XG5cbiAgYixzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIH1cbn1cbmhyIHtcbiAgYm9yZGVyOjA7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW46ICRpeC1tYXJnLWMgMCAkaXgtbWFyZy1kIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgJi5kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICB9XG59XG5cbi8vIFR5cGUgRm9ybWF0dGluZ1xuYixzdHJvbmcge1xuICBmb250LXdlaWdodDogOTAwO1xufVxubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLWVtZXJhbGQ7XG4gIGNvbG9yOiAkYy1ob25leWRldztcbiAgcGFkZGluZzogJGl4LWJvcmRlciAkaXgtbWFyZy1hO1xuICBib3JkZXItcmFkaXVzOiAkaXgtcmFkaXVzLXNtO1xufVxuXG4vLyBUZXh0IFNlbGVjdGlvbiBTdHlsaW5nXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gIGNvbG9yOiAkZzIwLXdoaXRlO1xufVxuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gIGNvbG9yOiAkZzIwLXdoaXRlO1xufVxuYnIge1xuICBAZXh0ZW5kICVuby11c2VyLXNlbGVjdDtcbn1cblxuLy8gIENvbG9yZWQgVGV4dCBVdGlsaXRpZXNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5zcGFuLnRleHQtY29sb3Ige1xuICAmLXByaW1hcnkge1xuICAgIGNvbG9yOiAkYy1wb29sO1xuICB9XG4gICYtc3VjY2VzcyB7XG4gICAgY29sb3I6ICRjLXJhaW5mb3Jlc3Q7XG4gIH1cbiAgJi13YXJuaW5nIHtcbiAgICBjb2xvcjogJGMtcGluZWFwcGxlO1xuICB9XG4gICYtZGFuZ2VyIHtcbiAgICBjb2xvcjogJGMtY3VyYWNhbztcbiAgfVxuICAmLWluZm8ge1xuICAgIGNvbG9yOiAkYy1zdGFyO1xuICB9XG59XG4iLCIvKlxuICAgQnV0dG9uc1xuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5idG4sXG5idXR0b24uYnRuLFxuaW5wdXQuYnRuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogJGl4LXRleHQtZm9udDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSwgY29sb3IgMC4yNXMgZWFzZSxcbiAgICBib3JkZXItY29sb3IgMC4yNXMgZWFzZSwgYm94LXNoYWRvdyAwLjI1cyBlYXNlLCBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDAgJGZvcm0tbWQtcGFkZGluZztcbiAgaGVpZ2h0OiAkZm9ybS1tZC1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1tZC1oZWlnaHQ7XG4gIGZvbnQtc2l6ZTogJGZvcm0tbWQtZm9udDtcbiAgQGV4dGVuZCAlbm8tdXNlci1zZWxlY3Q7XG5cbiAgLy8gSWNvbnNcbiAgPiAuaWNvbiB7XG4gICAgbWFyZ2luOiAwIDRweCAwIDA7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxuICAvLyBTcXVhcmUgTW9kaWZpZXJcbiAgJi1zcXVhcmUge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogJGZvcm0tbWQtaGVpZ2h0O1xuXG4gICAgLmljb24ge1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC8vIFNpemUgTW9kaWZpZXJzXG4gICYteHMge1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBwYWRkaW5nOiAwICRmb3JtLXhzLXBhZGRpbmc7XG4gICAgaGVpZ2h0OiAkZm9ybS14cy1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLXhzLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRmb3JtLXhzLWZvbnQ7XG4gICAgLy8gSWNvbnNcbiAgICA+IC5pY29uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgIH1cbiAgICAmLmJ0bi1zcXVhcmUge1xuICAgICAgd2lkdGg6ICRmb3JtLXhzLWhlaWdodDtcbiAgICB9XG4gIH1cbiAgJi1zbSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHBhZGRpbmc6IDAgJGZvcm0tc20tcGFkZGluZztcbiAgICBoZWlnaHQ6ICRmb3JtLXNtLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tc20taGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tc20tZm9udDtcbiAgICAvLyBJY29uc1xuICAgID4gLmljb24ge1xuICAgICAgdG9wOiAwO1xuICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgfVxuICAgICYuYnRuLXNxdWFyZSB7XG4gICAgICB3aWR0aDogJGZvcm0tc20taGVpZ2h0O1xuICAgIH1cbiAgfVxuICAmLW1kIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgcGFkZGluZzogMCAkZm9ybS1tZC1wYWRkaW5nO1xuICAgIGhlaWdodDogJGZvcm0tbWQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1tZC1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkZm9ybS1tZC1mb250O1xuICAgIC8vIEljb25zXG4gICAgPiAuaWNvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgICB9XG4gICAgJi5idG4tc3F1YXJlIHtcbiAgICAgIHdpZHRoOiAkZm9ybS1tZC1oZWlnaHQ7XG4gICAgfVxuICB9XG4gICYtbGcge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBwYWRkaW5nOiAwICRmb3JtLWxnLXBhZGRpbmc7XG4gICAgaGVpZ2h0OiAkZm9ybS1sZy1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWxnLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRmb3JtLWxnLWZvbnQ7XG4gICAgLy8gSWNvbnNcbiAgICA+IC5pY29uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIH1cbiAgICAmLmJ0bi1zcXVhcmUge1xuICAgICAgd2lkdGg6ICRmb3JtLWxnLWhlaWdodDtcbiAgICB9XG4gIH1cbn1cbmEuYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLy8gQnV0dG9uIFNpemUgTW9kaWZpZXJzXG4uYnRuLWdyb3VwLXhzID4gLmJ0bixcbi5idG4uYnRuLXhzIHtcbiAgcGFkZGluZzogMCAkZm9ybS14cy1wYWRkaW5nO1xuICBoZWlnaHQ6ICRmb3JtLXhzLWhlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLXhzLWhlaWdodDtcbiAgZm9udC1zaXplOiAkZm9ybS14cy1mb250O1xufVxuLmJ0bi1ncm91cC1zbSA+IC5idG4sXG4uYnRuLmJ0bi1zbSB7XG4gIHBhZGRpbmc6IDAgJGZvcm0tc20tcGFkZGluZztcbiAgaGVpZ2h0OiAkZm9ybS1zbS1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1zbS1oZWlnaHQ7XG4gIGZvbnQtc2l6ZTogJGZvcm0tc20tZm9udDtcbn1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuLFxuLmJ0bi5idG4tbGcge1xuICBwYWRkaW5nOiAwICRmb3JtLWxnLXBhZGRpbmc7XG4gIGhlaWdodDogJGZvcm0tbGctaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGctaGVpZ2h0O1xuICBmb250LXNpemU6ICRmb3JtLWxnLWZvbnQ7XG59XG5cbi5idG4uYnRuLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFNvbGlkIEJ1dHRvbiBzdHlsZXMgbWl4aW5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWl4aW4gYnRuLWJhc2Utc3R5bGVzKFxuICAkYmctY29sb3IsXG4gICRiZy1jb2xvci1ob3ZlcixcbiAgJGJnLWNvbG9yLXByZXNzLFxuICAkdGV4dC1jb2xvcixcbiAgJHRleHQtY29sb3ItaG92ZXJcbikge1xuICAvLyBEZWZhdWx0IFN0YXRlXG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuXG4gIC8vIEZvY3VzIFN0YXRlXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cblxuICAvLyBIb3ZlciBTdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yLWhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC8vIE1vdXNlRG93biBTdGF0ZVxuICAmLmFjdGl2ZSxcbiAgJi5hY3RpdmU6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmFjdGl2ZTpob3ZlcixcbiAgJjpmb2N1czphY3RpdmUsXG4gICY6Zm9jdXM6YWN0aXZlOmhvdmVyLFxuICAuZHJvcGRvd24ub3BlbiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yLXByZXNzO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1ob3ZlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgLy8gRGlzYWJsZWQgU3RhdGVcbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICAgIGNvbG9yOiAkZzctZ3JhcGhpdGU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyxcbiAgICAmLmFjdGl2ZSxcbiAgICAmOmFjdGl2ZTpmb2N1cyB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICAgIGNvbG9yOiAkZzctZ3JhcGhpdGU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5hLmJ0bi1kZWZhdWx0LFxuZGl2LmJ0bi1kZWZhdWx0LFxuYnV0dG9uLmJ0bi1kZWZhdWx0LFxuaW5wdXQuYnRuLWRlZmF1bHQge1xuICBAaW5jbHVkZSBidG4tYmFzZS1zdHlsZXMoXG4gICAgJGc1LXBlcHBlcixcbiAgICAkZzYtc21va2UsXG4gICAgJGc3LWdyYXBoaXRlLFxuICAgICRnMTQtY2hyb21pdW0sXG4gICAgJGcxOC1jbG91ZFxuICApO1xufVxuYS5idG4tcHJpbWFyeSxcbmRpdi5idG4tcHJpbWFyeSxcbmJ1dHRvbi5idG4tcHJpbWFyeSxcbmlucHV0LmJ0bi1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgYnRuLWJhc2Utc3R5bGVzKFxuICAgICRjLXBvb2wsXG4gICAgJGMtbGFzZXIsXG4gICAgJGMtaHlkcm9nZW4sXG4gICAgJGcyMC13aGl0ZSxcbiAgICAkZzIwLXdoaXRlXG4gICk7XG59XG5hLmJ0bi1zdWNjZXNzLFxuZGl2LmJ0bi1zdWNjZXNzLFxuYnV0dG9uLmJ0bi1zdWNjZXNzLFxuaW5wdXQuYnRuLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBidG4tYmFzZS1zdHlsZXMoXG4gICAgJGMtcmFpbmZvcmVzdCxcbiAgICAkYy1ob25leWRldyxcbiAgICAkYy1rcnlwdG9uLFxuICAgICRnMjAtd2hpdGUsXG4gICAgJGcyMC13aGl0ZVxuICApO1xufVxuYS5idG4taW5mbyxcbmRpdi5idG4taW5mbyxcbmJ1dHRvbi5idG4taW5mbyxcbmlucHV0LmJ0bi1pbmZvIHtcbiAgQGluY2x1ZGUgYnRuLWJhc2Utc3R5bGVzKFxuICAgICRnNy1ncmFwaGl0ZSxcbiAgICAkZzgtc3Rvcm0sXG4gICAgJGc5LW1vdW50YWluLFxuICAgICRnMTYtcGVhcmwsXG4gICAgJGcyMC13aGl0ZVxuICApO1xufVxuYS5idG4td2FybmluZyxcbmRpdi5idG4td2FybmluZyxcbmJ1dHRvbi5idG4td2FybmluZyxcbmlucHV0LmJ0bi13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYnRuLWJhc2Utc3R5bGVzKFxuICAgICRjLXN0YXIsXG4gICAgJGMtY29tZXQsXG4gICAgJGMtcG90YXNzaXVtLFxuICAgICRnMjAtd2hpdGUsXG4gICAgJGcyMC13aGl0ZVxuICApO1xufVxuYS5idG4tZGFuZ2VyLFxuZGl2LmJ0bi1kYW5nZXIsXG5idXR0b24uYnRuLWRhbmdlcixcbmlucHV0LmJ0bi1kYW5nZXIge1xuICBAaW5jbHVkZSBidG4tYmFzZS1zdHlsZXMoXG4gICAgJGMtY3VyYWNhbyxcbiAgICAkYy1kcmVhbXNpY2xlLFxuICAgICRjLXR1bmdzdGVuLFxuICAgICRnMjAtd2hpdGUsXG4gICAgJGcyMC13aGl0ZVxuICApO1xufVxuYS5idG4tYWxlcnQsXG5kaXYuYnRuLWFsZXJ0LFxuYnV0dG9uLmJ0bi1hbGVydCxcbmlucHV0LmJ0bi1hbGVydCB7XG4gIEBpbmNsdWRlIGJ0bi1iYXNlLXN0eWxlcyhcbiAgICAkYy1waW5lYXBwbGUsXG4gICAgJGMtdGh1bmRlcixcbiAgICAkYy1zdWxmdXIsXG4gICAgJGcyMC13aGl0ZSxcbiAgICAkZzIwLXdoaXRlXG4gICk7XG59XG5cbi8vIE91dGxpbmUgQnV0dG9uIHN0eWxlcyBtaXhpblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBidG4tb3V0bGluZS1zdHlsZXMoXG4gICR0ZXh0LWNvbG9yLFxuICAkdGV4dC1jb2xvci1ob3ZlcixcbiAgJGJvcmRlci1jb2xvcixcbiAgJGJvcmRlci1jb2xvci1ob3ZlcixcbiAgJGJvcmRlci1jb2xvci1wcmVzc1xuKSB7XG4gIC8vIEFkanVzdGluZyBsaW5lIGhlaWdodCBpbiByZXNwb25zZSB0byBtb3JlIGJvcmRlcnNcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLW1kLWhlaWdodCAtIDRweDtcbiAgJi5idG4teHMge1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS14cy1oZWlnaHQgLSA0cHg7XG4gIH1cbiAgJi5idG4tc20ge1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1zbS1oZWlnaHQgLSA0cHg7XG4gIH1cbiAgJi5idG4tbWQge1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1tZC1oZWlnaHQgLSA0cHg7XG4gIH1cbiAgJi5idG4tbGcge1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1sZy1oZWlnaHQgLSA0cHg7XG4gIH1cblxuICAvLyBEZWZhdWx0IFN0YXRlXG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cblxuICAvLyBIb3ZlciBTdGF0ZVxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yLWhvdmVyO1xuICB9XG5cbiAgLy8gTW91c2VEb3duIFN0YXRlXG4gICYuYWN0aXZlLFxuICAmLmFjdGl2ZTpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6YWN0aXZlOmhvdmVyLFxuICAub3BlbiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3ItcHJlc3M7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yLWhvdmVyO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgU3RhdGVcbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICBjb2xvcjogJGc3LWdyYXBoaXRlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzLFxuICAgICYuYWN0aXZlLFxuICAgICY6YWN0aXZlOmZvY3VzIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICAgIGNvbG9yOiAkZzctZ3JhcGhpdGU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5hLmJ0bi1saW5rLFxuZGl2LmJ0bi1saW5rLFxuYnV0dG9uLmJ0bi1saW5rIHtcbiAgQGluY2x1ZGUgYnRuLW91dGxpbmUtc3R5bGVzKFxuICAgICRjLXBvb2wsXG4gICAgJGMtbGFzZXIsXG4gICAgJGc1LXBlcHBlcixcbiAgICAkZzYtc21va2UsXG4gICAgJGMtbGFzZXJcbiAgKTtcbn1cbmEuYnRuLWxpbmstc3VjY2VzcyxcbmRpdi5idG4tbGluay1zdWNjZXNzLFxuYnV0dG9uLmJ0bi1saW5rLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBidG4tb3V0bGluZS1zdHlsZXMoXG4gICAgJGMtcmFpbmZvcmVzdCxcbiAgICAkYy1ob25leWRldyxcbiAgICAkZzUtcGVwcGVyLFxuICAgICRnNi1zbW9rZSxcbiAgICAkYy1ob25leWRld1xuICApO1xufVxuYS5idG4tbGluay13YXJuaW5nLFxuZGl2LmJ0bi1saW5rLXdhcm5pbmcsXG5idXR0b24uYnRuLWxpbmstd2FybmluZyB7XG4gIEBpbmNsdWRlIGJ0bi1vdXRsaW5lLXN0eWxlcyhcbiAgICAkYy1zdGFyLFxuICAgICRjLWNvbWV0LFxuICAgICRnNS1wZXBwZXIsXG4gICAgJGc2LXNtb2tlLFxuICAgICRjLWNvbWV0XG4gICk7XG59XG5hLmJ0bi1saW5rLWRhbmdlcixcbmRpdi5idG4tbGluay1kYW5nZXIsXG5idXR0b24uYnRuLWxpbmstZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnRuLW91dGxpbmUtc3R5bGVzKFxuICAgICRjLWN1cmFjYW8sXG4gICAgJGMtZHJlYW1zaWNsZSxcbiAgICAkZzUtcGVwcGVyLFxuICAgICRnNi1zbW9rZSxcbiAgICAkYy1kcmVhbXNpY2xlXG4gICk7XG59XG5hLmJ0bi1saW5rLWFsZXJ0LFxuZGl2LmJ0bi1saW5rLWFsZXJ0LFxuYnV0dG9uLmJ0bi1saW5rLWFsZXJ0IHtcbiAgQGluY2x1ZGUgYnRuLW91dGxpbmUtc3R5bGVzKFxuICAgICRjLXBpbmVhcHBsZSxcbiAgICAkYy10aHVuZGVyLFxuICAgICRnNS1wZXBwZXIsXG4gICAgJGc2LXNtb2tlLFxuICAgICRjLXRodW5kZXJcbiAgKTtcbn1cbiIsIi8qXG4gICBUYWJsZXNcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kdGFibGUtLWJvcmRlci1jb2xvcjogJGc1LXBlcHBlcjtcbiR0YWJsZS0taGlnaGxpZ2h0LWNvbG9yOiAkZzQtb255eDtcblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIG1hcmdpbjogMDtcblxuICB0aCxcbiAgdGQge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgJi5tb25vdHlwZSB7XG4gICAgICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIH1cblxuICAgICYudGV4dC1sZWZ0IHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICAgICYudGV4dC1jZW50ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAmLnRleHQtcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGVyXG4gID4gdGhlYWQgPiB0ciA+IHRoLFxuICA+IHRoZWFkID4gdHIgPiB0ZCB7XG4gICAgY29sb3I6ICRnMTctd2hpc3BlcjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBAZXh0ZW5kICVuby11c2VyLXNlbGVjdDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGl4LWJvcmRlciBzb2xpZCAkdGFibGUtLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIEJvZHlcbiAgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY29sb3I6ICRnMTMtbWlzdDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi50YWJsZS52LWNlbnRlciB7XG4gIHRkLFxuICB0ZCA+ICoge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuLnRhYmxlLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAkaXgtYm9yZGVyIHNvbGlkICR0YWJsZS0tYm9yZGVyLWNvbG9yO1xuXG4gID4gdGhlYWQsXG4gID4gdGJvZHkge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXI6ICRpeC1ib3JkZXIgc29saWQgJHRhYmxlLS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyIHtcbiAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS0taGlnaGxpZ2h0LWNvbG9yO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLnRhYmxlLWhpZ2hsaWdodCA+IHRib2R5ID4gdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtLWhpZ2hsaWdodC1jb2xvcjtcbn1cblxuLnRhYmxlID4gdGJvZHkgPiB0ciAudGFibGUtLXNob3ctb24tcm93LWhvdmVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnRhYmxlID4gdGJvZHkgPiB0cjpob3ZlciAudGFibGUtLXNob3ctb24tcm93LWhvdmVyLFxuLnRhYmxlID4gdGJvZHkgPiB0ciAudGFibGUtLXNob3ctb24tcm93LWhvdmVyLmFjdGl2ZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi8vIEZvciB1c2UgaW4gYSBTdGF0dXMgY29sdW1uXG4udGFibGUtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMTctd2hpc3BlcjtcblxuICAmLmRvdC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICB9XG4gICYuZG90LXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gIH1cbiAgJi5kb3Qtd2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtcGluZWFwcGxlO1xuICB9XG4gICYuZG90LWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZHJlYW1zaWNsZTtcbiAgfVxuICAmLmRvdC1jcml0aWNhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZmlyZTtcbiAgfVxufVxuXG4vLyBFbnN1cmluZyBidXR0b25zIGluc2lkZSB0YWJsZXMgZG9uJ3QgZ2V0IGh1Z2Vcbi50YWJsZSB0aCAuYnRuLFxuLnRhYmxlIHRkIC5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4iLCIvKlxuICAgRHJvcGRvd25zXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLy8gRGVmYXVsdCBUaGVtZSBDb2xvcnNcbiRkcm9wZG93bi1kZWZhdWx0LWJnOiAkYy1wb29sO1xuJGRyb3Bkb3duLWRlZmF1bHQtZGFyazogJGMtb2NlYW47XG4kZHJvcGRvd24tZGVmYXVsdC1wcmVzczogJGMtc2FwcGhpcmU7XG4kZHJvcGRvd24tZGVmYXVsdC1ob3ZlcjogJGMtbGFzZXI7XG4kZHJvcGRvd24tZGVmYXVsdC10ZXh0OiAkYy15ZXRpO1xuJGRyb3Bkb3duLWRlZmF1bHQtdGV4dC1ob3ZlcjogJGcyMC13aGl0ZTtcbiRkcm9wZG93bi1kZWZhdWx0LWhlYWRlcjogJGMtc2FwcGhpcmU7XG5cbi8vIEdyZWVuIFRoZW1lIENvbG9yc1xuJGRyb3Bkb3duLWdyZWVuLWJnOiAkYy1wb29sO1xuJGRyb3Bkb3duLWdyZWVuLWRhcms6ICRjLXZpcmlkaWFuO1xuJGRyb3Bkb3duLWdyZWVuLXByZXNzOiAkYy1lbWVyYWxkO1xuJGRyb3Bkb3duLWdyZWVuLWhvdmVyOiAkYy1ob25leWRldztcbiRkcm9wZG93bi1ncmVlbi10ZXh0OiAkYy1taW50O1xuJGRyb3Bkb3duLWdyZWVuLXRleHQtaG92ZXI6ICRnMjAtd2hpdGU7XG4kZHJvcGRvd24tZ3JlZW4taGVhZGVyOiAkYy13YXNhYmk7XG5cbi8vIFB1cnBsZSBUaGVtZSBDb2xvcnNcbiRkcm9wZG93bi1wdXJwbGUtYmc6ICRjLXBvb2w7XG4kZHJvcGRvd24tcHVycGxlLWRhcms6ICRjLXN0YXI7XG4kZHJvcGRvd24tcHVycGxlLXByZXNzOiAkYy1hbWV0aHlzdDtcbiRkcm9wZG93bi1wdXJwbGUtaG92ZXI6ICRjLWNvbWV0O1xuJGRyb3Bkb3duLXB1cnBsZS10ZXh0OiAkYy10d2lsaWdodDtcbiRkcm9wZG93bi1wdXJwbGUtdGV4dC1ob3ZlcjogJGcyMC13aGl0ZTtcbiRkcm9wZG93bi1wdXJwbGUtaGVhZGVyOiAkYy1wb3Rhc3NpdW07XG5cbi5kcm9wZG93biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcblxuICAvLyBEZWZhdWx0IFNpemVcbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICB9XG4gIC8vIFNpemUgTW9kaWZpZXJzXG4gICYtODAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDgwcHg7fVxuICAmLTkwIC5kcm9wZG93bi10b2dnbGUge3dpZHRoOiA5MHB4O31cbiAgJi0xMDAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDEwMHB4O31cbiAgJi0xMTAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDExMHB4O31cbiAgJi0xMjAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDEyMHB4O31cbiAgJi0xMzAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDEzMHB4O31cbiAgJi0xNDAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDE0MHB4O31cbiAgJi0xNTAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDE1MHB4O31cbiAgJi0xNjAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDE2MHB4O31cbiAgJi0xNzAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDE3MHB4O31cbiAgJi0xODAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDE4MHB4O31cbiAgJi0xOTAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDE5MHB4O31cbiAgJi0yMDAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDIwMHB4O31cbiAgJi0yMTAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDIxMHB4O31cbiAgJi0yMjAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDIyMHB4O31cbiAgJi0yMzAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDIzMHB4O31cbiAgJi0yNDAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDI0MHB4O31cbiAgJi0yNTAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDI1MHB4O31cbiAgJi0yNjAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDI2MHB4O31cbiAgJi0yNzAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDI3MHB4O31cbiAgJi0yODAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDI4MHB4O31cbiAgJi0yOTAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDI5MHB4O31cbiAgJi0zMDAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDMwMHB4O31cbiAgJi0zMTAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDMxMHB4O31cbiAgJi0zMjAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDMyMHB4O31cbiAgJi0zMzAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDMzMHB4O31cbiAgJi0zNDAgLmRyb3Bkb3duLXRvZ2dsZSB7d2lkdGg6IDM0MHB4O31cbn1cblxuLmRyb3Bkb3duOmZvY3VzLFxuLmRyb3Bkb3duLm9wZW4sXG4uZHJvcGRvd24ub3Blbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG5cbiAgPiAuYnRuLmRyb3Bkb3duLXRvZ2dsZSxcbiAgPiAuYnRuLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgPiAuYnRuLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcjphY3RpdmUsXG4gID4gLmJ0bi5kcm9wZG93bi10b2dnbGUuYWN0aXZlLFxuICA+IC5idG4uZHJvcGRvd24tdG9nZ2xlLmFjdGl2ZTphY3RpdmUsXG4gID4gLmJ0bi5kcm9wZG93bi10b2dnbGUuYWN0aXZlOmFjdGl2ZTpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAzcHggJGMtcG9vbDtcbiAgfVxufVxuXG4vLyAgRWxlbWVudHMgaW5zaWRlIGEgRHJvcGRvd24gVG9nZ2xlXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmRyb3Bkb3duID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAuY2FyZXQge1xuICAgIHJpZ2h0OiAkZm9ybS1tZC1wYWRkaW5nO1xuICB9XG5cbiAgPiAuaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cblxuICAuZHJvcGRvd24tc2VsZWN0ZWQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbGV4OiAxIDAgMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tbWQtcGFkZGluZztcbiAgfVxuXG4gIC8vIFNpemUgTW9kaWZpZXJzXG4gICYuYnRuLXhzIHtcbiAgICAuY2FyZXQge3JpZ2h0OiAkZm9ybS14cy1wYWRkaW5nO31cbiAgICAuZHJvcGRvd24tc2VsZWN0ZWQge3BhZGRpbmctcmlnaHQ6ICRmb3JtLXhzLXBhZGRpbmc7fVxuICB9XG4gICYuYnRuLXNtIHtcbiAgICAuY2FyZXQge3JpZ2h0OiAkZm9ybS1zbS1wYWRkaW5nO31cbiAgICAuZHJvcGRvd24tc2VsZWN0ZWQge3BhZGRpbmctcmlnaHQ6ICRmb3JtLXNtLXBhZGRpbmc7fVxuICB9XG4gICYuYnRuLW1kIHtcbiAgICAuY2FyZXQge3JpZ2h0OiAkZm9ybS1tZC1wYWRkaW5nO31cbiAgICAuZHJvcGRvd24tc2VsZWN0ZWQge3BhZGRpbmctcmlnaHQ6ICRmb3JtLW1kLXBhZGRpbmc7fVxuICB9XG4gICYuYnRuLWxnIHtcbiAgICAuY2FyZXQge3JpZ2h0OiAkZm9ybS1sZy1wYWRkaW5nO31cbiAgICAuZHJvcGRvd24tc2VsZWN0ZWQge3BhZGRpbmctcmlnaHQ6ICRmb3JtLWxnLXBhZGRpbmc7fVxuICB9XG59XG5cbi8vICBBdXRvQ29tcGxldGUgRmllbGRcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZHJvcGRvd24tYXV0b2NvbXBsZXRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgJi5idG4teHMge2hlaWdodDogJGZvcm0teHMtaGVpZ2h0O31cbiAgJi5idG4tc20ge2hlaWdodDogJGZvcm0tc20taGVpZ2h0O31cbiAgJi5idG4tbWQge2hlaWdodDogJGZvcm0tbWQtaGVpZ2h0O31cbiAgJi5idG4tbGcge2hlaWdodDogJGZvcm0tbGctaGVpZ2h0O31cbn1cbi5kcm9wZG93bi1hdXRvY29tcGxldGUtLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgcGFkZGluZzogMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAuYnRuLXhzICYge3BhZGRpbmc6IDAgKCRmb3JtLXhzLXBhZGRpbmcgKiAyKSAwICRmb3JtLXhzLXBhZGRpbmc7IGZvbnQtc2l6ZTogJGZvcm0teHMtZm9udDt9XG4gIC5idG4tc20gJiB7cGFkZGluZzogMCAoJGZvcm0tc20tcGFkZGluZyAqIDIpIDAgJGZvcm0tc20tcGFkZGluZzsgZm9udC1zaXplOiAkZm9ybS1zbS1mb250O31cbiAgLmJ0bi1tZCAmIHtwYWRkaW5nOiAwICgkZm9ybS1tZC1wYWRkaW5nICogMikgMCAkZm9ybS1tZC1wYWRkaW5nOyBmb250LXNpemU6ICRmb3JtLW1kLWZvbnQ7fVxuICAuYnRuLWxnICYge3BhZGRpbmc6IDAgKCRmb3JtLWxnLXBhZGRpbmcgKiAyKSAwICRmb3JtLWxnLXBhZGRpbmc7IGZvbnQtc2l6ZTogJGZvcm0tbGctZm9udDt9XG5cbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7IGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDsgfVxuICAmOjotbW96LXBsYWNlaG9sZGVyIHsgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTsgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50OyB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTsgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50OyB9XG4gICY6LW1vei1wbGFjZWhvbGRlciB7IGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7IGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDsgfVxuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZzIwLXdoaXRlO1xuICB9XG59XG4uZHJvcGRvd24tZW1wdHkge1xuICBwYWRkaW5nOiA3cHggOXB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjQpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBAZXh0ZW5kICVuby11c2VyLXNlbGVjdDtcbn1cblxuLy8gIERyb3Bkb3duIE1lbnVcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDVweCAwLjZweCBmYWRlLW91dCgkZzAtb2JzaWRpYW4sIDAuOCk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWgoJGRyb3Bkb3duLWRlZmF1bHQtZGFyaywkZHJvcGRvd24tZGVmYXVsdC1iZyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xufVxuLmRyb3Bkb3duLm9wZW4ge1xuICB6LWluZGV4OiA5OTk5O1xufVxuLmRyb3Bkb3duLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8vIERyb3Bkb3duIE1lbnUgSXRlbVxuLmRyb3Bkb3duLW1lbnUgbGkuZHJvcGRvd24taXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgQGV4dGVuZCAlbm8tdXNlci1zZWxlY3Q7XG5cbiAgJjpob3ZlcixcbiAgJi5oaWdobGlnaHQsXG4gICYuaGlnaGxpZ2h0OmhvdmVyIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRkcm9wZG93bi1kZWZhdWx0LWhvdmVyLCRkcm9wZG93bi1kZWZhdWx0LWJnKTtcbiAgfVxuICA+IGEge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMTNweDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tZGVmYXVsdC10ZXh0O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogN3B4IDlweDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRlZmF1bHQtdGV4dC1ob3ZlcjtcbiAgICB9XG4gICAgJi5hY3RpdmUsXG4gICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJjphY3RpdmU6aG92ZXIsXG4gICAgJjpmb2N1czphY3RpdmUsXG4gICAgJjpmb2N1czphY3RpdmU6aG92ZXIge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkZHJvcGRvd24tZGVmYXVsdC1wcmVzcywkZHJvcGRvd24tZGVmYXVsdC1iZyk7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRlZmF1bHQtdGV4dC1ob3ZlcjtcbiAgICB9XG4gIH1cbiAgJi5hY3RpdmUge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWgoJGRyb3Bkb3duLWRlZmF1bHQtcHJlc3MsJGRyb3Bkb3duLWRlZmF1bHQtYmcpO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tZGVmYXVsdC10ZXh0LWhvdmVyO1xuICB9XG59XG4vLyBEcm9wb3duIE1lbnUgU3ViLUl0ZW1cbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1zdWItaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgb3BhY2l0eTogMC42NjtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG5cbiAgJi5kcm9wZG93bi1zdWItaXRlbS0tc3VjY2VzcyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBjb2xvcjogJGMta3J5cHRvbjtcbiAgfVxuICBzcGFuLmljb24ge1xuICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICB9XG59XG4vLyBEcm9wZG93biBJdGVtIEFjdGlvbnNcbi5kcm9wZG93biAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tYWN0aW9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA0cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgei1pbmRleDogMjtcbiAgb3BhY2l0eTogMDtcbn1cbi5kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaS5kcm9wZG93bi1pdGVtOmhvdmVyIC5kcm9wZG93bi1hY3Rpb25zIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5kcm9wZG93biAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tYWN0aW9uIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjdweDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6ICRkcm9wZG93bi1kZWZhdWx0LWhlYWRlcjtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWRlZmF1bHQtdGV4dC1ob3ZlcjtcbiAgfVxufVxuLy8gRHJvcGRvd24gTWVudSBIZWFkZXJcbi5kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaS5kcm9wZG93bi1oZWFkZXIge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGVmYXVsdC1iZztcbiAgY29sb3I6ICRkcm9wZG93bi1kZWZhdWx0LWhlYWRlcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogN3B4IDlweDtcbiAgbWFyZ2luOiAwO1xuICBAZXh0ZW5kICVuby11c2VyLXNlbGVjdDtcbn1cbi8vIERyb3Bkb3duIE1lbnUgRGl2aWRlclxuLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IGxpLmRyb3Bkb3duLWRpdmlkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGVmYXVsdC1iZztcbiAgaGVpZ2h0OiAkaXgtYm9yZGVyO1xufVxuLypcbiAgICBEcm9wZG93biBNZW51IChvbmx5IGpzIGhpZ2hsaWdodGluZywgd29ya3Mgd2l0aCBhdXRvY29tcGxldGUgZmVhdHVyZSlcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51LmRyb3Bkb3duLW1lbnUtLW5vLWhpZ2hsaWdodCB7XG4gIGxpLmRyb3Bkb3duLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgbGkuZHJvcGRvd24taXRlbS5oaWdobGlnaHQsXG4gIGxpLmRyb3Bkb3duLWl0ZW0uaGlnaGxpZ2h0OmhvdmVyIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRkcm9wZG93bi1kZWZhdWx0LWhvdmVyLCRkcm9wZG93bi1kZWZhdWx0LWJnKTtcbiAgfVxufVxuXG4vKlxuICAgIE11bHRpLVNlbGVjdCBEcm9wZG93bnNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLm11bHRpLXNlbGVjdC0taXRlbSxcbi5tdWx0aS1zZWxlY3QtLWFwcGx5IHtcbiAgQGV4dGVuZCAlbm8tdXNlci1zZWxlY3Q7XG4gIHBhZGRpbmc6IDdweCA5cHg7XG4gIG1hcmdpbjogMDtcbn1cbi5tdWx0aS1zZWxlY3QtLWNoZWNrYm94IHtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtc2FwcGhpcmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoMiwyKTtcbiAgICB3aWR0aDogNnB4O1xuICAgIGhlaWdodDogNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIwLXdoaXRlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIHRyYW5zZm9ybSAwLjI1cyBlYXNlLFxuICAgICAgb3BhY2l0eSAwLjI1cyBlYXNlO1xuICB9XG59XG4ubXVsdGktc2VsZWN0LS1pdGVtIHtcbiAgY29sb3I6ICRjLW5ldXRyaW5vO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICB0cmFuc2l0aW9uOlxuICAgIGNvbG9yIDAuMjVzIGVhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgPiBzcGFuIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjFweCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkYy1sYXNlciwkYy1wb29sKTtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7O1xuICB9XG4gICYuY2hlY2tlZCB7XG4gICAgY29sb3I6ICRnMjAtd2hpdGU7XG5cbiAgICAubXVsdGktc2VsZWN0LS1jaGVja2JveDphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSgxLDEpO1xuICAgIH1cbiAgfVxufVxuLm11bHRpLXNlbGVjdC0tYXBwbHkge1xuICAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5cbi8qXG4gIEthcGFjaXRvciBUaGVtZSBEcm9wZG93bnNcbiovXG4uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tbWFsYWNoaXRlIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkZHJvcGRvd24tZ3JlZW4tZGFyaywkZHJvcGRvd24tZ3JlZW4tYmcpO1xuICBsaS5kcm9wZG93bi1pdGVtIHtcbiAgICAmOmhvdmVyLFxuICAgICYuaGlnaGxpZ2h0LFxuICAgICYuaGlnaGxpZ2h0OmhvdmVyIHtAaW5jbHVkZSBncmFkaWVudC1oKCRkcm9wZG93bi1ncmVlbi1ob3ZlciwkZHJvcGRvd24tZ3JlZW4tYmcpO31cbiAgICA+IGEge1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1ncmVlbi10ZXh0O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRkcm9wZG93bi1ncmVlbi10ZXh0LWhvdmVyO1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUsXG4gICAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjphY3RpdmU6aG92ZXIsXG4gICAgICAmOmZvY3VzOmFjdGl2ZSxcbiAgICAgICY6Zm9jdXM6YWN0aXZlOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkZHJvcGRvd24tZ3JlZW4tcHJlc3MsJGRyb3Bkb3duLWdyZWVuLWJnKTtcbiAgICAgICAgY29sb3I6ICRkcm9wZG93bi1ncmVlbi10ZXh0LWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgICAuZHJvcGRvd24tYWN0aW9uIHtjb2xvcjogJGMtc2FwcGhpcmU7fVxuICAgIC5kcm9wZG93bi1hY3Rpb246aG92ZXIge2NvbG9yOiAkZHJvcGRvd24tZ3JlZW4tdGV4dC1ob3Zlcjt9XG4gICAgJi5hY3RpdmUge0BpbmNsdWRlIGdyYWRpZW50LWgoJGRyb3Bkb3duLWdyZWVuLXByZXNzLCRkcm9wZG93bi1ncmVlbi1iZyk7fVxuICB9XG4gIGxpLmRyb3Bkb3duLWRpdmlkZXIge0BpbmNsdWRlIGdyYWRpZW50LWgoJGRyb3Bkb3duLWdyZWVuLXByZXNzLCRjLW9jZWFuKX1cbiAgbGkuZHJvcGRvd24taGVhZGVyIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRkcm9wZG93bi1ncmVlbi1wcmVzcywkYy1vY2Vhbik7XG4gICAgY29sb3I6ICRkcm9wZG93bi1ncmVlbi1oZWFkZXI7XG4gIH1cbiAgJi5kcm9wZG93bi1tZW51LS1uby1oaWdobGlnaHQge1xuICAgIGxpLmRyb3Bkb3duLWl0ZW0uaGlnaGxpZ2h0LFxuICAgIGxpLmRyb3Bkb3duLWl0ZW0uaGlnaGxpZ2h0OmhvdmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWgoJGRyb3Bkb3duLWdyZWVuLWhvdmVyLCRkcm9wZG93bi1ncmVlbi1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qXG4gIFB1cnBsZSBUaGVtZSBEcm9wZG93bnNcbiovXG4uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tYXN0cm9uYXV0IHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkZHJvcGRvd24tcHVycGxlLWRhcmssJGRyb3Bkb3duLXB1cnBsZS1iZyk7XG4gIGxpLmRyb3Bkb3duLWl0ZW0ge1xuICAgICY6aG92ZXIsXG4gICAgJi5oaWdobGlnaHQsXG4gICAgJi5oaWdobGlnaHQ6aG92ZXIge0BpbmNsdWRlIGdyYWRpZW50LWgoJGRyb3Bkb3duLXB1cnBsZS1ob3ZlciwkZHJvcGRvd24tcHVycGxlLWJnKTt9XG4gICAgPiBhIHtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tcHVycGxlLXRleHQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGRyb3Bkb3duLXB1cnBsZS10ZXh0LWhvdmVyO1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUsXG4gICAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjphY3RpdmU6aG92ZXIsXG4gICAgICAmOmZvY3VzOmFjdGl2ZSxcbiAgICAgICY6Zm9jdXM6YWN0aXZlOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkZHJvcGRvd24tcHVycGxlLXByZXNzLCRkcm9wZG93bi1wdXJwbGUtYmcpO1xuICAgICAgICBjb2xvcjogJGRyb3Bkb3duLXB1cnBsZS10ZXh0LWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSB7QGluY2x1ZGUgZ3JhZGllbnQtaCgkZHJvcGRvd24tcHVycGxlLXByZXNzLCRkcm9wZG93bi1wdXJwbGUtYmcpO31cbiAgICAuZHJvcGRvd24tYWN0aW9uIHtjb2xvcjogJGRyb3Bkb3duLXB1cnBsZS1wcmVzczt9XG4gICAgLmRyb3Bkb3duLWFjdGlvbjpob3ZlciB7Y29sb3I6ICRkcm9wZG93bi1wdXJwbGUtdGV4dC1ob3Zlcjt9XG4gIH1cbiAgbGkuZHJvcGRvd24tZGl2aWRlciB7QGluY2x1ZGUgZ3JhZGllbnQtaCgkZHJvcGRvd24tcHVycGxlLXByZXNzLCRjLW9jZWFuKTt9XG4gIGxpLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkZHJvcGRvd24tcHVycGxlLXByZXNzLCRjLW9jZWFuKTtcbiAgICBjb2xvcjogJGRyb3Bkb3duLXB1cnBsZS1oZWFkZXI7XG4gIH1cbiAgJi5kcm9wZG93bi1tZW51LS1uby1oaWdobGlnaHQge1xuICAgIGxpLmRyb3Bkb3duLWl0ZW0uaGlnaGxpZ2h0LFxuICAgIGxpLmRyb3Bkb3duLWl0ZW0uaGlnaGxpZ2h0OmhvdmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWgoJGRyb3Bkb3duLXB1cnBsZS1ob3ZlciwkZHJvcGRvd24tcHVycGxlLWJnKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4gIEZvcm0gRWxlbWVudHNcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRnNS1wZXBwZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGNvbG9yOiAkZzE1LXBsYXRpbnVtO1xuICBsZXR0ZXItc3BhY2luZzogMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjpcbiAgICBjb2xvciAwLjI1cyBlYXNlLFxuICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSxcbiAgICBib3JkZXItY29sb3IgMC40cyBlYXNlLFxuICAgIGJveC1zaGFkb3cgMC40cyBlYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGc2LXNtb2tlO1xuICB9XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGMtcG9vbDtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IDAgJGMtcG9vbDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgU3RhdGVcbiAgJltkaXNhYmxlZF0sXG4gICZbcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJixcbiAgJi5kaXNhYmxlZCB7XG4gICAgJiwgJjpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICRnNS1wZXBwZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGc5LW1vdW50YWluICFpbXBvcnRhbnQ7XG4gICAgICBAZXh0ZW5kICVuby11c2VyLXNlbGVjdDtcbiAgICB9XG4gIH1cblxuICAuaGFzLWVycm9yICYsXG4gIC5oYXMtc3VjY2VzcyAmLFxuICAuaGFzLXdhcm5pbmcgJiB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgY29sb3IgMC4yNXMgZWFzZSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSxcbiAgICAgIGJvcmRlci1jb2xvciAwLjRzIGVhc2UsXG4gICAgICBib3gtc2hhZG93IDAuNHMgZWFzZTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gICAgICB9XG4gIH1cblxuICAvLyBTdWNjZXNzIFN0YXRlXG4gIC5oYXMtc3VjY2VzcyAmIHtcbiAgICBib3JkZXItY29sb3I6ICRjLXJhaW5mb3Jlc3Q7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRjLWhvbmV5ZGV3O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDhweCAkYy1yYWluZm9yZXN0O1xuICAgIH1cbiAgICAmOjpzZWxlY3Rpb24ge2JhY2tncm91bmQtY29sb3I6ICRjLXJhaW5mb3Jlc3Q7fVxuICAgICY6Oi1tb3otc2VsZWN0aW9uIHtiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yYWluZm9yZXN0O31cbiAgfVxuXG4gIC8vIEVycm9yIFN0YXRlXG4gIC5oYXMtZXJyb3IgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgICBib3JkZXItY29sb3I6ICRjLWN1cmFjYW87XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1iYXNhbHQ7XG4gICAgICBib3JkZXItY29sb3I6ICRjLWRyZWFtc2ljbGU7XG4gICAgICBib3gtc2hhZG93OiAwIDAgOHB4ICRjLWZpcmU7XG4gICAgfVxuICAgICY6OnNlbGVjdGlvbiB7YmFja2dyb3VuZC1jb2xvcjogJGMtZHJlYW1zaWNsZTt9XG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge2JhY2tncm91bmQtY29sb3I6ICRjLWRyZWFtc2ljbGU7fVxuICB9XG5cbiAgLy8gV2FybmluZyBTdGF0ZVxuICAuaGFzLXdhcm5pbmcgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYy1zdGFyO1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYy1jb21ldDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggJGMtc3RhcjtcbiAgICB9XG4gICAgJjo6c2VsZWN0aW9uIHtiYWNrZ3JvdW5kLWNvbG9yOiAkYy1jb21ldDt9XG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge2JhY2tncm91bmQtY29sb3I6ICRjLWNvbWV0O31cbiAgfVxufVxuXG4vLyAgUGxhY2Vob2xkZXIgVGV4dFxuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mb3JtLWNvbnRyb2wsXG50ZXh0YXJlYSxcbmlucHV0IHtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkZzktbW91bnRhaW47IGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDsgZm9udC1zdHlsZTogaXRhbGljO31cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7IGNvbG9yOiAkZzktbW91bnRhaW47IGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDsgZm9udC1zdHlsZTogaXRhbGljO31cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGc5LW1vdW50YWluOyBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7IGZvbnQtc3R5bGU6IGl0YWxpYzt9XG4gICY6LW1vei1wbGFjZWhvbGRlciB7IGNvbG9yOiAkZzktbW91bnRhaW47IGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDsgZm9udC1zdHlsZTogaXRhbGljO31cbn1cblxuLy8gIFNpemUgTW9kaWZpZXJzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgJi5pbnB1dC14cyB7XG4gICAgaGVpZ2h0OiAkZm9ybS14cy1oZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkZm9ybS14cy1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0teHMtZm9udDtcbiAgfVxuICAmLmlucHV0LXNtIHtcbiAgICBoZWlnaHQ6ICRmb3JtLXNtLWhlaWdodDtcbiAgICBwYWRkaW5nOiAwICRmb3JtLXNtLXBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9ybS1zbS1mb250O1xuICB9XG4gICYsICYuaW5wdXQtbWQge1xuICAgIGhlaWdodDogJGZvcm0tbWQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDAgJGZvcm0tbWQtcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb3JtLW1kLWZvbnQ7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgaGVpZ2h0OiAkZm9ybS1sZy1oZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkZm9ybS1sZy1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tbGctZm9udDtcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAmLmlucHV0LXhzIHtcbiAgICBwYWRkaW5nOiAkZm9ybS14cy1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0teHMtZm9udDtcbiAgfVxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nOiAkZm9ybS1zbS1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tc20tZm9udDtcbiAgfVxuICAmLCAmLmlucHV0LW1kIHtcbiAgICBwYWRkaW5nOiAkZm9ybS1tZC1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tbWQtZm9udDtcbiAgfVxuICAmLmlucHV0LWxnIHtcbiAgICBwYWRkaW5nOiAkZm9ybS1sZy1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tbGctZm9udDtcbiAgfVxufVxuXG4vLyAgRm9ybSBBZGQtT25zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgYm9yZGVyOiAycHggc29saWQgJGc1LXBlcHBlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gIGNvbG9yOiAkZzEwLXdvbGY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmctbGVmdDogMTNweDtcbiAgcGFkZGluZy1yaWdodDogMTNweDtcbiAgQGV4dGVuZCAlbm8tdXNlci1zZWxlY3Q7XG5cbiAgLy8gRXJyb3IgU3RhdGVcbiAgLmhhcy1lcnJvciAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgICBjb2xvcjogJGMtZHJlYW1zaWNsZTtcbiAgICBib3JkZXItY29sb3I6ICRjLWN1cmFjYW87XG4gIH1cblxuICAvLyBTdWNjZXNzIFN0YXRlXG4gIC5oYXMtc3VjY2VzcyAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgICBjb2xvcjogJGMtcmFpbmZvcmVzdDtcbiAgICBib3JkZXItY29sb3I6ICRjLXJhaW5mb3Jlc3Q7XG4gIH1cblxuICAvLyBXYXJuaW5nIFN0YXRlXG4gIC5oYXMtd2FybmluZyAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgICBjb2xvcjogJGMtY29tZXQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYy1zdGFyO1xuICB9XG59XG5cbi8vICBGb3JtIEdyb3Vwc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuLmZvcm0tZ3JvdXAgPiAuYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmZvcm0tZ3JvdXAgPiBsYWJlbCxcbmxhYmVsLmZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIG1hcmdpbjogMCAwIDRweCAwO1xuICBwYWRkaW5nOiAwICgkZm9ybS1zbS1wYWRkaW5nICsgJGl4LWJvcmRlcik7XG4gIEBleHRlbmQgJW5vLXVzZXItc2VsZWN0O1xufVxubGFiZWwuZm9ybS1oZWxwZXIge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBAZXh0ZW5kICVuby11c2VyLXNlbGVjdDtcbn1cblxuLy8gIFN0YXRpYyBFbGVtZW50c1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mb3JtLWNvbnRyb2wtc3RhdGljIHtcbiAgbWluLWhlaWdodDogJGZvcm0tbWQtaGVpZ2h0O1xuICBwYWRkaW5nOiAoJGl4LW1hcmctYiAtIDFweCkgKCRpeC1tYXJnLWIgKyAxcHgpO1xuICBib3JkZXI6ICRpeC1ib3JkZXIgc29saWQgJGc1LXBlcHBlcjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIEBleHRlbmQgJW5vLXVzZXItc2VsZWN0O1xuICB9XG59XG5cbi8vICBDaGVja2JveGVzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGZvcm0tY29udHJvbC1jaGVja2JveDogMjBweDtcbiRmb3JtLWNvbnRyb2wtY2hlY2tkb3Q6IDhweDtcbiRmb3JtLWNvbnRyb2wtY2hlY2tib3gtZ2FwOiAzMHB4O1xuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2U7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jb250cm9sLWNoZWNrYm94LWdhcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG5cbiAgICAvLyBDaGVja2JveFxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6ICRmb3JtLWNvbnRyb2wtY2hlY2tib3g7XG4gICAgICBoZWlnaHQ6ICRmb3JtLWNvbnRyb2wtY2hlY2tib3g7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBib3JkZXI6ICRpeC1ib3JkZXIgc29saWQgJGc1LXBlcHBlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZTtcbiAgICB9XG4gICAgLy8gQ2hlY2sgRG90XG4gICAgJjphZnRlciB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogKCRmb3JtLWNvbnRyb2wtY2hlY2tib3ggLyAyKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoMiwyKTtcbiAgICAgIHdpZHRoOiAkZm9ybS1jb250cm9sLWNoZWNrZG90O1xuICAgICAgaGVpZ2h0OiAkZm9ybS1jb250cm9sLWNoZWNrZG90O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtcG9vbDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIHRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSksXG4gICAgICAgIG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC8vIEhvdmVyIFN0YXRlXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGcxOC1jbG91ZDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJjpiZWZvcmUge2JvcmRlci1jb2xvcjogJGc2LXNtb2tlO31cbiAgICB9XG4gIH1cbiAgLy8gQW5pbWF0ZSBjaGVja2VkIHN0YXRlXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwge1xuICAgIGNvbG9yOiAkZzE4LWNsb3VkO1xuICB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSgxLDEpO1xuICB9XG59XG5cbi8vICBSYWRpbyBCdXR0b25zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICA+IC5yYWRpby1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTk5OTlweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNvbnRyb2wtY2hlY2tib3gtZ2FwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogJGcxMS1zaWRld2FsaztcblxuICAgIC8vIFJhZGlvIENpcmNsZVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6ICRmb3JtLWNvbnRyb2wtY2hlY2tib3g7XG4gICAgICBoZWlnaHQ6ICRmb3JtLWNvbnRyb2wtY2hlY2tib3g7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBib3JkZXI6ICRpeC1ib3JkZXIgc29saWQgJGc1LXBlcHBlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZTtcbiAgICB9XG4gICAgLy8gUmFkaW8gRG90XG4gICAgJjphZnRlciB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogKCRmb3JtLWNvbnRyb2wtY2hlY2tib3ggLyAyKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoMiwyKTtcbiAgICAgIHdpZHRoOiAkZm9ybS1jb250cm9sLWNoZWNrZG90O1xuICAgICAgaGVpZ2h0OiAkZm9ybS1jb250cm9sLWNoZWNrZG90O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtcG9vbDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIHRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSksXG4gICAgICAgIG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC8vIEhvdmVyIFN0YXRlXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGcxOC1jbG91ZDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJjpiZWZvcmUge2JvcmRlci1jb2xvcjogJGc2LXNtb2tlO31cbiAgICB9XG4gIH1cbiAgLy8gQW5pbWF0ZSBjaGVja2VkIHN0YXRlXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICAgIGNvbG9yOiAkZzE4LWNsb3VkO1xuICB9XG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSgxLDEpO1xuICB9XG59XG5cblxuLy8gIFRoZW1lZCBUZXh0IElucHV0c1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmlucHV0LmZvcm0tY29udHJvbCxcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIC8vIEJsdWVcbiAgJi5mb3JtLXBsdXRvbml1bSB7XG4gICAgY29sb3I6ICRjLXBvb2w7XG4gICAgJjpmb2N1cyB7Y29sb3I6ICRnMjAtd2hpdGU7fVxuICB9XG4gIC8vIEdyZWVuXG4gICYuZm9ybS1tYWxhY2hpdGUge1xuICAgIGNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICAgICAgY29sb3I6ICRnMjAtd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAwIDAgOHB4ICRjLXJhaW5mb3Jlc3Q7XG4gICAgfVxuICAgICY6OnNlbGVjdGlvbiB7YmFja2dyb3VuZC1jb2xvcjogJGMtcmFpbmZvcmVzdDt9XG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge2JhY2tncm91bmQtY29sb3I6ICRjLXJhaW5mb3Jlc3Q7fVxuICB9XG4gIC8vIFB1cnBsZVxuICAmLmZvcm0tYXN0cm9uYXV0IHtcbiAgICBjb2xvcjogJGMtY29tZXQ7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRjLXN0YXI7XG4gICAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggJGMtc3RhcjtcbiAgICB9XG4gICAgJjo6c2VsZWN0aW9uIHtiYWNrZ3JvdW5kLWNvbG9yOiAkYy1jb21ldDt9XG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge2JhY2tncm91bmQtY29sb3I6ICRjLWNvbWV0O31cbiAgfVxuICAvLyBSZWRcbiAgJi5mb3JtLXZvbGNhbm8ge1xuICAgIGNvbG9yOiAkYy1kcmVhbXNpY2xlO1xuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmFzYWx0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYy1kcmVhbXNpY2xlO1xuICAgICAgY29sb3I6ICRjLWZsYW47XG4gICAgICBib3gtc2hhZG93OiAwIDAgOHB4ICRjLWN1cmFjYW87XG4gICAgfVxuICAgICY6OnNlbGVjdGlvbiB7YmFja2dyb3VuZC1jb2xvcjogJGMtY3VyYWNhbzt9XG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge2JhY2tncm91bmQtY29sb3I6ICRjLWN1cmFjYW87fVxuICB9XG59XG5cblxuLy8gIE1vbm9zcGFjZSBJbnB1dHNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZm9ybS1jb250cm9sLm1vbm90eXBlIHtcbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG59XG5cbi8vICBHZW5lcmljIENoZWNrYm94ZXNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZGFyay1jaGVja2JveCB7XG4gIGlucHV0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTk5OTlweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcxLXJhdmVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuICB9XG4gIGxhYmVsOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgfVxuICBsYWJlbDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogNnB4O1xuICAgIGhlaWdodDogNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoMiwyKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIG9wYWNpdHkgMC4yNXMgZWFzZSxcbiAgICAgIHRyYW5zZm9ybSAwLjI1cyBlYXNlO1xuICB9XG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDEsMSk7XG4gIH1cbn1cblxuLy8gIEdlbmVyaWMgUmFkaW8gSW5wdXRzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmRhcmstcmFkaW8ge1xuICBpbnB1dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMS1yYXZlbjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbiAgfVxuICBsYWJlbDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gIH1cbiAgbGFiZWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDZweDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1wb29sO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDIsMik7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBvcGFjaXR5IDAuMjVzIGVhc2UsXG4gICAgICB0cmFuc2Zvcm0gMC4yNXMgZWFzZTtcbiAgfVxuICBpbnB1dDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSgxLDEpO1xuICB9XG59XG4iLCIvKlxuICAgTm90aWZpY2F0aW9uc1xuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbiRub3RpZmljYXRpb24tbWFyZ2luOiAxMnB4O1xuXG4ubm90aWZpY2F0aW9uLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6ICRub3RpZmljYXRpb24tbWFyZ2luO1xuICB3aWR0aDogMzYwcHg7XG4gIHRvcDogJGNocm9ub2dyYWYtcGFnZS1oZWFkZXItaGVpZ2h0ICsgJG5vdGlmaWNhdGlvbi1tYXJnaW47XG4gIHotaW5kZXg6IDk5OTk7XG59XG5cbi5ub3RpZmljYXRpb24tY2VudGVyX19wcmVzZW50YXRpb24tbW9kZSB7XG4gIEBleHRlbmQgLm5vdGlmaWNhdGlvbi1jZW50ZXI7XG4gIHRvcDogJG5vdGlmaWNhdGlvbi1tYXJnaW47XG59XG5cbi5ub3RpZmljYXRpb24ge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRpeC1yYWRpdXM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTJweCA0MHB4O1xuICBAZXh0ZW5kICVuby11c2VyLXNlbGVjdDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpO1xuICB0cmFuc2l0aW9uOlxuICAgIHRyYW5zZm9ybSAwLjI1cyBlYXNlIDAuMjVzLFxuICAgIG9wYWNpdHkgMC4yNXMgZWFzZTtcblxuICA+IHNwYW4uaWNvbiB7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICB0b3A6IDUwJTtcbiAgIGxlZnQ6IDIwcHg7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgZm9udC1zaXplOiAkaXgtdGV4dC1iYXNlLTI7XG4gfVxufVxuXG4ubm90aWZpY2F0aW9uLW1lc3NhZ2Uge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xufVxuXG4ubm90aWZpY2F0aW9uLWNsb3NlIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICByaWdodDogKCRpeC1tYXJnLWMgLSAkaXgtbWFyZy1hKTtcbiAgZm9udC1zaXplOiAkaXgtdGV4dC1iYXNlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBvcGFjaXR5OiAwLjI1O1xuICB0cmFuc2l0aW9uOlxuICAgIG9wYWNpdHkgMC4yNXMgZWFzZTtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyMC13aGl0ZTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLm5vdGlmaWNhdGlvbi1jb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjI1cyBlYXNlO1xuXG4gICYuc2hvdyAubm90aWZpY2F0aW9uIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgJi5ub3RpZmljYXRpb24tZGlzbWlzc2VkIHtcbiAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAubm90aWZpY2F0aW9uIHtvcGFjaXR5OiAwO31cbiAgfVxufVxuXG5cbi8vICBNaXhpbiBmb3IgQWxlcnQgVGhlbWVzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIG5vdGlmaWNhdGlvbi1zdHlsZXMoXG4gICRiZy1jb2xvcixcbiAgJGJnLWNvbG9yLTIsXG4gICR0ZXh0LWNvbG9yLFxuICAkbGluay1jb2xvcixcbiAgJGxpbmstaG92ZXIpIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuXG4gIEBpbmNsdWRlIGdyYWRpZW50LWgoJGJnLWNvbG9yLCRiZy1jb2xvci0yKTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gIGE6bGluayxcbiAgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgY29sb3IgMC4yNXMgZWFzZTtcbiAgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3ZlcjtcbiAgfVxuICBzcGFuLmljb24ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAubm90aWZpY2F0aW9uLWNsb3NlOmJlZm9yZSxcbiAgLm5vdGlmaWNhdGlvbi1jbG9zZTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbn1cblxuLy8gIEFsZXJ0IFRoZW1lc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5ub3RpZmljYXRpb24tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1zdHlsZXMoJGMtcmFpbmZvcmVzdCwkYy1wb29sLCRnMjAtd2hpdGUsJGMtd2FzYWJpLCRnMjAtd2hpdGUpO1xufVxuLm5vdGlmaWNhdGlvbi1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLXN0eWxlcygkYy1wb29sLCRjLW9jZWFuLCRnMjAtd2hpdGUsJGMtbmV1dHJpbm8sJGcyMC13aGl0ZSk7XG59XG4ubm90aWZpY2F0aW9uLXdhcm5pbmcge1xuICBAaW5jbHVkZSBub3RpZmljYXRpb24tc3R5bGVzKCRjLXN0YXIsJGMtcG9vbCwkZzIwLXdoaXRlLCRjLW5ldXRyaW5vLCRnMjAtd2hpdGUpO1xufVxuLm5vdGlmaWNhdGlvbi1lcnJvciB7XG4gIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1zdHlsZXMoJGMtY3VyYWNhbywkYy1zdGFyLCRnMjAtd2hpdGUsJGMtbWFybWVsYWRlLCRnMjAtd2hpdGUpO1xufVxuLm5vdGlmaWNhdGlvbi1pbmZvIHtcbiAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLXN0eWxlcygkZzIwLXdoaXRlLCRnMTYtcGVhcmwsJGc4LXN0b3JtLCRpeC1saW5rLWRlZmF1bHQsJGl4LWxpbmstZGVmYXVsdC1ob3Zlcik7XG59XG4ubm90aWZpY2F0aW9uLWRhcmsge1xuICBAaW5jbHVkZSBub3RpZmljYXRpb24tc3R5bGVzKCRjLXNhcHBoaXJlLCRjLXNoYWRvdywkYy1tb29uc3RvbmUsJGl4LWxpbmstZGVmYXVsdCwkaXgtbGluay1kZWZhdWx0LWhvdmVyKTtcbn1cbiIsIi8qXG4gICBBbGVydHNcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4uYWxlcnQge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRpeC1yYWRpdXM7XG4gIHBhZGRpbmc6IDE2cHggMTZweCAxNnB4IDQ0cHg7XG4gIEBleHRlbmQgJW5vLXVzZXItc2VsZWN0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5cbiAgPiBzcGFuLmljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAyNHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGZvbnQtc2l6ZTogJGl4LXRleHQtYmFzZS0yO1xuICB9XG59XG5cbi5hbGVydC1tZXNzYWdlIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbn1cblxuLy8gIE1peGluIGZvciBBbGVydCBUaGVtZXNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWl4aW4gYWxlcnQtc3R5bGVzKFxuICAkYmctY29sb3IsXG4gICRiZy1jb2xvci0yLFxuICAkdGV4dC1jb2xvcixcbiAgJGxpbmstY29sb3IsXG4gICRsaW5rLWhvdmVyXG4pIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuXG4gIEBpbmNsdWRlIGdyYWRpZW50LWgoJGJnLWNvbG9yLCAkYmctY29sb3ItMik7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICBhOmxpbmssXG4gIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZTtcbiAgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGluay1ob3ZlcjtcbiAgfVxuICBzcGFuLmljb24ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAuYWxlcnQtY2xvc2U6YmVmb3JlLFxuICAuYWxlcnQtY2xvc2U6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cbi8vICBBbGVydCBUaGVtZXNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYWxlcnQtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXN0eWxlcyhcbiAgICAkYy1yYWluZm9yZXN0LFxuICAgICRjLXBvb2wsXG4gICAgJGcyMC13aGl0ZSxcbiAgICAkYy13YXNhYmksXG4gICAgJGcyMC13aGl0ZVxuICApO1xufVxuLmFsZXJ0LXByaW1hcnkge1xuICBAaW5jbHVkZSBhbGVydC1zdHlsZXMoJGMtcG9vbCwgJGMtb2NlYW4sICRnMjAtd2hpdGUsICRjLW5ldXRyaW5vLCAkZzIwLXdoaXRlKTtcbn1cbi5hbGVydC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYWxlcnQtc3R5bGVzKCRjLXN0YXIsICRjLXBvb2wsICRnMjAtd2hpdGUsICRjLW5ldXRyaW5vLCAkZzIwLXdoaXRlKTtcbn1cbi5hbGVydC1lcnJvciB7XG4gIEBpbmNsdWRlIGFsZXJ0LXN0eWxlcyhcbiAgICAkYy1jdXJhY2FvLFxuICAgICRjLXN0YXIsXG4gICAgJGcyMC13aGl0ZSxcbiAgICAkYy1tYXJtZWxhZGUsXG4gICAgJGcyMC13aGl0ZVxuICApO1xufVxuLmFsZXJ0LWluZm8ge1xuICBAaW5jbHVkZSBhbGVydC1zdHlsZXMoXG4gICAgJGcyMC13aGl0ZSxcbiAgICAkZzE2LXBlYXJsLFxuICAgICRnOC1zdG9ybSxcbiAgICAkaXgtbGluay1kZWZhdWx0LFxuICAgICRpeC1saW5rLWRlZmF1bHQtaG92ZXJcbiAgKTtcbn1cbi5hbGVydC1kYXJrIHtcbiAgQGluY2x1ZGUgYWxlcnQtc3R5bGVzKFxuICAgICRjLXNhcHBoaXJlLFxuICAgICRjLXNoYWRvdyxcbiAgICAkYy1tb29uc3RvbmUsXG4gICAgJGl4LWxpbmstZGVmYXVsdCxcbiAgICAkaXgtbGluay1kZWZhdWx0LWhvdmVyXG4gICk7XG59XG4iLCIvKlxuICAgUGFuZWxzXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJHBhbmVsLWd1dHRlcjogMzBweDtcblxuLnBhbmVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIG1hcmdpbi1ib3R0b206ICRwYW5lbC1ndXR0ZXI7XG59XG5cbi5wYW5lbC1oZWFkaW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAkcGFuZWwtZ3V0dGVyIDA7XG59XG5cbi5wYW5lbC10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMTlweDtcbiAgY29sb3I6ICRnMTItZm9yZ2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxNWVtO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIEBleHRlbmQgJW5vLXVzZXItc2VsZWN0O1xufVxuXG4ucGFuZWwtYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gIHBhZGRpbmc6ICRwYW5lbC1ndXR0ZXI7XG5cbiAgLnBhbmVsLWhlYWRpbmcgKyAmLFxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICB9XG5cbiAgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gID4gKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5wYW5lbC1mb290ZXIge1xuICBwYWRkaW5nOiAxNHB4ICRwYW5lbC1ndXR0ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICBAaW5jbHVkZSBncmFkaWVudC12KCRnMi1rZXZsYXIsICRnMy1jYXN0bGUpO1xuICBjb2xvcjogJGc5LW1vdW50YWluO1xufVxuXG4vLyAgVGFibGVzIGRpcmVjdGx5IGluc2lkZSBQYW5lbHNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFuZWwgPiAudGFibGUge1xuICBib3JkZXItdG9wOiAkaXgtYm9yZGVyO1xuICAqIHtcbiAgICBib3JkZXItY29sb3I6ICRnMTktZ2hvc3Q7XG4gIH1cbn1cbi5wYW5lbC1oZWFkaW5nICsgLnRhYmxlIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLnBhbmVsID4gLnRhYmxlIHRkOmZpcnN0LWNoaWxkLFxuLnBhbmVsID4gLnRhYmxlIHRoOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAkcGFuZWwtZ3V0dGVyO1xufVxuLnBhbmVsID4gLnRhYmxlIHRkOmxhc3QtY2hpbGQsXG4ucGFuZWwgPiAudGFibGUgdGg6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYW5lbC1ndXR0ZXI7XG59XG5cbi8vICBTb2xpZCBQYW5lbHNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFuZWwucGFuZWwtc29saWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgLnBhbmVsLWhlYWRpbmcge1xuICAgIHBhZGRpbmc6ICRwYW5lbC1ndXR0ZXI7XG4gIH1cbiAgLnBhbmVsLWJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vICBIb3Jpem9udGFsIFJ1bGVzIGRpcmVjdGx5IGluc2lkZSBQYW5lbHNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFuZWwtYm9keSBociB7XG4gIG1hcmdpbjogMTZweCAwO1xufVxuIiwiLypcbiAgIFJhZGlvIEJ1dHRvbnNcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4ubmF2LXRhYmxpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlcjogJGl4LWJvcmRlciBzb2xpZCAkZzUtcGVwcGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICBoZWlnaHQ6ICRmb3JtLW1kLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gID4gbGkge1xuICAgIEBleHRlbmQgJW5vLXVzZXItc2VsZWN0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwICRmb3JtLW1kLXBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9ybS1tZC1mb250O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luOiAwIDJweCAwIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLFxuICAgICAgY29sb3IgMC4yNXMgZWFzZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gICAgICBjb2xvcjogJGcxNS1wbGF0aW51bTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICAgIGNvbG9yOiAkZzE4LWNsb3VkO1xuICAgIH1cbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICYsICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGNvbG9yOiAkZzctZ3JhcGhpdGU7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7bWFyZ2luLXJpZ2h0OiAwO31cbiAgfVxufVxuXG4vLyAgU2l6ZSBNb2RpZmllcnNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LXRhYmxpc3QubmF2LXRhYmxpc3QtbGcge1xuICBoZWlnaHQ6ICRmb3JtLWxnLWhlaWdodDtcbiAgPiBsaSB7XG4gICAgcGFkZGluZzogMCAkZm9ybS1sZy1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tbGctZm9udDtcbiAgfVxufVxuLm5hdi10YWJsaXN0Lm5hdi10YWJsaXN0LW1kIHtcbiAgaGVpZ2h0OiAkZm9ybS1tZC1oZWlnaHQ7XG4gID4gbGkge1xuICAgIHBhZGRpbmc6IDAgJGZvcm0tbWQtcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb3JtLW1kLWZvbnQ7XG4gIH1cbn1cbi5uYXYtdGFibGlzdC5uYXYtdGFibGlzdC1zbSB7XG4gIGhlaWdodDogJGZvcm0tc20taGVpZ2h0O1xuICA+IGxpIHtcbiAgICBwYWRkaW5nOiAwICRmb3JtLXNtLXBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9ybS1zbS1mb250O1xuICB9XG59XG4ubmF2LXRhYmxpc3QubmF2LXRhYmxpc3QteHMge1xuICBoZWlnaHQ6ICRmb3JtLXhzLWhlaWdodDtcbiAgPiBsaSB7XG4gICAgcGFkZGluZzogMCAkZm9ybS14cy1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0teHMtZm9udDtcbiAgfVxufVxuXG4vLyAgVGhlbWUgTW9kaWZpZXJzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm5hdi10YWJsaXN0Lm5hdi10YWJsaXN0LW1hbGFjaGl0ZSB7XG4gID4gbGkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG5cbiAgICAmOmhvdmVyIHtiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDt9XG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICAgIGNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICAgIH1cbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICYsICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICAgICAgICBjb2xvcjogJGc3LWdyYXBoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLypcbiAgIE1pc2NlbGxhbmVvdXNcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4uY2FyZXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYyg1MCUgKyAxcHgpO1xuICByaWdodDogJGZvcm0tbWQtcGFkZGluZztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMTFweDtcbiAgaGVpZ2h0OiAxNnB4O1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTUlKTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gIH1cbn1cbiIsIi8qXG4gICBDb2RlIFN0eWxlc1xuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cblxuJGNvZGUtYmctY29sb3I6ICRnMi1rZXZsYXI7XG4kY29kZS1zY3JvbGxiYXI6ICRjLXBvb2w7XG4kY29kZS1mb250LWNvbG9yOiAkYy1wb29sO1xuJGNvZGUtZm9udC1zaXplOiAxMXB4O1xuJGNvZGUtZm9udC13ZWlnaHQ6IDUwMDtcblxuY29kZSB7XG4gIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmctY29sb3I7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICRjb2RlLWZvbnQtY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICBmb250LXNpemU6ICRjb2RlLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRjb2RlLWZvbnQtc2l6ZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBwYWRkaW5nOiAyLjVweCA1cHg7XG4gIG1hcmdpbjogMCAxcHggMCAycHg7XG5cbiAgLyogUmVzZXQgZGVmYXVsdCB0YWcgc3R5bGVzICovXG4gIGIsc3Ryb25nLGksZW0sbWFyayxzbWFsbCxkZWwsaW5zLHN1YixzdXAsdSB7XG4gICAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICBjb2xvcjogJGNvZGUtZm9udC1jb2xvcjtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHN1cCwgc3ViIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiA4NSU7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuICBzdXAge1xuICAgIHRvcDogLTRweDtcbiAgfVxuICBzdWIge1xuICAgIHRvcDogNHB4O1xuICB9XG5cbiAgYiB7IGNvbG9yOiAkYy1kcmVhbXNpY2xlO31cbiAgaSB7IGNvbG9yOiAkYy1wb29sO31cbiAgdSB7IGNvbG9yOiAkYy1yYWluZm9yZXN0O31cblxuICAmLnJhaW5ib3ctaGlnaGxpZ2h0ZXIge1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbn1cbnByZSB7XG4gIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmctY29sb3I7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICRjb2RlLWZvbnQtY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6ICRpeC1yYWRpdXM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG5cbiAgY29kZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyKCRjb2RlLWJnLWNvbG9yLCRjb2RlLXNjcm9sbGJhcik7XG5cbiAgJi5yYWluYm93LWhpZ2hsaWdodGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXIoJGcyLWtldmxhciwkYy1wb29sKTtcblxuICAgIGNvZGUge1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qIENvZGUgSGlnaGxpZ2h0aW5nICovXG4kY29kZS1oaWdobGlnaHQtYTogJGcxMC13b2xmO1xuJGNvZGUtaGlnaGxpZ2h0LWI6ICRjLWh5ZHJvZ2VuO1xuJGNvZGUtaGlnaGxpZ2h0LWM6ICRjLXBvb2w7XG4kY29kZS1oaWdobGlnaHQtZDogJGMtdmlyaWRpYW47XG4kY29kZS1oaWdobGlnaHQtZTogJGMtaG9uZXlkZXc7XG4kY29kZS1oaWdobGlnaHQtZjogJGcyMC13aGl0ZTtcbiRjb2RlLWhpZ2hsaWdodC1nOiAkYy1jdXJhY2FvO1xuJGNvZGUtaGlnaGxpZ2h0LWg6ICRjLXR1bmdzdGVuO1xuJGNvZGUtaGlnaGxpZ2h0LWk6ICRjLWhvbmV5ZGV3O1xuJGNvZGUtaGlnaGxpZ2h0LWo6ICRjLWNvbWV0O1xuJGNvZGUtaGlnaGxpZ2h0LWs6ICRnNi1zbW9rZTtcblxuY29kZSwgcHJlIHtcbiAgJi5yYWluYm93LWhpZ2hsaWdodGVyIHtcbiAgICBjb2xvcjogJGMtcG90YXNzaXVtO1xuICAgIGJvcmRlci1jb2xvcjogJGMtc2hhZG93O1xuXG5cblxuICAgIGIgeyBjb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWE7IH1cbiAgICBzdHJvbmcgeyBjb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWI7IH1cbiAgICBpIHsgY29sb3I6ICRjb2RlLWhpZ2hsaWdodC1jOyB9XG4gICAgZW0geyBjb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWQ7IH1cbiAgICBtYXJrIHsgY29sb3I6ICRjb2RlLWhpZ2hsaWdodC1lOyB9XG4gICAgc21hbGwgeyBjb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWY7IH1cbiAgICBkZWwgeyBjb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWc7IH1cbiAgICBpbnMgeyBjb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWg7IH1cbiAgICBzdWIgeyBjb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWk7IH1cbiAgICBzdXAgeyBjb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWo7IH1cblxuICAgIC8qIExpdGVyYWwgaGlnaGxpZ2h0aW5nICovXG4gICAgdSB7XG4gICAgICBjb2xvcjogJGMtcG90YXNzaXVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtaGlnaGxpZ2h0LWs7XG4gICAgICBwYWRkaW5nOiAycHggNHB4O1xuICAgICAgdGV4dC1pbmRlbnQ6IC00cHg7XG4gICAgfVxuXG4gICAgc3VwLHN1YiB7XG4gICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgIHRvcDogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLyogTGFuZ3VhZ2UgTGFiZWxzICovXG5wcmU6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICRnNy1ncmFwaGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogJGl4LW1hcmctYTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbnByZVtkYXRhLWxhbmc9XCJodG1sXCJdOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdIVE1MJztcbn1cbnByZVtkYXRhLWxhbmc9XCJjc3NcIl06YmVmb3JlIHtcbiAgY29udGVudDogJ0NTUyc7XG59XG5wcmVbZGF0YS1sYW5nPVwianNcIl06YmVmb3JlIHtcbiAgY29udGVudDogJ0phdmFzY3JpcHQnO1xufVxuIiwiQGltcG9ydCAnfnJlYWN0LWdyaWQtbGF5b3V0L2Nzcy9zdHlsZXMuY3NzJztcbiIsIi8qKlxuICogRml4ZWREYXRhVGFibGUgdjAuNi4xXG4gKlxuICogQ29weXJpZ2h0IChjKSAyMDE1LCBGYWNlYm9vaywgSW5jLlxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXG4gKi9cblxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTUsIEZhY2Vib29rLCBJbmMuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cbiAqXG4gKiBAcHJvdmlkZXNNb2R1bGUgZml4ZWREYXRhVGFibGVDZWxsR3JvdXBMYXlvdXRcbiAqL1xuXG4uZml4ZWREYXRhVGFibGVDZWxsR3JvdXBMYXlvdXRfY2VsbEdyb3VwIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZpeGVkRGF0YVRhYmxlQ2VsbEdyb3VwTGF5b3V0X2NlbGxHcm91cCA+IC5wdWJsaWNfZml4ZWREYXRhVGFibGVDZWxsX21haW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxHcm91cExheW91dF9jZWxsR3JvdXBXcmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG4vKipcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICpcbiAqIEBwcm92aWRlc01vZHVsZSBmaXhlZERhdGFUYWJsZUNlbGxMYXlvdXRcbiAqL1xuXG4uZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0X21haW4ge1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAwIDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfbGFzdENoaWxkIHtcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbn1cblxuLmZpeGVkRGF0YVRhYmxlQ2VsbExheW91dF9hbGlnblJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfYWxpZ25DZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfd3JhcDEge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLmZpeGVkRGF0YVRhYmxlQ2VsbExheW91dF93cmFwMiB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdztcbn1cblxuLmZpeGVkRGF0YVRhYmxlQ2VsbExheW91dF93cmFwMyB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfY29sdW1uUmVzaXplckNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA2cHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfY29sdW1uUmVzaXplckNvbnRhaW5lcjpob3ZlciB7XG4gIGN1cnNvcjogZXctcmVzaXplO1xufVxuXG4uZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0X2NvbHVtblJlc2l6ZXJDb250YWluZXI6aG92ZXIgLmZpeGVkRGF0YVRhYmxlQ2VsbExheW91dF9jb2x1bW5SZXNpemVyS25vYiB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfY29sdW1uUmVzaXplcktub2Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiA0cHg7XG59XG4vKipcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICpcbiAqIEBwcm92aWRlc01vZHVsZSBmaXhlZERhdGFUYWJsZUNvbHVtblJlc2l6ZXJMaW5lTGF5b3V0XG4gKi9cblxuLmZpeGVkRGF0YVRhYmxlQ29sdW1uUmVzaXplckxpbmVMYXlvdXRfbW91c2VBcmVhIHtcbiAgY3Vyc29yOiBldy1yZXNpemU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC01cHg7XG4gIHdpZHRoOiAxMnB4O1xufVxuXG4uZml4ZWREYXRhVGFibGVDb2x1bW5SZXNpemVyTGluZUxheW91dF9tYWluIHtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG59XG5cbmJvZHlbZGlyPVwicnRsXCJdIC5maXhlZERhdGFUYWJsZUNvbHVtblJlc2l6ZXJMaW5lTGF5b3V0X21haW4ge1xuICAvKiB0aGUgcmVzaXplciBsaW5lIGlzIGluIHRoZSB3cm9uZyBwb3NpdGlvbiBpbiBSVEwgd2l0aCBubyBlYXN5IGZpeC5cbiAgICogRGlzYWJsaW5nIGlzIG1vcmUgdXNlZnVsIHRoYW4gZGlzcGxheWluZyBpdC5cbiAgICogIzE2NyAoZ2l0aHViKSBzaG91bGQgbG9vayBpbnRvIHRoaXMgYW5kIGNvbWUgdXAgd2l0aCBhIHBlcm1hbmVudCBmaXguXG4gICAqL1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5maXhlZERhdGFUYWJsZUNvbHVtblJlc2l6ZXJMaW5lTGF5b3V0X2hpZGRlbkVsZW0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4vKipcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICpcbiAqIEBwcm92aWRlc01vZHVsZSBmaXhlZERhdGFUYWJsZUxheW91dFxuICovXG5cbi5maXhlZERhdGFUYWJsZUxheW91dF9tYWluIHtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZpeGVkRGF0YVRhYmxlTGF5b3V0X2hlYWRlcixcbi5maXhlZERhdGFUYWJsZUxheW91dF9oYXNCb3R0b21Cb3JkZXIge1xuICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xufVxuXG4uZml4ZWREYXRhVGFibGVMYXlvdXRfZm9vdGVyIC5wdWJsaWNfZml4ZWREYXRhVGFibGVDZWxsX21haW4ge1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMnB4O1xufVxuXG4uZml4ZWREYXRhVGFibGVMYXlvdXRfdG9wU2hhZG93LFxuLmZpeGVkRGF0YVRhYmxlTGF5b3V0X2JvdHRvbVNoYWRvdyB7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxO1xufVxuXG4uZml4ZWREYXRhVGFibGVMYXlvdXRfYm90dG9tU2hhZG93IHtcbiAgbWFyZ2luLXRvcDogLTRweDtcbn1cblxuLmZpeGVkRGF0YVRhYmxlTGF5b3V0X3Jvd3NDb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5maXhlZERhdGFUYWJsZUxheW91dF9ob3Jpem9udGFsU2Nyb2xsYmFyIHtcbiAgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4vKipcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICpcbiAqIEBwcm92aWRlc01vZHVsZSBmaXhlZERhdGFUYWJsZVJvd0xheW91dFxuICovXG5cbi5maXhlZERhdGFUYWJsZVJvd0xheW91dF9tYWluIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG5cbi5maXhlZERhdGFUYWJsZVJvd0xheW91dF9ib2R5IHtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG5cbi5maXhlZERhdGFUYWJsZVJvd0xheW91dF9maXhlZENvbHVtbnNEaXZpZGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAycHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMDtcbn1cblxuLmZpeGVkRGF0YVRhYmxlUm93TGF5b3V0X2NvbHVtbnNTaGFkb3cge1xuICB3aWR0aDogNHB4O1xufVxuXG4uZml4ZWREYXRhVGFibGVSb3dMYXlvdXRfcm93V3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xufVxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTUsIEZhY2Vib29rLCBJbmMuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cbiAqXG4gKiBAcHJvdmlkZXNNb2R1bGUgU2Nyb2xsYmFyTGF5b3V0XG4gKi9cblxuLlNjcm9sbGJhckxheW91dF9tYWluIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3V0bGluZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uU2Nyb2xsYmFyTGF5b3V0X21haW5WZXJ0aWNhbCB7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yIHdpZHRoO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3Igd2lkdGg7XG4gIHdpZHRoOiAxNXB4O1xufVxuXG4uU2Nyb2xsYmFyTGF5b3V0X21haW5WZXJ0aWNhbC5wdWJsaWNfU2Nyb2xsYmFyX21haW5BY3RpdmUsXG4uU2Nyb2xsYmFyTGF5b3V0X21haW5WZXJ0aWNhbDpob3ZlciB7XG4gIHdpZHRoOiAxNXB4O1xufVxuXG4uU2Nyb2xsYmFyTGF5b3V0X21haW5Ib3Jpem9udGFsIHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDE1cHg7XG4gIGxlZnQ6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciBoZWlnaHQ7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciBoZWlnaHQ7XG59XG5cbi8qIFRvdWNoaW5nIHRoZSBzY3JvbGwtdHJhY2sgZGlyZWN0bHkgbWFrZXMgdGhlIHNjcm9sbC10cmFjayBib2xkZXIgKi9cbi5TY3JvbGxiYXJMYXlvdXRfbWFpbkhvcml6b250YWwucHVibGljX1Njcm9sbGJhcl9tYWluQWN0aXZlLFxuLlNjcm9sbGJhckxheW91dF9tYWluSG9yaXpvbnRhbDpob3ZlciB7XG4gIGhlaWdodDogMTVweDtcbn1cblxuLlNjcm9sbGJhckxheW91dF9mYWNlIHtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xufVxuXG4vKipcbiAqIFRoaXMgc2VsZWN0b3IgcmVuZGVycyB0aGUgXCJudWJcIiBvZiB0aGUgc2Nyb2xsZmFjZS4gVGhlIG51YiBtdXN0XG4gKiBiZSByZW5kZXJlZCBhcyBwc2V1ZG8tZWxlbWVudCBzbyB0aGF0IGl0IHdvbid0IHJlY2VpdmUgYW55IFVJIGV2ZW50cyB0aGVuXG4gKiB3ZSBjYW4gZ2V0IHRoZSBjb3JyZWN0IGBldmVudC5vZmZzZXRYYCBhbmQgYGV2ZW50Lm9mZnNldFlgIGZyb20gdGhlXG4gKiBzY3JvbGxmYWNlIGVsZW1lbnQgd2hpbGUgZHJhZ2dpbmcgaXQuXG4gKi9cbi5TY3JvbGxiYXJMYXlvdXRfZmFjZTphZnRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcyBlYXNlO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXMgZWFzZTtcbn1cblxuLlNjcm9sbGJhckxheW91dF9mYWNlSG9yaXpvbnRhbCB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuXG4uU2Nyb2xsYmFyTGF5b3V0X2ZhY2VIb3Jpem9udGFsOmFmdGVyIHtcbiAgYm90dG9tOiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLlNjcm9sbGJhckxheW91dF9mYWNlVmVydGljYWwge1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xufVxuXG4uU2Nyb2xsYmFyTGF5b3V0X2ZhY2VWZXJ0aWNhbDphZnRlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogNHB4O1xuICByaWdodDogNHB4O1xuICB0b3A6IDA7XG59XG5cbiIsIi8qKlxuICogRml4ZWREYXRhVGFibGUgdjAuNi4xXG4gKlxuICogQ29weXJpZ2h0IChjKSAyMDE1LCBGYWNlYm9vaywgSW5jLlxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXG4gKi9cblxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTUsIEZhY2Vib29rLCBJbmMuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cbiAqXG4gKiBAcHJvdmlkZXNNb2R1bGUgZml4ZWREYXRhVGFibGVcbiAqXG4gKi9cblxuLyoqXG4gKiBUYWJsZS5cbiAqL1xuLnB1YmxpY19maXhlZERhdGFUYWJsZV9tYWluIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAkZzYtc21va2U7XG4gIGJvcmRlci13aWR0aDogOHB4O1xuICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggM3B4O1xufVxuXG4ucHVibGljX2ZpeGVkRGF0YVRhYmxlX2hlYWRlcixcbi5wdWJsaWNfZml4ZWREYXRhVGFibGVfaGFzQm90dG9tQm9yZGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAkZzYtc21va2U7XG59XG5cbi5wdWJsaWNfZml4ZWREYXRhVGFibGVfaGVhZGVyIC5wdWJsaWNfZml4ZWREYXRhVGFibGVDZWxsX21haW4ge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnB1YmxpY19maXhlZERhdGFUYWJsZV9oZWFkZXIsXG4ucHVibGljX2ZpeGVkRGF0YVRhYmxlX2hlYWRlciAucHVibGljX2ZpeGVkRGF0YVRhYmxlQ2VsbF9tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc2LXNtb2tlO1xuICBib3JkZXItY29sb3I6ICRnNy1ncmFwaGl0ZTtcbn1cblxuLnB1YmxpY19maXhlZERhdGFUYWJsZV9mb290ZXIgLnB1YmxpY19maXhlZERhdGFUYWJsZUNlbGxfbWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNi1zbW9rZTtcbiAgYm9yZGVyLWNvbG9yOiAkZzYtc21va2U7XG59XG5cbi5wdWJsaWNfZml4ZWREYXRhVGFibGVfdG9wU2hhZG93IHt9XG5cbi5wdWJsaWNfZml4ZWREYXRhVGFibGVfYm90dG9tU2hhZG93IHt9XG5cbi5wdWJsaWNfZml4ZWREYXRhVGFibGVfaG9yaXpvbnRhbFNjcm9sbGJhciAucHVibGljX1Njcm9sbGJhcl9tYWluSG9yaXpvbnRhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4vKipcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICpcbiAqIEBwcm92aWRlc01vZHVsZSBmaXhlZERhdGFUYWJsZUNlbGxcbiAqL1xuXG4vKipcbiAqIFRhYmxlIGNlbGwuXG4gKi9cbi5wdWJsaWNfZml4ZWREYXRhVGFibGVDZWxsX21haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgYm9yZGVyLWNvbG9yOiAkZzYtc21va2U7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICBwYWRkaW5nOiAwIDhweDtcbiAgY29sb3I6ICRnMTUtcGxhdGludW07XG5cbiAgc3BhbiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxufVxuXG4ucHVibGljX2ZpeGVkRGF0YVRhYmxlQ2VsbF9oaWdobGlnaHRlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG59XG5cbi5wdWJsaWNfZml4ZWREYXRhVGFibGVDZWxsX2NlbGxDb250ZW50IHtcbiAgLy8gcGFkZGluZzogOHB4O1xufVxuXG4ucHVibGljX2ZpeGVkRGF0YVRhYmxlQ2VsbF9jb2x1bW5SZXNpemVyS25vYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG59XG4vKipcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICpcbiAqIEBwcm92aWRlc01vZHVsZSBmaXhlZERhdGFUYWJsZUNvbHVtblJlc2l6ZXJMaW5lXG4gKlxuICovXG5cbi8qKlxuICogQ29sdW1uIHJlc2l6ZXIgbGluZS5cbiAqL1xuLnB1YmxpY19maXhlZERhdGFUYWJsZUNvbHVtblJlc2l6ZXJMaW5lX21haW4ge1xuICBib3JkZXItY29sb3I6ICRjLXBvb2w7XG59XG4vKipcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICpcbiAqIEBwcm92aWRlc01vZHVsZSBmaXhlZERhdGFUYWJsZVJvd1xuICovXG5cbi8qKlxuICogVGFibGUgcm93LlxuICovXG4uZml4ZWREYXRhVGFibGVMYXlvdXRfaGVhZGVyLmZpeGVkRGF0YVRhYmxlUm93TGF5b3V0X21haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2UgIWltcG9ydGFudDtcbn1cbi5wdWJsaWNfZml4ZWREYXRhVGFibGVSb3dfbWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xufVxuXG5cbi5wdWJsaWNfZml4ZWREYXRhVGFibGVSb3dfaGlnaGxpZ2h0ZWQsXG4ucHVibGljX2ZpeGVkRGF0YVRhYmxlUm93X2hpZ2hsaWdodGVkIC5wdWJsaWNfZml4ZWREYXRhVGFibGVDZWxsX21haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xufVxuXG4ucHVibGljX2ZpeGVkRGF0YVRhYmxlUm93X2ZpeGVkQ29sdW1uc0RpdmlkZXIge1xuICBib3JkZXItY29sb3I6ICRnNi1zbW9rZTtcbn1cblxuLnB1YmxpY19maXhlZERhdGFUYWJsZVJvd19jb2x1bW5zU2hhZG93IHt9XG4vKipcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICpcbiAqIEBwcm92aWRlc01vZHVsZSBTY3JvbGxiYXJcbiAqXG4gKi9cblxuLyoqXG4gKiBTY3JvbGxiYXJzLlxuICovXG5cbi8qIFRvdWNoaW5nIHRoZSBzY3JvbGwtdHJhY2sgZGlyZWN0bHkgbWFrZXMgdGhlIHNjcm9sbC10cmFjayBib2xkZXIgKi9cbi5wdWJsaWNfU2Nyb2xsYmFyX21haW4ucHVibGljX1Njcm9sbGJhcl9tYWluQWN0aXZlLFxuLnB1YmxpY19TY3JvbGxiYXJfbWFpbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG59XG5cbi5wdWJsaWNfU2Nyb2xsYmFyX21haW5PcGFxdWUsXG4ucHVibGljX1Njcm9sbGJhcl9tYWluT3BhcXVlLnB1YmxpY19TY3JvbGxiYXJfbWFpbkFjdGl2ZSxcbi5wdWJsaWNfU2Nyb2xsYmFyX21haW5PcGFxdWU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2U7XG59XG5cbi5wdWJsaWNfU2Nyb2xsYmFyX2ZhY2U6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzctZ3JhcGhpdGU7XG59XG5cbi5wdWJsaWNfU2Nyb2xsYmFyX21haW46aG92ZXIgLnB1YmxpY19TY3JvbGxiYXJfZmFjZTphZnRlcixcbi5wdWJsaWNfU2Nyb2xsYmFyX21haW5BY3RpdmUgLnB1YmxpY19TY3JvbGxiYXJfZmFjZTphZnRlcixcbi5wdWJsaWNfU2Nyb2xsYmFyX2ZhY2VBY3RpdmU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1wb29sO1xufSIsIi8qKlxuICogRml4ZWREYXRhVGFibGUgdjAuNi4xIFxuICpcbiAqIENvcHlyaWdodCAoYykgMjAxNSwgRmFjZWJvb2ssIEluYy5cbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxuICovXG5cbi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE1LCBGYWNlYm9vaywgSW5jLlxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXG4gKlxuICogQHByb3ZpZGVzTW9kdWxlIGZpeGVkRGF0YVRhYmxlQ2VsbEdyb3VwTGF5b3V0XG4gKi9cblxuLmZpeGVkRGF0YVRhYmxlQ2VsbEdyb3VwTGF5b3V0X2NlbGxHcm91cCB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxHcm91cExheW91dF9jZWxsR3JvdXAgPiAucHVibGljX2ZpeGVkRGF0YVRhYmxlQ2VsbF9tYWluIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4uZml4ZWREYXRhVGFibGVDZWxsR3JvdXBMYXlvdXRfY2VsbEdyb3VwV3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xufVxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTUsIEZhY2Vib29rLCBJbmMuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cbiAqXG4gKiBAcHJvdmlkZXNNb2R1bGUgZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0XG4gKi9cblxuLmZpeGVkRGF0YVRhYmxlQ2VsbExheW91dF9tYWluIHtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG4gIGJvcmRlci13aWR0aDogMCAycHggMCAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4uZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0X2xhc3RDaGlsZCB7XG4gIGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfYWxpZ25SaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0X2FsaWduQ2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0X3dyYXAxIHtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfd3JhcDIge1xuICBkaXNwbGF5OiB0YWJsZS1yb3c7XG59XG5cbi5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfd3JhcDMge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0X2NvbHVtblJlc2l6ZXJDb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNnB4O1xuICB6LWluZGV4OiAxO1xufVxuXG4uZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0X2NvbHVtblJlc2l6ZXJDb250YWluZXI6aG92ZXIge1xuICBjdXJzb3I6IGV3LXJlc2l6ZTtcbn1cblxuLmZpeGVkRGF0YVRhYmxlQ2VsbExheW91dF9jb2x1bW5SZXNpemVyQ29udGFpbmVyOmhvdmVyIC5maXhlZERhdGFUYWJsZUNlbGxMYXlvdXRfY29sdW1uUmVzaXplcktub2Ige1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uZml4ZWREYXRhVGFibGVDZWxsTGF5b3V0X2NvbHVtblJlc2l6ZXJLbm9iIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogNHB4O1xufVxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTUsIEZhY2Vib29rLCBJbmMuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cbiAqXG4gKiBAcHJvdmlkZXNNb2R1bGUgZml4ZWREYXRhVGFibGVDb2x1bW5SZXNpemVyTGluZUxheW91dFxuICovXG5cbi5maXhlZERhdGFUYWJsZUNvbHVtblJlc2l6ZXJMaW5lTGF5b3V0X21vdXNlQXJlYSB7XG4gIGN1cnNvcjogZXctcmVzaXplO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtNXB4O1xuICB3aWR0aDogMTJweDtcbn1cblxuLmZpeGVkRGF0YVRhYmxlQ29sdW1uUmVzaXplckxpbmVMYXlvdXRfbWFpbiB7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG5ib2R5W2Rpcj1cInJ0bFwiXSAuZml4ZWREYXRhVGFibGVDb2x1bW5SZXNpemVyTGluZUxheW91dF9tYWluIHtcbiAgLyogdGhlIHJlc2l6ZXIgbGluZSBpcyBpbiB0aGUgd3JvbmcgcG9zaXRpb24gaW4gUlRMIHdpdGggbm8gZWFzeSBmaXguXG4gICAqIERpc2FibGluZyBpcyBtb3JlIHVzZWZ1bCB0aGFuIGRpc3BsYXlpbmcgaXQuXG4gICAqICMxNjcgKGdpdGh1Yikgc2hvdWxkIGxvb2sgaW50byB0aGlzIGFuZCBjb21lIHVwIHdpdGggYSBwZXJtYW5lbnQgZml4LlxuICAgKi9cbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZml4ZWREYXRhVGFibGVDb2x1bW5SZXNpemVyTGluZUxheW91dF9oaWRkZW5FbGVtIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTUsIEZhY2Vib29rLCBJbmMuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cbiAqXG4gKiBAcHJvdmlkZXNNb2R1bGUgZml4ZWREYXRhVGFibGVMYXlvdXRcbiAqL1xuXG4uZml4ZWREYXRhVGFibGVMYXlvdXRfbWFpbiB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5maXhlZERhdGFUYWJsZUxheW91dF9oZWFkZXIsXG4uZml4ZWREYXRhVGFibGVMYXlvdXRfaGFzQm90dG9tQm9yZGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbn1cblxuLmZpeGVkRGF0YVRhYmxlTGF5b3V0X2Zvb3RlciAucHVibGljX2ZpeGVkRGF0YVRhYmxlQ2VsbF9tYWluIHtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci10b3Atd2lkdGg6IDJweDtcbn1cblxuLmZpeGVkRGF0YVRhYmxlTGF5b3V0X3RvcFNoYWRvdyxcbi5maXhlZERhdGFUYWJsZUxheW91dF9ib3R0b21TaGFkb3cge1xuICBoZWlnaHQ6IDRweDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTtcbn1cblxuLmZpeGVkRGF0YVRhYmxlTGF5b3V0X2JvdHRvbVNoYWRvdyB7XG4gIG1hcmdpbi10b3A6IC00cHg7XG59XG5cbi5maXhlZERhdGFUYWJsZUxheW91dF9yb3dzQ29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZml4ZWREYXRhVGFibGVMYXlvdXRfaG9yaXpvbnRhbFNjcm9sbGJhciB7XG4gIGJvdHRvbTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTUsIEZhY2Vib29rLCBJbmMuXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cbiAqXG4gKiBAcHJvdmlkZXNNb2R1bGUgZml4ZWREYXRhVGFibGVSb3dMYXlvdXRcbiAqL1xuXG4uZml4ZWREYXRhVGFibGVSb3dMYXlvdXRfbWFpbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xufVxuXG4uZml4ZWREYXRhVGFibGVSb3dMYXlvdXRfYm9keSB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xufVxuXG4uZml4ZWREYXRhVGFibGVSb3dMYXlvdXRfZml4ZWRDb2x1bW5zRGl2aWRlciB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItbGVmdC13aWR0aDogMnB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDA7XG59XG5cbi5maXhlZERhdGFUYWJsZVJvd0xheW91dF9jb2x1bW5zU2hhZG93IHtcbiAgd2lkdGg6IDRweDtcbn1cblxuLmZpeGVkRGF0YVRhYmxlUm93TGF5b3V0X3Jvd1dyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbn1cbi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE1LCBGYWNlYm9vaywgSW5jLlxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXG4gKlxuICogQHByb3ZpZGVzTW9kdWxlIFNjcm9sbGJhckxheW91dFxuICovXG5cbi5TY3JvbGxiYXJMYXlvdXRfbWFpbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG91dGxpbmU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLlNjcm9sbGJhckxheW91dF9tYWluVmVydGljYWwge1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciB3aWR0aDtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yIHdpZHRoO1xuICB3aWR0aDogMTVweDtcbn1cblxuLlNjcm9sbGJhckxheW91dF9tYWluVmVydGljYWwucHVibGljX1Njcm9sbGJhcl9tYWluQWN0aXZlLFxuLlNjcm9sbGJhckxheW91dF9tYWluVmVydGljYWw6aG92ZXIge1xuICB3aWR0aDogMTVweDtcbn1cblxuLlNjcm9sbGJhckxheW91dF9tYWluSG9yaXpvbnRhbCB7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBsZWZ0OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IgaGVpZ2h0O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IgaGVpZ2h0O1xufVxuXG4vKiBUb3VjaGluZyB0aGUgc2Nyb2xsLXRyYWNrIGRpcmVjdGx5IG1ha2VzIHRoZSBzY3JvbGwtdHJhY2sgYm9sZGVyICovXG4uU2Nyb2xsYmFyTGF5b3V0X21haW5Ib3Jpem9udGFsLnB1YmxpY19TY3JvbGxiYXJfbWFpbkFjdGl2ZSxcbi5TY3JvbGxiYXJMYXlvdXRfbWFpbkhvcml6b250YWw6aG92ZXIge1xuICBoZWlnaHQ6IDE1cHg7XG59XG5cbi5TY3JvbGxiYXJMYXlvdXRfZmFjZSB7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLyoqXG4gKiBUaGlzIHNlbGVjdG9yIHJlbmRlcnMgdGhlIFwibnViXCIgb2YgdGhlIHNjcm9sbGZhY2UuIFRoZSBudWIgbXVzdFxuICogYmUgcmVuZGVyZWQgYXMgcHNldWRvLWVsZW1lbnQgc28gdGhhdCBpdCB3b24ndCByZWNlaXZlIGFueSBVSSBldmVudHMgdGhlblxuICogd2UgY2FuIGdldCB0aGUgY29ycmVjdCBgZXZlbnQub2Zmc2V0WGAgYW5kIGBldmVudC5vZmZzZXRZYCBmcm9tIHRoZVxuICogc2Nyb2xsZmFjZSBlbGVtZW50IHdoaWxlIGRyYWdnaW5nIGl0LlxuICovXG4uU2Nyb2xsYmFyTGF5b3V0X2ZhY2U6YWZ0ZXIge1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXMgZWFzZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zIGVhc2U7XG59XG5cbi5TY3JvbGxiYXJMYXlvdXRfZmFjZUhvcml6b250YWwge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLlNjcm9sbGJhckxheW91dF9mYWNlSG9yaXpvbnRhbDphZnRlciB7XG4gIGJvdHRvbTogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDRweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5TY3JvbGxiYXJMYXlvdXRfZmFjZVZlcnRpY2FsIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLlNjcm9sbGJhckxheW91dF9mYWNlVmVydGljYWw6YWZ0ZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDRweDtcbiAgcmlnaHQ6IDRweDtcbiAgdG9wOiAwO1xufVxuIiwiLyogQkFTSUNTICovXG5cbi5Db2RlTWlycm9yIHtcbiAgLyogU2V0IGhlaWdodCwgd2lkdGgsIGJvcmRlcnMsIGFuZCBnbG9iYWwgZm9udCBwcm9wZXJ0aWVzIGhlcmUgKi9cbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTQwcHgpO1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi8qIFBBRERJTkcgKi9cblxuLkNvZGVNaXJyb3ItbGluZXMge1xuICBwYWRkaW5nOiA0cHggMDsgLyogVmVydGljYWwgcGFkZGluZyBhcm91bmQgY29udGVudCAqL1xufVxuLkNvZGVNaXJyb3IgcHJlIHtcbiAgcGFkZGluZzogMCA0cHg7IC8qIEhvcml6b250YWwgcGFkZGluZyBvZiBjb250ZW50ICovXG59XG5cbi5Db2RlTWlycm9yLXNjcm9sbGJhci1maWxsZXIsIC5Db2RlTWlycm9yLWd1dHRlci1maWxsZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgLyogVGhlIGxpdHRsZSBzcXVhcmUgYmV0d2VlbiBIIGFuZCBWIHNjcm9sbGJhcnMgKi9cbn1cblxuLyogR1VUVEVSICovXG5cbi5Db2RlTWlycm9yLWd1dHRlcnMge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZGRkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLkNvZGVNaXJyb3ItbGluZW51bWJlcnMge31cbi5Db2RlTWlycm9yLWxpbmVudW1iZXIge1xuICBwYWRkaW5nOiAwIDNweCAwIDVweDtcbiAgbWluLXdpZHRoOiAyMHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgY29sb3I6ICM5OTk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5Db2RlTWlycm9yLWd1dHRlcm1hcmtlciB7IGNvbG9yOiBibGFjazsgfVxuLkNvZGVNaXJyb3ItZ3V0dGVybWFya2VyLXN1YnRsZSB7IGNvbG9yOiAjOTk5OyB9XG5cbi8qIENVUlNPUiAqL1xuXG4uQ29kZU1pcnJvci1jdXJzb3Ige1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGJsYWNrO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIHdpZHRoOiAwO1xufVxuLyogU2hvd24gd2hlbiBtb3ZpbmcgaW4gYmktZGlyZWN0aW9uYWwgdGV4dCAqL1xuLkNvZGVNaXJyb3IgZGl2LkNvZGVNaXJyb3Itc2Vjb25kYXJ5Y3Vyc29yIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBzaWx2ZXI7XG59XG4uY20tZmF0LWN1cnNvciAuQ29kZU1pcnJvci1jdXJzb3Ige1xuICB3aWR0aDogYXV0bztcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6ICM3ZTc7XG59XG4uY20tZmF0LWN1cnNvciBkaXYuQ29kZU1pcnJvci1jdXJzb3JzIHtcbiAgei1pbmRleDogMTtcbn1cblxuLmNtLWFuaW1hdGUtZmF0LWN1cnNvciB7XG4gIHdpZHRoOiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBibGluayAxLjA2cyBzdGVwcygxKSBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IGJsaW5rIDEuMDZzIHN0ZXBzKDEpIGluZmluaXRlO1xuICBhbmltYXRpb246IGJsaW5rIDEuMDZzIHN0ZXBzKDEpIGluZmluaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2U3O1xufVxuQC1tb3ota2V5ZnJhbWVzIGJsaW5rIHtcbiAgMCUge31cbiAgNTAlIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgMTAwJSB7fVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGJsaW5rIHtcbiAgMCUge31cbiAgNTAlIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgMTAwJSB7fVxufVxuQGtleWZyYW1lcyBibGluayB7XG4gIDAlIHt9XG4gIDUwJSB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIDEwMCUge31cbn1cblxuLyogQ2FuIHN0eWxlIGN1cnNvciBkaWZmZXJlbnQgaW4gb3ZlcndyaXRlIChub24taW5zZXJ0KSBtb2RlICovXG4uQ29kZU1pcnJvci1vdmVyd3JpdGUgLkNvZGVNaXJyb3ItY3Vyc29yIHt9XG5cbi5jbS10YWIgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDsgfVxuXG4uQ29kZU1pcnJvci1ydWxlcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7IHJpZ2h0OiAwOyB0b3A6IC01MHB4OyBib3R0b206IC0yMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLkNvZGVNaXJyb3ItcnVsZXIge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjY2M7XG4gIHRvcDogMDsgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi8qIERFRkFVTFQgVEhFTUUgKi9cblxuLmNtLXMtZGVmYXVsdCAuY20taGVhZGVyIHtjb2xvcjogYmx1ZTt9XG4uY20tcy1kZWZhdWx0IC5jbS1xdW90ZSB7Y29sb3I6ICMwOTA7fVxuLmNtLW5lZ2F0aXZlIHtjb2xvcjogI2Q0NDt9XG4uY20tcG9zaXRpdmUge2NvbG9yOiAjMjkyO31cbi5jbS1oZWFkZXIsIC5jbS1zdHJvbmcge2ZvbnQtd2VpZ2h0OiBib2xkO31cbi5jbS1lbSB7Zm9udC1zdHlsZTogaXRhbGljO31cbi5jbS1saW5rIHt0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4uY20tc3RyaWtldGhyb3VnaCB7dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7fVxuXG4uY20tcy1kZWZhdWx0IC5jbS1rZXl3b3JkIHtjb2xvcjogIzcwODt9XG4uY20tcy1kZWZhdWx0IC5jbS1hdG9tIHtjb2xvcjogIzIxOTt9XG4uY20tcy1kZWZhdWx0IC5jbS1udW1iZXIge2NvbG9yOiAjMTY0O31cbi5jbS1zLWRlZmF1bHQgLmNtLWRlZiB7Y29sb3I6ICMwMGY7fVxuLmNtLXMtZGVmYXVsdCAuY20tdmFyaWFibGUsXG4uY20tcy1kZWZhdWx0IC5jbS1wdW5jdHVhdGlvbixcbi5jbS1zLWRlZmF1bHQgLmNtLXByb3BlcnR5LFxuLmNtLXMtZGVmYXVsdCAuY20tb3BlcmF0b3Ige31cbi5jbS1zLWRlZmF1bHQgLmNtLXZhcmlhYmxlLTIge2NvbG9yOiAjMDVhO31cbi5jbS1zLWRlZmF1bHQgLmNtLXZhcmlhYmxlLTMsIC5jbS1zLWRlZmF1bHQgLmNtLXR5cGUge2NvbG9yOiAjMDg1O31cbi5jbS1zLWRlZmF1bHQgLmNtLWNvbW1lbnQge2NvbG9yOiAjYTUwO31cbi5jbS1zLWRlZmF1bHQgLmNtLXN0cmluZyB7Y29sb3I6ICNhMTE7fVxuLmNtLXMtZGVmYXVsdCAuY20tc3RyaW5nLTIge2NvbG9yOiAjZjUwO31cbi5jbS1zLWRlZmF1bHQgLmNtLW1ldGEge2NvbG9yOiAjNTU1O31cbi5jbS1zLWRlZmF1bHQgLmNtLXF1YWxpZmllciB7Y29sb3I6ICM1NTU7fVxuLmNtLXMtZGVmYXVsdCAuY20tYnVpbHRpbiB7Y29sb3I6ICMzMGE7fVxuLmNtLXMtZGVmYXVsdCAuY20tYnJhY2tldCB7Y29sb3I6ICM5OTc7fVxuLmNtLXMtZGVmYXVsdCAuY20tdGFnIHtjb2xvcjogIzE3MDt9XG4uY20tcy1kZWZhdWx0IC5jbS1hdHRyaWJ1dGUge2NvbG9yOiAjMDBjO31cbi5jbS1zLWRlZmF1bHQgLmNtLWhyIHtjb2xvcjogIzk5OTt9XG4uY20tcy1kZWZhdWx0IC5jbS1saW5rIHtjb2xvcjogIzAwYzt9XG5cbi5jbS1zLWRlZmF1bHQgLmNtLWVycm9yIHtjb2xvcjogI2YwMDt9XG4uY20taW52YWxpZGNoYXIge2NvbG9yOiAjZjAwO31cblxuLkNvZGVNaXJyb3ItY29tcG9zaW5nIHsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkOyB9XG5cbi8qIERlZmF1bHQgc3R5bGVzIGZvciBjb21tb24gYWRkb25zICovXG5cbmRpdi5Db2RlTWlycm9yIHNwYW4uQ29kZU1pcnJvci1tYXRjaGluZ2JyYWNrZXQge2NvbG9yOiAjMGYwO31cbmRpdi5Db2RlTWlycm9yIHNwYW4uQ29kZU1pcnJvci1ub25tYXRjaGluZ2JyYWNrZXQge2NvbG9yOiAjZjIyO31cbi5Db2RlTWlycm9yLW1hdGNoaW5ndGFnIHsgYmFja2dyb3VuZDogcmdiYSgyNTUsIDE1MCwgMCwgLjMpOyB9XG4uQ29kZU1pcnJvci1hY3RpdmVsaW5lLWJhY2tncm91bmQge2JhY2tncm91bmQ6ICNlOGYyZmY7fVxuXG4vKiBTVE9QICovXG5cbi8qIFRoZSByZXN0IG9mIHRoaXMgZmlsZSBjb250YWlucyBzdHlsZXMgcmVsYXRlZCB0byB0aGUgbWVjaGFuaWNzIG9mXG4gICB0aGUgZWRpdG9yLiBZb3UgcHJvYmFibHkgc2hvdWxkbid0IHRvdWNoIHRoZW0uICovXG5cbi5Db2RlTWlycm9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuLkNvZGVNaXJyb3Itc2Nyb2xsIHtcbiAgb3ZlcmZsb3c6IHNjcm9sbCAhaW1wb3J0YW50OyAvKiBUaGluZ3Mgd2lsbCBicmVhayBpZiB0aGlzIGlzIG92ZXJyaWRkZW4gKi9cbiAgLyogMzBweCBpcyB0aGUgbWFnaWMgbWFyZ2luIHVzZWQgdG8gaGlkZSB0aGUgZWxlbWVudCdzIHJlYWwgc2Nyb2xsYmFycyAqL1xuICAvKiBTZWUgb3ZlcmZsb3c6IGhpZGRlbiBpbiAuQ29kZU1pcnJvciAqL1xuICBtYXJnaW4tYm90dG9tOiAtMzBweDsgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgb3V0bGluZTogbm9uZTsgLyogUHJldmVudCBkcmFnZ2luZyBmcm9tIGhpZ2hsaWdodGluZyB0aGUgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uQ29kZU1pcnJvci1zaXplciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJpZ2h0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vKiBUaGUgZmFrZSwgdmlzaWJsZSBzY3JvbGxiYXJzLiBVc2VkIHRvIGZvcmNlIHJlZHJhdyBkdXJpbmcgc2Nyb2xsaW5nXG4gICBiZWZvcmUgYWN0dWFsIHNjcm9sbGluZyBoYXBwZW5zLCB0aHVzIHByZXZlbnRpbmcgc2hha2luZyBhbmRcbiAgIGZsaWNrZXJpbmcgYXJ0aWZhY3RzLiAqL1xuLkNvZGVNaXJyb3ItdnNjcm9sbGJhciwgLkNvZGVNaXJyb3ItaHNjcm9sbGJhciwgLkNvZGVNaXJyb3Itc2Nyb2xsYmFyLWZpbGxlciwgLkNvZGVNaXJyb3ItZ3V0dGVyLWZpbGxlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5Db2RlTWlycm9yLXZzY3JvbGxiYXIge1xuICByaWdodDogMDsgdG9wOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbi5Db2RlTWlycm9yLWhzY3JvbGxiYXIge1xuICBib3R0b206IDA7IGxlZnQ6IDA7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xufVxuLkNvZGVNaXJyb3Itc2Nyb2xsYmFyLWZpbGxlciB7XG4gIHJpZ2h0OiAwOyBib3R0b206IDA7XG59XG4uQ29kZU1pcnJvci1ndXR0ZXItZmlsbGVyIHtcbiAgbGVmdDogMDsgYm90dG9tOiAwO1xufVxuXG4uQ29kZU1pcnJvci1ndXR0ZXJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDM7XG59XG4uQ29kZU1pcnJvci1ndXR0ZXIge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG59XG4uQ29kZU1pcnJvci1ndXR0ZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNDtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5Db2RlTWlycm9yLWd1dHRlci1iYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7IGJvdHRvbTogMDtcbiAgei1pbmRleDogNDtcbn1cbi5Db2RlTWlycm9yLWd1dHRlci1lbHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgei1pbmRleDogNDtcbn1cbi5Db2RlTWlycm9yLWd1dHRlci13cmFwcGVyIDo6c2VsZWN0aW9uIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgfVxuLkNvZGVNaXJyb3ItZ3V0dGVyLXdyYXBwZXIgOjotbW96LXNlbGVjdGlvbiB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50IH1cblxuLkNvZGVNaXJyb3ItbGluZXMge1xuICBjdXJzb3I6IHRleHQ7XG4gIG1pbi1oZWlnaHQ6IDFweDsgLyogcHJldmVudHMgY29sbGFwc2luZyBiZWZvcmUgZmlyc3QgZHJhdyAqL1xufVxuLkNvZGVNaXJyb3IgcHJlIHtcbiAgLyogUmVzZXQgc29tZSBzdHlsZXMgdGhhdCB0aGUgcmVzdCBvZiB0aGUgcGFnZSBtaWdodCBoYXZlIHNldCAqL1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWZvbnQtdmFyaWFudC1saWdhdHVyZXM6IGNvbnRleHR1YWw7XG4gIGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IGNvbnRleHR1YWw7XG59XG4uQ29kZU1pcnJvci13cmFwIHByZSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG5cbi5Db2RlTWlycm9yLWxpbmViYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwOyByaWdodDogMDsgdG9wOiAwOyBib3R0b206IDA7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5Db2RlTWlycm9yLWxpbmV3aWRnZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uQ29kZU1pcnJvci13aWRnZXQge31cblxuLkNvZGVNaXJyb3ItcnRsIHByZSB7IGRpcmVjdGlvbjogcnRsOyB9XG5cbi5Db2RlTWlycm9yLWNvZGUge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4vKiBGb3JjZSBjb250ZW50LWJveCBzaXppbmcgZm9yIHRoZSBlbGVtZW50cyB3aGVyZSB3ZSBleHBlY3QgaXQgKi9cbi5Db2RlTWlycm9yLXNjcm9sbCxcbi5Db2RlTWlycm9yLXNpemVyLFxuLkNvZGVNaXJyb3ItZ3V0dGVyLFxuLkNvZGVNaXJyb3ItZ3V0dGVycyxcbi5Db2RlTWlycm9yLWxpbmVudW1iZXIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLkNvZGVNaXJyb3ItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uQ29kZU1pcnJvci1jdXJzb3Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLkNvZGVNaXJyb3ItbWVhc3VyZSBwcmUgeyBwb3NpdGlvbjogc3RhdGljOyB9XG5cbmRpdi5Db2RlTWlycm9yLWN1cnNvcnMge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbn1cbmRpdi5Db2RlTWlycm9yLWRyYWdjdXJzb3JzIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLkNvZGVNaXJyb3ItZm9jdXNlZCBkaXYuQ29kZU1pcnJvci1jdXJzb3JzIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLkNvZGVNaXJyb3Itc2VsZWN0ZWQgeyBiYWNrZ3JvdW5kOiAjZDlkOWQ5OyB9XG4uQ29kZU1pcnJvci1mb2N1c2VkIC5Db2RlTWlycm9yLXNlbGVjdGVkIHsgYmFja2dyb3VuZDogI2Q3ZDRmMDsgfVxuLkNvZGVNaXJyb3ItY3Jvc3NoYWlyIHsgY3Vyc29yOiBjcm9zc2hhaXI7IH1cbi5Db2RlTWlycm9yLWxpbmU6OnNlbGVjdGlvbiwgLkNvZGVNaXJyb3ItbGluZSA+IHNwYW46OnNlbGVjdGlvbiwgLkNvZGVNaXJyb3ItbGluZSA+IHNwYW4gPiBzcGFuOjpzZWxlY3Rpb24geyBiYWNrZ3JvdW5kOiAjZDdkNGYwOyB9XG4uQ29kZU1pcnJvci1saW5lOjotbW96LXNlbGVjdGlvbiwgLkNvZGVNaXJyb3ItbGluZSA+IHNwYW46Oi1tb3otc2VsZWN0aW9uLCAuQ29kZU1pcnJvci1saW5lID4gc3BhbiA+IHNwYW46Oi1tb3otc2VsZWN0aW9uIHsgYmFja2dyb3VuZDogI2Q3ZDRmMDsgfVxuXG4uY20tc2VhcmNoaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmYTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMCwgLjQpO1xufVxuXG4vKiBVc2VkIHRvIGZvcmNlIGEgYm9yZGVyIG1vZGVsIGZvciBhIG5vZGUgKi9cbi5jbS1mb3JjZS1ib3JkZXIgeyBwYWRkaW5nLXJpZ2h0OiAuMXB4OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gIC8qIEhpZGUgdGhlIGN1cnNvciB3aGVuIHByaW50aW5nICovXG4gIC5Db2RlTWlycm9yIGRpdi5Db2RlTWlycm9yLWN1cnNvcnMge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4vKiBTZWUgaXNzdWUgIzI5MDEgKi9cbi5jbS10YWItd3JhcC1oYWNrOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuLyogSGVscCB1c2VycyB1c2UgbWFya3NlbGVjdGlvbiB0byBzYWZlbHkgc3R5bGUgdGV4dCBiYWNrZ3JvdW5kICovXG5zcGFuLkNvZGVNaXJyb3Itc2VsZWN0ZWR0ZXh0IHsgYmFja2dyb3VuZDogbm9uZTsgfVxuIiwiLypcbiAgICBQYWdlIExheW91dFxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4uY2hyb25vZ3JhZi1yb290IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBjb2xvcjogJGcxNy13aGlzcGVyO1xufVxuLnBhZ2Uge1xuICBmbGV4LWdyb3c6IDE7XG59XG4ucGFnZS1jb250ZW50cyxcbi5wYWdlLWNvbnRlbnRzLS1zcGxpdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6ICRjaHJvbm9ncmFmLXBhZ2UtaGVhZGVyLWhlaWdodDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gI3skY2hyb25vZ3JhZi1wYWdlLWhlYWRlci1oZWlnaHR9KSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBncmFkaWVudC12KCRnMi1rZXZsYXIsJGcwLW9ic2lkaWFuKTtcblxuICAmOm9ubHktY2hpbGQge1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5wYWdlLWNvbnRlbnRzLS1zcGxpdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuLnRlbXBsYXRlLWNvbnRyb2wtYmFyLnNob3cgKyAucGFnZS1jb250ZW50cyB7XG4gIHRvcDogJGNocm9ub2dyYWYtcGFnZS1oZWFkZXItaGVpZ2h0ICogMjtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRjaHJvbm9ncmFmLXBhZ2UtaGVhZGVyLWhlaWdodCAqIDJ9KSAhaW1wb3J0YW50O1xufVxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAoJGNocm9ub2dyYWYtcGFnZS1oZWFkZXItaGVpZ2h0IC8gMikgJHBhZ2Utd3JhcHBlci1wYWRkaW5nO1xuICBtYXgtd2lkdGg6ICRwYWdlLXdyYXBwZXItbWF4LXdpZHRoO1xuXG4gICYuZnVsbC13aWR0aCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8qIFByZXNlbnRhdGlvbiBNb2RlICovXG4ucGFnZS1jb250ZW50cy5wcmVzZW50YXRpb24tbW9kZSB7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgLmNvbnRhaW5lci1mbHVpZCB7cGFkZGluZzogOHB4ICFpbXBvcnRhbnQ7fVxuICAudGVtcGxhdGUtY29udHJvbC0tbWFuYWdlIHtkaXNwbGF5OiBub25lO31cbn1cblxuLypcbiAgRGFzaGJvYXJkIFBhZ2VcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIFVzaW5nIGEgZmxleCBiYXNlZCBsYXlvdXQgc28gdGhhdCB0aGUgVGVtcGxhdGUgVmFyaWFibGUgQ29udHJvbCBCYXIgY2FuXG4gIGhhdmUgYW55IGhlaWdodCB3aXRob3V0IGRpc3J1cHRpbmcgdGhlIGxheW91dFxuKi9cbi5wYWdlLmRhc2hib2FyZC1wYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIFxuICAucGFnZS1jb250ZW50cyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgZmxleDogMSAwIDA7XG4gICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAwO1xuICB9XG59IiwiLypcbiAgICBQYWdlIEhlYWRlclxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4kcGFnZS1oZWFkZXItc2l6ZTogMTlweDtcbiRwYWdlLWhlYWRlci13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuXG4ucGFnZS1oZWFkZXIge1xuICBoZWlnaHQ6ICRjaHJvbm9ncmFmLXBhZ2UtaGVhZGVyLWhlaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgJHBhZ2Utd3JhcHBlci1wYWRkaW5nO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMC1vYnNpZGlhbjtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG59XG4ucGFnZS1oZWFkZXIuZnVsbC13aWR0aCAucGFnZS1oZWFkZXJfX2NvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi5wYWdlLWhlYWRlcl9fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogKCRwYWdlLXdyYXBwZXItbWF4LXdpZHRoIC0gJHBhZ2Utd3JhcHBlci1wYWRkaW5nIC0gJHBhZ2Utd3JhcHBlci1wYWRkaW5nKTtcbn1cbi5wYWdlLWhlYWRlcl9fY29udGFpbmVyLnBhZ2UtaGVhZGVyX19zb3VyY2UtcGFnZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnBhZ2UtaGVhZGVyX19jb2wtbWQtOCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAvKlxuICAgIE5PVEU6XG4gICAgQnJlYWtwb2ludCBhbmQgJSB3aWR0aCBhcmUgYmFzZWQgb24gdGhlIGJvb3RzdHJhcCBncmlkXG4gICAgSWYgdGhlIHNvdXJjZSBmb3JtIGNvbHVtbiBzaXppbmcgaXMgZXZlciBjaGFuZ2VkLCB0aGlzXG4gICAgd2lsbCBoYXZlIHRvIGJlIG1hbnVhbGx5IHVwZGF0ZWRcbiAgKi9cbiAgLnBhZ2UtaGVhZGVyX19jb2wtbWQtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgfVxufVxuLnBhZ2UtaGVhZGVyX19sZWZ0LFxuLnBhZ2UtaGVhZGVyX19yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ucGFnZS1oZWFkZXJfX2xlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gID4gKiB7XG4gICAgbWFyZ2luOiAwIDRweCAwIDA7XG4gIH1cbn1cbi5wYWdlLWhlYWRlcl9fcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICA+ICoge1xuICAgIG1hcmdpbjogMCAwIDAgNHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAmOm9ubHktY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4ucGFnZS1oZWFkZXJfX3RpdGxlIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXNpemU6ICRwYWdlLWhlYWRlci1zaXplO1xuICBmb250LXdlaWdodDogJHBhZ2UtaGVhZGVyLXdlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5wYWdlLWhlYWRlcl9fZGlzbWlzcyB7XG4gIHdpZHRoOiAoJGNocm9ub2dyYWYtcGFnZS1oZWFkZXItaGVpZ2h0IC0gMjBweCk7XG4gIGhlaWdodDogKCRjaHJvbm9ncmFmLXBhZ2UtaGVhZGVyLWhlaWdodCAtIDIwcHgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLyogVXNlIHBzdWVkbyBlbGVtZW50cyB0byByZW5kZXIgdGhlIFggKi9cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuICAvKiBIb3ZlciBTdGF0ZSAqL1xuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgJjpob3ZlcjpiZWZvcmUsXG4gICY6aG92ZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMTgtY2xvdWQ7XG4gIH1cbn1cbiIsIi8qXG4gICAgUGFnZSBTdWItU2VjdGlvbnNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kc3Vic2VjdGlvbi1mb250OiAxN3B4O1xuXG4uc3Vic2VjdGlvbiB7XG4gICAgLnBhbmVsIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICB9XG4gICAgLnBhbmVsLWhlYWRpbmcge1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtYm9keSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAucGFuZWwtYm9keSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgIH1cbiAgICAucGFuZWwtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6ICRzdWJzZWN0aW9uLWZvbnQ7XG4gICAgfVxufVxuXG4uc3Vic2VjdGlvbi0tdGFicyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4uc3Vic2VjdGlvbi0tdGFiIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzIDAgMCAkcmFkaXVzO1xuICAgIHBhZGRpbmc6IDAgOHB4IDAgMTZweDtcbiAgICBoZWlnaHQ6ICRjaHJvbm9ncmFmLXBhZ2UtaGVhZGVyLWhlaWdodDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGxpbmUtaGVpZ2h0OiAkY2hyb25vZ3JhZi1wYWdlLWhlYWRlci1oZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6ICRzdWJzZWN0aW9uLWZvbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSwgY29sb3IgMC4yNXMgZWFzZTtcblxuICAgICY6aG92ZXIsXG4gICAgJi5hY3RpdmUge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGNvbG9yOiAkZzE4LWNsb3VkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGdyaWQtLWJyZWFrcG9pbnQtbWQpIHtcbiAgICAuc3Vic2VjdGlvbiB7XG4gICAgICAgIC5zdWJzZWN0aW9uLS1uYXYge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICAuc3Vic2VjdGlvbi0tY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLypcbiAgICBTaWRlYmFyIE5hdmlnYXRpb24gU3R5bGVzXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJHNpZGViYXItLXdpZHRoOiA2MHB4O1xuXG4kc2lkZWJhci0tZ3JhZGllbnQtc3RhcnQ6ICRnNy1ncmFwaGl0ZTtcbiRzaWRlYmFyLS1ncmFkaWVudC1lbmQ6ICRnNC1vbnl4O1xuXG4kc2lkZWJhci0tbG9nby1iZzogJGcxOS1naG9zdDtcbiRzaWRlYmFyLS1sb2dvLWNvbG9yOiAkYy1wb29sO1xuJHNpZGViYXItLWxvZ28tYmctaG92ZXI6ICRnMjAtd2hpdGU7XG4kc2lkZWJhci0tbG9nby1jb2xvci1ob3ZlcjogJGMtbGFzZXI7XG5cbiRzaWRlYmFyLS1pdGVtLWJnOiB0cmFuc3BhcmVudDtcbiRzaWRlYmFyLS1pdGVtLWJnLWhvdmVyOiAkYy1wb29sO1xuJHNpZGViYXItLWl0ZW0tYmctYWN0aXZlOiAkZzQtb255eDtcbiRzaWRlYmFyLS1pY29uOiAkZzExLXNpZGV3YWxrO1xuJHNpZGViYXItLWljb24taG92ZXI6ICRnMjAtd2hpdGU7XG4kc2lkZWJhci0taWNvbi1hY3RpdmU6ICRnMjAtd2hpdGU7XG5cbiRzaWRlYmFyLW1lbnUtLWJnOiAkYy1wb29sO1xuJHNpZGViYXItbWVudS0tYmctYWNjZW50OiAkYy1jb21ldDtcbiRzaWRlYmFyLW1lbnUtLWl0ZW0tYmc6ICRjLW9jZWFuO1xuJHNpZGViYXItbWVudS0taXRlbS1iZy1hY2NlbnQ6ICRjLXN0YXI7XG4kc2lkZWJhci1tZW51LS1pdGVtLWJnLWhvdmVyOiAkYy1sYXNlcjtcbiRzaWRlYmFyLW1lbnUtLWl0ZW0tYmctaG92ZXItYWNjZW50OiAkYy1wb3Rhc3NpdW07XG4kc2lkZWJhci1tZW51LS1pdGVtLXRleHQ6ICRjLW5ldXRyaW5vO1xuJHNpZGViYXItbWVudS0taXRlbS10ZXh0LWhvdmVyOiAkZzIwLXdoaXRlO1xuJHNpZGViYXItbWVudS0taXRlbS10ZXh0LWFjdGl2ZTogJGcyMC13aGl0ZTtcbiRzaWRlYmFyLW1lbnUtLWd1dHRlcjogMThweDtcblxuLnNpZGViYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogJHNpZGViYXItLXdpZHRoO1xuICBAaW5jbHVkZSBncmFkaWVudC12KCRzaWRlYmFyLS1ncmFkaWVudC1zdGFydCwkc2lkZWJhci0tZ3JhZGllbnQtZW5kKTtcbn1cbi5zaWRlYmFyLS1ib3R0b20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgd2lkdGg6ICRzaWRlYmFyLS13aWR0aDtcbn1cblxuLypcbiAgICBTaWRlYmFyIEl0ZW1zXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5zaWRlYmFyLS1pdGVtIHtcbiAgd2lkdGg6ICRzaWRlYmFyLS13aWR0aDtcbiAgaGVpZ2h0OiAkc2lkZWJhci0td2lkdGg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zaWRlYmFyLS1zcXVhcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci0taXRlbS1iZztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cbi5zaWRlYmFyLS1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJHNpZGViYXItLWljb247XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gIGZvbnQtc2l6ZTogJHNpZGViYXItLXdpZHRoICogMC40MjIyO1xuICB0cmFuc2l0aW9uOlxuICAgIHRleHQtc2hhZG93IDAuNHMgZWFzZTtcbn1cbi8qXG4gIFNpZGViYXIgSXRlbSBBY3RpdmUgU3RhdGVcbiovXG4uc2lkZWJhci0taXRlbS5hY3RpdmUge1xuICAuc2lkZWJhci0tc3F1YXJlIHtiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci0taXRlbS1iZy1hY3RpdmU7fVxuICAuc2lkZWJhci0taWNvbiB7XG4gICAgY29sb3I6ICRzaWRlYmFyLS1pY29uLWFjdGl2ZTtcbiAgICB0ZXh0LXNoYWRvdzpcbiAgICAgIDAgMCA5cHggJGMtbGFzZXIsXG4gICAgICAwIDAgMTVweCAkYy1vY2VhbixcbiAgICAgIDAgMCAyMHB4ICRjLWFtZXRoeXN0O1xuICB9XG59XG5cbi8qXG4gIFNpZGViYXIgSXRlbSBIb3ZlciBTdGF0ZVxuKi9cbi5zaWRlYmFyLS1pdGVtOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiA1O1xuXG4gIC5zaWRlYmFyLS1zcXVhcmUge2JhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLS1pdGVtLWJnLWhvdmVyO31cbiAgLnNpZGViYXItLWljb24ge2NvbG9yOiAkc2lkZWJhci0taWNvbi1ob3Zlcjt9XG4gIC5zaWRlYmFyLW1lbnUge2Rpc3BsYXk6IGZsZXg7fVxufVxuLnNpZGViYXItLWl0ZW0uYWN0aXZlOmhvdmVyIC5zaWRlYmFyLS1pY29uIHtcbiAgdGV4dC1zaGFkb3c6XG4gICAgMCAwIDlweCAkYy15ZXRpLFxuICAgIDAgMCAxNXB4ICRjLWh5ZHJvZ2VuLFxuICAgIDAgMCAyMHB4ICRjLWxhc2VyO1xufVxuLypcbiAgU2lkZWJhciBMb2dvIFNxdWFyZVxuKi9cbi5zaWRlYmFyLS1zcXVhcmUuc2lkZWJhci0tbG9nbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLS1sb2dvLWJnO1xuICAuc2lkZWJhci0taWNvbiB7Y29sb3I6ICRzaWRlYmFyLS1sb2dvLWNvbG9yO31cbn1cbi5zaWRlYmFyLS1pdGVtOmhvdmVyIC5zaWRlYmFyLS1zcXVhcmUuc2lkZWJhci0tbG9nbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLS1sb2dvLWJnLWhvdmVyO1xuICAuc2lkZWJhci0taWNvbiB7Y29sb3I6ICRzaWRlYmFyLS1sb2dvLWNvbG9yLWhvdmVyO31cbn1cbi5zaWRlYmFyLS1pdGVtLmFjdGl2ZSAuc2lkZWJhci0tc3F1YXJlLnNpZGViYXItLWxvZ28ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci0tbG9nby1iZy1ob3ZlcjtcbiAgLnNpZGViYXItLWljb24ge1xuICAgIGNvbG9yOiAkc2lkZWJhci0tbG9nby1jb2xvci1ob3ZlcjtcbiAgICB0ZXh0LXNoYWRvdzpcbiAgICAgIDAgMCA5cHggJGMtaHlkcm9nZW4sXG4gICAgICAwIDAgMTVweCAkYy1uZXV0cmlubyxcbiAgICAgIDAgMCAyMHB4ICRjLXlldGk7XG4gIH1cbn1cblxuLypcbiAgICBTaWRlYmFyIFN1YiBNZW51c1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4uc2lkZWJhci1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDAgJHJhZGl1cyAkcmFkaXVzIDA7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWgoJHNpZGViYXItbWVudS0tYmcsJHNpZGViYXItbWVudS0tYmctYWNjZW50KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnNpZGViYXItbWVudS0taGVhZGluZyxcbi5zaWRlYmFyLW1lbnUtLWl0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLnNpZGViYXItbWVudS0taGVhZGluZy5zaWRlYmFyLS1uby1ob3Zlcixcbi5zaWRlYmFyLW1lbnUtLWhlYWRpbmcuc2lkZWJhci0tbm8taG92ZXI6aG92ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uc2lkZWJhci1tZW51LS1pdGVtLFxuLnNpZGViYXItbWVudS0taXRlbTpsaW5rLFxuLnNpZGViYXItbWVudS0taXRlbTphY3RpdmUsXG4uc2lkZWJhci1tZW51LS1pdGVtOnZpc2l0ZWQge1xuICBjb2xvcjogJHNpZGViYXItbWVudS0taXRlbS10ZXh0O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDRweCAkc2lkZWJhci1tZW51LS1ndXR0ZXI7XG4gIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgLy8gUm91bmRpbmcgYm90dG9tIG91dHNpZGUgY29ybmVyIG9mIG1hdGNoIGNvbnRhaW5lclxuICAmOm50aC1sYXN0LWNoaWxkKDIpIHtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1czt9XG59XG4uc2lkZWJhci1tZW51LS1pdGVtLmFjdGl2ZSxcbi5zaWRlYmFyLW1lbnUtLWl0ZW0uYWN0aXZlOmxpbmssXG4uc2lkZWJhci1tZW51LS1pdGVtLmFjdGl2ZTphY3RpdmUsXG4uc2lkZWJhci1tZW51LS1pdGVtLmFjdGl2ZTp2aXNpdGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkc2lkZWJhci1tZW51LS1pdGVtLWJnLCRzaWRlYmFyLW1lbnUtLWl0ZW0tYmctYWNjZW50KTtcbiAgY29sb3I6ICRzaWRlYmFyLW1lbnUtLWl0ZW0tdGV4dC1hY3RpdmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4uc2lkZWJhci1tZW51LS1pdGVtOmhvdmVyLFxuLnNpZGViYXItbWVudS0taXRlbS5hY3RpdmU6aG92ZXIge1xuICBAaW5jbHVkZSBncmFkaWVudC1oKCRzaWRlYmFyLW1lbnUtLWl0ZW0tYmctaG92ZXIsJHNpZGViYXItbWVudS0taXRlbS1iZy1ob3Zlci1hY2NlbnQpO1xuICBjb2xvcjogJHNpZGViYXItbWVudS0taXRlbS10ZXh0LWhvdmVyO1xufVxuLnNpZGViYXItbWVudS0taGVhZGluZyxcbi5zaWRlYmFyLW1lbnUtLWhlYWRpbmc6bGluayxcbi5zaWRlYmFyLW1lbnUtLWhlYWRpbmc6dmlzaXRlZCxcbi5zaWRlYmFyLW1lbnUtLWhlYWRpbmc6YWN0aXZlLFxuLnNpZGViYXItbWVudS0taGVhZGluZzpob3Zlciwge1xuICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgaGVpZ2h0OiAkc2lkZWJhci0td2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkc2lkZWJhci0td2lkdGg7XG4gIGZvbnQtc2l6ZTogMTlweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZzogMHB4ICRzaWRlYmFyLW1lbnUtLWd1dHRlcjtcbn1cbi5zaWRlYmFyLW1lbnUtLWl0ZW0gPiBzdHJvbmcge1xuICBvcGFjaXR5OiAwLjY7XG59XG4vLyBJbnZpc2libGUgdHJpYW5nbGUgZm9yIGVhc2llciBtb3VzZSBtb3ZlbWVudCB3aGVuIG5hdmlnYXRpbmcgdG8gc3ViIGl0ZW1zXG4uc2lkZWJhci1tZW51LS10cmlhbmdsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG59XG4uc2lkZWJhci1tZW51IC5zaWRlYmFyLW1lbnUtLXRyaWFuZ2xlIHtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgYm90dG9tOiAxMnB4O1xuICBsZWZ0OiA2cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgcm90YXRlKDMwZGVnKTtcbn1cblxuLnNpZGViYXItbWVudS0tc2VjdGlvbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDRweCAkc2lkZWJhci1tZW51LS1ndXR0ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkYy1oeWRyb2dlbjtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRjLWxhc2VyLCRjLXBvdGFzc2l1bSk7XG4gIH1cbn1cblxuLy8gU3VwZXJBZG1pbkluZGljYXRvclxuc3Bhbi5pY29uLnNpZGViYXItLWljb24uc2lkZWJhci0taWNvbl9fc3VwZXJhZG1pbiB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgdG9wOiAyMyU7XG59XG4uc2lkZWJhci1tZW51LS1zdXBlcmFkbWluIHtcbiAgcGFkZGluZzogNHB4ICRzaWRlYmFyLW1lbnUtLWd1dHRlcjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuXG4gID4gZGl2IHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRjLXBpbmVhcHBsZSwkYy10aWdlcik7XG4gICAgY29sb3I6ICRjLXNhcHBoaXJlO1xuICB9XG4gIHNwYW4uaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycHg7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi5zaWRlYmFyLW1lbnUtLXByb3ZpZGVyIHtcbiAgcGFkZGluZzogNHB4ICRzaWRlYmFyLW1lbnUtLWd1dHRlcjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuXG4gID4gZGl2IHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRjLXJhaW5mb3Jlc3QsJGMtcG9vbCk7XG4gICAgY29sb3I6ICRnMjAtd2hpdGU7XG4gIH1cbiAgc3Bhbi5pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cbi5zaWRlYmFyLW1lbnUtLXN1cGVyYWRtaW4gPiBkaXYsXG4uc2lkZWJhci1tZW51LS1wcm92aWRlciA+IGRpdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZhbmN5LXNjcm9sbC0tY29udGFpbmVyLnNpZGViYXItbWVudS0tc2Nyb2xsYmFyIHtcbiAgLmZhbmN5LXNjcm9sbC0tdGh1bWItaCB7ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O31cbiAgLmZhbmN5LXNjcm9sbC0tdGh1bWItdiB7IEBpbmNsdWRlIGdyYWRpZW50LXYoJGcyMC13aGl0ZSwkYy1uZXV0cmlubyk7IH1cbn1cblxuLnNpZGViYXItbWVudS0tdXNlci1uYXYge1xuICB0b3A6IGluaXRpYWw7XG4gIGJvdHRvbTogMDtcblxuICAuc2lkZWJhci1tZW51LS1zZWN0aW9uX19jdXN0b20tbGlua3MgIHsgb3JkZXI6IDA7IH1cbiAgLnNpZGViYXItbWVudS0taXRlbV9fbGluay1uYW1lICAgICAgICB7IG9yZGVyOiAxOyB9XG4gIC5zaWRlYmFyLW1lbnUtLXNlY3Rpb25fX3N3aXRjaC1vcmdzICAgeyBvcmRlcjogMjsgfVxuICAuc2lkZWJhci1tZW51LS1zY3JvbGxiYXIgICAgICAgICAgICAgIHsgb3JkZXI6IDM7IH1cbiAgLnNpZGViYXItbWVudS0tc2VjdGlvbl9fYWNjb3VudCAgICAgICB7IG9yZGVyOiA0OyB9XG4gIC5zaWRlYmFyLW1lbnUtLXByb3ZpZGVyICAgICAgICAgICAgICAgeyBvcmRlcjogNTsgfVxuICAuc2lkZWJhci1tZW51LS1pdGVtX19sb2dvdXQgICAgICAgICAgIHsgb3JkZXI6IDY7IH1cbiAgLnNpZGViYXItbWVudS0taGVhZGluZyAgICAgICAgICAgICAgICB7IG9yZGVyOiA3OyB9XG4gIC5zaWRlYmFyLW1lbnUtLXRyaWFuZ2xlICAgICAgICAgICAgICAgeyBvcmRlcjogODsgfVxuICBcbiAgLnNpZGViYXItbWVudS0tc2VjdGlvbl9fY3VzdG9tLWxpbmtzOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6IDgwMHB4KSB7XG4gIC5zaWRlYmFyLW1lbnUtLXVzZXItbmF2IHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiBpbml0aWFsO1xuXG4gICAgLnNpZGViYXItbWVudS0taGVhZGluZyAgICAgICAgICAgICAgICB7IG9yZGVyOiAwOyB9XG4gICAgLnNpZGViYXItbWVudS0tc2VjdGlvbl9fYWNjb3VudCAgICAgICB7IG9yZGVyOiAxOyB9XG4gICAgLnNpZGViYXItbWVudS0tcHJvdmlkZXIgICAgICAgICAgICAgICB7IG9yZGVyOiAyOyB9XG4gICAgLnNpZGViYXItbWVudS0taXRlbV9fbG9nb3V0ICAgICAgICAgICB7IG9yZGVyOiAzOyB9XG4gICAgLnNpZGViYXItbWVudS0tc2VjdGlvbl9fc3dpdGNoLW9yZ3MgICB7IG9yZGVyOiA0OyB9XG4gICAgLnNpZGViYXItbWVudS0tc2Nyb2xsYmFyICAgICAgICAgICAgICB7IG9yZGVyOiA1OyB9XG4gICAgLnNpZGViYXItbWVudS0tc2VjdGlvbl9fY3VzdG9tLWxpbmtzICB7IG9yZGVyOiA2OyB9XG4gICAgLnNpZGViYXItbWVudS0taXRlbV9fbGluay1uYW1lICAgICAgICB7IG9yZGVyOiA3OyB9XG4gICAgLnNpZGViYXItbWVudS0tdHJpYW5nbGUgICAgICAgICAgICAgICB7IG9yZGVyOiA4OyB9XG4gIFxuICAgIC5zaWRlYmFyLW1lbnUtLXNlY3Rpb25fX2N1c3RvbS1saW5rczphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbml0aWFsO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgfVxuICBcbiAgICAuc2lkZWJhci1tZW51LS10cmlhbmdsZSB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIHRvcDogJHNpZGViYXItLXdpZHRoO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gRW5zdXJlcyB0aGF0IHNpZGViYXIgbWVudXMgYXBwZWFyIGFib3ZlIHRoZSByZXN0IG9mIHRoZSBhcHAgb24gaG92ZXJcbi5wYWdlLCAuc2lkZWJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5wYWdlIHtcbiAgei1pbmRleDogMjtcbn1cbi5zaWRlYmFyIHtcbiAgei1pbmRleDogMTtcblxuICAmOmhvdmVyIHt6LWluZGV4OiAyO31cbiAgJjpob3ZlciArIC5wYWdlIHt6LWluZGV4OiAxO31cbn0iLCIvKlxuICAgIE92ZXJsYXkgVGVjaG5vbG9neSBTdHlsZXNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4lb3ZlcmxheS1zdHlsZXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLm92ZXJsYXktLW1hc2sge1xuICBAZXh0ZW5kICVvdmVybGF5LXN0eWxlcztcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICBAaW5jbHVkZSBncmFkaWVudC1kaWFnLWRvd24oJGMtcG9vbCwkYy1jb21ldCk7XG59XG5cbi5vdmVybGF5LS1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MnB4KTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KSwgb3BhY2l0eSAwLjI1cyBlYXNlO1xufVxuXG4ub3ZlcmxheS10ZWNoIHtcbiAgQGV4dGVuZCAlb3ZlcmxheS1zdHlsZXM7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gIHotaW5kZXg6IDk5OTk7O1xuXG4gICYuc2hvdyB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG4vLyBPcGVuIFN0YXRlXG4ub3ZlcmxheS10ZWNoLnNob3cge1xuICAub3ZlcmxheS0tbWFzayB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG4gIC5vdmVybGF5LS1kaWFsb2cge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59IiwiJGFubm90YXRpb24tY29sb3I6ICRnMjAtd2hpdGU7XG4kYW5ub3RhdGlvbi1jb2xvcl9fZHJhZzogJGMtaHlkcm9nZW47XG5cbiR3aW5kb3cwOiByZ2JhKCRhbm5vdGF0aW9uLWNvbG9yLDApO1xuJHdpbmRvdzE1OiByZ2JhKCRhbm5vdGF0aW9uLWNvbG9yLDAuMTUpO1xuJHdpbmRvdzM1OiByZ2JhKCRhbm5vdGF0aW9uLWNvbG9yLDAuMzUpO1xuXG4kYWN0aXZlLXdpbmRvdzA6IHJnYmEoJGFubm90YXRpb24tY29sb3JfX2RyYWcsMCk7XG4kYWN0aXZlLXdpbmRvdzE1OiByZ2JhKCRhbm5vdGF0aW9uLWNvbG9yX19kcmFnLDAuMTUpO1xuJGFjdGl2ZS13aW5kb3czNTogcmdiYSgkYW5ub3RhdGlvbi1jb2xvcl9fZHJhZywwLjM1KTtcblxuJHRpbWVzdGFtcC1mb250LXNpemU6IDE0cHg7XG4kdGltZXN0YW1wLWZvbnQtd2VpZ2h0OiA2MDA7XG5cbi5hbm5vdGF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDhweDtcbiAgei1pbmRleDogMztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFubm90YXRpb24tY29sb3I7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMzZweCk7XG4gIHdpZHRoOiAycHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KTsgLy8gdHJhbnNsYXRlIHNob3VsZCBhbHdheXMgYmUgaGFsZiB3aXRoIHdpZHRoIHRvIGhvcml6b250YWxseSBjZW50ZXIgdGhlIGFubm90YXRpb24gcG9zXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAmLmRyYWdnaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW5ub3RhdGlvbi1jb2xvcl9fZHJhZztcbiAgICB6LWluZGV4OiA0O1xuICB9XG59XG5cbi5hbm5vdGF0aW9uLXBvaW50LS1mbGFnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB0b3A6IC0zcHg7XG4gIGxlZnQ6IC0ycHg7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYW5ub3RhdGlvbi1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2l0aW9uOlxuICAgIHRyYW5zZm9ybSAwLjI1cyBlYXNlLFxuICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbn1cblxuLmFubm90YXRpb24tcG9pbnQtLWZsYWdfX2RyYWdnaW5nIHtcbiAgQGV4dGVuZCAuYW5ub3RhdGlvbi1wb2ludC0tZmxhZztcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUsMS41KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFubm90YXRpb24tY29sb3JfX2RyYWc7XG59XG5cbi5hbm5vdGF0aW9uLXNwYW4tLWZsYWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogLTZweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBlYXNlO1xuXG4gICYubW91c2VvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSwxLjUpO1xuICB9XG59XG5cbi5hbm5vdGF0aW9uLXNwYW4tLWxlZnQtZmxhZyB7XG4gIEBleHRlbmQgLmFubm90YXRpb24tc3Bhbi0tZmxhZztcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlO1xuICBsZWZ0OiAwO1xuICBib3JkZXItbGVmdC1jb2xvcjogJGFubm90YXRpb24tY29sb3I7XG5cbiAgJi5kcmFnZ2luZyB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRhbm5vdGF0aW9uLWNvbG9yX19kcmFnO1xuICB9XG59XG5cbi5hbm5vdGF0aW9uLXNwYW4tLXJpZ2h0LWZsYWcge1xuICBAZXh0ZW5kIC5hbm5vdGF0aW9uLXNwYW4tLWZsYWc7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlO1xuICByaWdodDogMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYW5ub3RhdGlvbi1jb2xvcjtcblxuICAmLmRyYWdnaW5nIHtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRhbm5vdGF0aW9uLWNvbG9yX19kcmFnO1xuICB9XG59XG5cblxuLmFubm90YXRpb24tdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiBjYWxjKDEwMCUgKyA2cHgpO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcwLW9ic2lkaWFuO1xuICB6LWluZGV4OiAzO1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggMnB4ICRnMi1rZXZsYXI7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMTZweCk7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAyOHB4KTtcbiAgICB0b3A6IC0xNHB4O1xuICAgIGxlZnQ6IC04cHg7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAmLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYW5ub3RhdGlvbi10b29sdGlwLS1kZWxldGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyMnB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgY29sb3I6ICRjLWN1cmFjYW87XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2U7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiAxM3B4O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYy10dW5nc3RlbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLmFubm90YXRpb24tdG9vbHRpcC0taW5wdXQtY29udGFpbmVyIHtcbiAgZmxleDogMSAwIDA7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLmFubm90YXRpb24tdG9vbHRpcC0taW5wdXQsXG4uYW5ub3RhdGlvbi10b29sdGlwLS1pbnB1dC1jb250YWluZXIgLmlucHV0LWN0ZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYW5ub3RhdGlvbi10b29sdGlwLS1pbnB1dC1jb250YWluZXIgLmlucHV0LWN0ZSB7XG4gIGhlaWdodDogMjJweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgcGFkZGluZzogMCA3cHg7XG5cbiAgPiBzcGFuLmljb24ge1xuICAgIHJpZ2h0OiA5cHg7XG4gIH1cbn1cblxuLmFubm90YXRpb24tdG9vbHRpcC0tdGltZXN0YW1wIHtcbiAgY29sb3I6ICRnMjAtd2hpdGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6ICR0aW1lc3RhbXAtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJHRpbWVzdGFtcC1mb250LXdlaWdodDtcbn1cbi5hbm5vdGF0aW9uLXRvb2x0aXAtLWl0ZW1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgPiBkaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbi5hbm5vdGF0aW9uLXRvb2x0aXAtLWZvcm0ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFubm90YXRpb24tdG9vbHRpcC0taW5wdXQtYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbn1cblxuLmFubm90YXRpb24tLWNsaWNrLWFyZWEge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLThweDtcbiAgbGVmdDogLTdweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgei1pbmRleDogNDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICYuZWRpdGluZyB7XG4gICAgbGVmdDogLTVweDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDhweCk7XG4gICAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICB9XG59XG5cbi5hbm5vdGF0aW9uLXdpbmRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA4cHg7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICR3aW5kb3cxNSAwJSwgJHdpbmRvdzAgMTAwJSk7XG4gIGJvcmRlci10b3A6IDJweCBkb3R0ZWQgJHdpbmRvdzM1O1xuICB6LWluZGV4OiAxO1xuXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkYWN0aXZlLXdpbmRvdzE1IDAlLCAkYWN0aXZlLXdpbmRvdzAgMTAwJSk7XG4gICAgYm9yZGVyLXRvcDogMnB4IGRvdHRlZCAkYWN0aXZlLXdpbmRvdzM1O1xuICB9XG59XG5cblxuLypcbiAgTmV3IEFubm90YXRpb25zXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5uZXctYW5ub3RhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiA4cHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMnB4KTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5cbi5uZXctYW5ub3RhdGlvbi5ob3ZlciAubmV3LWFubm90YXRpb24tLWNyb3NzaGFpciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5uZXctYW5ub3RhdGlvbi0tY3Jvc3NoYWlyIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMjBweCk7XG4gIHdpZHRoOiAycHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJGMtaHlkcm9nZW4gMCUsICRjLXBvb2wgMTAwJSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlO1xuICB6LWluZGV4OiA1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5uZXctYW5ub3RhdGlvbi10b29sdGlwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJGMtcG9vbCAwJSwkYy1vY2VhbiAxMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IGNhbGMoMTAwJSArIDhweCk7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLm5ldy1hbm5vdGF0aW9uLWhlbHBlciB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAkYy1uZXV0cmlubztcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xufVxuXG4ubmV3LWFubm90YXRpb24tdGltZXN0YW1wIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZm9udC1zaXplOiAkdGltZXN0YW1wLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICR0aW1lc3RhbXAtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJHRpbWVzdGFtcC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRnMjAtd2hpdGU7XG59XG4iLCIvKlxuICBDcm9zc2hhaXJzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJWNyb3NzaGFpci1zdHlsZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNyb3NzaGFpciB7XG4gIEBleHRlbmQgJWNyb3NzaGFpci1zdHlsZXM7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgd2lkdGg6IDAuNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzE0LWNocm9taXVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMztcbn1cbiIsIi8qXG4gIENlbGwgRWRpdG9yIE92ZXJsYXkgLSBEaXNwbGF5IE9wdGlvbnNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kZ3JhcGgtdHlwZS0tZ3V0dGVyOiA0cHg7XG5cbi5kaXNwbGF5LW9wdGlvbnMge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gIHBhZGRpbmc6IDAgMThweCA4cHggMThweDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuLmRpc3BsYXktb3B0aW9ucy0tY2VsbCB7XG4gIGZsZXg6IDEgMCAwO1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuXG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5kaXNwbGF5LW9wdGlvbnMtLWNlbGx4MiB7XG4gIGZsZXg6IDIgMCAwO1xufVxuLmRpc3BsYXktb3B0aW9ucy0tY2VsbC13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAzMHB4O1xufVxuXG4uZGlzcGxheS1vcHRpb25zLS1oZWFkZXIge1xuICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xufVxuLnZpei10eXBlLXNlbGVjdG9yIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwICgtJGdyYXBoLXR5cGUtLWd1dHRlciAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAtJGdyYXBoLXR5cGUtLWd1dHRlcjtcbn1cbi52aXotdHlwZS1zZWxlY3Rvci0tb3B0aW9uIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMy4zMzMzJTtcbiAgcGFkZGluZy1ib3R0b206IDMzLjMzMzMlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiBkaXYgPiBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMThweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC8vIEFjdHVhbCBcImNhcmRcIlxuICA+IGRpdiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JGdyYXBoLXR5cGUtLWd1dHRlcn0pO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gI3skZ3JhcGgtdHlwZS0tZ3V0dGVyfSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJGdyYXBoLXR5cGUtLWd1dHRlciAvIDI7XG4gICAgbGVmdDogJGdyYXBoLXR5cGUtLWd1dHRlciAvIDI7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xuICAgICAgY29sb3I6ICRnMTUtcGxhdGludW07XG4gICAgfVxuICB9XG59XG4vLyBJbmNyZWFzZSBvcHRpb25zIHBlciByb3cgYXMgc2NyZWVuIGVubGFyZ2VzXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAudml6LXR5cGUtc2VsZWN0b3ItLW9wdGlvbiB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjUlO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNzBweCkge1xuICAudml6LXR5cGUtc2VsZWN0b3ItLW9wdGlvbiB7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjAlO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAudml6LXR5cGUtc2VsZWN0b3ItLW9wdGlvbiB7XG4gICAgd2lkdGg6IDE2LjY2NjclO1xuICAgIHBhZGRpbmctYm90dG9tOiAxNi42NjY3JTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyMDAwcHgpIHtcbiAgLnZpei10eXBlLXNlbGVjdG9yLS1vcHRpb24ge1xuICAgIHdpZHRoOiAxMi41JTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIuNSU7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHN0YXRlIFwiY2FyZFwiXG4udml6LXR5cGUtc2VsZWN0b3ItLW9wdGlvbi5hY3RpdmUgPiBkaXYsXG4udml6LXR5cGUtc2VsZWN0b3ItLW9wdGlvbi5hY3RpdmUgPiBkaXY6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICBjb2xvcjogJGcxOC1jbG91ZDtcbn1cblxuLnZpei10eXBlLXNlbGVjdG9yLS1ncmFwaGljIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDU0cHgpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDU0cHgpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG4gID4gc3ZnLFxuICA+IHN2ZyAqIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG4gID4gc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi52aXotdHlwZS1zZWxlY3Rvci0tZ3JhcGhpYy1saW5lIHtcbiAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xuICAvLyB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuXG4gICYuZ3JhcGhpYy1saW5lLWEge1xuICAgIHN0cm9rZTogJGcxMS1zaWRld2FsaztcbiAgfVxuICAmLmdyYXBoaWMtbGluZS1iIHtcbiAgICBzdHJva2U6ICRnOS1tb3VudGFpbjtcbiAgfVxuICAmLmdyYXBoaWMtbGluZS1jIHtcbiAgICBzdHJva2U6ICRnNy1ncmFwaGl0ZTtcbiAgfVxuICAmLmdyYXBoaWMtbGluZS1kIHtcbiAgICBzdHJva2U6ICRnMTMtbWlzdDtcbiAgfVxufVxuLnZpei10eXBlLXNlbGVjdG9yLS1ncmFwaGljLWZpbGwge1xuICBvcGFjaXR5OiAwLjA0NTtcbiAgLy8gdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG5cbiAgJi5ncmFwaGljLWZpbGwtYSB7XG4gICAgZmlsbDogJGcxMS1zaWRld2FsaztcbiAgfVxuICAmLmdyYXBoaWMtZmlsbC1iIHtcbiAgICBmaWxsOiAkZzktbW91bnRhaW47XG4gIH1cbiAgJi5ncmFwaGljLWZpbGwtYyB7XG4gICAgZmlsbDogJGc3LWdyYXBoaXRlO1xuICB9XG4gICYuZ3JhcGhpYy1maWxsLWQge1xuICAgIGZpbGw6ICRnMTMtbWlzdDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4udml6LXR5cGUtc2VsZWN0b3ItLW9wdGlvbi5hY3RpdmUgLnZpei10eXBlLXNlbGVjdG9yLS1ncmFwaGljIHtcbiAgLnZpei10eXBlLXNlbGVjdG9yLS1ncmFwaGljLWxpbmUuZ3JhcGhpYy1saW5lLWEge1xuICAgIHN0cm9rZTogJGMtcG9vbDtcbiAgfVxuICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtbGluZS5ncmFwaGljLWxpbmUtYiB7XG4gICAgc3Ryb2tlOiAkYy1kcmVhbXNpY2xlO1xuICB9XG4gIC52aXotdHlwZS1zZWxlY3Rvci0tZ3JhcGhpYy1saW5lLmdyYXBoaWMtbGluZS1jIHtcbiAgICBzdHJva2U6ICRjLXJhaW5mb3Jlc3Q7XG4gIH1cbiAgLnZpei10eXBlLXNlbGVjdG9yLS1ncmFwaGljLWxpbmUuZ3JhcGhpYy1saW5lLWQge1xuICAgIHN0cm9rZTogJGcxNy13aGlzcGVyO1xuICB9XG4gIC52aXotdHlwZS1zZWxlY3Rvci0tZ3JhcGhpYy1maWxsLmdyYXBoaWMtZmlsbC1hIHtcbiAgICBmaWxsOiAkYy1wb29sO1xuICB9XG4gIC52aXotdHlwZS1zZWxlY3Rvci0tZ3JhcGhpYy1maWxsLmdyYXBoaWMtZmlsbC1iIHtcbiAgICBmaWxsOiAkYy1kcmVhbXNpY2xlO1xuICB9XG4gIC52aXotdHlwZS1zZWxlY3Rvci0tZ3JhcGhpYy1maWxsLmdyYXBoaWMtZmlsbC1jIHtcbiAgICBmaWxsOiAkYy1yYWluZm9yZXN0O1xuICB9XG4gIC52aXotdHlwZS1zZWxlY3Rvci0tZ3JhcGhpYy1maWxsLmdyYXBoaWMtZmlsbC1hLFxuICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtZmlsbC5ncmFwaGljLWZpbGwtYixcbiAgLnZpei10eXBlLXNlbGVjdG9yLS1ncmFwaGljLWZpbGwuZ3JhcGhpYy1maWxsLWMge1xuICAgIG9wYWNpdHk6IDAuMjI7XG4gIH1cbiAgLnZpei10eXBlLXNlbGVjdG9yLS1ncmFwaGljLWZpbGwuZ3JhcGhpYy1maWxsLWQge1xuICAgIGZpbGw6ICRnMTctd2hpc3BlcjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5kaXNwbGF5LW9wdGlvbnMtLWNlbGwgLmZvcm0tZ3JvdXAgLm5hdi5uYXYtdGFibGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGkge1xuICAgIGZsZXg6IDEgMCAwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5kaXNwbGF5LW9wdGlvbnMtLWZvb3Rub3RlIHtcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogNnB4O1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xufVxuXG4vKlxuICBDZWxsIEVkaXRvciBPdmVybGF5IC0gR2F1Z2UgQ29udHJvbHNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmdhdWdlLWNvbnRyb2xzIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5nYXVnZS1jb250cm9scy0tc2VjdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG5cbiAgPiAqIHtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbmJ1dHRvbi5idG4uYnRuLXByaW1hcnkuYnRuLXNtLmdhdWdlLWNvbnRyb2xzLS1hZGQtdGhyZXNob2xkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiVnYXVnZS1jb250cm9scy1sYWJlbC1zdHlsZXMge1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIHBhZGRpbmc6IDAgMTFweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xufVxuLmdhdWdlLWNvbnRyb2xzLS1sYWJlbCB7XG4gIEBleHRlbmQgJWdhdWdlLWNvbnRyb2xzLWxhYmVsLXN0eWxlcztcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xuICB3aWR0aDogMTIwcHg7XG59XG4uZ2F1Z2UtY29udHJvbHMtLWxhYmVsLWVkaXRhYmxlIHtcbiAgQGV4dGVuZCAlZ2F1Z2UtY29udHJvbHMtbGFiZWwtc3R5bGVzO1xuICBjb2xvcjogJGcxNi1wZWFybDtcbiAgd2lkdGg6IDkwcHg7XG59XG5cbi5nYXVnZS1jb250cm9scy0taW5wdXQge1xuICBmbGV4OiAxIDAgMDtcbn1cbi5nYXVnZS1jb250cm9scy0tc2VjdGlvbiAuY29sb3ItZHJvcGRvd24uY29sb3ItZHJvcGRvd24tLXN0cmV0Y2gge1xuICB3aWR0aDogYXV0bztcbiAgZmxleDogMSAwIDA7XG59XG5cbi8qXG4gIENlbGwgRWRpdG9yIE92ZXJsYXkgLSBTaW5nbGUtU3RhdCBDb250cm9sc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4uZ3JhcGgtb3B0aW9ucy1ncm91cCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG4uZm9ybS1ncm91cC13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygxMDAlICsgMTJweCk7XG4gIG1hcmdpbi1sZWZ0OiAtNnB4O1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG5cbiAgLmZvcm0tZ3JvdXA6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIvKlxuICAgIENvbmZpcm0gQnV0dG9uXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFRoaXMgYnV0dG9uIHJlcXVpcmVzIGEgc2Vjb25kIGNsaWNrIHRvIGNvbmZpcm0gdGhlIGFjdGlvblxuKi9cblxuLmNvbmZpcm0tYnV0dG9uIHtcbiAgLmNvbmZpcm0tYnV0dG9uLS10b29sdGlwIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogYWxsO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuXG5cbiAgICAmLmJvdHRvbSB7XG4gICAgICB0b3A6IGNhbGMoMTAwJSArIDRweCk7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuXG4gICAgJi5sZWZ0IHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDRweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG59XG4uY29uZmlybS1idXR0b24tLWNvbmZpcm1hdGlvbiB7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIG1heC13aWR0aDogMjEwcHg7ICBcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1jdXJhY2FvO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwIDdweDtcbiAgY29sb3I6ICRnMjAtd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOlxuICAgIG9wYWNpdHkgMC4yNXMgZWFzZSxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyOiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGMtY3VyYWNhbztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gICAgei1pbmRleDogMTAwO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZHJlYW1zaWNsZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgJjpob3ZlcjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGMtZHJlYW1zaWNsZTtcbiAgfVxufVxuXG4uY29uZmlybS1idXR0b24tLXRvb2x0aXAuYm90dG9tIC5jb25maXJtLWJ1dHRvbi0tY29uZmlybWF0aW9uOmFmdGVyIHtcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjLWN1cmFjYW87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi5jb25maXJtLWJ1dHRvbi0tdG9vbHRpcC5ib3R0b20gLmNvbmZpcm0tYnV0dG9uLS1jb25maXJtYXRpb246aG92ZXI6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkYy1kcmVhbXNpY2xlO1xufVxuLmNvbmZpcm0tYnV0dG9uLS10b29sdGlwLmxlZnQgLmNvbmZpcm0tYnV0dG9uLS1jb25maXJtYXRpb246YWZ0ZXIge1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDUwJTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICRjLWN1cmFjYW87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbi5jb25maXJtLWJ1dHRvbi0tdG9vbHRpcC5sZWZ0IC5jb25maXJtLWJ1dHRvbi0tY29uZmlybWF0aW9uOmhvdmVyOmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICRjLWRyZWFtc2ljbGU7XG59XG5cbi5jb25maXJtLWJ1dHRvbi5hY3RpdmUge1xuICB6LWluZGV4OiA5OTk7XG5cbiAgLmNvbmZpcm0tYnV0dG9uLS10b29sdGlwIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5jb25maXJtLWJ1dHRvbi0tY29uZmlybWF0aW9uIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4uY29uZmlybS1idXR0b24uYnRuLmJ0bi1kZWZhdWx0LmJ0bi14cy5idG4teHhzIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgbWFyZ2luLXRvcDogLTFweDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRnNS1wZXBwZXI7XG4gICAgY29sb3I6ICRnMTQtY2hyb21pdW07XG4gIH1cblxuICBzcGFuLmljb24ucmVtb3ZlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbiIsIi8qXG4gICAgXCJDb25maXJtIG9yIENhbmNlbFwiIEJ1dHRvbnNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4uY29uZmlybS1vci1jYW5jZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAuY29uZmlybS1vci1jYW5jZWwtLWNvbmZpcm0ge1xuICAgIG9yZGVyOiAyO1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIH1cbiAgLmNvbmZpcm0tb3ItY2FuY2VsLS1jYW5jZWwge1xuICAgIG9yZGVyOiAxO1xuICB9XG5cbiAgJi5yZXZlcnNlZCB7XG4gICAgLmNvbmZpcm0tb3ItY2FuY2VsLS1jb25maXJtIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5jb25maXJtLW9yLWNhbmNlbC0tY2FuY2VsIHtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG5cbiAgICBOYW1lOiAgICAgICBDSFJPTk9HUkFGIFlPXG4gICAgQXV0aG9yOiAgICAgTWljaGFlbCBLYW1pbnNreSAoaHR0cDovL2dpdGh1Yi5jb20vbWthbWluc2t5MTEpXG5cbiAgICBPcmlnaW5hbCBtYXRlcmlhbCBjb2xvciBzY2hlbWUgYnkgTWF0dGlhIEFzdG9yaW5vIChodHRwczovL2dpdGh1Yi5jb20vZXF1aW51c29jaW8vbWF0ZXJpYWwtdGhlbWUpXG5cbiovXG5cbi5yZWFjdC1jb2RlbWlycm9yMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5jbS1zLW1hdGVyaWFsLkNvZGVNaXJyb3Ige1xuICBib3JkZXItcmFkaXVzOiAwIDAgJHJhZGl1cyAkcmFkaXVzO1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkZzEzLW1pc3Q7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLkNvZGVNaXJyb3ItdnNjcm9sbGJhciB7XG4gIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXItcm91bmQoJGcyLWtldmxhciwgJGc2LXNtb2tlKTtcbn1cblxuLkNvZGVNaXJyb3ItaHNjcm9sbGJhciB7XG4gIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXItcm91bmQoJGcwLW9ic2lkaWFuLCAkZzYtc21va2UpO1xufVxuXG4uY20tcy1tYXRlcmlhbCAuQ29kZU1pcnJvci1ndXR0ZXJzIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtdigkZzIta2V2bGFyLCAkZzAtb2JzaWRpYW4pIGJvcmRlcjogbm9uZTtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLkNvZGVNaXJyb3ItZ3V0dGVycyAuQ29kZU1pcnJvci1ndXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBmYWRlLW91dCgkZzQtb255eCwgMC43NSk7XG4gIGhlaWdodDogY2FsYygxMDAlICsgMzBweCk7XG59XG5cbi5Db2RlTWlycm9yLWd1dHRlci5Db2RlTWlycm9yLWxpbmVudW1iZXJzIHtcbiAgd2lkdGg6IDYwcHg7XG59XG5cbi5jbS1zLW1hdGVyaWFsLkNvZGVNaXJyb3IgLkNvZGVNaXJyb3Itc2l6ZXIge1xuICBtYXJnaW4tbGVmdDogNjBweDtcbn1cblxuLmNtLXMtbWF0ZXJpYWwuQ29kZU1pcnJvciAuQ29kZU1pcnJvci1saW5lbnVtYmVyLkNvZGVNaXJyb3ItZ3V0dGVyLWVsdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDlweDtcbiAgd2lkdGg6IDQ2cHg7XG4gIGNvbG9yOiAkZzgtc3Rvcm07XG59XG5cbi5jbS1zLW1hdGVyaWFsIC5Db2RlTWlycm9yLWd1dHRlcm1hcmtlcixcbi5jbS1zLW1hdGVyaWFsIC5Db2RlTWlycm9yLWd1dHRlcm1hcmtlci1zdWJ0bGUsXG4uY20tcy1tYXRlcmlhbCAuQ29kZU1pcnJvci1saW5lbnVtYmVyIHtcbiAgY29sb3I6IHJnYig4MywgMTI3LCAxMjYpO1xufVxuXG4uY20tcy1tYXRlcmlhbCAuQ29kZU1pcnJvci1jdXJzb3Ige1xuICB3aWR0aDogMnB4O1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMjAtd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggJGMtbGFzZXIsIDAgMCA2cHggJGMtb2NlYW4sIDAgMCAxMXB4ICRjLWFtZXRoeXN0O1xufVxuXG4uY20tcy1tYXRlcmlhbCBkaXYuQ29kZU1pcnJvci1zZWxlY3RlZCxcbi5jbS1zLW1hdGVyaWFsLkNvZGVNaXJyb3ItZm9jdXNlZCBkaXYuQ29kZU1pcnJvci1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGZhZGUtb3V0KCRnOC1zdG9ybSwgMC43KTtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLkNvZGVNaXJyb3ItbGluZTo6c2VsZWN0aW9uLFxuLmNtLXMtbWF0ZXJpYWwgLkNvZGVNaXJyb3ItbGluZT5zcGFuOjpzZWxlY3Rpb24sXG4uY20tcy1tYXRlcmlhbCAuQ29kZU1pcnJvci1saW5lPnNwYW4+c3Bhbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEwKTtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLkNvZGVNaXJyb3ItbGluZTo6LW1vei1zZWxlY3Rpb24sXG4uY20tcy1tYXRlcmlhbCAuQ29kZU1pcnJvci1saW5lPnNwYW46Oi1tb3otc2VsZWN0aW9uLFxuLmNtLXMtbWF0ZXJpYWwgLkNvZGVNaXJyb3ItbGluZT5zcGFuPnNwYW46Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEwKTtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLkNvZGVNaXJyb3ItYWN0aXZlbGluZS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLmNtLWtleXdvcmQge1xuICBjb2xvcjogJGMtY29tZXQ7XG59XG5cbi5jbS1zLW1hdGVyaWFsIC5jbS1vcGVyYXRvciB7XG4gIGNvbG9yOiAkYy1kcmVhbXNpY2xlO1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tdmFyaWFibGUtMiB7XG4gIGNvbG9yOiAjODBDQkM0O1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tdmFyaWFibGUtMyxcbi5jbS1zLW1hdGVyaWFsIC5jbS10eXBlIHtcbiAgY29sb3I6ICRjLWxhc2VyO1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tYnVpbHRpbiB7XG4gIGNvbG9yOiAjREVDQjZCO1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tYXRvbSB7XG4gIGNvbG9yOiAkYy12aXJpZGlhbjtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLmNtLW51bWJlciB7XG4gIGNvbG9yOiAkYy1kYWlzeTtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLmNtLWRlZiB7XG4gIGNvbG9yOiByZ2JhKDIzMywgMjM3LCAyMzcsIDEpO1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tc3RyaW5nIHtcbiAgY29sb3I6ICRjLWtyeXB0b247XG59XG5cbi5jbS1zLW1hdGVyaWFsIC5jbS1zdHJpbmctMiB7XG4gIGNvbG9yOiAjODBDQkM0O1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tY29tbWVudCB7XG4gIGNvbG9yOiAkZzEwLXdvbGY7XG59XG5cbi5jbS1zLW1hdGVyaWFsIC5jbS12YXJpYWJsZSB7XG4gIGNvbG9yOiAkYy1sYXNlcjtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLmNtLXRhZyB7XG4gIGNvbG9yOiAjODBDQkM0O1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tbWV0YSB7XG4gIGNvbG9yOiAjODBDQkM0O1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tYXR0cmlidXRlIHtcbiAgY29sb3I6ICNGRkNCNkI7XG59XG5cbi5jbS1zLW1hdGVyaWFsIC5jbS1wcm9wZXJ0eSB7XG4gIGNvbG9yOiAjODBDQkFFO1xufVxuXG4uY20tcy1tYXRlcmlhbCAuY20tcXVhbGlmaWVyIHtcbiAgY29sb3I6ICNERUNCNkI7XG59XG5cbi5jbS1zLW1hdGVyaWFsIC5jbS12YXJpYWJsZS0zLFxuLmNtLXMtbWF0ZXJpYWwgLmNtLXR5cGUge1xuICBjb2xvcjogI0RFQ0I2Qjtcbn1cblxuLmNtLXMtbWF0ZXJpYWwgLmNtLXRhZyB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgODMsIDExMiwgMSk7XG59XG5cbi5jbS1zLW1hdGVyaWFsIC5jbS1lcnJvciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQzVGNjc7XG59XG5cbi5jbS1zLW1hdGVyaWFsIC5Db2RlTWlycm9yLW1hdGNoaW5nYnJhY2tldCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy8gQ29kZU1pcnJvciBoaW50c1xuLkNvZGVNaXJyb3ItaGludHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDJweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAycHggM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4yKTtcbiAgLW1vei1ib3gtc2hhZG93OiAycHggM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4yKTtcbiAgYm94LXNoYWRvdzogMnB4IDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyOiAxcHggc29saWQgc2lsdmVyO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG4gIG1heC1oZWlnaHQ6IDIwZW07XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5Db2RlTWlycm9yLWhpbnQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgNHB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIGNvbG9yOiBibGFjaztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5saS5Db2RlTWlycm9yLWhpbnQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzA4ZjtcbiAgY29sb3I6IHdoaXRlO1xufSIsIi8qXG4gIENvbG9yIERyb3Bkb3duXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJGNvbG9yLWRyb3Bkb3duLS1jaXJjbGU6IDE0cHg7XG4kY29sb3ItZHJvcGRvd24tLWJhcjogMTA0cHg7XG4kY29sb3ItZHJvcGRvd24tLWJhci1oZWlnaHQ6IDEwcHg7XG4kY29sb3ItZHJvcGRvd24tLWxlZnQtcGFkZGluZzogMTFweDtcbiRjb2xvci1kcm9wZG93bi0tbmFtZS1wYWRkaW5nOiAyMHB4O1xuXG4uY29sb3ItZHJvcGRvd24ge1xuICB3aWR0aDogMTQwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY29sb3ItZHJvcGRvd24uY29sb3ItZHJvcGRvd24tLXN0cmV0Y2gge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNvbG9yLWRyb3Bkb3duLS10b2dnbGUge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbG9yLWRyb3Bkb3duLS10b2dnbGUgc3Bhbi5jYXJldCB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMTFweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uY29sb3ItZHJvcGRvd24tLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMzBweDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IDAuNnB4IGZhZGUtb3V0KCRnMC1vYnNpZGlhbiwgMC43KTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkZzAtb2JzaWRpYW4sICRnMi1rZXZsYXIpO1xufVxuLmNvbG9yLWRyb3Bkb3duLS1pdGVtIHtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xuICAgIGNvbG9yOiAkZzE4LWNsb3VkO1xuICB9XG4gICY6aG92ZXIsXG4gICY6aG92ZXIgPiAqIHtcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGczLWNhc3RsZTtcbiAgICBjb2xvcjogJGcxNS1wbGF0aW51bTtcbiAgfVxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICB9XG59XG4uY29sb3ItZHJvcGRvd24tLXN3YXRjaCxcbi5jb2xvci1kcm9wZG93bi0tc3dhdGNoZXMsXG4uY29sb3ItZHJvcGRvd24tLW5hbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4uY29sb3ItZHJvcGRvd24tLXN3YXRjaCB7XG4gIHdpZHRoOiAkY29sb3ItZHJvcGRvd24tLWNpcmNsZTtcbiAgaGVpZ2h0OiAkY29sb3ItZHJvcGRvd24tLWNpcmNsZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBsZWZ0OiAkY29sb3ItZHJvcGRvd24tLWxlZnQtcGFkZGluZztcbn1cbi5jb2xvci1kcm9wZG93bi0tc3dhdGNoZXMge1xuICB3aWR0aDogJGNvbG9yLWRyb3Bkb3duLS1iYXI7XG4gIGhlaWdodDogJGNvbG9yLWRyb3Bkb3duLS1iYXItaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAkY29sb3ItZHJvcGRvd24tLWJhci1oZWlnaHQgLyAyO1xuICBsZWZ0OiAkY29sb3ItZHJvcGRvd24tLWxlZnQtcGFkZGluZztcbn1cbi5jb2xvci1kcm9wZG93bi0tbmFtZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHJpZ2h0OiAkY29sb3ItZHJvcGRvd24tLW5hbWUtcGFkZGluZztcbiAgbGVmdDogJGNvbG9yLWRyb3Bkb3duLS1jaXJjbGUgKyAkY29sb3ItZHJvcGRvd24tLW5hbWUtcGFkZGluZztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgLmNvbG9yLWRyb3Bkb3duLS1zd2F0Y2hlcyArICYge1xuICAgIGxlZnQ6ICRjb2xvci1kcm9wZG93bi0tYmFyICsgJGNvbG9yLWRyb3Bkb3duLS1uYW1lLXBhZGRpbmc7XG4gIH1cbn1cbi5jb2xvci1kcm9wZG93blxuICAuY29sb3ItZHJvcGRvd24tLW1lbnVcbiAgLmZhbmN5LXNjcm9sbC0tY29udGFpbmVyXG4gIC5mYW5jeS1zY3JvbGwtLXRyYWNrLXZcbiAgLmZhbmN5LXNjcm9sbC0tdGh1bWItdiB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXYoJGc5LW1vdW50YWluLCAkZzctZ3JhcGhpdGUpO1xufVxuLmNvbG9yLWRyb3Bkb3duLS10b2dnbGUuY29sb3ItZHJvcGRvd25fX2Rpc2FibGVkIHtcbiAgY29sb3I6ICRnNy1ncmFwaGl0ZTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmNvbG9yLWRyb3Bkb3duLS10b2dnbGUuY29sb3ItZHJvcGRvd25fX2Rpc2FibGVkID4gLmNvbG9yLWRyb3Bkb3duLS1zd2F0Y2gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzctZ3JhcGhpdGUgIWltcG9ydGFudDtcbn1cbiIsIi8qXG4gIEN1c3RvbSBUaW1lIFJhbmdlIERyb3Bkb3duXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLmN1c3RvbS10aW1lLXJhbmdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmN1c3RvbS10aW1lLS1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB0b3A6IDM1cHg7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICB6LWluZGV4OiAxMDAwO1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggMC42cHggcmdiYSgxNSwgMTQsIDIxLCAwLjIpO1xufVxuLmN1c3RvbS10aW1lLS13cmFwLFxuLmN1c3RvbS10aW1lLS1tb3ZpbmctZGF0ZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLmN1c3RvbS10aW1lLS13cmFwIHtcbiAgcGFkZGluZzogOHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwICRyYWRpdXMgJHJhZGl1cyAwO1xuICBiYWNrZ3JvdW5kOiAkZzUtcGVwcGVyO1xufVxuLmN1c3RvbS10aW1lLS1kYXRlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4uY3VzdG9tLXRpbWUtLXVwcGVyLWNvbnRhaW5lcixcbi5jdXN0b20tdGltZS0tbG93ZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmN1c3RvbS10aW1lLS1sb3dlciB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY3VzdG9tLXRpbWUtLXVwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmN1c3RvbS10aW1lLS1tYXNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgdG9wOiAzMHB4O1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwLjU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gIHotaW5kZXg6IDI7XG59XG4uY3VzdG9tLXRpbWUtLW5vdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICByaWdodDogMDtcbiAgdG9wOiA0cHg7XG59XG4uY3VzdG9tLXRpbWUtLXNob3J0Y3V0cyB7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2U7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXMgMCAwICRyYWRpdXM7XG59XG4uY3VzdG9tLXRpbWUtLXNob3J0Y3V0cy1oZWFkZXIge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwYWRkaW5nOiAxNnB4O1xuICBjb2xvcjogJGcxNS1wbGF0aW51bTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5jdXN0b20tdGltZS0tc2hvcnRjdXQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwYWRkaW5nOiA2cHggMTZweDtcbiAgdHJhbnNpdGlvbjpcbiAgICBjb2xvciAwLjI1cyBlYXNlLFxuICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNy1ncmFwaGl0ZTtcbiAgICBjb2xvcjogJGcxNy13aGlzcGVyO1xuICB9XG59XG5cbiRjdXN0b20tdGltZS1hcnJvdzogMjhweDtcbiRyZC1jZWxsLXNpemU6IDMwcHg7XG5cbi5yZC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ucmQtZGF0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5yZC1iYWNrLFxuLnJkLW5leHQsXG4ucmQtbW9udGgtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAkY3VzdG9tLXRpbWUtYXJyb3c7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXRpbWUtYXJyb3c7XG59XG4ucmQtYmFjayxcbi5yZC1uZXh0IHtcbiAgb3V0bGluZTogbm9uZTtcbiAgd2lkdGg6ICRjdXN0b20tdGltZS1hcnJvdztcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogJGcxNS1wbGF0aW51bTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLCBjb2xvciAwLjI1cyBlYXNlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNi1zbW9rZTtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgfVxufVxuLnJkLWJhY2sge1xuICBsZWZ0OiAwO1xuICAmOmFmdGVyIHtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDFweCk7XG4gICAgY29udGVudDogXCJcXGU5MGNcIjtcbiAgfVxufVxuLnJkLW5leHQge1xuICBsZWZ0OiBjYWxjKDEwMCUgLSAjeyRjdXN0b20tdGltZS1hcnJvd30pO1xuICAmOmFmdGVyIHtcbiAgICBsZWZ0OiBjYWxjKDUwJSArIDFweCk7XG4gICAgY29udGVudDogXCJcXGU5MTFcIjtcbiAgfVxufVxuLnJkLW1vbnRoLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICRnMTUtcGxhdGludW07XG4gIGxlZnQ6ICRjdXN0b20tdGltZS1hcnJvdztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gI3soJGN1c3RvbS10aW1lLWFycm93ICogMil9KTtcbn1cbi5yZC1kYXlzIHtcbiAgbWFyZ2luLXRvcDogKCRjdXN0b20tdGltZS1hcnJvdyArIDhweCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzLXNtYWxsO1xuXG4gIC8qIENhbmNlbCBvdXQgZGVmYXVsdCB0YWJsZSBzdHlsZXMgKi9cbiAgdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRoZWFkLnJkLWRheXMtaGVhZCB0aC5yZC1kYXktaGVhZCxcbiAgdGJvZHkucmQtZGF5cy1ib2R5IHRkLnJkLWRheS1ib2R5IHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogJHJkLWNlbGwtc2l6ZSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogJHJkLWNlbGwtc2l6ZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6ICRyZC1jZWxsLXNpemUgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6ICRyZC1jZWxsLXNpemUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogJHJkLWNlbGwtc2l6ZSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogJHJkLWNlbGwtc2l6ZSAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRnNS1wZXBwZXIgIWltcG9ydGFudDtcbiAgfVxuICB0aGVhZC5yZC1kYXlzLWhlYWQgdGgucmQtZGF5LWhlYWQge1xuICAgIGNvbG9yOiAkZzE1LXBsYXRpbnVtICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlciAhaW1wb3J0YW50O1xuICB9XG4gIHRib2R5LnJkLWRheXMtYm9keSB0ZC5yZC1kYXktYm9keSB7XG4gICAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UsIGNvbG9yIDAuMjVzIGVhc2U7XG4gICAgY29sb3I6ICRnMTMtbWlzdCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogJGcyMC13aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc2LXNtb2tlO1xuICAgIH1cbiAgICAmLnJkLWRheS1uZXh0LW1vbnRoLFxuICAgICYucmQtZGF5LXByZXYtbW9udGgge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgICAmLnJkLWRheS1zZWxlY3RlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1wb29sICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGcyMC13aGl0ZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAmLnJkLWRheS1kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGc4LXN0b3JtICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyICFpbXBvcnRhbnQ7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICB9XG59XG5cbi5yZC10aW1lIHtcbiAgbWFyZ2luOiAwIDJweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRweCk7XG4gIGhlaWdodDogMzBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5yZC10aW1lLXNlbGVjdGVkIHtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgaGVpZ2h0OiAyOHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGczLWNhc3RsZTtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cy1zbWFsbDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgY29sb3I6ICRnMTMtbWlzdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2U7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4ucmQtdGltZS1saXN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogMjAwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBvdmVyZmxvdzogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXItcm91bmQoJGMtcG9vbCwgJGMtbGFzZXIpO1xuICBAaW5jbHVkZSBncmFkaWVudC1oKCRjLW9jZWFuLCAkYy1wb29sKTtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IDAuNnB4IHJnYmEoMTUsIDE0LCAyMSwgMC4yKTtcbn1cblxuLnJkLXRpbWUtb3B0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmctbGVmdDogJHNjcm9sbGJhci13aWR0aDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgY29sb3I6ICRjLXlldGk7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRjLWxhc2VyLCAkYy1wb29sKTtcbiAgfVxufVxuXG4uY3VzdG9tLXRpbWUtLWNvbnRhaW5lciAuYnRuLmN1c3RvbS10aW1lLS1hcHBseSB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgd2lkdGg6IDIxMHB4O1xufVxuXG4vKiBPcGVuIFN0YXRlICovXG4uY3VzdG9tLXRpbWUtcmFuZ2Uub3BlbiB7XG4gIC5jdXN0b20tdGltZS0tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5jdXN0b20tdGltZS1yYW5nZS0tYnRuIHtcbiAgICBjb2xvcjogJGcyMC13aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNi1zbW9rZTtcbiAgfVxufVxuLyogQ3VzdG9tIHBvc2l0aW9uaW5nIGZvciBkYXNoYm9hcmQgdXNlICovXG4udGltZS1yYW5nZS1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jdXN0b20tdGltZS0tb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogY2FsYygxMDAlICsgNHB4KTtcbiAgei1pbmRleDogNDtcblxuICAuY3VzdG9tLXRpbWUtLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuIiwiLypcbiAgICBDdXN0b21pemUgRmllbGRzXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFByaW1hcmlseSB1c2VkIHdpdGhpbiBUYWJsZSBPcHRpb25zIGluc2lkZSBDZWxsIEVkaXRvciBPdmVybGF5XG4qL1xuXG4uY3VzdG9taXphYmxlLWZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbi10b3A6IDhweDtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAmLmRyYWdnaW5nIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRjLXBvb2wsICRjLXN0YXIpO1xuXG4gICAgPiAqIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b21pemFibGUtZmllbGQtLWxhYmVsLFxuLmN1c3RvbWl6YWJsZS1maWVsZC0tbGFiZWxfX2hpZGRlbiB7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIGhlaWdodDogMzBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMTFweCAwIDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgd2lkdGg6IDYwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLCBjb2xvciAwLjI1cyBlYXNlO1xuXG4gID4gc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuLmN1c3RvbWl6YWJsZS1maWVsZC0tbGFiZWwge1xuICBjb2xvcjogJGcxNC1jaHJvbWl1bTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbn1cblxuLmN1c3RvbWl6YWJsZS1maWVsZC0tbGFiZWxfX2hpZGRlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xuICBjb2xvcjogJGc3LWdyYXBoaXRlO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5jdXN0b21pemFibGUtZmllbGQtLWlucHV0IHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgd2lkdGg6IGNhbGMoNDAlIC0gNHB4KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmN1c3RvbWl6YWJsZS1maWVsZCAuaW5wdXQtY3RlX19lbXB0eSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLmN1c3RvbWl6YWJsZS1maWVsZC0tbmFtZSB7XG4gIGZsZXg6IDEgMCAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBtYXJnaW4tbGVmdDogNnB4O1xufVxuLmN1c3RvbWl6YWJsZS1maWVsZC0tZHJhZyxcbi5jdXN0b21pemFibGUtZmllbGQtLXZpc2liaWxpdHkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbi5jdXN0b21pemFibGUtZmllbGQtLXZpc2liaWxpdHkge1xuICB3aWR0aDogMThweDtcbn1cbi5jdXN0b21pemFibGUtZmllbGQtLWRyYWcgLmhhbWJ1cmdlcixcbi5jdXN0b21pemFibGUtZmllbGQtLXZpc2liaWxpdHkgLmljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuLmN1c3RvbWl6YWJsZS1maWVsZC0tZHJhZyAuaGFtYnVyZ2VyIHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgbGVmdDogMDtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgdG9wOiAtNHB4O1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHRvcDogNHB4O1xuICB9XG59XG5cbi5jdXN0b21pemFibGUtZmllbGQtLWxhYmVsX19oaWRkZW4gLmN1c3RvbWl6YWJsZS1maWVsZC0tZHJhZyAuaGFtYnVyZ2VyIHtcbiAgJixcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNy1ncmFwaGl0ZTtcbiAgfVxufVxuIiwiLy8gT3ZlcnJpZGVzIGRlZmF1bHQgRHlncmFwaHMgc3R5bGVzXG5cbi5keWdyYXBoIHtcbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi5ncmFwaC12ZXJ0aWNhbC1tYXJrZXIge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDJweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE2cHggLSAxcHgpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiBmYWRlLW91dCgkZzIwLXdoaXRlLCAxKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoXG4gICAgdG9wLFxuICAgIGZhZGUtb3V0KCRnMjAtd2hpdGUsIDEpIDAlLFxuICAgIGZhZGUtb3V0KCRnMjAtd2hpdGUsIDAuNzEpIDYlLFxuICAgIGZhZGUtb3V0KCRnMjAtd2hpdGUsIDAuNzEpIDgwJSxcbiAgICBmYWRlLW91dCgkZzIwLXdoaXRlLCAxKSAxMDAlXG4gICk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KFxuICAgIHRvcCxcbiAgICBmYWRlLW91dCgkZzIwLXdoaXRlLCAxKSAwJSxcbiAgICBmYWRlLW91dCgkZzIwLXdoaXRlLCAwLjcxKSA2JSxcbiAgICBmYWRlLW91dCgkZzIwLXdoaXRlLCAwLjcxKSA4MCUsXG4gICAgZmFkZS1vdXQoJGcyMC13aGl0ZSwgMSkgMTAwJVxuICApO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgdG8gYm90dG9tLFxuICAgIGZhZGUtb3V0KCRnMjAtd2hpdGUsIDEpIDAlLFxuICAgIGZhZGUtb3V0KCRnMjAtd2hpdGUsIDAuNzEpIDYlLFxuICAgIGZhZGUtb3V0KCRnMjAtd2hpdGUsIDAuNzEpIDgwJSxcbiAgICBmYWRlLW91dCgkZzIwLXdoaXRlLCAxKSAxMDAlXG4gICk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPSdmYWRlLW91dCgkZzIwLXdoaXRlLCAwLjcxKScsIGVuZENvbG9yc3RyPSdmYWRlLW91dCgkZzIwLXdoaXRlLCAwLjcxKScsR3JhZGllbnRUeXBlPTAgKTtcbn1cblxuLyogQXhpcyBMYWJlbHMgKi9cbi5keWdyYXBoLWF4aXMtbGFiZWwge1xuICBjb2xvcjogJGcxMS1zaWRld2FsayAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBmb250LXNpemU6IDExcHg7XG59XG4uZHlncmFwaC1heGlzLWxhYmVsLXkge1xuICBwYWRkaW5nOiAwIDlweCAwIDAgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLmR5Z3JhcGgtYXhpcy1sYWJlbC15MiB7XG4gIHBhZGRpbmc6IDAgMCAwIDlweCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5ncmFwaC1jb250YWluZXIgPiBkaXYgPiBkaXYgPiBkaXYgPiBkaXYge1xufVxuXG4vKiBWZXJ0aWNhbCBBeGlzIExhYmVscyAqL1xuLmR5Z3JhcGgteWxhYmVsLFxuLmR5Z3JhcGgteTJsYWJlbCB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgdG9wOiAtMTJweCAhaW1wb3J0YW50O1xuICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogMCAwIDJweCAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZzQtb255eCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cbi5keWdyYXBoLXlsYWJlbCB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG4uZHlncmFwaC15MmxhYmVsIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4uZ3JhcGgtLWhhc1lMYWJlbCB7XG4gIC5keWdyYXBoLWF4aXMtbGFiZWwteSB7XG4gICAgcGFkZGluZzogMCAxcHggMCAxNnB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmR5Z3JhcGgtYXhpcy1sYWJlbC15MiB7XG4gICAgcGFkZGluZzogMCAxNnB4IDAgMXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogU2luZ2xlIFN0YXQgQ2VsbHMgKi9cbi5zaW5nbGUtc3RhdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMnB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHB4KTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycHgpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UsIGNvbG9yIDAuMjVzIGVhc2U7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIGNvbG9yOiAkYy1sYXNlcjtcblxuICAmLmdyYXBoLXNpbmdsZS1zdGF0IHtcbiAgICB0b3A6IDA7XG4gIH1cblxuICA+IGNhbnZhcy5nYXVnZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuLmR5Z3JhcGgtY2hpbGQgPiAuc2luZ2xlLXN0YXQge1xuICB6LWluZGV4OiAzO1xufVxuLnNpbmdsZS1zdGF0LS12YWx1ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMycHgpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogNTRweDtcbiAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB6LWluZGV4OiAxO1xuXG4gICYuc2luZ2xlLXN0YXQtLXNtYWxsIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgfVxufVxuLnNpbmdsZS1zdGF0LS1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbi5zaW5nbGUtc3RhdC0tc2hhZG93OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDkwJTtcbiAgaGVpZ2h0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgYm94LXNoYWRvdzogZmFkZS1vdXQoJGcyLWtldmxhciwgMC4zKSAwIDAgNTBweCAzMHB4O1xuICB6LWluZGV4OiAtMTtcbn1cbi5zaW5nbGUtc3RhdC0tc21hbGwgLnNpbmdsZS1zdGF0LS1zaGFkb3c6YWZ0ZXIge1xuICBib3gtc2hhZG93OiBmYWRlLW91dCgkZzIta2V2bGFyLCAwLjMpIDAgMCAzMHB4IDEwcHg7XG59XG5cbi8qXG4gIExlZ2VuZCBTdHlsZXNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmR5Z3JhcGgtY2hpbGQtY29udGFpbmVyIC5keWdyYXBoLWxlZ2VuZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgLy8gaGlkZSBkZWZhdWx0IGxlZ2VuZFxufVxuLmR5Z3JhcGgtbGVnZW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcwLW9ic2lkaWFuO1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IDExcHg7XG4gIHotaW5kZXg6IDUwMDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBtaW4td2lkdGg6IDM1MHB4O1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAycHggJGcyLWtldmxhcjtcblxuICAmLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQXJyb3cgKGRlZmF1bHQgaXMgb24gdG9wIG9mIGxlZ2VuZCBha2EgYmVsb3cgZ3JhcGgpXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItd2lkdGg6IDhweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJi5keWdyYXBoLWxlZ2VuZC0tdG9wOmFmdGVyIHtcbiAgICB0b3A6IC0xNnB4O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRnMC1vYnNpZGlhbjtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG4gICYuZHlncmFwaC1sZWdlbmQtLWJvdHRvbTphZnRlciB7XG4gICAgYm90dG9tOiAtMTZweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkZzAtb2JzaWRpYW47XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuICAmLmR5Z3JhcGgtbGVnZW5kLS1sZWZ0OmFmdGVyIHtcbiAgICBsZWZ0OiAtMTZweDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRnMC1vYnNpZGlhbjtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbiAgJi5keWdyYXBoLWxlZ2VuZC0tcmlnaHQ6YWZ0ZXIge1xuICAgIHJpZ2h0OiAtMTZweDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGcwLW9ic2lkaWFuO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuLmR5Z3JhcGgtbGVnZW5kLS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICA+IC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIH1cbn1cbi5keWdyYXBoLWxlZ2VuZC0tdGltZXN0YW1wIHtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIGhlaWdodDogMzBweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICRnMTMtbWlzdDtcbiAgZmxleDogMSAwIDAlO1xufVxuLmR5Z3JhcGgtbGVnZW5kLS1maWx0ZXIge1xuICBmbGV4OiAxIDAgMCU7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cbi5keWdyYXBoLWxlZ2VuZC0tZGl2aWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDhweCAwO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbn1cbi5keWdyYXBoLWxlZ2VuZC0tY29udGVudHMge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiAkZzE1LXBsYXRpbnVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTNweDtcbiAgbWF4LWhlaWdodDogMTIzcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXItcm91bmQoJGcwLW9ic2lkaWFuLCAkZzMtY2FzdGxlKTtcbn1cbi5keWdyYXBoLWxlZ2VuZC0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIG9wYWNpdHk6IDAuNTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBsaW5lLWhlaWdodDogMTFweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogM3B4IDA7XG5cbiAgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgZmlndXJlIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgfVxuXG4gICYuaGlnaGxpZ2h0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gICAgZmlndXJlIHtcbiAgICAgIGNvbG9yOiAkZzIwLXdoaXRlO1xuICAgIH1cbiAgfVxuICAmLmhpZ2hsaWdodDpvbmx5LWNoaWxkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vKiBTb3J0aW5nIEJ1dHRvbnMgKi9cbi5zb3J0LWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zb3J0LWJ0bi0tYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOHB4O1xuICByaWdodDogOHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICB3aWR0aDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIwLXdoaXRlO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2U7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLThweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlWCgwLjcpO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZzIwLXdoaXRlO1xuICB9XG59XG4uc29ydC1idG4tLWFzYyAuc29ydC1idG4tLWFycm93IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5zb3J0LWJ0bi0tdG9wLFxuLnNvcnQtYnRuLS1ib3R0b20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgY29sb3I6ICRnMjAtd2hpdGU7XG4gIGxlZnQ6IDZweDtcbn1cbi5zb3J0LWJ0bi0tdG9wIHtcbiAgdG9wOiAtNXB4O1xufVxuLnNvcnQtYnRuLS1ib3R0b20ge1xuICBib3R0b206IC02cHg7XG59XG4iLCIvKlxuICBGYW5jeSBTY3JvbGxiYXJzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJHNjcm9sbGJhci10cmFjay1zaXplOiAxMnB4O1xuJHNjcm9sbGJhci10aHVtYi1zaXplOiA2cHg7XG5cbiRzY3JvbGxiYXItY29sb3ItYTogJGMtcG9vbDtcbiRzY3JvbGxiYXItY29sb3ItYjogJGMtY29tZXQ7XG5cbi5mYW5jeS1zY3JvbGwtLXRyYWNrLWgsXG4uZmFuY3ktc2Nyb2xsLS10cmFjay12IHtcbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4vKiBIb3Jpem9udGFsIFNjcm9sbGJhciBTdHlsZXMgKi9cbi5mYW5jeS1zY3JvbGwtLXRyYWNrLWgge1xuICBwYWRkaW5nOiAoJHNjcm9sbGJhci10cmFjay1zaXplIC0gJHNjcm9sbGJhci10aHVtYi1zaXplKSAvIDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRzY3JvbGxiYXItdHJhY2stc2l6ZSAhaW1wb3J0YW50O1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG4uZmFuY3ktc2Nyb2xsLS10aHVtYi1oIHtcbiAgaGVpZ2h0OiAkc2Nyb2xsYmFyLXRodW1iLXNpemUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogKCRzY3JvbGxiYXItdGh1bWItc2l6ZSAvIDIpO1xuICBAaW5jbHVkZSBncmFkaWVudC1oKCRzY3JvbGxiYXItY29sb3ItYSwgJHNjcm9sbGJhci1jb2xvci1iKTtcbn1cbi8qIFZlcnRpY2FsIFNjcm9sbGJhciBTdHlsZXMgKi9cbi5mYW5jeS1zY3JvbGwtLXRyYWNrLXYge1xuICBwYWRkaW5nOiAoJHNjcm9sbGJhci10cmFjay1zaXplIC0gJHNjcm9sbGJhci10aHVtYi1zaXplKSAvIDI7XG4gIHdpZHRoOiAkc2Nyb2xsYmFyLXRyYWNrLXNpemUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xufVxuLmZhbmN5LXNjcm9sbC0tdGh1bWItdiB7XG4gIHdpZHRoOiAkc2Nyb2xsYmFyLXRodW1iLXNpemUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogKCRzY3JvbGxiYXItdGh1bWItc2l6ZSAvIDIpO1xuICBAaW5jbHVkZSBncmFkaWVudC12KCRzY3JvbGxiYXItY29sb3ItYSwgJHNjcm9sbGJhci1jb2xvci1iKTtcbn1cblxuLyogS2FwYWNpdG9yIFRoZW1lIFNjcm9sbGJhcnMgKi9cbiRzY3JvbGxiYXItY29sb3Ita2FwLWE6ICRjLXJhaW5mb3Jlc3Q7XG4kc2Nyb2xsYmFyLWNvbG9yLWthcC1iOiAkYy1wb29sO1xuXG4uZmFuY3ktc2Nyb2xsLS1rYXBhY2l0b3Ige1xuICAuZmFuY3ktc2Nyb2xsLS10aHVtYi1oIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRzY3JvbGxiYXItY29sb3Ita2FwLWEsICRzY3JvbGxiYXItY29sb3Ita2FwLWIpO1xuICB9XG4gIC5mYW5jeS1zY3JvbGwtLXRodW1iLXYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXYoJHNjcm9sbGJhci1jb2xvci1rYXAtYSwgJHNjcm9sbGJhci1jb2xvci1rYXAtYik7XG4gIH1cbn1cblxuLyogS2FwYWNpdG9yIFRoZW1lIFNjcm9sbGJhcnMgKi9cbiRzY3JvbGxiYXItY29sb3Ita2FwLWE6ICRjLXJhaW5mb3Jlc3Q7XG4kc2Nyb2xsYmFyLWNvbG9yLWthcC1iOiAkYy1wb29sO1xuXG4uZmFuY3ktc2Nyb2xsLS1mdW5jLXNlbGVjdG9yIHtcbiAgLmZhbmN5LXNjcm9sbC0tdGh1bWItaCB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkYy1uZXV0cmlubywgJGMtaHlkcm9nZW4pO1xuICB9XG4gIC5mYW5jeS1zY3JvbGwtLXRodW1iLXYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXYoJGMtbmV1dHJpbm8sICRjLWh5ZHJvZ2VuKTtcbiAgfVxufVxuXG4vKiBEcm9wZG93biBUaGVtZSBTY3JvbGxiYXJzICovXG51bC5kcm9wZG93bi1tZW51IHtcbiAgLmZhbmN5LXNjcm9sbC0tdGh1bWItaCB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkYy1uZXV0cmlubywgJGMtbGFzZXIpO1xuICB9XG4gIC5mYW5jeS1zY3JvbGwtLXRodW1iLXYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXYoJGMtbmV1dHJpbm8sICRjLWxhc2VyKTtcbiAgfVxufVxuLyogSGFja3kgRml4IHRvIG1ha2UgZmFuY3kgc2Nyb2xsYmFycyB3b3JrIGluIFNhZmFyaSAqL1xuLnF1ZXJ5LWJ1aWxkZXItLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmZhbmN5LXNjcm9sbC0tY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLypcbiAgU3R5bGVzIGZvciBGYW5jeSBUYWJsZXNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kZmFuY3l0YWJsZS0tdGFibGUtLW1hcmdpbjogNHB4O1xuXG4uZmFuY3l0YWJsZS0tcm93LFxuLmZhbmN5dGFibGUtLWxhYmVscyB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICA+IGRpdjpub3QoLmNvbmZpcm0tb3ItY2FuY2VsKSxcbiAgPiBkaXY6bm90KC5jb25maXJtLWJ1dHRvbikge1xuICAgIG1hcmdpbi1yaWdodDogJGZhbmN5dGFibGUtLXRhYmxlLS1tYXJnaW47XG4gIH1cbn1cbi5mYW5jeXRhYmxlLS1yb3cge1xuICBtYXJnaW4tYm90dG9tOiAkZmFuY3l0YWJsZS0tdGFibGUtLW1hcmdpbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uZmFuY3l0YWJsZS0tbGFiZWxzIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRnNS1wZXBwZXI7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG59XG4uZmFuY3l0YWJsZS0tdGgsXG4uZmFuY3l0YWJsZS0tdGQge1xuICBmb250LXdlaWdodDogNTAwO1xuICBoZWlnaHQ6IDM0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICBmb250LXNpemU6IDEzcHg7XG59XG4uZmFuY3l0YWJsZS0tdGgge1xuICBjb2xvcjogJGcxNy13aGlzcGVyO1xuICBwYWRkaW5nOiAwIDExcHg7XG5cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuLmZhbmN5dGFibGUtLXRkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICRnMTMtbWlzdDtcbn1cbiIsIi8qXG4gIEZpbGwgUXVlcnlcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIFNtYWxsIHdpZGdldCBmb3Igc3VwcGx5aW5nIGEgZmlsbCgpIHZhbHVlIGluIGEgcXVlcnlcbiovXG5cbi5maWxsLXF1ZXJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7IC8vIEFzc3VtZXMgaXQgaXMgdG8gdGhlIHJpZ2h0IG9mIEdST1VQIEJZIFRJTUVcbn1cbi5maWxsLXF1ZXJ5LS1sYWJlbCB7XG4gIG9yZGVyOiAxO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAkZzEyLWZvcmdlO1xuICBwYWRkaW5nOiAwIDZweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbn1cbi5maWxsLXF1ZXJ5LS1kcm9wZG93biB7XG4gIG9yZGVyOiAyO1xufVxuLmZpbGwtcXVlcnktLWRyb3Bkb3duIC5kcm9wZG93bi1zZWxlY3RlZCB7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xufVxuLmZpbGwtcXVlcnktLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtIGEge1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbn1cbmlucHV0LmZvcm0tY29udHJvbC5maWxsLXF1ZXJ5LS1pbnB1dCB7XG4gIHdpZHRoOiA3MHB4O1xuICBvcmRlcjogMztcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItY29sb3I6ICRnNy1ncmFwaGl0ZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcblxuICAmOmhvdmVyIHtib3JkZXItY29sb3I6ICRnOC1zdG9ybTt9XG4gICY6Zm9jdXMge2JvcmRlci1jb2xvcjogJGMtcG9vbDt9XG5cbiAgJiArIC5maWxsLXF1ZXJ5LS1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxufVxuIiwiLypcbiAgRmxpcCBUb2dnbGVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIFRvZ2dsZXMgYmV0d2VlbiAyIG9wdGlvbnMgdXNpbmcgYSAzRCB0cmFuc2l0aW9uXG4gIEFlc3RoZXRpYyBhbmQgc3BhY2UgY29uc2VydmF0aXZlXG4qL1xuXG4kZmxpcC10b2dnbGUtdGV4dDogJGcxMS1zaWRld2FsaztcbiRmbGlwLXRvZ2dsZS10ZXh0LWhvdmVyOiAkZzE4LWNsb3VkO1xuJGZsaXAtdG9nZ2xlLWJnOiAkZzIta2V2bGFyO1xuJGZsaXAtdG9nZ2xlLWJvcmRlcjogJGc2LXNtb2tlO1xuJGZsaXAtdG9nZ2xlLWJvcmRlci1ob3ZlcjogJGc3LWdyYXBoaXRlO1xuJGZsaXAtdG9nZ2xlLXNpemU6IDI4cHg7XG5cbi5mbGlwLXRvZ2dsZSB7XG4gIHdpZHRoOiAkZmxpcC10b2dnbGUtc2l6ZTtcbiAgaGVpZ2h0OiAkZmxpcC10b2dnbGUtc2l6ZTtcbiAgcGVyc3BlY3RpdmU6IDEwMDBweDtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAuZmxpcC10b2dnbGUtLWZyb250LFxuICAgIC5mbGlwLXRvZ2dsZS0tYmFjayB7XG4gICAgICBib3JkZXItY29sb3I6ICRmbGlwLXRvZ2dsZS1ib3JkZXItaG92ZXI7XG4gICAgICBjb2xvcjogJGZsaXAtdG9nZ2xlLXRleHQtaG92ZXI7XG4gICAgfVxuICB9XG59XG4uZmxpcC10b2dnbGUtLWNvbnRhaW5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2U7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5mbGlwLXRvZ2dsZS0tZnJvbnQsXG4uZmxpcC10b2dnbGUtLWJhY2sge1xuICBib3JkZXI6IDJweCBzb2xpZCAkZmxpcC10b2dnbGUtYm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmxpcC10b2dnbGUtYmc7XG4gIHRyYW5zaXRpb246XG4gICAgY29sb3IgMC4yNXMgZWFzZSxcbiAgICBib3JkZXItY29sb3IgMC4yNXMgZWFzZTtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cy1zbWFsbDtcbiAgd2lkdGg6ICRmbGlwLXRvZ2dsZS1zaXplO1xuICBoZWlnaHQ6ICRmbGlwLXRvZ2dsZS1zaXplO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAoJGZsaXAtdG9nZ2xlLXNpemUgLSA0cHgpOyAvKiBTdWJ0cmFjdCBmb3IgYm9yZGVyIHdpZHRoICovXG4gIGNvbG9yOiAkZmxpcC10b2dnbGUtdGV4dDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5mbGlwLXRvZ2dsZS0tZnJvbnQge1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoMGRlZyk7XG59XG4uZmxpcC10b2dnbGUtLWJhY2sge1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcbn1cblxuLyogRmxpcCBBbmltYXRpb24gaGFwcGVucyBvbiBjbGFzcyB0b2dnbGUgKi9cbi5mbGlwLXRvZ2dsZS5mbGlwcGVkIC5mbGlwLXRvZ2dsZS0tY29udGFpbmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XG59XG5cbi8qXG4gIERpc2FibGVkIFN0YXRlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLmZsaXAtdG9nZ2xlLmRpc2FibGVkLFxuLmZsaXAtdG9nZ2xlLmRpc2FibGVkOmhvdmVyIHtcbiAgLmZsaXAtdG9nZ2xlLS1mcm9udCxcbiAgLmZsaXAtdG9nZ2xlLS1iYWNrIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gICAgY29sb3I6ICRnOS1tb3VudGFpbjtcbiAgICBib3JkZXItY29sb3I6ICRnNS1wZXBwZXI7XG4gIH1cbn0iLCIvKlxuICBGdW5jdGlvbiBTZWxlY3RvclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVXNlZCB3aXRoaW4gdGhlIEZpZWxkTGlzdEl0ZW0gY29tcG9uZW50XG4qL1xuJGZ1bmN0aW9uLXNlbGVjdG9yLS1iZzogJGcyLWtldmxhcjtcbiRmdW5jdGlvbi1zZWxlY3Rvci0tZ3V0dGVyOiA2cHg7XG4kZnVuY3Rpb24tc2VsZWN0b3ItLXNpemU6IDI2cHg7XG4kZnVuY3Rpb24tc2VsZWN0b3ItLWl0ZW06ICRnMy1jYXN0bGU7XG4kZnVuY3Rpb24tc2VsZWN0b3ItLXRleHQ6ICRnMTEtc2lkZXdhbGs7XG4kZnVuY3Rpb24tc2VsZWN0b3ItLWl0ZW0taG92ZXI6ICRnNC1vbnl4O1xuJGZ1bmN0aW9uLXNlbGVjdG9yLS10ZXh0LWhvdmVyOiAkZzE1LXBsYXRpbnVtO1xuJGZ1bmN0aW9uLXNlbGVjdG9yLS1pdGVtLWFjdGl2ZTogJGMtcG9vbDtcbiRmdW5jdGlvbi1zZWxlY3Rvci0tdGV4dC1hY3RpdmU6ICRnMjAtd2hpdGU7XG5cbi5mdW5jdGlvbi1zZWxlY3RvciB7XG4gIHBhZGRpbmc6IDRweCAxMXB4IDhweCAzMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbn1cbi5mdW5jdGlvbi1zZWxlY3Rvci0taGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZ1bmN0aW9uLXNlbGVjdG9yLS1iZztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAkZnVuY3Rpb24tc2VsZWN0b3ItLWd1dHRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cyAkcmFkaXVzIDAgMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbn1cbi5mdW5jdGlvbi1zZWxlY3Rvci0tZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGZ1bmN0aW9uLXNlbGVjdG9yLS1ndXR0ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkcmFkaXVzICRyYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmdW5jdGlvbi1zZWxlY3Rvci0tYmc7XG59XG4uZnVuY3Rpb24tc2VsZWN0b3ItLWhlYWRlciArIC5mdW5jdGlvbi1zZWxlY3Rvci0tZ3JpZCB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuLmZ1bmN0aW9uLXNlbGVjdG9yLS1pdGVtIHtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgZmxleDogMCAwIGNhbGMoMjUlIC0gMnB4KTtcbiAgbWFyZ2luOiAxcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgaGVpZ2h0OiAkZnVuY3Rpb24tc2VsZWN0b3ItLXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAoJGZ1bmN0aW9uLXNlbGVjdG9yLS1zaXplIC0gM3B4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZ1bmN0aW9uLXNlbGVjdG9yLS1pdGVtO1xuICBjb2xvcjogJGZ1bmN0aW9uLXNlbGVjdG9yLS10ZXh0O1xuICB0cmFuc2l0aW9uOlxuICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSxcbiAgICBjb2xvciAwLjI1cyBlYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmdW5jdGlvbi1zZWxlY3Rvci0taXRlbS1ob3ZlcjtcbiAgICBjb2xvcjogJGZ1bmN0aW9uLXNlbGVjdG9yLS10ZXh0LWhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZ1bmN0aW9uLXNlbGVjdG9yLS1pdGVtLWFjdGl2ZTtcbiAgICBjb2xvcjogJGZ1bmN0aW9uLXNlbGVjdG9yLS10ZXh0LWFjdGl2ZTtcbiAgfVxufVxuIiwiLypcbiAgICBHcmFwaCBUaXBzIGNvbXBvbmVudCBzdHlsZXNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmdyYXBoLXRpcHMge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgNHB4O1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG5cbiAgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxN3B4O1xuICAgIGhlaWdodDogMTdweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcxMy1taXN0O1xuICAgIGNvbG9yOiAkZzAtb2JzaWRpYW47XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn0iLCIvKlxuICBWYXJpYWJsZXNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuJGdyYXBoLWhlYWRpbmctaGVpZ2h0OiA0NHB4O1xuJGdyYXBoLWd1dHRlcjogMTZweDtcblxuLypcbiAgR3JhcGggU3R5bGVzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5ncmFwaCxcbi5ncmFwaC1oZWFkaW5nLFxuLmdyYXBoLWNvbnRhaW5lcixcbi5ncmFwaCA+IC50YWJsZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZ3JhcGgge1xuICBtYXJnaW46IDAgJHBhZ2Utd3JhcHBlci1wYWRkaW5nO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uZ3JhcGgtaGVhZGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXMgJHJhZGl1cyAwIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiAkZ3JhcGgtaGVhZGluZy1oZWlnaHQ7XG4gIHRvcDogJGdyYXBoLWd1dHRlcjtcbiAgcGFkZGluZzogMCA3cHg7XG4gIHRyYW5zaXRpb246XG4gICAgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuXG4gIC50b2dnbGUtYnRuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgfVxufVxuLmdyYXBoLW5hbWUge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkZzEzLW1pc3Q7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjpcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UsXG4gICAgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UsXG4gICAgY29sb3IgMC4yNXMgZWFzZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjA1OFwiO1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMTFweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gICAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiB0ZXh0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gICAgY29sb3I6ICRnMjAtd2hpdGU7XG5cbiAgICAmOmFmdGVyIHtvcGFjaXR5OiAxO31cbiAgfVxufVxuLmdyYXBoLW5hbWVfX3VudGl0bGVkIHtcbiAgY29sb3I6ICRnOS1tb3VudGFpbjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLmdyYXBoLWhlYWRpbmcgPiBpbnB1dFt0eXBlPVwidGV4dFwiXS5mb3JtLWNvbnRyb2wge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNnB4O1xufVxuLmdyYXBoLWhlYWRpbmcgPiBpbnB1dFt0eXBlPVwidGV4dFwiXS5mb3JtLWNvbnRyb2wsXG4uZ3JhcGgtbmFtZSB7XG4gIGhlaWdodDogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogMCAxMXB4O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG59XG4uZ3JhcGggLnRhYmxlLWNvbnRhaW5lcixcbi5ncmFwaC1jb250YWluZXIge1xuICB0b3A6ICRncmFwaC1ndXR0ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkcmFkaXVzICRyYWRpdXM7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gI3soJGdyYXBoLWhlYWRpbmctaGVpZ2h0ICsgKCRncmFwaC1ndXR0ZXIgKiAyKSl9KTtcbn1cbi5ncmFwaCAudGFibGUtY29udGFpbmVyIHtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG5cbiAgJiA+IGRpdiA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzMHB4O1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMzBweCkgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZml4ZWREYXRhVGFibGVMYXlvdXRfbWFpbiB7XG4gICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5ncmFwaC1jb250YWluZXIge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuXG4gICYgPiAuZHlncmFwaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAmID4gLmR5Z3JhcGggPiAuZHlncmFwaC1jaGlsZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgfVxufVxuXG4uZ3JhcGgtZW1wdHkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuXG4gID4gcCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJGc4LXN0b3JtO1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgfVxufVxuLmdyYXBoLWZldGNoaW5nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzIwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmdyYXBoLXNwaW5uZXIge1xuICB3aWR0aDogMTIxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMjFweCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoYXNzZXRzL2ltYWdlcy9sYXNlci1zcGlubmVyLnBuZyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBhbmltYXRpb246IGdyYXBoLXBhbmVsLXNwaW5uZXIgMXMgaW5maW5pdGUgbGluZWFyO1xufVxuXG5Aa2V5ZnJhbWVzIGdyYXBoLXBhbmVsLXNwaW5uZXIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuIiwiLypcbiAgQ2xpY2sgdG8gRWRpdCBJbnB1dCBTdHlsZXNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmlucHV0LWN0ZSxcbi5pbnB1dC1jdGVfX2Rpc2FibGVkIHtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgcGFkZGluZzogMCAxMXB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cblxuLmlucHV0LWN0ZSB7XG4gIGJvcmRlci1jb2xvcjogJGcyLWtldmxhcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgY29sb3I6ICRnMTMtbWlzdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOlxuICAgIGNvbG9yIDAuNHMgZWFzZSxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuNHMgZWFzZSxcbiAgICBib3JkZXItY29sb3IgMC40cyBlYXNlO1xuXG4gID4gc3Bhbi5pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDExcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGNvbG9yOiAkZzgtc3Rvcm07XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICAgIGJvcmRlci1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICBjdXJzb3I6IHRleHQ7XG5cbiAgICA+IHNwYW4uaWNvbiB7b3BhY2l0eTogMTt9XG4gIH1cbn1cblxuLmlucHV0LWN0ZV9fZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6ICRnNC1vbnl4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogJGc5LW1vdW50YWluO1xufVxuXG4uaW5wdXQtY3RlX19lbXB0eSB7XG4gIEBleHRlbmQgLmlucHV0LWN0ZTtcbiAgY29sb3I6ICRnOS1tb3VudGFpbjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogMjdweDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGc5LW1vdW50YWluO1xuICB9XG59XG5cbi8vICBBcHBlYXIgYXMgTm9ybWFsIElucHV0XG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uaW5wdXQtY3RlX19ub3JtYWwge1xuICAuaW5wdXQtY3RlIHtcbiAgICBib3JkZXItY29sb3I6ICRnNS1wZXBwZXI7XG4gIH1cbiAgLmlucHV0LWN0ZTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZzYtc21va2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgfVxuXG4gIC5pbnB1dC1jdGVfX2VtcHR5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuICB9XG4gIC5pbnB1dC1jdGVfX2Rpc2FibGVkLFxuICAuaW5wdXQtY3RlX19kaXNhYmxlZDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZzUtcGVwcGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gIH1cbn1cbiIsIi8qXG4gIElucHV0IFRhZyBMaXN0IFN0eWxlc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbiRpbnB1dC10YWctLWl0ZW0taGVpZ2h0OiAyNHB4O1xuXG4uaW5wdXQtdGFnLWxpc3Qge1xuICBtYXJnaW46IDFweCAtMXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4vLyBTcGVjaWFsIHJ1bGUgZm9yIGFsZXJ0IGhhbmRsZXJzIGNvbmZpZ1xuLnRhZy1pbnB1dCArIC5pbnB1dC10YWctbGlzdCB7XG4gIHBhZGRpbmc6IDAgMTFweDtcbiAgbWFyZ2luOiA0cHggLTFweDtcbn1cblxuLmlucHV0LXRhZy0taXRlbSxcbi50YWdzLWFkZCB7XG4gIGhlaWdodDogJGlucHV0LXRhZy0taXRlbS1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtdGFnLS1pdGVtLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBtYXJnaW46IDFweDtcbn1cblxuLmlucHV0LXRhZy0taXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwYWRkaW5nOiAwIDAgMCA5cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgY29sb3I6ICRnMTgtY2xvdWQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmJ0bi5jb25maXJtLWJ1dHRvbi5pbnB1dC10YWctLXJlbW92ZSB7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIGNvbG9yOiAkZzgtc3Rvcm07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkYy1kcmVhbXNpY2xlO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgQWRkIFRhZ3MgQnV0dG9uXG4udGFncy1hZGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAkaW5wdXQtdGFnLS1pdGVtLWhlaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtcG9vbDtcbiAgY29sb3I6ICRnMjAtd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuXG4gIC5pY29uIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmLm9wZW4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1sYXNlcjtcbiAgfVxufVxuLnRhZ3MtYWRkLS1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5O1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWgoJGMtb2NlYW4sJGMtcG9vbCk7XG59XG4udGFncy1hZGQtLW1lbnUtaXRlbSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDdweCA5cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNvbG9yOiAkYy15ZXRpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRjLWxhc2VyLCRjLXBvb2wpO1xuICB9XG4gICY6YWN0aXZlLFxuICAmOmFjdGl2ZTpmb2N1cyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAkZzIwLXdoaXRlO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWgoJGMtc2FwcGhpcmUsJGMtcG9vbCk7XG4gIH1cbn1cbi50YWdzLWFkZC5vcGVuIC50YWdzLWFkZC0tbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4iLCIvKlxuICBOZXdzZmVlZCBDZWxsIChTdGF0dXMgRGFzaClcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4ubmV3c2ZlZWQtLWNvbnRhaW5lciB7XG4gIC5mYW5jeS1zY3JvbGwtLXRyYWNrLWgge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5uZXdzZmVlZCB7XG4gIHBhZGRpbmc6IDAgMTZweDtcbn1cbi5uZXdzZmVlZC0tcG9zdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4ubmV3c2ZlZWQtLXBvc3QtdGl0bGUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAkZzE4LWNsb3VkO1xuICBwYWRkaW5nOiAxMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiA3NnB4O1xufVxuLm5ld3NmZWVkLS1kYXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICBjb2xvcjogJGcxMC13b2xmO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHdpZHRoOiA1NnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDhweDtcbn1cbi5uZXdzZmVlZC0tY29udGVudCB7XG4gIHBhZGRpbmc6IDEycHg7XG5cbiAgLyogQ29uZGVuc2luZyBkZWZhdWx0IHR5cG9ncmFwaHkgc3R5bGVzIHRvIGJldHRlciBzdWl0IHRoZSBjb250ZXh0ICovXG4gIHAge21hcmdpbi10b3A6IDA7fVxuICBwLCBsaSB7Zm9udC1zaXplOiAxM3B4O31cbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gICAgcGFkZGluZzogMCAxMnB4O1xuXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge2NvbnRlbnQ6IG5vbmU7fVxuICB9XG4gIG9sLCB1bCB7bWFyZ2luOiAwIDAgOHB4IDA7fVxuICBsaSB7cGFkZGluZy1sZWZ0OiAwO31cbiAgaHIge21hcmdpbjogOHB4IDA7fVxuXG4gIGltZyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQ4cHgpO1xuICAgIG1hcmdpbjogOHB4IDI0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICB9XG59XG4iLCIvKlxuICBPcHQgSW4gQ29tcG9uZW50XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBVc2VyIGNhbiB0b2dnbGUgYmV0d2VlbiBhIHNpbmdsZSB2YWx1ZSBvciBhbnkgdmFsdWVcbiovXG4ub3B0LWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuLm9wdC1pbi0tY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRnNS1wZXBwZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbn1cbi5vcHQtaW4tLWxhYmVsIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtby11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogJGMtcG9vbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSwgY29sb3IgMC4yNXMgZWFzZTtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgJjpob3ZlcjphY3RpdmUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJGMtbGFzZXI7XG4gIH1cbn1cblxuLm9wdC1pbi0tZ3Jvb3ZlLWtub2Ige1xuICB3aWR0aDogNDhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuXG4gICYsICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgY29udGVudDogJyc7XG4gIH1cbiAgLy8gR3Jvb3ZlXG4gICY6YmVmb3JlIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2U7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLy8gS25vYlxuICAmOmFmdGVyIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLCB0cmFuc2Zvcm0gMC4yNXMgZWFzZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gIH1cbiAgLy8gR3JhZGllbnRcbiAgLm9wdC1pbi0tZ3JhZGllbnQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1oKCRnMi1rZXZsYXIsJGczLWNhc3RsZSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gQ3VzdG9taXplIGZvcm0gaW5wdXRcbi5vcHQtaW4gPiBpbnB1dC5mb3JtLWNvbnRyb2wge1xuICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG4gIGZsZXg6IDEgMCAwO1xufVxuLy8gUmlnaHQgdmFsdWUgdG9nZ2xlZCBzdGF0ZVxuLm9wdC1pbi5yaWdodC10b2dnbGVkIHtcbiAgLm9wdC1pbi0tZ3Jvb3ZlLWtub2I6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtNTAlKTtcbiAgfVxuICAvLyBGYWRlIG91dCBsZWZ0LCBmYWRlIGluIHJpZ2h0XG4gIC5vcHQtaW4tLWdyYWRpZW50IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC8vIE1ha2UgbGVmdCBsYWJlbCBsb29rIGRpc2FibGVkXG4gIC5vcHQtaW4tLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICAgIGNvbG9yOiAkZzgtc3Rvcm07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGMtcG9vbDtcbiAgICB9XG4gICAgJjpob3ZlcjphY3RpdmUge1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgY29sb3I6ICRjLWxhc2VyO1xuICAgIH1cbiAgfVxufVxuIiwiLypcbiAgU3R5bGVzIGZvciB0aGUgTWFuYWdlIE9yZ2FuaXphdGlvbnMgUGFnZVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSXMgbm90IGFjdHVhbGx5IGEgdGFibGVcbiovXG5cbiRvcmdzLXRhYmxlLS1hY3RpdmUtd2lkdGg6IDEwMnB4O1xuJG9yZ3MtdGFibGUtLXB1YmxpYy13aWR0aDogOTBweDtcbiRvcmdzLXRhYmxlLS1kZWZhdWx0LXJvbGUtd2lkdGg6IDEzMHB4O1xuJG9yZ3MtdGFibGUtLWRlbGV0ZS13aWR0aDogMzBweDtcblxuLm9yZ3MtdGFibGUtLW5hbWUge1xuICBmbGV4OiAxIDAgMDtcbn1cbi5vcmdzLXRhYmxlLS1wdWJsaWMge1xuICB3aWR0aDogJG9yZ3MtdGFibGUtLXB1YmxpYy13aWR0aDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm9yZ3MtdGFibGUtLWRlZmF1bHQtcm9sZSB7XG4gIHdpZHRoOiAkb3Jncy10YWJsZS0tZGVmYXVsdC1yb2xlLXdpZHRoO1xufVxuLm9yZ3MtdGFibGUtLWRlbGV0ZSB7XG4gIHdpZHRoOiAkb3Jncy10YWJsZS0tZGVsZXRlLXdpZHRoO1xufVxuLm9yZ3MtdGFibGUtLWFjdGl2ZSB7XG4gIHdpZHRoOiAkb3Jncy10YWJsZS0tYWN0aXZlLXdpZHRoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcblxuICAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLm9yZ3MtdGFibGUtLWRlZmF1bHQtcm9sZS5jcmVhdGluZyB7XG4gIHdpZHRoOiAoXG4gICAgJG9yZ3MtdGFibGUtLWRlZmF1bHQtcm9sZS13aWR0aCAtICRmYW5jeXRhYmxlLS10YWJsZS0tbWFyZ2luIC1cbiAgICAgICRvcmdzLXRhYmxlLS1kZWxldGUtd2lkdGhcbiAgKTtcbn1cbi5vcmdzLXRhYmxlLS1wdWJsaWMtdG9nZ2xlIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICA+IC5zbGlkZS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cblxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGc5LW1vdW50YWluO1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIH1cbn1cbiIsIi5wYWdlLWhlYWRlci1kcm9wZG93biB7XG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGhlaWdodDogMzhweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogKDExcHggKyAxMnB4KTsgLy8gY2FyZXQgd2lkdGggKyBvZmZzZXRcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtaW4td2lkdGg6IDUwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtc2l6ZTogJHBhZ2UtaGVhZGVyLXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRwYWdlLWhlYWRlci13ZWlnaHQ7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZTtcbiAgICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICB9XG4gIC5kcm9wZG93bi10b2dnbGUgPiAuY2FyZXQge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIC5kcm9wZG93bi10b2dnbGUgPiAuY2FyZXQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICB9XG4gIC8qIEhvdmVyICYgT3BlbiBTdGF0ZSAqL1xuICAmLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gICAgY29sb3I6ICRjLXBvb2w7XG4gIH1cbiAgLyogTWVudSAqL1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgei1pbmRleDogOTAwMDtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuXG4gICAgJiA+IGxpID4gYSB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4gICAgQ2xpY2sgdG8gUmVuYW1lIFBhZ2UgSGVhZGVyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5wYWdlLWhlYWRlci0tZWRpdGFibGUge1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYy1wb29sO1xuICAgIGN1cnNvcjogdGV4dCAhaW1wb3J0YW50O1xuICB9XG4gICYua2FwYWNpdG9yLXRoZW1lOmhvdmVyIHtcbiAgICBjb2xvcjogJGMtcmFpbmZvcmVzdDtcbiAgfVxuICAuaWNvbiB7XG4gICAgY3Vyc29yOiBpbmhlcml0O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTEuNXB4O1xuICB9XG59XG4ucGFnZS1oZWFkZXItLWVkaXRpbmcge1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMC1vYnNpZGlhbjtcbiAgZm9udC1zaXplOiAkcGFnZS1oZWFkZXItc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRwYWdlLWhlYWRlci13ZWlnaHQ7XG4gIHBhZGRpbmc6IDA7XG4gIGZsZXg6IDE7XG5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjLXBvb2w7XG4gIH1cbiAgJi5rYXBhY2l0b3ItdGhlbWU6Zm9jdXMge1xuICAgIGNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICB9XG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGc5LW1vdW50YWluOyB9XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIgeyBjb2xvcjogJGc5LW1vdW50YWluOyB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRnOS1tb3VudGFpbjsgfVxuICAmOi1tb3otcGxhY2Vob2xkZXIgeyBjb2xvcjogJGc5LW1vdW50YWluOyB9XG59XG4iLCIucGFnZS1zcGlubmVyIHtcbiAgYm9yZGVyOiA0cHggc29saWQgcmdiYSg1MSwgNTEsIDUxLCAwLjQpO1xuICBib3JkZXItbGVmdC1jb2xvcjogJGMtcG9vbDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgYW5pbWF0aW9uOiBwYWdlU3Bpbm5lciAwLjhzIGluZmluaXRlIGxpbmVhcjtcbn1cbi5jaHJvbm9ncmFmLXJvb3QgPiAucGFnZS1zcGlubmVyIHtcbiAgIC8vIENlbnRlciB0aGUgc3Bpbm5lciBiYXNlZCBvbiB0aGUgbWFpbiBjb250ZW50IHdpbmRvdywgbm90IHRoZSBlbnRpcmUgc2NyZWVuXG4gIGxlZnQ6IGNhbGMoNTAlICsgI3skc2lkZWJhci0td2lkdGh9KTtcbn1cblxuQGtleWZyYW1lcyBwYWdlU3Bpbm5lciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSgwZGVnKTtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGMtcG9vbDtcbiAgfVxuICAyNSUge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkYy1jb21ldDtcbiAgfVxuICA1MCUge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkYy1wb29sO1xuICB9XG4gIDc1JSB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRjLXJhaW5mb3Jlc3Q7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoMzYwZGVnKTtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGMtcG9vbDtcbiAgfVxufVxuIiwiLypcbiAgc3RhdGljIExlZ2VuZFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgU2VlbiBpbiBhIGRhc2hib2FyZCBjZWxsLCBiZWxvdyB0aGUgZ3JhcGhcbiAgTk9URTogU3R5bGVzIGZvciB0aGUgcGFyZW50IGFyZSBzdG9yZWQgaW4gSmF2YXNjcmlwdCwgaW4gc3RhdGljTGVnZW5kLmpzXG4qL1xuXG4uc3RhdGljLWxlZ2VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDMycHgpO1xuICBib3R0b206IDhweDtcbiAgbGVmdDogMTZweDtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1heC1oZWlnaHQ6IDUwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXIoJGczLWNhc3RsZSwgJGc2LXNtb2tlKTtcbn1cblxuLnN0YXRpYy1sZWdlbmQtLWl0ZW0sXG4uc3RhdGljLWxlZ2VuZC0tc2luZ2xlIHtcbiAgaGVpZ2h0OiAxOXB4O1xuICBsaW5lLWhlaWdodDogMTlweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICRnMjAtd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogMCA2cHg7XG4gIG1hcmdpbjogMXB4O1xufVxuLnN0YXRpYy1sZWdlbmQtLWl0ZW0ge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UsIGNvbG9yIDAuMjVzIGVhc2U7XG5cbiAgc3BhbiB7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2U7XG5cbiAgICBzcGFuIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gICYuZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMS1yYXZlbjtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG5cbiAgICBzcGFuIHtcbiAgICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgb3BhY2l0eTogMC42NTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4gICAgUXVlcnkgTWFrZXJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ29uc2lzdHMgb2YgdHdvIHBhcnRzOlxuICAgICAgLSBRdWVyeSBFZGl0b3IgKE1hbnVhbCBxdWVyeSBlbnRyeSlcbiAgICAgIC0gUXVlcnkgQnVpbGRlciAoQXNzc2l0ZWQgcXVlcnkgY29uc3RydWN0aW9uKVxuKi9cblxuLnF1ZXJ5LW1ha2VyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDAgJHBhZ2Utd3JhcHBlci1wYWRkaW5nO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLypcbiAgICBWYXJpYWJsZXNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuJHF1ZXJ5LW1ha2VyLS1ndXR0ZXI6IDE2cHg7XG5cbiRxdWVyeS1tYWtlci0tdGFicy1oZWlnaHQ6IDQ0cHg7XG4kcXVlcnktbWFrZXItLXRhYnMtaGVhZGVyLXRleHQ6ICRnMTgtY2xvdWQ7XG5cbiRxdWVyeS1tYWtlci0tdGFiLXdpZHRoOiAzNDBweDtcbiRxdWVyeS1tYWtlci0tdGFiLXRleHQ6ICRnMTEtc2lkZXdhbGs7XG4kcXVlcnktbWFrZXItLXRhYi10ZXh0LWhvdmVyOiAkZzE1LXBsYXRpbnVtO1xuJHF1ZXJ5LW1ha2VyLS10YWItdGV4dC1hY3RpdmU6ICRnMTgtY2xvdWQ7XG4kcXVlcnktbWFrZXItLXRhYi1iZzogJGczLWNhc3RsZTtcbiRxdWVyeS1tYWtlci0tdGFiLWJnLWhvdmVyOiAkZzQtb255eDtcbiRxdWVyeS1tYWtlci0tdGFiLWJnLWFjdGl2ZTogJGc1LXBlcHBlcjtcblxuJHF1ZXJ5LW1ha2VyLS10YWItY29udGVudHMtYmc6ICRnMy1jYXN0bGU7XG4kcXVlcnktbWFrZXItLWVtcHR5LXRleHQ6ICRnMTAtd29sZjtcblxuJHF1ZXJ5LWVkaXRvci0tYmc6ICRxdWVyeS1tYWtlci0tdGFiLWJnLWFjdGl2ZTtcbiRxdWVyeS1lZGl0b3ItLWZpZWxkLXRleHQ6ICRjLXBvb2w7XG4kcXVlcnktZWRpdG9yLS1maWVsZC1iZzogJGcyLWtldmxhcjtcbiRxdWVyeS1lZGl0b3ItLWZpZWxkLWhlaWdodDogNTJweDtcbiRxdWVyeS1lZGl0b3ItLXN0YXR1cy1oZWlnaHQ6IDM0cHg7XG4vKiBeIFRoZXNlIDIgc2hvdWxkIHRvdGFsIDg2cHggKi9cbiRxdWVyeS1lZGl0b3ItLXN0YXR1cy1kZWZhdWx0OiAkZzExLXNpZGV3YWxrO1xuJHF1ZXJ5LWVkaXRvci0tc3RhdHVzLXN1Y2Nlc3M6ICRjLXJhaW5mb3Jlc3Q7XG4kcXVlcnktZWRpdG9yLS1zdGF0dXMtd2FybmluZzogJGMtcGluZWFwcGxlO1xuJHF1ZXJ5LWVkaXRvci0tc3RhdHVzLWVycm9yOiAkYy1kcmVhbXNpY2xlO1xuJHF1ZXJ5LWVkaXRvci0tdGVtcGxhdGVzLXdpZHRoOiAxMzVweDtcbiRxdWVyeS1lZGl0b3ItLXRlbXBsYXRlcy1oZWlnaHQ6IDIycHg7XG4kcXVlcnktZWRpdG9yLS10ZW1wbGF0ZXMtb2Zmc2V0OiAxNXB4O1xuJHF1ZXJ5LWVkaXRvci0tdGVtcGxhdGVzLW1lbnUtd2lkdGg6IDIwMHB4O1xuXG4kcXVlcnktYnVpbGRlci0taGVhZGluZy1oZWlnaHQ6IDUwcHg7XG4kcXVlcnktYnVpbGRlci0taGVhZGluZy10ZXh0OiAkZzEzLW1pc3Q7XG4kcXVlcnktYnVpbGRlci0taGVhZGluZy1iZzogJHF1ZXJ5LW1ha2VyLS10YWItYmctYWN0aXZlO1xuXG4kcXVlcnktYnVpbGRlci0tbGlzdC1iZzogJGczLWNhc3RsZTtcbiRxdWVyeS1idWlsZGVyLS1saXN0LWVtcHR5LXRleHQ6ICRnMTAtd29sZjtcbiRxdWVyeS1idWlsZGVyLS1saXN0LWd1dHRlcjogMTFweDtcbiRxdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0taGVpZ2h0OiAyOHB4O1xuJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbS1iZzogdHJhbnNwYXJlbnQ7XG4kcXVlcnktYnVpbGRlci0tbGlzdC1pdGVtLXRleHQ6ICRnMTEtc2lkZXdhbGs7XG4kcXVlcnktYnVpbGRlci0tbGlzdC1pdGVtLWJnLWhvdmVyOiAkZzQtb255eDtcbiRxdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0tdGV4dC1ob3ZlcjogJGcxNS1wbGF0aW51bTtcbiRxdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0tYmctYWN0aXZlOiAkZzQtb255eDtcbiRxdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0tdGV4dC1hY3RpdmU6ICRnMTgtY2xvdWQ7XG4kcXVlcnktYnVpbGRlci0tbGlzdC1pdGVtLXRleHQtZGlzYWJsZWQ6ICRnOS1tb3VudGFpbjtcblxuJHF1ZXJ5LWJ1aWxkZXItLXN1Yi1saXN0LWd1dHRlcjogMjRweDtcbiRxdWVyeS1idWlsZGVyLS1zdWItbGlzdC1iZzogJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbS1iZy1hY3RpdmU7XG5cbiRxdWVyeS1lZGl0b3ItdGFiLWluYWN0aXZlOiAkZzIta2V2bGFyO1xuJHF1ZXJ5LWVkaXRvci10YWItYWN0aXZlOiAkZzMtY2FzdGxlO1xuXG4vKlxuICAgIFRhYnMgJiBUYWIgQ29udGVudHNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgQ29udHJvbHMgd2hpY2ggcXVlcnkgaXMgY3VycmVudGx5IGJlaW5nIG1vZGlmaWVkXG4qL1xuXG4ucXVlcnktbWFrZXItLXRhYnMge1xuICBtYXJnaW46ICRxdWVyeS1tYWtlci0tZ3V0dGVyIDAgMCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRxdWVyeS1tYWtlci0tdGFicy1oZWlnaHQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ucXVlcnktbWFrZXItLXRhYnMgPiBkaXYuYnRuLnF1ZXJ5LW1ha2VyLS1uZXcge1xuICBtYXJnaW4tbGVmdDogNnB4O1xuICBwYWRkaW5nOiAwIDhweCAhaW1wb3J0YW50O1xufVxuLnF1ZXJ5LW1ha2VyLS1uZXcgPiBzcGFuLmljb24ge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cbi5xdWVyeS1tYWtlci0tdGFiIHtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cyAkcmFkaXVzIDAgMDtcbiAgaGVpZ2h0OiAkcXVlcnktbWFrZXItLXRhYnMtaGVpZ2h0O1xuICBtYXJnaW46IDAgMnB4IDAgMDtcbiAgbWF4LXdpZHRoOiAkcXVlcnktbWFrZXItLXRhYi13aWR0aDtcbiAgZmxleDogMSAwIDA7XG4gIGNvbG9yOiAkcXVlcnktbWFrZXItLXRhYi10ZXh0O1xuICBiYWNrZ3JvdW5kOiAkcXVlcnktbWFrZXItLXRhYi1iZztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOlxuICAgICAgY29sb3IgMC4yNXMgZWFzZSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICRxdWVyeS1tYWtlci0tdGFiLXRleHQtaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHF1ZXJ5LW1ha2VyLS10YWItYmctaG92ZXI7XG4gIH1cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkcXVlcnktbWFrZXItLXRhYi10ZXh0LWFjdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAkcXVlcnktbWFrZXItLXRhYi1iZy1hY3RpdmU7XG4gIH1cbn1cbi5xdWVyeS1tYWtlci0tdGFiID4gbGFiZWwsXG4ucXVlcnktbWFrZXItLWRlbGV0ZSB7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5xdWVyeS1tYWtlci0tdGFiID4gbGFiZWwge1xuICBsZWZ0OiAxMnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JHF1ZXJ5LW1ha2VyLS10YWJzLWhlaWdodH0pO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgY3Vyc29yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG4ucXVlcnktbWFrZXItLWRlbGV0ZSB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogOXB4O1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc4LXN0b3JtO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRyZWFtc2ljbGU7XG4gICAgfVxuICB9XG59XG4ucXVlcnktbWFrZXItLXRhYi1jb250ZW50cyB7XG4gIGJvcmRlci1yYWRpdXM6IDAgJHJhZGl1cyAkcmFkaXVzICRyYWRpdXM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ucXVlcnktbWFrZXItLXRhYi1jb250ZW50cyxcbi5xdWVyeS1tYWtlci0tZW1wdHkge1xuICBmbGV4OiAxIDAgMCU7XG4gIG1hcmdpbjogMCAwICRxdWVyeS1tYWtlci0tZ3V0dGVyIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRxdWVyeS1tYWtlci0tdGFiLWNvbnRlbnRzLWJnO1xufVxuLnF1ZXJ5LW1ha2VyLS1lbXB0eSB7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICRxdWVyeS1tYWtlci0tZW1wdHktdGV4dDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgJixcbiAgJiA+ICoge1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIH1cbn1cblxuLypcbiAgICBTdWItQ29tcG9uZW50c1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5AaW1wb3J0ICdxdWVyeS1lZGl0b3InO1xuQGltcG9ydCAncXVlcnktYnVpbGRlcic7XG5AaW1wb3J0ICdxdWVyeS1tYWtlci1yZXNwb25zaXZlJztcbiIsIi8qXG4gIFF1ZXJ5IEVkaXRvclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIERpc3BsYXlzIGdlbmVyYXRlZCBxdWVyeSBmcm9tIFF1ZXJ5IEJ1aWxkZXJcbiAgVXNlciBjYW4gbWFudWFsbHkgdHlwZSBhIHF1ZXJ5IGFzIHdlbGxcblxuICBOT1RFOiBWYXJpYWJsZXMgYXJlIGxvY2F0ZWQgaW4gcXVlcnktbWFrZXIuc2Nzc1xuKi9cbi5xdWVyeS1lZGl0b3Ige1xuICBwYWRkaW5nOiA4cHggOHB4IDAgOHB4O1xuICBib3JkZXItcmFkaXVzOiAwICRyYWRpdXMgMCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcXVlcnktZWRpdG9yLS1iZztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzOyAvKiBNaW5pbXVtIGFtb3VudCB0byBvYmN1cmUgdGhlIHRvZ2dsZSBmbGlwIHdpdGhpbiBRdWVyeSBCdWlsZGVyLiBXaWxsIGZpeCBsYXRlciAqL1xufVxuLnF1ZXJ5LWVkaXRvci0tZmllbGQge1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXIoJHF1ZXJ5LWVkaXRvci0tZmllbGQtYmcsICRxdWVyeS1lZGl0b3ItLWZpZWxkLXRleHQpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcmVzaXplOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkcXVlcnktZWRpdG9yLS1maWVsZC1oZWlnaHQ7XG4gIHRyYW5zaXRpb246XG4gICAgY29sb3IgMC4yNXMgZWFzZSxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UsXG4gICAgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRxdWVyeS1lZGl0b3ItLWJnO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcXVlcnktZWRpdG9yLS1maWVsZC1iZztcbiAgY29sb3I6ICRxdWVyeS1lZGl0b3ItLWZpZWxkLXRleHQ7XG4gIHBhZGRpbmc6IDEycHggMTBweCAwIDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXMgJHJhZGl1cyAwIDA7XG4gIG1hcmdpbjogMDtcblxuICAmOmhvdmVyLFxuICAmOmhvdmVyICsgLnF1ZXJ5LWVkaXRvci0tc3RhdHVzIHtcbiAgICBib3JkZXItY29sb3I6ICRxdWVyeS1lZGl0b3ItLWJnO1xuICB9XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY29sb3I6ICRxdWVyeS1lZGl0b3ItLWZpZWxkLXRleHQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICRjLXBvb2w7XG4gIH1cbiAgJjpmb2N1cyArIC52YXJtb2ppIHtcbiAgICBib3JkZXItY29sb3I6ICRjLXBvb2w7XG4gIH1cbn1cbi5xdWVyeS1lZGl0b3ItLXN0YXR1cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGhlaWdodDogJHF1ZXJ5LWVkaXRvci0tc3RhdHVzLWhlaWdodDtcblxuICAvKiBMb2FkaW5nIFN0YXRlICovXG4gIC5sb2FkaW5nLWRvdHMge1xuICAgIGJvdHRvbTogJHF1ZXJ5LWVkaXRvci0tdGVtcGxhdGVzLW9mZnNldDtcbiAgICBsZWZ0OiAoJHF1ZXJ5LWVkaXRvci0tdGVtcGxhdGVzLW9mZnNldCArIDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICB9XG59XG4ucXVlcnktc3RhdHVzLW91dHB1dCB7XG4gIGZsZXg6IDEgMCAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogJHF1ZXJ5LWVkaXRvci0tc3RhdHVzLWRlZmF1bHQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAkcXVlcnktZWRpdG9yLS1zdGF0dXMtaGVpZ2h0O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuXG4gIHNwYW4uaWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cbiAgLyogRXJyb3IgU3RhdGUgKi9cbiAgJi5xdWVyeS1zdGF0dXMtb3V0cHV0LS1lcnJvciB7IGNvbG9yOiAkcXVlcnktZWRpdG9yLS1zdGF0dXMtZXJyb3I7IH1cbiAgLyogV2FybmluZyBTdGF0ZSAqL1xuICAmLnF1ZXJ5LXN0YXR1cy1vdXRwdXQtLXdhcm5pbmcgeyBjb2xvcjogJHF1ZXJ5LWVkaXRvci0tc3RhdHVzLXdhcm5pbmc7IH1cbiAgLyogU3VjY2VzcyBTdGF0ZSAqL1xuICAmLnF1ZXJ5LXN0YXR1cy1vdXRwdXQtLXN1Y2Nlc3MgeyBjb2xvcjogJHF1ZXJ5LWVkaXRvci0tc3RhdHVzLXN1Y2Nlc3M7IH1cbn1cbi5kcm9wZG93bi5xdWVyeS1lZGl0b3ItLXRlbXBsYXRlcyB7XG4gIG1hcmdpbjogMCA0cHggMCAwIDtcblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHF1ZXJ5LWVkaXRvci0tdGVtcGxhdGVzLW1lbnUtd2lkdGg7XG4gICAgbWluLXdpZHRoOiAkcXVlcnktZWRpdG9yLS10ZW1wbGF0ZXMtbWVudS13aWR0aDtcbiAgICBtYXgtd2lkdGg6ICRxdWVyeS1lZGl0b3ItLXRlbXBsYXRlcy1tZW51LXdpZHRoO1xuICB9XG59XG5cblxuLypcbiAgVmFybW9qaSBGbGlwcGVyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSGFuZGxlcyB0aGUgM0QgZmxpcCB0cmFuc2l0aW9uIGJldHdlZW4gdHdvIHN0YXRlcyAoaXNUZW1wbGF0aW5nKVxuICBDb250ZW50cyBjb3VsZCBpbiB0aGVvcnkgYmUgYW55dGhpbmdcbiovXG4udmFybW9qaSB7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuICBib3JkZXI6IDJweCBzb2xpZCAkcXVlcnktZWRpdG9yLS1iZztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHF1ZXJ5LWVkaXRvci0tZmllbGQtYmc7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkcmFkaXVzICRyYWRpdXM7XG4gIGhlaWdodDogJHF1ZXJ5LWVkaXRvci0tc3RhdHVzLWhlaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBlcnNwZWN0aXZlOiAxMDAwcHg7XG59XG4udmFybW9qaS1jb250YWluZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgI3skcXVlcnktZWRpdG9yLS1zdGF0dXMtaGVpZ2h0IC8gMn07XG59XG4udmFybW9qaS1mcm9udCxcbi52YXJtb2ppLWJhY2sge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRxdWVyeS1lZGl0b3ItLXN0YXR1cy1oZWlnaHQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuLnZhcm1vamktZnJvbnQge1xuICB6LWluZGV4OiAzO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7XG59XG4udmFybW9qaS1iYWNrIHtcbiAgei1pbmRleDogMjtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG59XG4udmFybW9qaS52YXJtb2ppLXJvdGF0ZWQgLnZhcm1vamktY29udGFpbmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKC0xODBkZWcpO1xufVxuXG4vKlxuICBUZW1wbGF0ZSBEcmF3ZXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBOb3Qgc3VyZSBpZiB0aGlzIG5lZWRzIGl0cyBvd24gc3R5bGVzaGVldFxuKi9cblxuLnRlbXBsYXRlLWRyYXdlciB7XG4gIGhlaWdodDogJHF1ZXJ5LWVkaXRvci0tc3RhdHVzLWhlaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgNHB4O1xufVxuLnRlbXBsYXRlLWRyYXdlci0taXRlbSB7XG4gIG1hcmdpbi1yaWdodDogMnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGhlaWdodDogKCRxdWVyeS1lZGl0b3ItLXN0YXR1cy1oZWlnaHQgLSAxNHB4KTtcbiAgbGluZS1oZWlnaHQ6ICgkcXVlcnktZWRpdG9yLS1zdGF0dXMtaGVpZ2h0IC0gMTRweCk7XG4gIHBhZGRpbmc6IDAgNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcXVlcnktZWRpdG9yLS1maWVsZC1iZztcbiAgY29sb3I6ICRjLWNvbWV0O1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzLXNtYWxsO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246XG4gICAgY29sb3IgMC4yNXMgZWFzZSxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG5cbiAgLyogU2VsZWN0ZWQgU3RhdGUgKi9cbiAgJi50ZW1wbGF0ZS1kcmF3ZXItLXNlbGVjdGVkIHtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1zdGFyO1xuICB9XG5cbiAgLmRpdmlkZXIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwQzlGRiAwJSwgIzIyQURGNiAxMDAlKTtcbiAgfVxufVxuIiwiLypcbiAgICBRdWVyeSBCdWlsZGVyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIE5PVEU6IFZhcmlhYmxlcyBhcmUgbG9jYXRlZCBpbiBxdWVyeS1tYWtlci5zY3NzXG4qL1xuLnF1ZXJ5LWJ1aWxkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogMSAwIDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4ucXVlcnktYnVpbGRlci0tY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleDogMiAwIDAlO1xufVxuLnF1ZXJ5LWJ1aWxkZXItLWNvbHVtbi1kYiB7XG4gIGZsZXg6IDEgMCAwJTtcbn1cbi5xdWVyeS1idWlsZGVyLS1oZWFkaW5nIHtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHF1ZXJ5LWJ1aWxkZXItLWhlYWRpbmctaGVpZ2h0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICRxdWVyeS1idWlsZGVyLS1oZWFkaW5nLXRleHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRxdWVyeS1idWlsZGVyLS1oZWFkaW5nLWJnO1xuICBwYWRkaW5nOiAwICRzY3JvbGxiYXItd2lkdGggMCAkcXVlcnktYnVpbGRlci0tbGlzdC1ndXR0ZXI7XG4gIGxpbmUtaGVpZ2h0OiAkcXVlcnktYnVpbGRlci0taGVhZGluZy1oZWlnaHQ7XG5cbiAgLyogQWNjb3VudGluZyBmb3IgaGVhZGluZ3Mgdy8gb3B0aW9uYWwgc2Vjb25kIGl0ZW0gKi9cbiAgJiA+IHNwYW4ge1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgfVxufVxuLnF1ZXJ5LWJ1aWxkZXItLWxpc3QsXG4ucXVlcnktYnVpbGRlci0tbGlzdC1lbXB0eSB7XG4gIGZsZXg6IDEgMCAwJTtcbn1cbi5xdWVyeS1idWlsZGVyLS1saXN0IHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtYmc7XG59XG4ucXVlcnktYnVpbGRlci0tbGlzdC1lbXB0eSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRxdWVyeS1idWlsZGVyLS1saXN0LWJnO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtZW1wdHktdGV4dDtcblxuICAmLFxuICAmICoge1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIH1cbn1cbi5xdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0ge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcXVlcnktYnVpbGRlci0tbGlzdC1pdGVtLWJnO1xuICBjb2xvcjogJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbS10ZXh0O1xuICBoZWlnaHQ6ICRxdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0taGVpZ2h0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDAgJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtZ3V0dGVyO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbS1iZy1ob3ZlcjtcbiAgICBjb2xvcjogJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbS10ZXh0LWhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAvKiBBY3RpdmUgU3RhdGUgKi9cbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRxdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0tYmctYWN0aXZlO1xuICAgIGNvbG9yOiAkcXVlcnktYnVpbGRlci0tbGlzdC1pdGVtLXRleHQtYWN0aXZlO1xuICB9XG4gIC8qIEhpZGUgZHJvcGRvd25zIHVubGVzcyBpdGVtIGlzIGFjdGl2ZSAqL1xuICAmID4gLmRyb3Bkb3duIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgJi5hY3RpdmUgPiAuZHJvcGRvd24ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLyogU3ViLWl0ZW0gZ3JvdXAgZm9yIGxheW91dCBwdXJwb3NlcyAqL1xuICAmID4gc3BhbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIH1cbiAgLyogRGlzYWJsZWQgU3RhdGUgKi9cbiAgJi5kaXNhYmxlZCB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGNvbG9yOiAkcXVlcnktYnVpbGRlci0tbGlzdC1pdGVtLXRleHQtZGlzYWJsZWQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRxdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0tYmc7XG4gICAgfVxuICAgIFxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRxdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0tYmctYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuLyogRmlsdGVyIEVsZW1lbnQgKi9cbi5xdWVyeS1idWlsZGVyLS1maWx0ZXIge1xuICBmbGV4OiAxIDAgMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgJiA+IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBvcmRlcjogMTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2U7XG4gICAgY29sb3I6ICRnOS1tb3VudGFpbjtcbiAgfVxuICAmID4gaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICBvcmRlcjogMjtcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAkZzYtc21va2UgIWltcG9ydGFudDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZzctZ3JhcGhpdGUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRjLXBvb2wgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJjpmb2N1cyArIHNwYW4ge1xuICAgICAgY29sb3I6ICRjLXBvb2w7XG4gICAgfVxuICB9XG59XG4vKiBDaGVja2JveCBFbGVtZW50ICovXG4ucXVlcnktYnVpbGRlci0tY2hlY2tib3gge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEsIDEpO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBlYXNlLCBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gIH1cblxuICAuZGlzYWJsZWQgJjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgfVxufVxuLnF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbS5hY3RpdmUgLnF1ZXJ5LWJ1aWxkZXItLWNoZWNrYm94OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMC40LCAwLjQpO1xufVxuLyogQ2FyZXQgRWxlbWVudCAqL1xuLnF1ZXJ5LWJ1aWxkZXItLWNhcmV0IHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7XG59XG4ucXVlcnktYnVpbGRlci0tbGlzdC1pdGVtLmFjdGl2ZSAucXVlcnktYnVpbGRlci0tY2FyZXQge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG4vKiBTdWIgbGlzdHMgKFVzZWQgZm9yIHRoZSB0YWdzIGxpc3QpICovXG4ucXVlcnktYnVpbGRlci0tc3ViLWxpc3Qge1xuICBwYWRkaW5nOiA0cHggJHF1ZXJ5LWJ1aWxkZXItLWxpc3QtZ3V0dGVyIDRweCAkcXVlcnktYnVpbGRlci0tc3ViLWxpc3QtZ3V0dGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcXVlcnktYnVpbGRlci0tc3ViLWxpc3QtYmc7XG5cbiAgLnF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAucXVlcnktYnVpbGRlci0tZmlsdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIH1cbn1cbi8qIFRvZ2dsZSBmb3IgZ3JvdXBpbmcgYnkgdGFncyBpbiB0YWdzIGxpc3QgKi9cbi5ncm91cC1ieS10YWcge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgJi5hY3RpdmUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZDogJGMtcG9vbDtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGMtbGFzZXI7XG4gICAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICB9XG4gIH1cbn1cbi5xdWVyeS1idWlsZGVyLS1saXN0LWl0ZW06aG92ZXIgLmdyb3VwLWJ5LXRhZyxcbi5xdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0uYWN0aXZlIC5ncm91cC1ieS10YWcsXG4ucXVlcnktYnVpbGRlci0tbGlzdC1pdGVtIC5ncm91cC1ieS10YWcuYnRuLXByaW1hcnkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLnF1ZXJ5LWJ1aWxkZXItLWRiLWRyb3Bkb3duIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLyogQ29udGFpbmVyIGZvciBncm91cCBieSBhbmQgZmlsbCBkcm9wZG93bnMgdG8gbGl2ZSBzaWRlLWJ5LXNpZGUgKi9cbi5xdWVyeS1idWlsZGVyLS1ncm91cGJ5LWZpbGwtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ25JdGVtczogY2VudGVyO1xufVxuIiwiJGJyZWFrcG9pbnQtYTogMTUwMHB4O1xuJGJyZWFrcG9pbnQtYjogMTgwMHB4O1xuJGJyZWFrcG9pbnQtYzogMjEwMHB4O1xuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtYSkge1xuICAuZGF0YS1leHBsb3JlciB7XG4gICAgLnF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIC5xdWVyeS1idWlsZGVyLS1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1iKSB7XG4gIC5kYXRhLWV4cGxvcmVyIHtcbiAgICAucXVlcnktYnVpbGRlci0tbGlzdC1pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB9XG4gICAgLnF1ZXJ5LWJ1aWxkZXItLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICAucXVlcnktZWRpdG9yLS1maWVsZCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICB9XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtYykge1xuICAuZGF0YS1leHBsb3JlciB7XG4gICAgLnF1ZXJ5LWJ1aWxkZXItLWxpc3QtaXRlbSB7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gICAgfVxuICAgIC5xdWVyeS1idWlsZGVyLS1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICAgIC5xdWVyeS1tYWtlciAubXVsdGktc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgd2lkdGg6IDE0MHB4O1xuICAgIH1cbiAgICAucXVlcnktZWRpdG9yLS1maWVsZCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4gICAgQ3VzdG9tIFRvb2x0aXBzXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgVXNpbmcgbnBtL3JlYWN0LXRvb2x0aXBcbiAgICBodHRwOi8vd3dheW5lLmNvbS9yZWFjdC10b29sdGlwL1xuKi9cblxuJHRvb2x0aXAtcGFkZGluZzogOHB4O1xuJHRvb2x0aXAtcmFkaXVzOiA1cHg7XG4kdG9vbHRpcC1mb250OiAxM3B4O1xuXG4kdG9vbHRpcC1iZzogJGc1LXBlcHBlcjtcbiR0b29sdGlwLXRleHQ6ICRnMTktZ2hvc3Q7XG4kdG9vbHRpcC1hY2NlbnQ6ICRjLXBvb2w7XG5cbiR0b29sdGlwLWNvZGUtYmc6ICRnMi1rZXZsYXI7XG4kdG9vbHRpcC1jb2RlLWNvbG9yOiAkYy1wb3Rhc3NpdW07XG5cbi5fX3JlYWN0X2NvbXBvbmVudF90b29sdGlwLmluZmx1eC10b29sdGlwIHtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4zZW07XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIGJvcmRlci1yYWRpdXM6ICR0b29sdGlwLXJhZGl1cztcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcblxuICAmLnR5cGUtZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gICAgY29sb3I6ICR0b29sdGlwLXRleHQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHRvb2x0aXAtYWNjZW50O1xuICB9XG4gICYudHlwZS1kYXJrLnBsYWNlLXRvcDphZnRlciB7Ym9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYWNjZW50O31cbiAgJi50eXBlLWRhcmsucGxhY2UtcmlnaHQ6YWZ0ZXIge2JvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYWNjZW50O31cbiAgJi50eXBlLWRhcmsucGxhY2UtYm90dG9tOmFmdGVyIHtib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hY2NlbnQ7fVxuICAmLnR5cGUtZGFyay5wbGFjZS1sZWZ0OmFmdGVyIHtib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYWNjZW50O31cblxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW46IDhweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEyNWVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZGVmYXVsdC1mb250O1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICBjb2RlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1jb2RlLWJnO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAzcHggNnB4IDRweCA2cHg7XG4gICAgZm9udC1zaXplOiAoJHRvb2x0aXAtZm9udCAtIDJweCk7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIG1hcmdpbjogMXB4IDJweCAxcHggMDtcbiAgICBjb2xvcjogJHRvb2x0aXAtY29kZS1jb2xvcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogOTAwO1xuICB9XG5cbiAgLyogS2FwYWNpdG9yIFN0eWxlIFRvb2x0aXAgKi9cbiAgJi5rYXBhY2l0b3ItdG9vbHRpcCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYy1yYWluZm9yZXN0ICFpbXBvcnRhbnQ7XG5cbiAgICBjb2RlIHtcbiAgICAgIGNvbG9yOiAkYy1wb29sICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYudHlwZS1kYXJrLnBsYWNlLXRvcDphZnRlciB7Ym9yZGVyLXRvcC1jb2xvcjogJGMtcmFpbmZvcmVzdDt9XG4gICAgJi50eXBlLWRhcmsucGxhY2UtcmlnaHQ6YWZ0ZXIge2JvcmRlci1yaWdodC1jb2xvcjogJGMtcmFpbmZvcmVzdDt9XG4gICAgJi50eXBlLWRhcmsucGxhY2UtYm90dG9tOmFmdGVyIHtib3JkZXItYm90dG9tLWNvbG9yOiAkYy1yYWluZm9yZXN0O31cbiAgICAmLnR5cGUtZGFyay5wbGFjZS1sZWZ0OmFmdGVyIHtib3JkZXItbGVmdC1jb2xvcjogJGMtcmFpbmZvcmVzdDt9XG4gIH1cbn1cblxuLmluZmx1eC10b29sdGlwX19ob3ZlciB7XG4gIEBleHRlbmQgLmluZmx1eC10b29sdGlwO1xuICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50O1xuICAmOmhvdmVyIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qXG4gICAgUXVlc3Rpb24gTWFyayBUb29sdGlwXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbiRxbWFyay10b29sdGlwLXNpemU6IDE1cHg7XG5cbi5xdWVzdGlvbi1tYXJrLXRvb2x0aXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ucXVlc3Rpb24tbWFyay10b29sdGlwLS1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRxbWFyay10b29sdGlwLXNpemU7XG4gIGhlaWdodDogJHFtYXJrLXRvb2x0aXAtc2l6ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAoJHFtYXJrLXRvb2x0aXAtc2l6ZSArIDFweCk7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMTAtd29sZjtcbiAgY29sb3I6ICRnMC1vYnNpZGlhbjtcbiAgbWFyZ2luOiAwIDVweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xufVxuLnF1ZXN0aW9uLW1hcmstdG9vbHRpcDpob3ZlciB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgLnF1ZXN0aW9uLW1hcmstdG9vbHRpcC0taWNvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtcG9vbDtcbiAgfVxufVxuXG5hID4gLnF1ZXN0aW9uLW1hcmstdG9vbHRpcDpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi5yZWRhY3RlZC1pbnB1dCB7XG4gIGhlaWdodDogMzhweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLmFsZXJ0LXZhbHVlLXNldCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICRjLXJhaW5mb3Jlc3Q7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG5cbiAgLmljb24ge21hcmdpbi1yaWdodDogNXB4O31cbn1cbiIsIi8qXG4gICAgUmVzaXphYmxlIENvbnRhaW5lclxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbiRyZXNpemVyLWxpbmUtd2lkdGg6IDJweDtcbiRyZXNpemVyLWxpbmUtejogMjtcbiRyZXNpemVyLWhhbmRsZS13aWR0aDogMTBweDtcbiRyZXNpemVyLWhhbmRsZS16OiAzO1xuJHJlc2l6ZXItY2xpY2stYXJlYTogMjhweDtcbiRyZXNpemVyLWdsb3c6IDE0cHg7XG4kcmVzaXplci1kb3RzOiAkZzMtY2FzdGxlO1xuJHJlc2l6ZXItY29sb3I6ICRnNS1wZXBwZXI7XG4kcmVzaXplci1jb2xvci1ob3ZlcjogJGc4LXN0b3JtO1xuJHJlc2l6ZXItY29sb3ItYWN0aXZlOiAkYy1wb29sO1xuJHJlc2l6ZXItY29sb3Ita2FwYWNpdG9yOiAkYy1yYWluZm9yZXN0O1xuLnJlc2l6ZS0tY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAmLnJlc2l6ZS0tZHJhZ2dpbmcgKiB7XG4gICAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgfVxufVxuXG4ucmVzaXplLS10b3AsXG4ucmVzaXplLS1ib3R0b20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xufVxuXG4ucmVzaXplci0tZnVsbC1zaXplIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qXG4gICAgUmVzaXphYmxlIENvbnRhaW5lciBIYW5kbGVcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4ucmVzaXplci0taGFuZGxlIHtcbiAgdG9wOiA2MCU7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogJHJlc2l6ZXItY2xpY2stYXJlYTtcbiAgbWFyZ2luLXRvcDogLSRyZXNpemVyLWNsaWNrLWFyZWEvMjtcbiAgbWFyZ2luLWJvdHRvbTogLSRyZXNpemVyLWNsaWNrLWFyZWEvMjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IC8vIFBzdWVkbyBlbGVtZW50IGZvciBoYW5kbGVcbiAgJjpiZWZvcmUge1xuICAgIHotaW5kZXg6ICRyZXNpemVyLWhhbmRsZS16O1xuICAgIGNvbG9yOiAkcmVzaXplci1kb3RzO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjNweDtcbiAgICBmb250LXNpemU6IDdweDtcbiAgICBjb250ZW50OiAn4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4peP4pePJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHdpZHRoOiAxNjBweDtcbiAgICBoZWlnaHQ6ICRyZXNpemVyLWhhbmRsZS13aWR0aDtcbiAgICBsaW5lLWhlaWdodDogJHJlc2l6ZXItaGFuZGxlLXdpZHRoO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXNpemVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG4gIH0gLy8gUHN1ZWRvIGVsZW1lbnQgZm9yIGxpbmVcbiAgJjphZnRlciB7XG4gICAgei1pbmRleDogJHJlc2l6ZXItbGluZS16O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRyZXNpemVyLWxpbmUtd2lkdGg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlc2l6ZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE5cyBlYXNlO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogbnMtcmVzaXplO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXNpemVyLWNvbG9yLWhvdmVyO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXNpemVyLWNvbG9yLWhvdmVyO1xuICAgIH1cbiAgfVxuICAmLmRyYWdnaW5nIHtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXNpemVyLWNvbG9yLWFjdGl2ZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAkcmVzaXplci1nbG93ICRyZXNpemVyLWNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLyogS2FwYWNpdG9yIFRoZW1lICovXG5cbi5yZXNpemVyLS1oYW5kbGUucmVzaXplci0tbWFsYWNoaXRlLmRyYWdnaW5nIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXNpemVyLWNvbG9yLWthcGFjaXRvcjtcbiAgICBib3gtc2hhZG93OiAwIDAgJHJlc2l6ZXItZ2xvdyAkcmVzaXplci1jb2xvci1rYXBhY2l0b3I7XG4gIH1cbn1cbiIsIi8qXG4gICAgU2VhcmNoIFdpZGdldFxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5zZWFyY2gtd2lkZ2V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICB9XG5cbiAgJjpvbmx5LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICBpbnB1dC5mb3JtLWNvbnRyb2wge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHBhZGRpbmctbGVmdDogMzRweDtcblxuICAgICY6Zm9jdXMgKyAuaWNvbiB7XG4gICAgICBjb2xvcjogJGMtcG9vbDtcbiAgICB9XG4gIH1cblxuICAuaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbG9yOiAkZzEwLXdvbGY7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMjBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIGNvbG9yIDAuMjVzIGVhc2U7XG4gIH1cbn1cbiIsIi8qXG4gIFNsaWRlIFRvZ2dsZSBDb21wb25lbnRcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLnNsaWRlLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMS1yYXZlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gIH1cbn1cbi5zbGlkZS10b2dnbGUtLWtub2Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2l0aW9uOlxuICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSxcbiAgICB0cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2U7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTUwJSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAuc2xpZGUtdG9nZ2xlOmhvdmVyICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnOC1zdG9ybTtcbiAgfVxufVxuXG4vKiBBY3RpdmUgU3RhdGUgKi9cbi5zbGlkZS10b2dnbGUuYWN0aXZlIC5zbGlkZS10b2dnbGUtLWtub2Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLC01MCUpO1xufVxuLnNsaWRlLXRvZ2dsZS5hY3RpdmU6aG92ZXIgLnNsaWRlLXRvZ2dsZS0ta25vYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLWhvbmV5ZGV3O1xufVxuXG4vKiBEaXNhYmxlZCBTdGF0ZSAqL1xuLnNsaWRlLXRvZ2dsZS5kaXNhYmxlZCB7XG4gICYsXG4gICY6aG92ZXIsXG4gICYuYWN0aXZlLFxuICAmLmFjdGl2ZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG4gIC5zbGlkZS10b2dnbGUtLWtub2IsXG4gICY6aG92ZXIgLnNsaWRlLXRvZ2dsZS0ta25vYixcbiAgJi5hY3RpdmUgLnNsaWRlLXRvZ2dsZS0ta25vYixcbiAgJi5hY3RpdmU6aG92ZXIgLnNsaWRlLXRvZ2dsZS0ta25vYiB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgfVxuICAuc2xpZGUtdG9nZ2xlLS1rbm9iLFxuICAmOmhvdmVyIC5zbGlkZS10b2dnbGUtLWtub2Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNi1zbW9rZTtcbiAgfVxuICAmLmFjdGl2ZSAuc2xpZGUtdG9nZ2xlLS1rbm9iLFxuICAmLmFjdGl2ZTpob3ZlciAuc2xpZGUtdG9nZ2xlLS1rbm9iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICB9XG59XG5cbi8qIFNpemUgTW9kaWZpZXJzICovXG5cbi5zbGlkZS10b2dnbGUge1xuICAvKiBFeHRyYSBTbWFsbCAqL1xuICAmLnNsaWRlLXRvZ2dsZV9feHMge1xuICAgIC5zbGlkZS10b2dnbGUtLWtub2Ige1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgfVxuICAgIGhlaWdodDogMjJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMXB4O1xuICAgIHdpZHRoOiA0MHB4O1xuICB9XG4gIC8qIEV4dHJhIFNtYWxsICovXG4gICYuc2xpZGUtdG9nZ2xlX19zbSB7XG4gICAgLnNsaWRlLXRvZ2dsZS0ta25vYiB7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGhlaWdodDogMjJweDtcbiAgICB9XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgd2lkdGg6IDUycHg7XG4gIH1cbn1cbiIsIi8qXG4gICAgU291cmNlICYgUm9sZSBJbmRpY2F0b3IgY29tcG9uZW50IHN0eWxlc1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4ucm9sZS1pbmRpY2F0b3IsXG4uc291cmNlLWluZGljYXRvciB7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCA0cHg7XG4gIGJvcmRlcjogMDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgY29sb3I6ICRnMTMtbWlzdDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuXG4gID4gLmljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luOiAwIDRweDtcbiAgfVxufVxuIiwiLypcbiAgICBTb3VyY2UgU2VsZWN0b3IgY29tcG9uZW50IHN0eWxlc1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5zb3VyY2Utc2VsZWN0b3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgZmxleDogMSAwIDA7XG5cbiAgaDMge1xuICAgIG1hcmdpbjogMCA0cHggMCAwO1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBjb2xvcjogJGcxMy1taXN0O1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIH1cbn1cbiIsIi8qXG4gICAgVGFibGUgU3R5bGVzXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIE1vc3QgdGFibGUgc3R5bGVzIGFyZSBsb2NhdGVkIGluIHRoZSBCb290c3RyYXBcbiAgICBUaGVtZS4gU3R5bGVzIGluIGhlcmUgYXJlIGZvciBzcGVjaWZpYyBhZGRpdGlvbnNcbiAgICB0byB0YWJsZXMgdGhhdCBib290c3RyYXAgZG9lcyBub3QgZG8gb24gaXRzIG93blxuKi9cblxuLy8gdGFibGUtY3VzdG9tIGNsYXNzIGFsbG93cyB1cyB0byBtYWtlIGEgdGFibGUgZnJvbSBkaXZzIHNvIHdlIGNhbiB1c2Vcbi8vIGZvcm1zIGluc2lkZSBhIHRhYmxlXG4udGFibGUtY3VzdG9tIHtcbiAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDJweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIC50aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBjb2xvcjogJGcxNy13aGlzcGVyICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIH1cbiAgLnRoIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICRnMTQtY2hyb21pdW0gIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA2cHggOHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRib2R5IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XG4gIH1cbiAgLnRyIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIH1cbiAgLnRkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICRnMTQtY2hyb21pdW0gIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA2cHggOHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRyIC50ZCAuaW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gICAgY29sb3I6ICRnMTktZ2hvc3QgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKlxuICAgIFNvcnRhYmxlIFRhYmxlc1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG50YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0YWJsZS1oZWFkZXIsXG4uYWxlcnQtaGlzdG9yeS10YWJsZS0tdGguc29ydGFibGUtaGVhZGVyIHtcbiAgdHJhbnNpdGlvbjpcbiAgICBjb2xvciAwLjI1cyBlYXNlLFxuICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXGU5MTAnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogOHB4O1xuICAgIGNvbG9yOiAkZzIwLXdoaXRlO1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIG9wYWNpdHkgMC4yNXMgZWFzZSxcbiAgICAgIGNvbG9yIDAuMjVzIGVhc2UsXG4gICAgICB0cmFuc2Zvcm0gMC4zNXMgZWFzZTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJGcxOS1naG9zdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICB9XG4gICYuc29ydGluZy1hc2NlbmRpbmcsXG4gICYuc29ydGluZy1kZXNjZW5kaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICAgIGNvbG9yOiAkZzE5LWdob3N0O1xuXG4gICAgJjphZnRlciB7b3BhY2l0eTogMTt9XG4gIH1cbiAgJi5zb3J0aW5nLWFzY2VuZGluZzphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICB9XG4gICYuc29ydGluZy1kZXNjZW5kaW5nOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDBkZWcpO1xuICB9XG59XG5cbi8qXG4gICAgRW1wdHkgU3RhdGUgZm9yIFRhYmxlc1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG50ci50YWJsZS1lbXB0eS1zdGF0ZSxcbi50YWJsZS50YWJsZS1oaWdobGlnaHQgPiB0Ym9keSA+IHRyLnRhYmxlLWVtcHR5LXN0YXRlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgPiB0aCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG5cbiAgICA+IHAge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGNvbG9yOiAkZzktbW91bnRhaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgIH1cbiAgICA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogNzVweDtcbiAgICB9XG4gICAgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICB9XG4gIH1cbn1cblxuLypcbiAgICBUYWJsZSBUYWJzXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbiR0YWJsZS10YWItaGVpZ2h0OiAzMHB4O1xuJHRhYmxlLXRhYi1zY3JvbGxiYXItaGVpZ2h0OiA2cHg7XG5cbi50YWJsZS0tdGFicyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHRhYmxlLXRhYi1oZWlnaHQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udGFibGUtLXRhYiB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgaGVpZ2h0OiAkdGFibGUtdGFiLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cy1zbWFsbCAkcmFkaXVzLXNtYWxsIDAgMDtcbiAgbGluZS1oZWlnaHQ6ICR0YWJsZS10YWItaGVpZ2h0O1xuICBwYWRkaW5nOiAwIDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgdHJhbnNpdGlvbjpcbiAgICBjb2xvciAwLjI1cyBlYXNlLFxuICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICAgIGNvbG9yOiAkZzE1LXBsYXRpbnVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc2LXNtb2tlO1xuICAgIGNvbG9yOiAkZzE4LWNsb3VkO1xuICB9XG59XG4udGFibGUtLXRhYnMtZHJvcGRvd24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udGFibGUtLXRhYnMtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtICN7JHRhYmxlLXRhYi1oZWlnaHR9KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICR0YWJsZS10YWItaGVpZ2h0O1xufVxuXG4udGFibGUtLXRhYnMgKyAudGFibGUtLXRhYnMtY29udGVudCA+IC5nZW5lcmljLWVtcHR5LXN0YXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc2LXNtb2tlICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgJHJhZGl1cy1zbWFsbCAkcmFkaXVzLXNtYWxsICRyYWRpdXMtc21hbGw7XG59XG5cblxuLnRhYmxlID4gdGJvZHkgPiB0ci5oaWdobGlnaHQsXG4udGFibGUudGFibGUtaGlnaGxpZ2h0ID4gdGJvZHkgPiB0ci5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbn1cblxuLypcbiAgICBBbGVydCBIaXN0b3J5IFwiUGFnZVwiXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5hbGVydC1oaXN0b3J5LXBhZ2UsXG4uaG9zdHMtbGlzdC1wYWdlIHtcbiAgLnBhZ2UtY29udGVudHMgPiAuY29udGFpbmVyLWZsdWlkLFxuICAucGFnZS1jb250ZW50cyA+IC5jb250YWluZXItZmx1aWQgPiAucm93LFxuICAucGFnZS1jb250ZW50cyA+IC5jb250YWluZXItZmx1aWQgPiAucm93ID4gLmNvbC1tZC0xMixcbiAgLnBhZ2UtY29udGVudHMgPiAuY29udGFpbmVyLWZsdWlkID4gLnJvdyA+IC5jb2wtbWQtMTIgPiAucGFuZWwge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5jb2wtbWQtMTIgPiAucGFuZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgID4gLnBhbmVsLWJvZHkge2ZsZXg6IDEgMCAwJTt9XG4gICAgLmdlbmVyaWMtZW1wdHktc3RhdGUge2hlaWdodDogMTAwJTt9XG4gIH1cbn1cblxuLypcbiAgICBNaXNjXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi50YWJsZSAuZW1wdHktc3RyaW5nIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICRnOC1zdG9ybTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLnRhYmxlIC50YWJsZS0tdGVtcC12YXIge1xuICBjb2xvcjogJGMtY29tZXQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi8qXG4gICAgQWxlcnQgSGlzdG9yeSBcIlRhYmxlXCJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4uYWxlcnQtaGlzdG9yeS10YWJsZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uYWxlcnQtaGlzdG9yeS10YWJsZS0tdGhlYWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRnNS1wZXBwZXI7XG59XG4uYWxlcnQtaGlzdG9yeS10YWJsZS0tdGgge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBwYWRkaW5nOiA4cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICRnMTctd2hpc3Blcjtcbn1cbi5hbGVydC1oaXN0b3J5LXRhYmxlLS10Ym9keSB7XG4gIGZsZXg6IDEgMCAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5hbGVydC1oaXN0b3J5LXRhYmxlLS10ciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgfVxufVxuLmFsZXJ0LWhpc3RvcnktdGFibGUtLXRkIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZzogNHB4IDhweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDNlbTtcbiAgY29sb3I6ICRnMTMtbWlzdDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG5cbiAgJi5hbGVydC1oaXN0b3J5LXRhYmxlLS1ob3N0IHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG59XG5cbi8qXG4gICAgTm8gV3JhcCBDZWxsc1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbnRhYmxlIC50YWJsZS1jZWxsLW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4vKlxuICAgIEhvc3RzIFwiVGFibGVcIlxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5ob3N0cy10YWJsZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uaG9zdHMtdGFibGUtLXRoZWFkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZzUtcGVwcGVyO1xufVxuLmhvc3RzLXRhYmxlLS10aCB7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIHBhZGRpbmc6IDhweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogJGcxNy13aGlzcGVyO1xufVxuLmhvc3RzLXRhYmxlLS10Ym9keSB7XG4gIGZsZXg6IDEgMCAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5ob3N0cy10YWJsZS0tdHIge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gIH1cbn1cbi5ob3N0cy10YWJsZS0tdGQge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiA0cHggOHB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0M2VtO1xuICBjb2xvcjogJGcxMy1taXN0O1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbn1cbiIsIi8qXG4gICAgVGFibGUgVHlwZSBHcmFwaHMgaW4gRGFzaGJvYXJkc1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi50YWJsZS1ncmFwaC1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMnB4KTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgdG9wOiA4cHg7XG4gIGxlZnQ6IDE2cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRnNS1wZXBwZXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRhYmxlLWdyYXBoLWNlbGwge1xuICB1c2VyLXNlbGVjdDogdGV4dCAhaW1wb3J0YW50O1xuICAtby11c2VyLXNlbGVjdDogdGV4dCAhaW1wb3J0YW50O1xuICAtbW96LXVzZXItc2VsZWN0OiB0ZXh0ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7IC8vIENlbGwgaGVpZ2h0IC0gMnggYm9yZGVyIHdpZHRoXG4gIHBhZGRpbmc6IDAgNnB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAkZzEyLWZvcmdlO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZzUtcGVwcGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAvLyBIaWdobGlnaHRcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgJl9fbnVtZXJpY2FsIHtcbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAmX19maXhlZC1yb3csXG4gICZfX2ZpeGVkLWNvbHVtbiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogJGcxNC1jaHJvbWl1bTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgfVxuICAmX19maXhlZC1yb3cge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbiAgJl9fZml4ZWQtY29sdW1uIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuICAmX19maXhlZC1jb3JuZXIge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBjb2xvcjogJGcxOC1jbG91ZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICB9XG4gICZfX2hpZ2hsaWdodC1yb3c6YWZ0ZXIsXG4gICZfX2hpZ2hsaWdodC1jb2x1bW46YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgJl9faGlnaGxpZ2h0LXJvdy50YWJsZS1ncmFwaC1jZWxsX19oaWdobGlnaHQtY29sdW1uIHtcbiAgICBib3JkZXItY29sb3I6ICRnMjAtd2hpdGU7XG4gICAgJjphZnRlciB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuICB9XG4gICZfX2ZpZWxkLW5hbWUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE3cHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICBjb250ZW50OiBcIlxcZTkwMlwiO1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogNnB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgY29sb3IgMC4yNXMgZWFzZSwgdHJhbnNmb3JtIDAuMjVzIGVhc2U7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAmOmhvdmVyOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuICAmX19zb3J0LWFzYyxcbiAgJl9fc29ydC1kZXNjIHtcbiAgICBjb2xvcjogJGMtcG9vbDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gICZfX3NvcnQtYXNjOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAmX19zb3J0LWRlc2M6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cblxuLlJlYWN0VmlydHVhbGl6ZWRfX0dyaWQge1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogMHB4O1xuICAgIGhlaWdodDogMHB4O1xuICB9XG4gICYudGFibGUtZ3JhcGgtLXNjcm9sbC13aW5kb3cge1xuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuXG4gICAgICAmLWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gICAgICB9XG4gICAgICAmLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICAgIH1cbiAgICAgICYtdHJhY2stcGllY2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkZzUtcGVwcGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICB9XG4gICAgICAmLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGcxMS1zaWRld2FsaztcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGc1LXBlcHBlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgfVxuICAgICAgJi1jb3JuZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAmOjotd2Via2l0LXJlc2l6ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4gIFJlc2l6YWJsZSBDb250YWluZXIgd2l0aCAzIGRpdmlzaW9uc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbiR0aHJlZXNpemVyLWhhbmRsZTogMzBweDtcblxuLnRocmVlc2l6ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAmLmRyYWdnaW5nIC50aHJlZXNpemVyLS1kaXZpc2lvbiB7XG4gICAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYudmVydGljYWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAmLmhvcml6b250YWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLnRocmVlc2l6ZXItLWRpdmlzaW9uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMjVzIGVhc2UtaW4tb3V0LCB3aWR0aCAwLjI1cyBlYXNlLWluLW91dDtcblxuICAmLmRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgJi52ZXJ0aWNhbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gICYuaG9yaXpvbnRhbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4vKiBEcmFnZ2FibGUgSGFuZGxlIFdpdGggVGl0bGUgKi9cbi50aHJlZXNpemVyLS1oYW5kbGUge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLCBjb2xvciAwLjI1cyBlYXNlO1xuXG4gICYudmVydGljYWwge1xuICAgIGJvcmRlci1yaWdodDogc29saWQgMnB4ICRnMy1jYXN0bGU7XG5cbiAgICAmOmhvdmVyLFxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICAgIH1cbiAgfVxuXG4gICYuaG9yaXpvbnRhbCB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICRnMy1jYXN0bGU7XG5cbiAgICAmOmhvdmVyLFxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgY3Vyc29yOiByb3ctcmVzaXplO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgICYuZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIGNvbG9yOiAkZzE2LXBlYXJsO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gIH1cblxuICAmLmRyYWdnaW5nIHtcbiAgICBjb2xvcjogJGMtbGFzZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgfVxufVxuXG4udGhyZWVzaXplci0tdGl0bGUge1xuICBwYWRkaW5nLWxlZnQ6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgei1pbmRleDogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2U7XG5cbiAgJi52ZXJ0aWNhbCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjhweCwgMTRweCk7XG5cbiAgICAmLnRocmVlc2l6ZXItLWNvbGxhcHNlZCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAzcHgpIHJvdGF0ZSg5MGRlZyk7XG4gICAgfVxuICB9XG59XG5cbiR0aHJlZXNpemVyLXNoYWRvdy1zaXplOiA5cHg7XG4kdGhyZWVzaXplci16LWluZGV4OiAyO1xuJHRocmVlc2l6ZXItc2hhZG93LXN0YXJ0OiBmYWRlLW91dCgkZzAtb2JzaWRpYW4sIDAuODIpO1xuJHRocmVlc2l6ZXItc2hhZG93LXN0b3A6IGZhZGUtb3V0KCRnMC1vYnNpZGlhbiwgMSk7XG5cbi50aHJlZXNpemVyLS1jb250ZW50cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYuaG9yaXpvbnRhbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gICYudmVydGljYWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAvLyBCb3R0b20gU2hhZG93XG4gICYuaG9yaXpvbnRhbDphZnRlcixcbiAgJi52ZXJ0aWNhbDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAkdGhyZWVzaXplci16LWluZGV4O1xuICB9XG5cbiAgJi5ob3Jpem9udGFsOmFmdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR0aHJlZXNpemVyLXNoYWRvdy1zaXplO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXYoJHRocmVlc2l6ZXItc2hhZG93LXN0b3AsICR0aHJlZXNpemVyLXNoYWRvdy1zdGFydCk7XG4gIH1cblxuICAmLnZlcnRpY2FsOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6ICR0aHJlZXNpemVyLXNoYWRvdy1zaXplO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWgoJHRocmVlc2l6ZXItc2hhZG93LXN0b3AsICR0aHJlZXNpemVyLXNoYWRvdy1zdGFydCk7XG4gIH1cbn1cblxuLy8gSGlkZSBib3R0b20gc2hhZG93IG9uIGxhc3QgZGl2aXNpb25cbi50aHJlZXNpemVyLS1jb250ZW50cy5uby1zaGFkb3dzOmJlZm9yZSxcbi50aHJlZXNpemVyLS1jb250ZW50cy5uby1zaGFkb3dzOmFmdGVyLFxuLnRocmVlc2l6ZXItLWRpdmlzaW9uOmxhc3QtY2hpbGQgLnRocmVlc2l6ZXItLWNvbnRlbnRzOmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gSGVhZGVyXG4udGhyZWVzaXplci0taGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgXG4gIC5ob3Jpem9udGFsID4gJiB7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGc0LW9ueXg7XG4gIH1cblxuICAudmVydGljYWwgPiAmIHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRnNC1vbnl4O1xuICB9XG59XG5cbi50aHJlZXNpemVyLS1ib2R5IHtcbiAgLmhvcml6b250YWwgPiAmOm9ubHktY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnZlcnRpY2FsID4gJjpvbmx5LWNoaWxkIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgXG4gIC50aHJlZXNpemVyLS1oZWFkZXIgKyAmIHtcbiAgICBmbGV4OiAxIDAgMDtcbiAgfVxufVxuIiwiLypcbiAgVGhyZXNob2xkIENvbnRyb2xzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBVc2VkIHByaW1hcmlseSB3aXRoaW4gdGhlIENlbGwgRWRpdG9yIE92ZXJsYXkgZm9yIFNpbmdsZSBTdGF0LCBHYXVnZSxcbiAgYW5kIFRhYmxlIHR5cGUgY2VsbHNcbiovXG5cbi50aHJlc2hvbGRzLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLnRocmVzaG9sZC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luLXRvcDogOHB4O1xuXG4gID4gKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbiV0aHJlc2hvbGQtaXRlbS0tbGFiZWwtc3R5bGVzIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBwYWRkaW5nOiAwIDExcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbn1cblxuLnRocmVzaG9sZC1pdGVtLS1sYWJlbCB7XG4gIEBleHRlbmQgJXRocmVzaG9sZC1pdGVtLS1sYWJlbC1zdHlsZXM7XG4gIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgd2lkdGg6IDEyMHB4O1xufVxuXG4udGhyZXNob2xkLWl0ZW0tLWxhYmVsX19lZGl0YWJsZSB7XG4gIEBleHRlbmQgJXRocmVzaG9sZC1pdGVtLS1sYWJlbC1zdHlsZXM7XG4gIGNvbG9yOiAkZzE2LXBlYXJsO1xuICB3aWR0aDogOTBweDtcbn1cblxuLnRocmVzaG9sZC1pdGVtLS1pbnB1dCB7XG4gIGZsZXg6IDEgMCAwO1xufVxuXG4udGhyZXNob2xkLWl0ZW0gLmNvbG9yLWRyb3Bkb3duLmNvbG9yLWRyb3Bkb3duLS1zdHJldGNoIHtcbiAgd2lkdGg6IGF1dG87XG4gIGZsZXg6IDEgMCAwO1xufVxuIiwiLypcbiAgICBTdHlsZXMgZm9yIEthcGFjaXRvciBMb2dzIFRhYmxlXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJGxvZ3MtdGFibGUtaGVhZGVyLWhlaWdodDogNjBweDtcbiRsb2dzLXRhYmxlLXBhZGRpbmc6IDYwcHg7XG4kbG9ncy1yb3ctaW5kZW50OiA2cHg7XG4kbG9ncy1sZXZlbC1kb3Q6IDhweDtcbiRsb2dzLW1hcmdpbjogNHB4O1xuXG4ubG9ncy10YWJsZSB7XG4gIHdpZHRoOiA1MCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmxvZ3MtdGFibGUtLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGhlaWdodDogJGxvZ3MtdGFibGUtaGVhZGVyLWhlaWdodDtcbiAgcGFkZGluZzogMCAkbG9ncy10YWJsZS1wYWRkaW5nIDAgKCRsb2dzLXRhYmxlLXBhZGRpbmcgLyAyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE1ZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4ubG9ncy10YWJsZS0tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogJGxvZ3MtdGFibGUtaGVhZGVyLWhlaWdodDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gI3skbG9ncy10YWJsZS1oZWFkZXItaGVpZ2h0fSkgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtdihtaXgoJGczLWNhc3RsZSwgJGcyLWtldmxhciksbWl4KCRnMS1yYXZlbiwgJGcwLW9ic2lkaWFuKSk7XG59XG5cbi5sb2dzLXRhYmxlLS1yb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDhweCAoJGxvZ3MtdGFibGUtcGFkZGluZyAtIDE2cHgpIDhweCAoJGxvZ3MtdGFibGUtcGFkZGluZyAvIDIpO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGczLWNhc3RsZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuXG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG4ubG9ncy10YWJsZS0tZGl2aWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubG9ncy10YWJsZS0tbGV2ZWwge1xuICB3aWR0aDogJGxvZ3MtbGV2ZWwtZG90O1xuICBoZWlnaHQ6ICRsb2dzLWxldmVsLWRvdDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1yaWdodDogJGxvZ3Mtcm93LWluZGVudDtcblxuICAmLmRlYnVnIHtiYWNrZ3JvdW5kLWNvbG9yOiAkYy1jb21ldDt9XG4gICYuaW5mbyB7YmFja2dyb3VuZC1jb2xvcjogJGc2LXNtb2tlO31cbiAgJi53YXJuIHtiYWNrZ3JvdW5kLWNvbG9yOiAkYy1waW5lYXBwbGU7fVxuICAmLm9rIHtiYWNrZ3JvdW5kLWNvbG9yOiAkYy1wb29sO31cbiAgJi5lcnJvciB7YmFja2dyb3VuZC1jb2xvcjogJGMtZHJlYW1zaWNsZTt9XG59XG4ubG9ncy10YWJsZS0tdGltZXN0YW1wIHtcbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICRnOS1tb3VudGFpbjtcbiAgZmxleDogMSAwIDA7XG59XG4ubG9ncy10YWJsZS0tZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmctbGVmdDogKCRsb2dzLWxldmVsLWRvdCArICRsb2dzLXJvdy1pbmRlbnQpO1xuXG4gIC5lcnJvciB7Y29sb3I6ICRjLWRyZWFtc2ljbGU7fVxuICAuZGVidWcge2NvbG9yOiAkYy1jb21ldDt9XG59XG5cbi8qIExvZ3MgVGFibGUgSXRlbSBUeXBlcyAqL1xuLmxvZ3MtdGFibGUtLXNlcnZpY2UsXG4ubG9ncy10YWJsZS0tY29sdW1uIGgxIHtcbiAgbWFyZ2luLXRvcDogMnB4O1xufVxuLmxvZ3MtdGFibGUtLXNlc3Npb24ge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLmxvZ3MtdGFibGUtLXNlcnZpY2Uge1xuICB3aWR0aDogMTQwcHg7XG59XG4ubG9ncy10YWJsZS0tY29sdW1ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCAwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4ubG9ncy10YWJsZS0tY29sdW1uIHtcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIGZsZXg6IDEgMCA1MCU7XG59XG4ubG9ncy10YWJsZS0tY29sdW1uIGgxIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDA7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkZzE2LXBlYXJsO1xufVxuLmxvZ3MtdGFibGUtLWtleS12YWx1ZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHNwYW4ge1xuICAgIGNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICB9XG59XG4ubG9ncy10YWJsZS0tc2Nyb2xsYm94IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDMwMHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyLXJvdW5kKCRnMC1vYnNpZGlhbiwkYy1yYWluZm9yZXN0KTtcbn1cbiIsIi8qXG4gICAgS2FwYWNpdG9yIENvbmZpZyBTdHlsZXNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kY29uZmlnLWVuZHBvaW50LXRhYi1oZWlnaHQ6IDQwcHg7XG5cbiRjb25maWctZW5kcG9pbnQtdGFiLXRleHQ6ICRnMTAtd29sZjtcbiRjb25maWctZW5kcG9pbnQtdGFiLXRleHQtaG92ZXI6ICRnMTUtcGxhdGludW07XG4kY29uZmlnLWVuZHBvaW50LXRhYi10ZXh0LWFjdGl2ZTogJGcxOC1jbG91ZDtcblxuJGNvbmZpZy1lbmRwb2ludC10YWItYmc6IHRyYW5zcGFyZW50O1xuJGNvbmZpZy1lbmRwb2ludC10YWItYmctaG92ZXI6ICRnMy1jYXN0bGU7XG4kY29uZmlnLWVuZHBvaW50LXRhYi1iZy1hY3RpdmU6ICRnMy1jYXN0bGU7XG5cbi5jb25maWctZW5kcG9pbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cbi5jb25maWctZW5kcG9pbnQtLXRhYnMge1xuICBmbGV4OiAwIDAgMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLmJ0bi1ncm91cC50YWItZ3JvdXAge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzIDAgMCAkcmFkaXVzO1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDEgMCAwJTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgLmJ0bi50YWIge1xuICAgICAgY29sb3I6ICRjb25maWctZW5kcG9pbnQtdGFiLXRleHQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZmlnLWVuZHBvaW50LXRhYi1iZztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBoZWlnaHQ6ICRjb25maWctZW5kcG9pbnQtdGFiLWhlaWdodDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDAgNTBweCAwIDE1cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge2JvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7fVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRjb25maWctZW5kcG9pbnQtdGFiLXRleHQtaG92ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25maWctZW5kcG9pbnQtdGFiLWJnLWhvdmVyO1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJGNvbmZpZy1lbmRwb2ludC10YWItdGV4dC1hY3RpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25maWctZW5kcG9pbnQtdGFiLWJnLWFjdGl2ZTtcbiAgICAgIH1cblxuICAgICAgLy8gQ2hlY2ttYXJrIGZvciBjb25maWd1cmVkIHN0YXRlLCBoaWRkZW4gYnkgZGVmYXVsdFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE4XCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgICAgIGNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogMTRweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gICAgICB9XG4gICAgICAmLmNvbmZpZ3VyZWQ6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmNvbmZpZy1lbmRwb2ludC0tdGFiLWNvbnRlbnRzIHtcbiAgZmxleDogMSAwIDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZmlnLWVuZHBvaW50LXRhYi1iZy1hY3RpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDAgJHJhZGl1cyAkcmFkaXVzIDA7XG4gIHBhZGRpbmc6IDE2cHggNDJweDtcbn1cbiIsIiNzaWdudXAtcGFnZSB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG5cbiAgLy8gUHJvZ3Jlc3MgaW5kaWNhdG9yIGZvciBhZG1pbiBzaWdudXBcbiAgLnNpZ251cC1wcm9ncmVzcy1jaXJjbGUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA5MHB4O1xuICAgIGhlaWdodDogOTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDkwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuXG4gICAgJi5zdGVwMW9mMyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvc2lnbnVwLXByb2dyZXNzLWNpcmNsZS0xLnN2Zyk7XG4gICAgfVxuICAgICYuc3RlcDJvZjMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL3NpZ251cC1wcm9ncmVzcy1jaXJjbGUtMi5zdmcpO1xuICAgIH1cbiAgICAmLnN0ZXAzb2YzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9zaWdudXAtcHJvZ3Jlc3MtY2lyY2xlLTMuc3ZnKTtcbiAgICB9XG4gICAgJi5zdGVwMW9mMiB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvc2lnbnVwLXByb2dyZXNzLWNpcmNsZS0xb2YyLnN2Zyk7XG4gICAgfVxuICAgICYuc3RlcDJvZjIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL3NpZ251cC1wcm9ncmVzcy1jaXJjbGUtMm9mMi5zdmcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBTdHlsZXMgZm9yIFwiTmV4dFwiIGJ1dHRvbnMgaW4gc2lnbnVwIGZsb3dcbiAgLmJ0bi5idG4tbmV4dCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgPiBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG4gIFxuICAvLyBNYWtpbmcgdGhlIG9uZSBwYW5lbCBpbiBzaWdudXAgZmxvdyBtb3JlIHNwYWNpb3VzXG4gIC5wYW5lbC1ib2R5IHtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICB9XG5cbiAgLy8gQ3VzdG9tIHNpbmdsZS1saW5lIGZvcm0gZm9yIGludml0aW5nIHVzZXJzXG4gIC51c2VyLWludml0ZS1mb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgZmxleDogNjtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICBmbGV4OiAzO1xuICAgIH1cbiAgICAuYnRuIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIH1cbiAgfVxuICAucm9sZS1kZXNjcmlwdGlvbiB7XG4gICAgY29sb3I6ICRnMTAtd29sZjtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuXG4gIC8vIEludml0ZWQgVXNlcnMgVGFibGVcbiAgdGFibGUudGFibGUuaW52aXRlZC11c2VycyB7XG4gICAgdGJvZHkgdHIgdGQsXG4gICAgdGhlYWQgdHIgdGgge1xuXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGJvZHkgdHI6bGFzdC1jaGlsZCB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGcxOC1jbG91ZDtcbiAgICB9XG4gIH1cbiAgLy8gQ3VzdG9tIHN0eWxlIGZvciB1bmludml0aW5nIHVzZXJzXG4gIGEudW5pbnZpdGUtdXNlciB7XG4gICAgY29sb3I6ICRnMTMtbWlzdDtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjLWN1cmFjYW87XG4gICAgfVxuICB9XG5cbiAgLmRhdGFiYXNlLW9wdGlvbnMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAjc2VydmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICB9XG5cbiAgLnNlcnZlci1ncm91cCB7XG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgIH1cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgLmNvbmZpcm1hdGlvbi1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuXG4gIC5pbnZpdGUtdXNlci1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgLmZvcm0tZ3JvdXAuaW52aXRlLXVzZXItZW1haWwge1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB3aWR0aDogNjAlO1xuICAgIH1cblxuICAgIC5idG4taW52aXRlIHtcbiAgICAgIHdpZHRoOiAxNSU7XG4gICAgfVxuXG4gIH1cblxuXG4gIC5zaWdudXAtcHJvZ3Jlc3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IGxhcmdlO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cblxuICAuZ2xvYmFsLWFkbWluLFxuICAuc2V0dXAtZGF0YWJhc2UsXG4gIC5jcmVhdGUtYWRtaW4sXG4gIC5jcmVhdGUtbG9naW4sXG4gIC5hY2Nlc3MtaW5mbyxcbiAgLmNyZWF0ZS1jbHVzdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIHBhZGRpbmc6IDAgNjBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRUVGMEYyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIC5wYXNzd29yZC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC50YWJsZS1jb250YWluZXIge1xuICAgICAgbWF4LWhlaWdodDogMTcwcHg7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cblxuICAgIC5zZXJ2ZXItdGFibGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5jb25maXJtYXRpb24tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAuYnRuIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZmxleDogMTtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmNvcHkge1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubGFiZWwubGFiZWwtc3VjY2VzcyxcbiAgICAubGFiZWwubGFiZWwtZGFuZ2VyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLypcbiAgICBTdHlsZXMgZm9yIEF1dGhvcml6YXRpb24gUGFnZVxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4uYXV0aC1wYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyKCRnMy1jYXN0bGUsICRjLXBvb2wpO1xuICBAaW5jbHVkZSBncmFkaWVudC12KCRnMy1jYXN0bGUsICRnMC1vYnNpZGlhbik7XG4gIHBhZGRpbmc6ICRzaWRlYmFyLS13aWR0aDtcbn1cbi5hdXRoLWltYWdlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGFzc2V0cy9pbWFnZXMvYXV0aC1iZy5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbn1cbi5hdXRoLWJveCB7XG4gIHotaW5kZXg6IDkwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDMlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGgxIHtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgZm9udC1zaXplOiA1MnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICB9XG4gIHAge1xuICAgIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIH1cblxuICA+IC5idG4ge1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXRvcDogKCRzaWRlYmFyLS13aWR0aCAvIDIpO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHNpZGViYXItLXdpZHRoO1xuICAgIH1cblxuICAgID4gLmljb24ge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgfVxuICB9XG59XG4uYXV0aC1sb2dvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGFzc2V0cy9pbWFnZXMvYXV0aC1sb2dvLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG59XG4uYXV0aC1jcmVkaXRzIHtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgei1pbmRleDogOTA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAoJHNpZGViYXItLXdpZHRoIC8gNCk7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuXG4gIC5pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICB9XG59XG5cbi8qXG4gICAgU3R5bGVzIGZvciBQdXJnYXRvcnkgUGFnZVxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4uYXV0aC0tcHVyZ2F0b3J5IHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgbWluLXdpZHRoOiA0MDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGczLWNhc3RsZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgcGFkZGluZzogMzBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiBoMyB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuICA+IHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIGhyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYXV0aC0tbGlzdCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIHdpZHRoOiA1MDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uYXV0aC0tbGlzdC1pdGVtIHtcbiAgaGVpZ2h0OiA3MHB4O1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgbWFyZ2luOiAycHggMDtcbn1cbi5hdXRoLS1saXN0LWluZm8ge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xufVxuLmF1dGgtLWxpc3Qtb3JnIHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogJGcxMS1zaWRld2Fsaztcbn1cbi5hdXRoLS1saXN0LXJvbGUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogJGcxMy1taXN0O1xufVxuXG4uYXV0aC0tbGlzdC1pdGVtLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XG4gIG1hcmdpbjogMnB4IC0xMHB4O1xuICBwYWRkaW5nOiAwIDMwcHg7XG5cbiAgPiAuYXV0aC0tbGlzdC1pbmZvID4gLmF1dGgtLWxpc3Qtb3JnLFxuICA+IC5hdXRoLS1saXN0LWluZm8gPiAuYXV0aC0tbGlzdC1yb2xlIHtcbiAgICBjb2xvcjogJGcyMC13aGl0ZTtcbiAgfVxufVxuLmF1dGgtLWxpc3QtYmxvY2tlZCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAkZzktbW91bnRhaW47XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG59XG4uYnRuLmF1dGgtLWxvZ291dCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG4iLCIvKlxuICAgIEthcGFjaXRvciBSdWxlIEJ1aWxkZXJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4kcnVsZS1idWlsZGVyLS1hY2NlbnQtY29sb3I6ICRjLXJhaW5mb3Jlc3Q7XG4kcnVsZS1idWlsZGVyLS1sZWZ0LWd1dHRlcjogNDZweDtcbiRydWxlLWJ1aWxkZXItLXNlY3Rpb24tZ2FwOiAoJGNocm9ub2dyYWYtcGFnZS1oZWFkZXItaGVpZ2h0IC8gMik7XG4kcnVsZS1idWlsZGVyLS1zZWN0aW9uLWJnOiAkZzMtY2FzdGxlO1xuJHJ1bGUtYnVpbGRlci0tc2VjdGlvbi1ib3JkZXI6ICRnMi1rZXZsYXI7XG4kcnVsZS1idWlsZGVyLS1kb3Q6IDZweDtcbiRydWxlLWJ1aWxkZXItLWFjY2VudC1saW5lLXdpZHRoOiAzcHg7XG4kcnVsZS1idWlsZGVyLS1hY2NlbnQtbGluZS1jb2xvcjogJGc1LXBlcHBlcjtcbiRydWxlLWJ1aWxkZXItLWZvbnQtc2l6ZTogMTNweDtcbiRydWxlLWJ1aWxkZXItLXF1ZXJ5LWJ1aWxkZXItaGVpZ2h0OiAyNDBweDtcblxuJHJ1bGUtYnVpbGRlci0tcGFkZGluZy1zbTogOHB4O1xuJHJ1bGUtYnVpbGRlci0tcGFkZGluZy1tZDogMTNweDtcbiRydWxlLWJ1aWxkZXItLXBhZGRpbmctbGc6IDI0cHg7XG4kcnVsZS1idWlsZGVyLS1yYWRpdXMtbGc6IDVweDtcblxuLnJ1bGUtYnVpbGRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuLnJ1bGUtYnVpbGRlciBwIHtcbiAgbWFyZ2luOiAwICgkcnVsZS1idWlsZGVyLS1wYWRkaW5nLXNtIC0gMnB4KTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICRnMTUtcGxhdGludW07XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLypcbiAgR2VuZXJpYyBSdWxlIFNlY3Rpb24gc3R5bGVzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLnJ1bGUtc2VjdGlvbi0taGVhZGluZyxcbi5ydWxlLXNlY3Rpb24tLWJvZHkge1xuICBwYWRkaW5nLWxlZnQ6ICRydWxlLWJ1aWxkZXItLWxlZnQtZ3V0dGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAvLyBWZXJ0aWNhbCBMaW5lXG4gICY6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6ICRydWxlLWJ1aWxkZXItLWFjY2VudC1saW5lLXdpZHRoO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnVsZS1idWlsZGVyLS1hY2NlbnQtbGluZS1jb2xvcjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogKCRydWxlLWJ1aWxkZXItLWRvdC8yKTtcbiAgfVxufVxuLnJ1bGUtc2VjdGlvbi0taGVhZGluZyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogJHJ1bGUtYnVpbGRlci0tc2VjdGlvbi1nYXAgMCAkcnVsZS1idWlsZGVyLS1wYWRkaW5nLW1kXG4gICAgJHJ1bGUtYnVpbGRlci0tbGVmdC1ndXR0ZXI7XG4gIGZvbnQtc2l6ZTogJHBhZ2UtaGVhZGVyLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkcGFnZS1oZWFkZXItd2VpZ2h0O1xuICBjb2xvcjogJGcxMi1mb3JnZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuXG4gIC8vIERvdFxuICAmOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6ICRydWxlLWJ1aWxkZXItLWRvdDtcbiAgICBoZWlnaHQ6ICRydWxlLWJ1aWxkZXItLWRvdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnVsZS1idWlsZGVyLS1hY2NlbnQtY29sb3I7XG4gICAgYm9yZGVyOiA4cHggc29saWQgJHJ1bGUtYnVpbGRlci0tYWNjZW50LWxpbmUtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRvcDogKCRydWxlLWJ1aWxkZXItLXNlY3Rpb24tZ2FwICsgM3B4KTtcbiAgICBsZWZ0OiAoJHJ1bGUtYnVpbGRlci0tZG90IC8gMik7XG4gIH1cbn1cbi5ydWxlLXNlY3Rpb24tLXN1Yi1oZWFkaW5nIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAkcnVsZS1idWlsZGVyLS1zZWN0aW9uLWdhcCAwICRydWxlLWJ1aWxkZXItLXBhZGRpbmctbWQgMDtcbiAgZm9udC1zaXplOiAkcGFnZS1oZWFkZXItc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRwYWdlLWhlYWRlci13ZWlnaHQ7XG4gIGNvbG9yOiAkZzEyLWZvcmdlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gRG90XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogJHJ1bGUtYnVpbGRlci0tZG90O1xuICAgIGhlaWdodDogJHJ1bGUtYnVpbGRlci0tZG90O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRydWxlLWJ1aWxkZXItLWFjY2VudC1jb2xvcjtcbiAgICBib3JkZXI6IDhweCBzb2xpZCAkcnVsZS1idWlsZGVyLS1hY2NlbnQtbGluZS1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdG9wOiAoJHJ1bGUtYnVpbGRlci0tc2VjdGlvbi1nYXAgKyAzcHgpO1xuICAgIGxlZnQ6IC0oJHJ1bGUtYnVpbGRlci0tbGVmdC1ndXR0ZXIgKyAkcnVsZS1idWlsZGVyLS1kb3QgKyAycHgpO1xuICB9XG59XG4vLyBPdmVycmlkZSBhcHBlYXJhbmNlIG9mIGxpbmVzIGFuZCBkb3RzIGZvciBmaXJzdCBzZWN0aW9uXG4ucnVsZS1zZWN0aW9uOmZpcnN0LW9mLXR5cGUge1xuICAucnVsZS1zZWN0aW9uLS1oZWFkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICAucnVsZS1zZWN0aW9uLS1oZWFkaW5nOmJlZm9yZSB7XG4gICAgdG9wOiA1cHg7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1cHgpO1xuICB9XG4gIC5ydWxlLXNlY3Rpb24tLWhlYWRpbmc6YWZ0ZXIge1xuICAgIHRvcDogM3B4O1xuICB9XG59XG4vLyBPdmVycmlkZSBhcHBlYXJhbmNlIG9mIGxpbmVzIGFuZCBkb3RzIGZvciBsYXN0IHNlY3Rpb25cbi5ydWxlLXNlY3Rpb246bGFzdC1vZi10eXBlIHtcbiAgLnJ1bGUtc2VjdGlvbi0taGVhZGluZzpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6ICgkcnVsZS1idWlsZGVyLS1zZWN0aW9uLWdhcCArIDNweCArIDNweCk7XG4gIH1cbiAgLnJ1bGUtc2VjdGlvbi0tYm9keTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gR2VuZXJpYyByZS11c2FibGUgY2xhc3NlcyBmb3IgcnVsZSBidWlsZGVyIHNlY3Rpb25zXG4ucnVsZS1zZWN0aW9uLS1ib3JkZXItdG9wIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRydWxlLWJ1aWxkZXItLXNlY3Rpb24tYm9yZGVyO1xufVxuLnJ1bGUtc2VjdGlvbi0tYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcnVsZS1idWlsZGVyLS1zZWN0aW9uLWJvcmRlcjtcbn1cbi5ydWxlLXNlY3Rpb24tLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJ1bGUtYnVpbGRlci0tc2VjdGlvbi1iZztcbiAgcGFkZGluZzogJHJ1bGUtYnVpbGRlci0tcGFkZGluZy1zbSAkcnVsZS1idWlsZGVyLS1wYWRkaW5nLWxnO1xufVxuLnJ1bGUtc2VjdGlvbi0tcm93LWZpcnN0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJ1bGUtYnVpbGRlci0tcmFkaXVzLWxnO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJ1bGUtYnVpbGRlci0tcmFkaXVzLWxnO1xufVxuLnJ1bGUtc2VjdGlvbi0tcm93LWxhc3Qge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGc7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGc7XG59XG4ucnVsZS1zZWN0aW9uLS1yb3cgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wsXG4ucnVsZS1zZWN0aW9uLS1yb3cgLmRyb3Bkb3duICsgLmZvcm0tY29udHJvbCB7XG4gIG1hcmdpbi1sZWZ0OiAkcnVsZS1idWlsZGVyLS1wYWRkaW5nLXNtIC0gMnB4O1xufVxuXG4vKlxuICBTZWN0aW9uIDEgLSBTZWxlY3QgYSBUaW1lIFNlcmllc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBPdmVycmlkZXMgYXJlIHNjb3BlZCB0byB0aGUgcGFnZSBjbGFzcyAucnVsZS1idWlsZGVyXG4qL1xuLnJ1bGUtYnVpbGRlciB7XG4gIC8qIFF1ZXJ5IFByZXZpZXcgKi9cbiAgcHJlIHtcbiAgICBmb250LXNpemU6ICRydWxlLWJ1aWxkZXItLWZvbnQtc2l6ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnVsZS1idWlsZGVyLS1zZWN0aW9uLWJnO1xuICAgIGJvcmRlci1yYWRpdXM6ICRydWxlLWJ1aWxkZXItLXJhZGl1cy1sZyAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGcgMCAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAkcnVsZS1idWlsZGVyLS1wYWRkaW5nLW1kICRydWxlLWJ1aWxkZXItLXBhZGRpbmctbGc7XG4gIH1cbiAgcHJlIGNvZGUge1xuICAgIGxpbmUtaGVpZ2h0OiAoJHJ1bGUtYnVpbGRlci0tZm9udC1zaXplICsgM3B4KTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG5cbiAgICAmLm1ldHJpYy1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGc4LXN0b3JtO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cbiAgfVxuICAucXVlcnktYnVpbGRlciB7XG4gICAgaGVpZ2h0OiAkcnVsZS1idWlsZGVyLS1xdWVyeS1idWlsZGVyLWhlaWdodDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAucXVlcnktYnVpbGRlci0tY29sdW1uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICAucXVlcnktYnVpbGRlci0tY29sdW1uOmZpcnN0LW9mLXR5cGUgLnF1ZXJ5LWJ1aWxkZXItLWxpc3Qge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRydWxlLWJ1aWxkZXItLXJhZGl1cy1sZztcbiAgfVxuICAucXVlcnktYnVpbGRlci0tY29sdW1uOmZpcnN0LW9mLXR5cGUgLnF1ZXJ5LWJ1aWxkZXItLWhlYWRpbmcge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRydWxlLWJ1aWxkZXItLXJhZGl1cy1sZztcbiAgfVxuICAucXVlcnktYnVpbGRlci0tY29sdW1uOmxhc3Qtb2YtdHlwZSAucXVlcnktYnVpbGRlci0tbGlzdCxcbiAgLnF1ZXJ5LWJ1aWxkZXItLWNvbHVtbjpsYXN0LW9mLXR5cGUgLnF1ZXJ5LWJ1aWxkZXItLWxpc3QtZW1wdHkge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGc7XG4gIH1cbiAgLnF1ZXJ5LWJ1aWxkZXItLWNvbHVtbjpsYXN0LW9mLXR5cGUgLnF1ZXJ5LWJ1aWxkZXItLWhlYWRpbmcge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGc7XG4gIH1cbiAgLnF1ZXJ5LWJ1aWxkZXItLWhlYWRpbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRydWxlLWJ1aWxkZXItLXNlY3Rpb24tYmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG4gIC5xdWVyeS1idWlsZGVyLS1saXN0IHtcbiAgICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyKCRydWxlLWJ1aWxkZXItLXNlY3Rpb24tYmcsICRydWxlLWJ1aWxkZXItLWFjY2VudC1jb2xvcik7XG4gIH1cbiAgLmdyb3VwLWJ5LXRhZy5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXJhaW5mb3Jlc3QgIWltcG9ydGFudDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWhvbmV5ZGV3ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5xdWVyeS1idWlsZGVyLS1saXN0LWl0ZW0gLnF1ZXJ5LWJ1aWxkZXItLWNoZWNrYm94OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICB9XG4gIC5xdWVyeS1idWlsZGVyLS1maWx0ZXIge1xuICAgIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgICBjb2xvcjogJGMtcmFpbmZvcmVzdCAhaW1wb3J0YW50O1xuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkZzIwLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMHB4ICRjLXJhaW5mb3Jlc3QgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYy1yYWluZm9yZXN0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAmOmZvY3VzICsgc3Bhbi5pY29uIHtcbiAgICAgICAgY29sb3I6ICRjLXJhaW5mb3Jlc3QgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLypcbiAgU2VjdGlvbiAyIC0gUnVsZSBDb25kaXRpb25zXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLnJ1bGUtYnVpbGRlci0tbWV0cmljIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICBjb2xvcjogJHJ1bGUtYnVpbGRlci0tYWNjZW50LWNvbG9yO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDAgOXB4O1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xufVxuLnJ1bGUtYnVpbGRlci0tZ3JhcGgsXG4ucnVsZS1idWlsZGVyLS1ncmFwaC1lbXB0eSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRydWxlLWJ1aWxkZXItLXNlY3Rpb24tYmc7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGcgJHJ1bGUtYnVpbGRlci0tcmFkaXVzLWxnO1xuICBoZWlnaHQ6ICgzMDBweCArICgkcnVsZS1idWlsZGVyLS1wYWRkaW5nLXNtICogMikpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucnVsZS1idWlsZGVyLS1ncmFwaCB7XG4gIHBhZGRpbmc6IDAgJHJ1bGUtYnVpbGRlci0tcGFkZGluZy1zbTtcblxuICA+IGRpdi5keWdyYXBoIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJHJ1bGUtYnVpbGRlci0tcGFkZGluZy1sZyAqIDIpO1xuICAgIGxlZnQ6ICRydWxlLWJ1aWxkZXItLXBhZGRpbmctc207XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JHJ1bGUtYnVpbGRlci0tcGFkZGluZy1zbSAqIDJ9KTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtICN7JHJ1bGUtYnVpbGRlci0tcGFkZGluZy1sZyAqIDJ9KSAhaW1wb3J0YW50O1xuICB9XG4gID4gLmR5Z3JhcGggPiAuZHlncmFwaC1jaGlsZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgfVxufVxuLnJ1bGUtYnVpbGRlci0tZ3JhcGgtZW1wdHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcblxuICBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJGcxMi1mb3JnZTtcblxuICAgIHN0cm9uZyB7XG4gICAgICBjb2xvcjogJGcxOC1jbG91ZDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgfVxuICB9XG59XG4ucnVsZS1idWlsZGVyLS1ncmFwaC1vcHRpb25zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRydWxlLWJ1aWxkZXItLXBhZGRpbmctc21cbiAgICAoXG4gICAgICAkcnVsZS1idWlsZGVyLS1wYWRkaW5nLWxnIC0gJHJ1bGUtYnVpbGRlci0tcGFkZGluZy1zbVxuICAgICk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogKCRydWxlLWJ1aWxkZXItLXBhZGRpbmctbGcgKiAyKTtcblxuICBwIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAkZzE1LXBsYXRpbnVtO1xuICAgIG1hcmdpbjogMCA2cHggMCAwO1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIH1cbn1cblxuLypcbiAgU2VjdGlvbiAzIC0gUnVsZSBNZXNzYWdlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLnJ1bGUtYnVpbGRlci0tbWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRydWxlLWJ1aWxkZXItLXNlY3Rpb24tYmc7XG4gIHBhZGRpbmc6ICRydWxlLWJ1aWxkZXItLXBhZGRpbmctbGcgLSAycHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGcgJHJ1bGUtYnVpbGRlci0tcmFkaXVzLWxnIDAgMDtcbn1cbi5ydWxlLWJ1aWxkZXItLW1lc3NhZ2UgdGV4dGFyZWEge1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgY3VzdG9tLXNjcm9sbGJhcigkcnVsZS1idWlsZGVyLS1zZWN0aW9uLWJnLCRydWxlLWJ1aWxkZXItLWFjY2VudC1jb2xvcik7XG59XG4ucnVsZS1idWlsZGVyLS1tZXNzYWdlLXRlbXBsYXRlIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgcGFkZGluZzogMCAoJHJ1bGUtYnVpbGRlci0tcGFkZGluZy1zbSAtIDJweCk7XG4gIG1hcmdpbjogMnB4O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkcnVsZS1idWlsZGVyLS1hY2NlbnQtY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8qXG4gIFNlY3Rpb24gMyAtIE9wdGlvbmFsIEFsZXJ0IFBhcmFtZXRlcnNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4ub3B0aW9uYWwtYWxlcnQtcGFyYW1ldGVycyB7XG4gIGZsZXg6IDEgMCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAuZm9ybS1ncm91cCB7XG4gICAgZmxleDogMSAwIDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgLmZvcm0tZ3JvdXAgPiBpbnB1dC5mb3JtLWNvbnRyb2wge1xuICAgIG9yZGVyOiAyO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLmZvcm0tZ3JvdXAgPiBsYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgb3JkZXI6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC40cyBlYXNlLCBjb2xvciAwLjRzIGVhc2UsXG4gICAgICBib3gtc2hhZG93IDAuNHMgZWFzZTtcbiAgfVxuICAuZm9ybS1ncm91cCA+IGlucHV0LmZvcm0tY29udHJvbDpob3ZlciArIGxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2U7XG4gICAgY29sb3I6ICRnMTMtbWlzdDtcbiAgfVxuICAuZm9ybS1ncm91cCA+IGlucHV0LmZvcm0tY29udHJvbDpmb2N1cyArIGxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICAgIGNvbG9yOiAkZzIta2V2bGFyO1xuICAgIGJveC1zaGFkb3c6IDAgMCA4cHggJGMtcmFpbmZvcmVzdDtcbiAgfVxufVxuXG4vKlxuICBDb2xvciBjb2RpbmcgZm9yIGFsZXJ0cyBpbiBBbGVydCBIaXN0b3J5IHRhYmxlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmFsZXJ0LWxldmVsLW9rIHtcbiAgJixcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjLXJhaW5mb3Jlc3QgIWltcG9ydGFudDtcbiAgfVxufVxuLmFsZXJ0LWxldmVsLXdhcm5pbmcge1xuICAmLFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGMtcGluZWFwcGxlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5hbGVydC1sZXZlbC1jcml0aWNhbCB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYy1kcmVhbXNpY2xlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLypcbiAgU3R5bGVzIGZvciBFbmRwb2ludHMgc2VjdGlvblxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5ydWxlLW1lc3NhZ2UtLWVuZHBvaW50cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuLnJ1bGUtbWVzc2FnZS0tYWRkLWVuZHBvaW50IHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cbi5ydWxlLW1lc3NhZ2UtLWFkZC1lbmRwb2ludCAuZHJvcGRvd24tbWVudSB7XG4gIG1heC1oZWlnaHQ6IDIzM3B4O1xufVxuXG4ucnVsZS1tZXNzYWdlLS1hZGQtZW5kcG9pbnQgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tbWFsYWNoaXRlIGxpLmRyb3Bkb3duLWRpdmlkZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNhOGUxY2YgMCUsICMyM2FkZjYgMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLmVuZHBvaW50LXRhYnMge1xuICB3aWR0aDogMTUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRydWxlLWJ1aWxkZXItLXNlY3Rpb24tYm9yZGVyO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmVuZHBvaW50LXRhYiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDAgJHJ1bGUtYnVpbGRlci0tcGFkZGluZy1sZztcbiAgbWFyZ2luOiAwIDAgMnB4IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBjb2xvcjogJGc5LW1vdW50YWluO1xuICBmb250LXNpemU6IDE0LjVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJHJ1bGUtYnVpbGRlci0tc2VjdGlvbi1ib3JkZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSxcbiAgICBib3JkZXItY29sb3IgMC4yNXMgZWFzZTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJ1bGUtYnVpbGRlci0tc2VjdGlvbi1iZztcbiAgICBjb2xvcjogJGcxNS1wbGF0aW51bTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGMtcmFpbmZvcmVzdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnVsZS1idWlsZGVyLS1zZWN0aW9uLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHJ1bGUtYnVpbGRlci0tc2VjdGlvbi1iZztcbiAgfVxufVxuLmVuZHBvaW50LXRhYi0tZGVsZXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc4LXN0b3JtO1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnMjAtd2hpdGU7XG4gICAgfVxuICB9XG4gICY6aG92ZXI6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1jdXJhY2FvO1xuICB9XG59XG4uZW5kcG9pbnQtdGFiLWNvbnRlbnRzIHtcbiAgZmxleDogMSAwIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRydWxlLWJ1aWxkZXItLXNlY3Rpb24tYmc7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcnVsZS1idWlsZGVyLS1yYWRpdXMtbGc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBtaW4taGVpZ2h0OiAzNTBweDtcblxuICBoNCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICAgIGZvbnQtc2l6ZTogMTQuNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICRnMTUtcGxhdGludW07XG4gIH1cbn1cbi5lbmRwb2ludC10YWItLXBhcmFtZXRlcnMge1xuICBwYWRkaW5nOiAkcnVsZS1idWlsZGVyLS1wYWRkaW5nLWxnO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAkcnVsZS1idWlsZGVyLS1wYWRkaW5nLWxnO1xuICB9XG59XG4uZW5kcG9pbnQtdGFiLS1wYXJhbWV0ZXJzIC5mYXV4LWZvcm0ge1xuICBtYXJnaW4tbGVmdDogLTZweDtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xuICB3aWR0aDogY2FsYygxMDAlICsgMTJweCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5lbmRwb2ludC10YWItLXBhcmFtZXRlcnMtLWVtcHR5IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICRnMTItZm9yZ2U7XG5cbiAgICBzdHJvbmcge1xuICAgICAgY29sb3I6ICRnMTgtY2xvdWQ7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgIH1cbiAgfVxufVxuLmVuZHBvaW50LXRhYi0tcGFyYW1ldGVycyAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbn1cbi5lbmRwb2ludC10YWItLXBhcmFtZXRlcnMgLmhhbmRsZXItY2hlY2tib3gge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuLnJlZGFjdGVkLWhhbmRsZXIge1xuICBoZWlnaHQ6IDMwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5lbmRwb2ludC10YWItLXBhcmFtZXRlcnMgaDQgLmJ0biB7XG4gIG1hcmdpbi1sZWZ0OiA2cHg7XG59XG5cbi8qXG4gUnVsZSBEZXRhaWxzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLnJ1bGUtYnVpbGRlci0tZGV0YWlscyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRydWxlLWJ1aWxkZXItLXNlY3Rpb24tYmc7XG4gIHBhZGRpbmctdG9wOiAkcnVsZS1idWlsZGVyLS1wYWRkaW5nLWxnIC0gMnB4O1xuICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgcGFkZGluZy1yaWdodDogNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogJHJ1bGUtYnVpbGRlci0tcmFkaXVzLWxnICRydWxlLWJ1aWxkZXItLXJhZGl1cy1sZyAwIDA7XG59XG4ucnVsZS1idWlsZGVyLS1kZXRhaWxzIHRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXIoJHJ1bGUtYnVpbGRlci0tc2VjdGlvbi1iZywkcnVsZS1idWlsZGVyLS1hY2NlbnQtY29sb3IpO1xufVxuLnJ1bGUtYnVpbGRlci0tZGV0YWlscy10ZW1wbGF0ZSB7XG4gIGhlaWdodDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDAgKCRydWxlLWJ1aWxkZXItLXBhZGRpbmctc20gLSAycHgpO1xuICBtYXJnaW46IDJweDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZTtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHJ1bGUtYnVpbGRlci0tYWNjZW50LWNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuIiwiLypcbiAgVmFyaWFibGVzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJGRhc2gtZ3JhcGgtaGVhZGluZzogMzBweDtcbiRkYXNoLWdyYXBoLWhlYWRpbmctY29udGV4dDogJGRhc2gtZ3JhcGgtaGVhZGluZyAtIDhweDtcbiRkYXNoLWdyYXBoLW9wdGlvbnMtYXJyb3c6IDhweDtcbi8qXG4gIEFuaW1hdGlvbnNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5Aa2V5ZnJhbWVzIHJlZnJlc2hpbmdTcGlubmVyQSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjc1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzctZ3JhcGhpdGU7XG4gIH1cbiAgMzMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLCAxKTtcbiAgfVxuICA2NiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEsIDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcmVmcmVzaGluZ1NwaW5uZXJCIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEsIDEpO1xuICB9XG4gIDMzJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS43NSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc3LWdyYXBoaXRlO1xuICB9XG4gIDY2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMSwgMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMSwgMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByZWZyZXNoaW5nU3Bpbm5lckMge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMSwgMSk7XG4gIH1cbiAgMzMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLCAxKTtcbiAgfVxuICA2NiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuNzUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNy1ncmFwaGl0ZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLCAxKTtcbiAgfVxufVxuXG4vKlxuICBEYXNoYm9hcmQgSW5kZXggUGFnZVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5kYXNoYm9hcmRzLXBhZ2UtLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vKlxuICBEZWZhdWx0IERhc2hib2FyZCBNb2RlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLmNlbGwtc2hlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXI6IDJweCBzb2xpZCAkZzMtY2FzdGxlO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0LCB0b3AsIGJvcmRlci1jb2xvciwgYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLmRhc2hib2FyZCB7XG4gIC5yZWFjdC1ncmlkLWl0ZW0ge1xuICAgIEBleHRlbmQgLmNlbGwtc2hlbGw7XG4gIH1cbiAgLmdyYXBoLWVtcHR5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5kYXNoLWdyYXBoIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5kYXNoLWdyYXBoLS1jb250YWluZXIge1xuICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtby11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gI3skZGFzaC1ncmFwaC1oZWFkaW5nfSk7XG4gIHRvcDogJGRhc2gtZ3JhcGgtaGVhZGluZztcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMDtcbiAgLmR5Z3JhcGgge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLmR5Z3JhcGggLmR5Z3JhcGgtY2hpbGQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7XG4gIH1cbiAgLmdyYXBoLXBhbmVsX19yZWZyZXNoaW5nIHtcbiAgICB0b3A6ICgtJGRhc2gtZ3JhcGgtaGVhZGluZyArIDVweCkgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZGFzaC1ncmFwaC0taGVhZGluZyB7XG4gIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC1vLXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRkYXNoLWdyYXBoLWhlYWRpbmc7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzLXNtYWxsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiAkZzE0LWNocm9taXVtO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG4gICYuZGFzaC1ncmFwaC0taGVhZGluZy1kcmFnZ2FibGU6aG92ZXIge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICB9XG59XG5cbi5kYXNoLWdyYXBoLS1uYW1lIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6ICRkYXNoLWdyYXBoLWhlYWRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkZGFzaC1ncmFwaC1oZWFkaW5nO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNzhweCk7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLFxuICAgIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuICAmOm9ubHktY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5kYXNoLWdyYXBoLS1uYW1lLmRhc2gtZ3JhcGgtLW5hbWVfX2RlZmF1bHQge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5kYXNoLWdyYXBoLS1kcmFnZ2FibGUge1xuICBjdXJzb3I6IG1vdmUgIWltcG9ydGFudDtcbn1cblxuLmRhc2gtZ3JhcGgtLWN1c3RvbS1pbmRpY2F0b3JzIHtcbiAgaGVpZ2h0OiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgPiAuY3VzdG9tLWluZGljYXRvcixcbiAgPiAuc291cmNlLWluZGljYXRvciB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIHBhZGRpbmc6IDAgN3B4O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgICBjb2xvcjogJGMtcG9vbDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgfVxuICA+IC5zb3VyY2UtaW5kaWNhdG9yIHtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgPiAuaWNvbiB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG5cbi5kYXNoLWdyYXBoLWNvbnRleHQge1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDNweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuLmRhc2gtZ3JhcGgtY29udGV4dC5kYXNoLWdyYXBoLWNvbnRleHRfX29wZW4ge1xuICB6LWluZGV4OiAyMDtcbn1cblxuLmRhc2gtZ3JhcGgtY29udGV4dC0tYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5kYXNoLWdyYXBoLWNvbnRleHQtLWJ1dHRvbiB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuICAmOmhvdmVyLFxuICAmLmFjdGl2ZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAkZzIwLXdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgPiAuaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDIwO1xuICB9XG59XG5cbi5kYXNoLWdyYXBoLWNvbnRleHQtLW1lbnUsXG4uZGFzaC1ncmFwaC1jb250ZXh0LS1tZW51LmRlZmF1bHQge1xuICB6LWluZGV4OiAzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgOHB4KTtcbiAgbGVmdDogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzYtc21va2U7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGc2LXNtb2tlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuICB9XG4gIC5kYXNoLWdyYXBoLWNvbnRleHQtLW1lbnUtaXRlbSB7XG4gICAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgY29sb3I6ICRnMjAtd2hpdGU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc4LXN0b3JtO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAmLmRpc2FibGVkLFxuICAgICYuZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgICB9XG4gIH1cbn1cblxuLmRhc2gtZ3JhcGgtY29udGV4dC0tbWVudS5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtb2NlYW47XG4gICY6YmVmb3JlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYy1vY2VhbjtcbiAgfVxuICAuZGFzaC1ncmFwaC1jb250ZXh0LS1tZW51LWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gIH1cbn1cblxuLmRhc2gtZ3JhcGgtY29udGV4dC0tbWVudS53YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtc3RhcjtcbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjLXN0YXI7XG4gIH1cbiAgLmRhc2gtZ3JhcGgtY29udGV4dC0tbWVudS1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1jb21ldDtcbiAgfVxufVxuXG4uZGFzaC1ncmFwaC1jb250ZXh0LS1tZW51LnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yYWluZm9yZXN0O1xuICAmOmJlZm9yZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGMtcmFpbmZvcmVzdDtcbiAgfVxuICAuZGFzaC1ncmFwaC1jb250ZXh0LS1tZW51LWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWhvbmV5ZGV3O1xuICB9XG59XG5cbi5kYXNoLWdyYXBoLWNvbnRleHQtLW1lbnUuZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtY3VyYWNhbztcbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjLWN1cmFjYW87XG4gIH1cbiAgLmRhc2gtZ3JhcGgtY29udGV4dC0tbWVudS1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kcmVhbXNpY2xlO1xuICB9XG59XG5cbi8qIFByZXNlbnRhdGlvbiBNb2RlICovXG5cbi5wcmVzZW50YXRpb24tbW9kZSB7XG4gIC5kYXNoLWdyYXBoLWNvbnRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmRhc2gtZ3JhcGgtLW5hbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5ncmFwaC1wYW5lbF9fcmVmcmVzaGluZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMThweCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgcmlnaHQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gID4gZGl2IHtcbiAgICB3aWR0aDogNHB4O1xuICAgIGhlaWdodDogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNi1zbW9rZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG4gIGRpdjpudGgtY2hpbGQoMSkge1xuICAgIGxlZnQ6IDA7XG4gICAgYW5pbWF0aW9uOiByZWZyZXNoaW5nU3Bpbm5lckEgMC44cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSlcbiAgICAgIGluZmluaXRlO1xuICB9XG4gIGRpdjpudGgtY2hpbGQoMikge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBhbmltYXRpb246IHJlZnJlc2hpbmdTcGlubmVyQiAwLjhzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKVxuICAgICAgaW5maW5pdGU7XG4gIH1cbiAgZGl2Om50aC1jaGlsZCgzKSB7XG4gICAgbGVmdDogMTAwJTtcbiAgICBhbmltYXRpb246IHJlZnJlc2hpbmdTcGlubmVyQyAwLjhzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKVxuICAgICAgaW5maW5pdGU7XG4gIH1cbn1cblxuLypcbiAgRGFzaGJvYXJkIEVkaXQgTW9kZVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5yZWFjdC1ncmlkLXBsYWNlaG9sZGVyIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtZGlhZy1kb3duKCRjLXBvb2wsICRjLWNvbWV0KTtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDAuMztcbiAgei1pbmRleDogMjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucmVhY3QtZ3JpZC1pdGVtIHtcbiAgJi5yZXNpemluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZmFkZS1vdXQoJGczLWNhc3RsZSwgMC4wOSk7XG4gICAgYm9yZGVyLWNvbG9yOiAkYy1wb29sO1xuICAgIGJvcmRlci1pbWFnZS1zbGljZTogMyU7XG4gICAgYm9yZGVyLWltYWdlLXJlcGVhdDogaW5pdGlhbDtcbiAgICBib3JkZXItaW1hZ2Utb3V0c2V0OiAwO1xuICAgIGJvcmRlci1pbWFnZS13aWR0aDogMnB4O1xuICAgIGJvcmRlci1pbWFnZS1zb3VyY2U6IHVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdRQUFBQmtDQVlBQUFCdzRwVlVBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQXlocFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrSUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1Tmkxak1EWTNJRGM1TGpFMU56YzBOeXdnTWpBeE5TOHdNeTh6TUMweU16bzBNRG8wTWlBZ0lDQWdJQ0FnSWo0Z1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNGdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlnZUcxc2JuTTZlRzF3UFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdklpQjRiV3h1Y3pwNGJYQk5UVDBpYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5NFlYQXZNUzR3TDIxdEx5SWdlRzFzYm5NNmMzUlNaV1k5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5elZIbHdaUzlTWlhOdmRYSmpaVkpsWmlNaUlIaHRjRHBEY21WaGRHOXlWRzl2YkQwaVFXUnZZbVVnVUdodmRHOXphRzl3SUVORElESXdNVFVnS0UxaFkybHVkRzl6YUNraUlIaHRjRTFOT2tsdWMzUmhibU5sU1VROUluaHRjQzVwYVdRNk1UZzBOalZEUmtWR01FVkZNVEZGTmtFMFFqVkZSVEpHTkVJMU9EYzBSRE1pSUhodGNFMU5Pa1J2WTNWdFpXNTBTVVE5SW5odGNDNWthV1E2TVRnME5qVkRSa1pHTUVWRk1URkZOa0UwUWpWRlJUSkdORUkxT0RjMFJETWlQaUE4ZUcxd1RVMDZSR1Z5YVhabFpFWnliMjBnYzNSU1pXWTZhVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRG94T0RRMk5VTkdRMFl3UlVVeE1VVTJRVFJDTlVWRk1rWTBRalU0TnpSRU15SWdjM1JTWldZNlpHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEb3hPRFEyTlVOR1JFWXdSVVV4TVVVMlFUUkNOVVZGTWtZMFFqVTROelJFTXlJdlBpQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNGdQQzl5WkdZNlVrUkdQaUE4TDNnNmVHMXdiV1YwWVQ0Z1BEOTRjR0ZqYTJWMElHVnVaRDBpY2lJL1BwZWV0ZklBQUFNblNVUkJWSGphN04xUGF0d3dGTWZ4SjVObEtUMURJZlFLV1pmU0EvUTBoZXhETDlNY29PUUFQVUtnbHdocDZkWjlIby9IZnlUWnM2bCtiL0UxR0RtMjdJSDVvSDlQeWppOS8vN1hmTHROWnQ4OC9lVDcyMlR6bHZyRnNlWEhhWEZteXB1Tzh2ZDVubVc2bnllTmVmcktmWnY3aTlmNzVibFUvTnphZlh2bnMyZFY3dGw4enFzblQ1NSs5ZjNYamYveHdROStldm91K3hMQitOOFlkaTRBWDN6LzZQbnZPajk0QUVPR01WL3JCNFAwMEoycktUQzBHTk9UUG5lMEdXRXdodjFOQjBZWWpOUFdnUkVISTAwZ1lNVEFPSUdBRVFkanVLY0RJdzdHWEdXQkVRSmpyTExBQ0lPUnJGQmxnYUhEc0cyVkJZWVdZMVZsZ2FISFNIM1dxSU9oeExCMW93NkdHbVBScUlNUkFlTU1Ba1lVREZ1R1RzRFFZd3hQNk1DSWcxSHA5b0tod2loMGU4RlFZdGh1TEF1TTVoajFXQllZRW94VWpHV0JJY093ckZFSFE0cXhMaUZneURGT3ZTd3c0bUNNOHlGZ2hNRW9EZ3pCMEdHazJvd2hHQm9NcTVVUU1EUVl4UklDaGc0amEwUEEwR0xZTXJnSWhoN2pVa0xBaUlFeFYxbGdoTUE0R0JpQzBScmpOSVVMUmh5TXlzQVFEQlZHWVdBSWhoSmpNNmNPaGhwalVVTEFpSUF4cjF3RUl3VEdQREFFSXdUR1dHV0JFUWFqSHUwRlE0SlJqdmFDSWNQSW83MWdTREhXMFY0dzVCajVTQjBNS1VaeG9Sd1lPb3hzUGdRTUxjWnFQZ1FNUFVheFVRZERoMkhWY1FnWUVveFVISWVBSWNQSXF5d3dwQmpyS2dzTU9jYjhmK3BnaE1ESXd1OWdhREZXSTNVdzlCZzJOK3BnUk1BNDk3TEFpSUpSWGYwT2hnYWp1UG9kREIzRzFkRmVNTnBnWEJYdEJhTWR4bUcwRjR5MkdMdlJYakRhWTJ3R2htQ29NYXdVN1FWRGg1RzIwVjR3dEJqendCQ01FQmlYVng2QkVRUGpzSmNGUmx1TTNWNFdHTzB4cXIwc01EUVlWdXBsZ2FIRFdMMVlFZ3c5aGkxN1dXRG9NVkoxQ2hjTUNZWVZwM0RCa0dGVWw1S0NvY0d3NmRlQXdJaUJZVWZCUlREYVltVGRYakMwR0ZZTExvS2h3U2orY0FBWU9nemJCaGZCMEdLc2dvdGc2REd1V3JrSVJqdU11ZHNMUmdpTXNRMEJJd3pHNVpWSFlNVEFtS3FzVnpCaVlQajJaK2oyUG9FUkFtTTQvMk1vSWZlK3Y0QWh4M2p4NUg0QWVmWUxkMzdxMFk5L2c5RWNZL2pPSHoxMUEzditKOEFBOXdpc2FoUkNXVFFBQUFBQVNVVk9SSzVDWUlJPSk7XG4gICAgei1pbmRleDogMztcbiAgICAmID4gLnJlYWN0LXJlc2l6YWJsZS1oYW5kbGUge1xuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtY29tZXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYucmVhY3QtZHJhZ2dhYmxlLWRyYWdnaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBmYWRlLW91dCgkZzMtY2FzdGxlLCAwLjA5KTtcbiAgICBib3JkZXItY29sb3I6ICRjLXBvb2w7XG4gICAgYm9yZGVyLWltYWdlLXNsaWNlOiAzJTtcbiAgICBib3JkZXItaW1hZ2UtcmVwZWF0OiBpbml0aWFsO1xuICAgIGJvcmRlci1pbWFnZS1vdXRzZXQ6IDA7XG4gICAgYm9yZGVyLWltYWdlLXdpZHRoOiAycHg7XG4gICAgYm9yZGVyLWltYWdlLXNvdXJjZTogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBR1FBQUFCa0NBWUFBQUJ3NHBWVUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBeWhwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVOaTFqTURZM0lEYzVMakUxTnpjME55d2dNakF4TlM4d015OHpNQzB5TXpvME1EbzBNaUFnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdQU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2SWlCNGJXeHVjenA0YlhCTlRUMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzk0WVhBdk1TNHdMMjF0THlJZ2VHMXNibk02YzNSU1pXWTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl6Vkhsd1pTOVNaWE52ZFhKalpWSmxaaU1pSUhodGNEcERjbVZoZEc5eVZHOXZiRDBpUVdSdlltVWdVR2h2ZEc5emFHOXdJRU5ESURJd01UVWdLRTFoWTJsdWRHOXphQ2tpSUhodGNFMU5Pa2x1YzNSaGJtTmxTVVE5SW5odGNDNXBhV1E2TVRnME5qVkRSa1ZHTUVWRk1URkZOa0UwUWpWRlJUSkdORUkxT0RjMFJETWlJSGh0Y0UxTk9rUnZZM1Z0Wlc1MFNVUTlJbmh0Y0M1a2FXUTZNVGcwTmpWRFJrWkdNRVZGTVRGRk5rRTBRalZGUlRKR05FSTFPRGMwUkRNaVBpQThlRzF3VFUwNlJHVnlhWFpsWkVaeWIyMGdjM1JTWldZNmFXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEb3hPRFEyTlVOR1EwWXdSVVV4TVVVMlFUUkNOVVZGTWtZMFFqVTROelJFTXlJZ2MzUlNaV1k2Wkc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRveE9EUTJOVU5HUkVZd1JVVXhNVVUyUVRSQ05VVkZNa1kwUWpVNE56UkVNeUl2UGlBOEwzSmtaanBFWlhOamNtbHdkR2x2Ymo0Z1BDOXlaR1k2VWtSR1BpQThMM2c2ZUcxd2JXVjBZVDRnUEQ5NGNHRmphMlYwSUdWdVpEMGljaUkvUHBlZXRmSUFBQU1uU1VSQlZIamE3TjFQYXR3d0ZNZnhKNU5sS1QxRElmUUtXWmZTQS9RMGhleERMOU1jb09RQVBVS2dsd2hwNmRaOUhvL0hmeVRaczZsK2IvRTFHRG0yN0lINW9IOVB5amk5Ly83WGZMdE5adDg4L2VUNzIyVHpsdnJGc2VYSGFYRm15cHVPOHZkNW5tVzZueWVOZWZyS2ZadjdpOWY3NWJsVS9OemFmWHZuczJkVjd0bDh6cXNuVDU1KzlmM1hqZi94d1E5K2V2b3UreExCK044WWRpNEFYM3ovNlBudk9qOTRBRU9HTVYvckI0UDAwSjJyS1RDMEdOT1RQbmUwR1dFd2h2MU5CMFlZak5QV2dSRUhJMDBnWU1UQU9JR0FFUWRqdUtjREl3N0dYR1dCRVFKanJMTEFDSU9SckZCbGdhSERzRzJWQllZV1kxVmxnYUhIU0gzV3FJT2h4TEIxb3c2R0dtUFJxSU1SQWVNTUFrWVVERnVHVHNEUVl3eFA2TUNJZzFIcDlvS2h3aWgwZThGUVl0aHVMQXVNNWhqMVdCWVlFb3hVakdXQkljT3dyRkVIUTRxeExpRmd5REZPdlN3dzRtQ004eUZnaE1Fb0RnekIwR0drMm93aEdCb01xNVVRTURRWXhSSUNoZzRqYTBQQTBHTFlNcmdJaGg3alVrTEFpSUV4VjFsZ2hNQTRHQmlDMFJyak5JVUxSaHlNeXNBUURCVkdZV0FJaGhKak02Y09oaHBqVVVMQWlJQXhyMXdFSXdUR1BEQUVJd1RHV0dXQkVRYWpIdTBGUTRKUmp2YUNJY1BJbzcxZ1NESFcwVjR3NUJqNVNCME1LVVp4b1J3WU9veHNQZ1FNTGNacVBnUU1QVWF4VVFkRGgySFZjUWdZRW94VUhJZUFJY1BJcXl3d3BCanJLZ3NNT2NiOGYrcGdoTURJd3U5Z2FERldJM1V3OUJnMk4rcGdSTUE0OTdMQWlJSlJYZjBPaGdhanVQb2REQjNHMWRGZU1OcGdYQlh0QmFNZHhtRzBGNHkyR0x2UlhqRGFZMndHaG1Db01hd1U3UVZEaDVHMjBWNHd0Qmp6d0JDTUVCaVhWeDZCRVFQanNKY0ZSbHVNM1Y0V0dPMHhxcjBzTURRWVZ1cGxnYUhEV0wxWUVndzloaTE3V1dEb01WSjFDaGNNQ1lZVnAzREJrR0ZVbDVLQ29jR3c2ZGVBd0lpQllVZkJSVERhWW1UZFhqQzBHRllMTG9LaHdTaitjQUFZT2d6YkJoZkIwR0tzZ290ZzZER3VXcmtJUmp1TXVkc0xSZ2lNc1EwQkl3ekc1WlZIWU1UQW1LcXNWekJpWVBqMlorajJQb0VSQW1NNC8yTW9JZmUrdjRBaHgzang1SDRBZWZZTGQzN3EwWTkvZzlFY1kvak9IejExQTN2K0o4QUE5d2lzYWhSQ1dUUUFBQUFBU1VWT1JLNUNZSUk9KTtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IG1vdmU7XG4gICAgfVxuICAgIC5kYXNoLWdyYXBoLS1oZWFkaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gICAgICBjdXJzb3I6IG1vdmU7XG4gICAgfVxuICB9XG4gICYgPiAucmVhY3QtcmVzaXphYmxlLWhhbmRsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplO1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGc2LXNtb2tlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtM3B4LCAycHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWNvbWV0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKlxuICBEYXNoYm9hcmQgRW1wdHkgU3RhdGVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5AaW1wb3J0ICcuLi9jb21wb25lbnRzL2Rhc2hib2FyZC1lbXB0eSc7XG4vKlxuICBUZW1wbGF0ZSBDb250cm9sIEJhclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbkBpbXBvcnQgJy4uL2NvbXBvbmVudHMvdGVtcGxhdGUtY29udHJvbC1iYXInO1xuLypcbiAgQ2VsbCBFZGl0b3IgT3ZlcmxheVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbkBpbXBvcnQgJ2NlbGwtZWRpdG9yLW92ZXJsYXknO1xuLypcbiAgVGVtcGxhdGUgVmFyaWFibGVzIE1hbmFnZXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5AaW1wb3J0ICcuLi9jb21wb25lbnRzL3RlbXBsYXRlLXZhcmlhYmxlcy1tYW5hZ2VyJztcbi8qXG4gIFdyaXRlIERhdGEgRm9ybVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbkBpbXBvcnQgJy4uL2NvbXBvbmVudHMvd3JpdGUtZGF0YS1mb3JtJztcbiIsIi8qXG4gICAgRGFzaGJvYXJkIEVtcHR5IFN0YXRlXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJGVtcHR5LW1lbnUtLWd1dHRlcjogNHB4O1xuXG4uZGFzaGJvYXJkLWVtcHR5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgcCB7XG4gICAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG5cbiAgICBzdHJvbmcge1xuICAgICAgY29sb3I6ICRnMTUtcGxhdGludW07XG4gICAgfVxuICB9XG59XG5cbi5kYXNoYm9hcmQtZW1wdHktLW1lbnUge1xuICB3aWR0aDogNzAlO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBtYXJnaW4tYm90dG9tOiA2NXB4O1xufVxuXG4uZGFzaGJvYXJkLWVtcHR5LS1tZW51LW9wdGlvbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjUlO1xuICBwYWRkaW5nLWJvdHRvbTogMjUlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiBkaXYgPiBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMThweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC8vIEFjdHVhbCBcImNhcmRcIlxuICA+IGRpdiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JGVtcHR5LW1lbnUtLWd1dHRlcn0pO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gI3skZW1wdHktbWVudS0tZ3V0dGVyfSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJGVtcHR5LW1lbnUtLWd1dHRlciAvIDI7XG4gICAgbGVmdDogJGVtcHR5LW1lbnUtLWd1dHRlciAvIDI7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG4gIH1cbn1cblxuLy8gSG92ZXIgc3RhdGUgXCJjYXJkXCJcbi5kYXNoYm9hcmQtZW1wdHktLW1lbnUtb3B0aW9uOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmRhc2hib2FyZC1lbXB0eS0tbWVudS1vcHRpb246aG92ZXIgPiBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICBjb2xvcjogJGcxOC1jbG91ZDtcblxuICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMge1xuICAgIC52aXotdHlwZS1zZWxlY3Rvci0tZ3JhcGhpYy1saW5lLmdyYXBoaWMtbGluZS1hIHtcbiAgICAgIHN0cm9rZTogJGMtcG9vbDtcbiAgICB9XG4gICAgLnZpei10eXBlLXNlbGVjdG9yLS1ncmFwaGljLWxpbmUuZ3JhcGhpYy1saW5lLWIge1xuICAgICAgc3Ryb2tlOiAkYy1kcmVhbXNpY2xlO1xuICAgIH1cbiAgICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtbGluZS5ncmFwaGljLWxpbmUtYyB7XG4gICAgICBzdHJva2U6ICRjLXJhaW5mb3Jlc3Q7XG4gICAgfVxuICAgIC52aXotdHlwZS1zZWxlY3Rvci0tZ3JhcGhpYy1saW5lLmdyYXBoaWMtbGluZS1kIHtcbiAgICAgIHN0cm9rZTogJGcxNy13aGlzcGVyO1xuICAgIH1cbiAgICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtZmlsbC5ncmFwaGljLWZpbGwtYSB7XG4gICAgICBmaWxsOiAkYy1wb29sO1xuICAgIH1cbiAgICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtZmlsbC5ncmFwaGljLWZpbGwtYiB7XG4gICAgICBmaWxsOiAkYy1kcmVhbXNpY2xlO1xuICAgIH1cbiAgICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtZmlsbC5ncmFwaGljLWZpbGwtYyB7XG4gICAgICBmaWxsOiAkYy1yYWluZm9yZXN0O1xuICAgIH1cbiAgICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtZmlsbC5ncmFwaGljLWZpbGwtYSxcbiAgICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtZmlsbC5ncmFwaGljLWZpbGwtYixcbiAgICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtZmlsbC5ncmFwaGljLWZpbGwtYyB7XG4gICAgICBvcGFjaXR5OiAwLjIyO1xuICAgIH1cbiAgICAudml6LXR5cGUtc2VsZWN0b3ItLWdyYXBoaWMtZmlsbC5ncmFwaGljLWZpbGwtZCB7XG4gICAgICBmaWxsOiAkZzE3LXdoaXNwZXI7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufSIsIi8qXG4gIFRlbXBsYXRlIENvbnRyb2wgQmFyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBVc2VkIHdpdGhpbiBhIGRhc2hib2FyZCB0byBjb250cm9sIHZhbHVlcyBmb3JcbiAgdGVtcGxhdGUgdmFyaWFibGVzXG4qL1xuXG4kdGVtcGxhdGUtY29udHJvbC0tbWFyZ2luOiAycHg7XG4kdGVtcGxhdGUtY29udHJvbC0tbWluLWhlaWdodDogNTJweDtcbiR0ZW1wbGF0ZS1jb250cm9sLWRyb3Bkb3duLW1pbi13aWR0aDogMTQ2cHg7XG4kdGVtcGxhdGUtY29udHJvbC1kcm9wZG93bi1tYXgtd2lkdGg6IDMwMHB4O1xuXG4udGVtcGxhdGUtY29udHJvbC1iYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtdigkZzIta2V2bGFyLCBmYWRlLW91dCgkZzIta2V2bGFyLCAxKSk7XG4gIH1cbn1cbi50ZW1wbGF0ZS1jb250cm9sLS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogJGNocm9ub2dyYWYtcGFnZS1oZWFkZXItaGVpZ2h0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiA4cHggNjBweDtcbn1cbi50ZW1wbGF0ZS1jb250cm9sLS1oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogJGcxMy1taXN0O1xuICBtYXJnaW46IDAgOHB4IDAgMTZweDtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbmJ1dHRvbi5idG4udGVtcGxhdGUtY29udHJvbC0tbWFuYWdlIHtcbiAgbWFyZ2luOiA3cHggMCA3cHggOHB4O1xufVxuLnRlbXBsYXRlLWNvbnRyb2wtLWNvbnRyb2xzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAwIDAlO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4udGVtcGxhdGUtY29udHJvbC0tZW1wdHkge1xuICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xufVxuLnRlbXBsYXRlLWNvbnRyb2wtLWRyb3Bkb3duIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIG1pbi13aWR0aDogJHRlbXBsYXRlLWNvbnRyb2wtZHJvcGRvd24tbWluLXdpZHRoO1xuICBtYXgtd2lkdGg6ICR0ZW1wbGF0ZS1jb250cm9sLWRyb3Bkb3duLW1heC13aWR0aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIG1hcmdpbjogJHRlbXBsYXRlLWNvbnRyb2wtLW1hcmdpbjtcblxuICAuZHJvcGRvd24ge1xuICAgIG9yZGVyOiAyO1xuICAgIG1hcmdpbjogMDtcbiAgICBmbGV4OiAxIDAgMCU7XG4gIH1cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRyYWRpdXMtc21hbGwgJHJhZGl1cy1zbWFsbDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG4gIH1cbiAgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5mYW5jeS1zY3JvbGwtLXZpZXcgbGkuZHJvcGRvd24taXRlbSBhIHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG4udGVtcGxhdGUtY29udHJvbC0tbGFiZWwge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBvcmRlcjogMTtcbiAgaGVpZ2h0OiAxOHB4O1xuICBwYWRkaW5nOiAwIDhweDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICBjb2xvcjogJGMtcG90YXNzaXVtO1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cy1zbWFsbCAkcmFkaXVzLXNtYWxsIDAgMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG59XG4iLCIvKlxuICBTdHlsZXMgZm9yIENlbGwgRWRpdG9yIE92ZXJsYXlcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kb3ZlcmxheS1jb250cm9scy1oZWlnaHQ6IDYwcHg7XG4kb3ZlcmxheS1jb250cm9scy1iZzogJGcyLWtldmxhcjtcbiRvdmVybGF5LXo6IDEwMDtcblxuXG4vLyBNYWtlIE92ZXJsYXkgVGVjaG5vbG9neSBmdWxsIHNjcmVlblxuLmNlbyB7XG4gIGxlZnQ6IC0oJHNpZGViYXItLXdpZHRoKSAhaW1wb3J0YW50O1xuXG4gIC8vIEhhY2t5IHdheSB0byBlbnN1cmUgcHJvcGVyIGFwcGVhcmFuY2Ugb2YgZmlsZSB1cGxvYWQgbW9kYWxcbiAgLy8gTmVlZGVkIHRvIGhhdmUgYSB0aGlzIGRpdiBuZXN0ZWQgaW5zaWRlIG9mIGl0c2VsZiBmb3IgdGhlXG4gIC8vIERyYWcgJiBkcm9wIGZlYXR1cmUgdG8gd29yayBjb3JyZWN0bHlcbiAgLmNlbyB7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICY6YmVmb3JlIHtkaXNwbGF5OiBub25lO31cbiAgfVxufVxuXG4uY2VvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6ICRvdmVybGF5LXo7XG4gIHBhZGRpbmc6IDAgMzBweDtcblxuICAvKlxuICAgIFNlbWktdHJhbnNwYXJlbnQgZ3JhZGllbnQgaW4gYmFja2dyb3VuZFxuICAgIE1ha2VzIGl0IHBvc3NpYmxlIHRvIGxlYXZlIG9wYWNpdHkgYWxvbmVcbiAgKi9cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtZGlhZy1kb3duKCRjLXBvb2wsJGMtY29tZXQpO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxuXG4gIC5vdmVybGF5LWNvbnRyb2xzIHtcbiAgICBwYWRkaW5nOiAwIDE4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleDogMCAwICRvdmVybGF5LWNvbnRyb2xzLWhlaWdodDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuICB9XG4gIC5vdmVybGF5LWNvbnRyb2xzIC5uYXYtdGFibGlzdCB7XG4gICAgd2lkdGg6IDIzMHB4O1xuXG4gICAgbGkge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgfVxuICB9XG4gIC5vdmVybGF5LWNvbnRyb2xzLS1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgZmxleDogMSAwIDA7XG5cbiAgICAudG9nZ2xlIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBjb2xvcjogJGcxMy1taXN0O1xuICAgICAgbWFyZ2luOiAwIDZweCAwIDA7XG4gICAgICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG4gIC5vdmVybGF5LS1ncmFwaC1uYW1lIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdDtcbiAgfVxufVxuLmNlby0tZWRpdG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5jZW8tLWVkaXRvciAucXVlcnktbWFrZXItLWVtcHR5IHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuLm92ZXJsYXktY29udHJvbHMgLmNvbmZpcm0tb3ItY2FuY2VsIHtcbiAgbWFyZ2luLWxlZnQ6IDMycHg7XG59XG5cbi8qIEdyYXBoIGVkaXRpbmcgaW4gRGFzaGJvYXJkcyBpcyBhIGxpdHRsZSBzbWFsbGVyIHNvIHRoZSBkYXNoIGNhbiBiZSBzZWVuIGluIHRoZSBiYWNrZ3JvdW5kICovXG4uY2VvIC5ncmFwaCB7XG4gIG1hcmdpbjogMCAxNSU7XG59XG4uY2VvIC5xdWVyeS1tYWtlciB7XG4gIGZsZXg6IDEgMCAwJTtcbiAgcGFkZGluZzogMCAxOHB4O1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG59XG4uY2VvIC5xdWVyeS1tYWtlci0tdGFicyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY2VvIC5xdWVyeS1tYWtlci0tdGFiLWNvbnRlbnRzIHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuIiwiLypcbiAgU3R5bGVzIGZvciB0aGUgVGVtcGxhdGUgVmFyaWFibGVzIE1hbmFnZXIgUGFuZWxcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEFjY2Vzc2VkIHZpYSBEYXNoYm9hcmRzXG4qL1xuXG4kdHZtcC1wYW5lbC1tYXgtd2lkdGg6IDEzMDBweDtcbiR0dm1wLWd1dHRlcjogMzBweDtcbiR0dm1wLW1pbi1oZWlnaHQ6IDE1MHB4O1xuJHR2bXAtbWF4LWhlaWdodDogY2FsYygxMDAlIC0gOTBweCk7XG4kdHZtcC10YWJsZS1ndXR0ZXI6IDhweDtcblxuLnRlbXBsYXRlLXZhcmlhYmxlLW1hbmFnZXIge1xuICBtYXgtd2lkdGg6ICR0dm1wLXBhbmVsLW1heC13aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4udGVtcGxhdGUtdmFyaWFibGUtbWFuYWdlci0taGVhZGVyIHtcbiAgaGVpZ2h0OiAkY2hyb25vZ3JhZi1wYWdlLWhlYWRlci1oZWlnaHQ7XG4gIGJhY2tncm91bmQ6ICRnMC1vYnNpZGlhbjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwICR0dm1wLWd1dHRlcjtcblxuICAucGFnZS1oZWFkZXJfX2Rpc21pc3Mge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gIH1cbn1cbi50ZW1wbGF0ZS12YXJpYWJsZS1tYW5hZ2VyLS1ib2R5IHtcbiAgcGFkZGluZzogMThweCAoJHR2bXAtZ3V0dGVyIC0gJHR2bXAtdGFibGUtZ3V0dGVyKSAkdHZtcC1ndXR0ZXJcbiAgICAoJHR2bXAtZ3V0dGVyIC0gJHR2bXAtdGFibGUtZ3V0dGVyKTtcbiAgYm9yZGVyLXJhZGl1czogMCAwICRyYWRpdXMgJHJhZGl1cztcbiAgbWluLWhlaWdodDogJHR2bXAtbWluLWhlaWdodDtcbiAgbWF4LWhlaWdodDogJHR2bXAtbWF4LWhlaWdodDtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtdigkZzIta2V2bGFyLCAkZzAtb2JzaWRpYW4pO1xuICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyLXJvdW5kKCRnMC1vYnNpZGlhbiwgJGczLWNhc3RsZSk7XG59XG4udGVtcGxhdGUtdmFyaWFibGUtbWFuYWdlci0tdGFibGUsXG4udGVtcGxhdGUtdmFyaWFibGUtbWFuYWdlci0tdGFibGUtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBDb2x1bW4gV2lkdGhzICovXG4udHZtLS1jb2wtMSB7XG4gIGZsZXg6IDAgMCAxNDBweDtcbn1cbi50dm0tLWNvbC0yIHtcbiAgZmxleDogMCAwIDE0MHB4O1xufVxuLnR2bS0tY29sLTMge1xuICBmbGV4OiAxIDAgMDtcbn1cbi50dm0tLWNvbC00IHtcbiAgZmxleDogMCAwIDMwcHg7XG5cbiAgJi5lZGl0aW5nIHtcbiAgICBmbGV4OiAwIDAgNjhweDtcbiAgfVxufVxuXG4vKiBUYWJsZSBDb2x1bW4gTGFiZWxzICovXG4udGVtcGxhdGUtdmFyaWFibGUtbWFuYWdlci0tdGFibGUtaGVhZGluZyB7XG4gIHBhZGRpbmc6IDAgJHR2bXAtdGFibGUtZ3V0dGVyO1xuICBoZWlnaHQ6IDE4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICA+ICoge1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gICAgcGFkZGluZy1sZWZ0OiA2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAkdHZtcC10YWJsZS1ndXR0ZXI7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuLyogVGFibGUgQm9keSAqL1xuLnRlbXBsYXRlLXZhcmlhYmxlLW1hbmFnZXItLXRhYmxlLXJvd3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cbi50ZW1wbGF0ZS12YXJpYWJsZS1tYW5hZ2VyLS10YWJsZS1yb3cge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBwYWRkaW5nOiAkdHZtcC10YWJsZS1ndXR0ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcblxuICAmLmVkaXRpbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gIH1cblxuICA+ICoge1xuICAgIG1hcmdpbi1yaWdodDogJHR2bXAtdGFibGUtZ3V0dGVyO1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi50dm0taW5wdXQsXG4uZm9ybS1jb250cm9sLnR2bS1pbnB1dC1lZGl0IHtcbiAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwIDZweCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgY29sb3I6ICRjLWNvbWV0ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMzBweCAhaW1wb3J0YW50O1xuXG4gICY6Zm9jdXMsXG4gICY6Zm9jdXM6aG92ZXIge1xuICAgIGNvbG9yOiAkYy1jb21ldCAhaW1wb3J0YW50O1xuICB9XG59XG4udHZtLWlucHV0IHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMjZweDtcbiAgcGFkZGluZzogMCA4cHg7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRnNS1wZXBwZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogdGV4dDtcbiAgICBib3JkZXItY29sb3I6ICRnNi1zbW9rZTtcbiAgfVxufVxuLnR2bS12YWx1ZXMsXG4udHZtLXZhbHVlcy1lbXB0eSB7XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICBjb2xvcjogJGMtcG9vbDtcbiAgcGFkZGluZzogMCAkdHZtcC10YWJsZS1ndXR0ZXI7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIG1heC1oZWlnaHQ6IDkwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyLXJvdW5kKCRnNS1wZXBwZXIsICRnNy1ncmFwaGl0ZSk7XG59XG4udHZtLXZhbHVlcy1lbXB0eSB7XG4gIGNvbG9yOiAkZzktbW91bnRhaW47XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi50dm0tY3N2LWluc3RydWN0aW9ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbiAgcGFkZGluZzogMCAkdHZtcC10YWJsZS1ndXR0ZXI7XG4gIGhlaWdodDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgY29sb3I6ICRnOS1tb3VudGFpbjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4udHZtLXF1ZXJ5LWJ1aWxkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAzMHB4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gIH1cbiAgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuXG4gIC5kcm9wZG93biB7XG4gICAgZmxleDogMSAwIDA7XG5cbiAgICAmID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbi50dm0tcXVlcnktYnVpbGRlci0tdGV4dCB7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXMtc21hbGw7XG4gIHBhZGRpbmc6IDAgJHR2bXAtdGFibGUtZ3V0dGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBjb2xvcjogJGMtcG9vbDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogJGNvZGUtZm9udDtcbn1cblxuLnR2bS1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAmID4gLmJ0bjpudGgtY2hpbGQoMikge1xuICAgIG1hcmdpbi1sZWZ0OiAkdHZtcC10YWJsZS1ndXR0ZXI7XG4gIH1cbn1cbiIsIi8qXG4gIFN0eWxlcyBmb3IgdGhlIFdyaXRlIERhdGEgb3ZlcmxheVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgQWNjZXNzZWQgdmlhIERhdGEgRXhwbG9yZXJcbiovXG5cbiR3cml0ZS1kYXRhLS1mb3JtLXo6IDI7XG4kd3JpdGUtZGF0YS0tZHJhZy1vdmVybGF5LXo6IDE7XG4kd3JpdGUtZGF0YS0tbWF4LXdpZHRoOiA5NjBweDtcbiR3cml0ZS1kYXRhLS1ndXR0ZXI6IDMwcHg7XG4kd3JpdGUtZGF0YS0tbWFyZ2luOiAxOHB4O1xuJHdyaXRlLWRhdGEtLWlucHV0LWhlaWdodDogY2FsYyg5MHZoIC0gNDhweCAtIDYwcHggLSAzNnB4KTsgLy8gSGVpZ2h0cyBvZiBldmVyeXRoaW5nIGJ1dCBpbnB1dCBoZWlnaHRcbiR3cml0ZS1kYXRhLS10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZTtcblxuLndyaXRlLWRhdGEtZm9ybSB7XG4gIG1heC13aWR0aDogJHdyaXRlLWRhdGEtLW1heC13aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogJHdyaXRlLWRhdGEtLWZvcm0tejtcbn1cbi53cml0ZS1kYXRhLWZvcm0tLWhlYWRlciB7XG4gIGhlaWdodDogJGNocm9ub2dyYWYtcGFnZS1oZWFkZXItaGVpZ2h0O1xuICBiYWNrZ3JvdW5kOiAkZzAtb2JzaWRpYW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAkd3JpdGUtZGF0YS0tZ3V0dGVyO1xuXG4gIC5wYWdlLWhlYWRlcl9fZGlzbWlzcyB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgfVxuICAuZHJvcGRvd24ge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgJiA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgd2lkdGg6IDE4MHB4O1xuICAgIH1cbiAgfVxufVxuLndyaXRlLWRhdGEtZm9ybS0tYm9keSB7XG4gIHBhZGRpbmc6ICR3cml0ZS1kYXRhLS1tYXJnaW4gJHdyaXRlLWRhdGEtLWd1dHRlcjtcbiAgYm9yZGVyLXJhZGl1czogMCAwICRyYWRpdXMgJHJhZGl1cztcbiAgQGluY2x1ZGUgZ3JhZGllbnQtdigkZzIta2V2bGFyLCRnMC1vYnNpZGlhbik7XG59XG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wud3JpdGUtZGF0YS1mb3JtLS1pbnB1dCB7XG4gIGhlaWdodDogJHdyaXRlLWRhdGEtLWlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJHdyaXRlLWRhdGEtLW1hcmdpbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICByZXNpemU6IG5vbmU7XG59XG4ud3JpdGUtZGF0YS1mb3JtLS1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi10b3A6ICR3cml0ZS1kYXRhLS1tYXJnaW47XG59XG4ud3JpdGUtZGF0YS1mb3JtLS1oZWxwZXIge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICRnOS1tb3VudGFpbjtcbiAgcGFkZGluZy1sZWZ0OiAkd3JpdGUtZGF0YS0tbWFyZ2luICsgMnB4O1xufVxuLndyaXRlLWRhdGEtZm9ybS0tc3VibWl0IHtcbiAgd2lkdGg6IDE0MHB4O1xufVxuLndyaXRlLWRhdGEtZm9ybS0tZmlsZSB7XG4gIGhlaWdodDogJHdyaXRlLWRhdGEtLWlucHV0LWhlaWdodDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRnNC1vbnl4O1xuICBtYXJnaW4tYm90dG9tOiA0OHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHRyYW5zaXRpb246XG4gICAgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLFxuICAgIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuXG4gID4gcCB7XG4gICAgY29sb3I6ICRnMTItZm9yZ2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgfVxufVxuLndyaXRlLWRhdGEtZm9ybS0tZ3JhcGhpYyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1hZ2VzL2RyYWctZHJvcC1pY29uLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICB3aWR0aDogOTBweDtcbiAgaGVpZ2h0OiA5MHB4O1xuICBtYXJnaW4tYm90dG9tOiA2OHB4O1xuXG4gICYud3JpdGUtZGF0YS1mb3JtLS1ncmFwaGljX3N1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1hZ2VzL2RyYWctZHJvcC1pY29uLS1zdWNjZXNzLnN2Zyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXS53cml0ZS1kYXRhLWZvcm0tLXVwbG9hZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud3JpdGUtZGF0YS1mb3JtLS1maWxlcGF0aF9zZWxlY3RlZCxcbi53cml0ZS1kYXRhLWZvcm0tLWZpbGVwYXRoX2VtcHR5IHtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG1hcmdpbjogMCAwIDMwcHggMDtcbn1cbi53cml0ZS1kYXRhLWZvcm0tLWZpbGVwYXRoX2VtcHR5IHtjb2xvcjogJGcxMi1mb3JnZTt9XG4ud3JpdGUtZGF0YS1mb3JtLS1maWxlcGF0aF9zZWxlY3RlZCB7Y29sb3I6ICRjLXJhaW5mb3Jlc3Q7fVxuXG4ud3JpdGUtZGF0YS1mb3JtLS1maWxlLXN1Ym1pdCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gICYgLmJ0biB7XG4gICAgd2lkdGg6IDEyNHB4O1xuICAgIG1hcmdpbjogMCA4cHg7XG4gIH1cbn1cblxuLypcbiAgU3R5bGVzIGZvciBob3ZlciBzdGF0ZSBhbmQgZHJhZy1vdmVyIHN0YXRlIGxvb2sgdGhlIHNhbWVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLndyaXRlLWRhdGEtZm9ybS0tZmlsZS53cml0ZS1kYXRhLWZvcm0tLWZpbGVfYWN0aXZlOmhvdmVyLFxuLm92ZXJsYXktdGVjaG5vbG9neS5kcmFnLW92ZXIgLndyaXRlLWRhdGEtZm9ybS0tZmlsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gIGJvcmRlci1jb2xvcjogJGc2LXNtb2tlO1xufVxuIiwiLypcbiAgICBTdHlsZXMgZm9yIEluZmx1eERCIEFkbWluIFBhZ2VcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4vKlxuICAgIEFkbWluIFRhYmxlXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5hZG1pbi10YWJsZSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAkZzE0LWNocm9taXVtO1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4gIC5jYXJldCB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLmFkbWluLXRhYmxlLS1tdWx0aS1zZWxlY3QtZW1wdHkgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAkZzgtc3Rvcm07XG59XG4uYWRtaW4tdGFibGUgdGJvZHkgdHI6aG92ZXIgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAkZzIwLXdoaXRlICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG5cbiAgLmNhcmV0IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWxhc2VyO1xuICB9XG59XG50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZC5hZG1pbi10YWJsZS0tbGVmdC1vZmZzZXQsXG50YWJsZSA+IHRoZWFkID4gdHIgPiB0aC5hZG1pbi10YWJsZS0tbGVmdC1vZmZzZXQge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbnRhYmxlID4gdGJvZHkgPiB0ci5hZG1pbi10YWJsZS0tZWRpdC1yb3csXG50YWJsZSA+IHRib2R5ID4gdHIuYWRtaW4tdGFibGUtLWVkaXQtcm93OmhvdmVyLFxudGFibGUudGFibGUtaGlnaGxpZ2h0ID4gdGJvZHkgPiB0ci5hZG1pbi10YWJsZS0tZWRpdC1yb3csXG50YWJsZS50YWJsZS1oaWdobGlnaHQgPiB0Ym9keSA+IHRyLmFkbWluLXRhYmxlLS1lZGl0LXJvdzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNS1wZXBwZXI7XG59XG4uYWRtaW4tdGFibGUtLWNoYW5nZS1wdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIG1hcmdpbjogMCA0cHggMCAwO1xuICAgIGZsZXg6IDEgMCAwJTtcbiAgfVxufVxucHJlLmFkbWluLXRhYmxlLS1xdWVyeSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hZG1pbi10YWJsZS0tZGVsZXRlLWRiIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICA+IC5mb3JtLWNvbnRyb2wge1xuICAgIGZsZXg6IDEgMCAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgfVxufVxuXG4vKlxuICAgIERhdGFiYXNlIE1hbmFnZXJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmRiLW1hbmFnZXIge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5kYi1tYW5hZ2VyLWhlYWRlci0tYWN0aW9ucyB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gICY6aG92ZXIgLmRiLW1hbmFnZXItaGVhZGVyLS1hY3Rpb25zIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG4uZGItbWFuYWdlci1oZWFkZXIge1xuICBwYWRkaW5nOiAwIDExcHg7XG4gIGhlaWdodDogNDJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cy1zbWFsbCAkcmFkaXVzLXNtYWxsIDAgMDtcblxuICBoNCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAkYy1wb3Rhc3NpdW07XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIH1cbn1cbi5kYi1tYW5hZ2VyLWhlYWRlci0tYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4uZGItbWFuYWdlci1oZWFkZXItLWVkaXQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgbWFyZ2luOiAwIDhweCAwIDA7XG4gICAgZmxleDogMSAwIDAlO1xuICB9XG59XG5cbi5kYi1tYW5hZ2VyLXRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc0LW9ueXg7XG4gIHBhZGRpbmc6IDlweCAxMXB4O1xuICBib3JkZXItcmFkaXVzOiAwIDAgJHJhZGl1cy1zbWFsbCAkcmFkaXVzLXNtYWxsO1xuXG4gIC50YWJsZS1oaWdobGlnaHQgPiB0Ym9keSA+IHRyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xuICB9XG59XG5cbi8qXG4gICAgQ2hyb25vZ3JhZiBBZG1pblxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4uYWxsLXVzZXJzLWFkbWluLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1yaWdodDogMzBweDtcblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjogJGcxMC13b2xmO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2U7XG4gICAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgfVxuICAuc2xpZGUtdG9nZ2xlLmFjdGl2ZSArIHNwYW4ge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBjb2xvcjogJGcxNS1wbGF0aW51bTtcbiAgfVxufVxuIiwiLypcbiAgICBTdHlsZXMgZm9yIENocm9ub2dyYWYgVXNlcnMgQWRtaW4gUGFnZVxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5jaHJvbm9ncmFmLXVzZXItLXJvbGUsXG4uY2hyb25vZ3JhZi11c2VyLS1vcmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xufVxuLmNocm9ub2dyYWYtdXNlci0tcm9sZSxcbi5jaHJvbm9ncmFmLXVzZXItLW9yZyxcbnRhYmxlLnRhYmxlLmNocm9ub2dyYWYtYWRtaW4tdGFibGUgLmRyb3Bkb3duIHtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4uY2hyb25vZ3JhZi11c2VyLS1vcmcge1xuICBwYWRkaW5nLWxlZnQ6IDdweDtcbn1cbnRhYmxlLnRhYmxlLmNocm9ub2dyYWYtYWRtaW4tdGFibGUgdGhlYWQgdHIgdGguYWxpZ24td2l0aC1jb2wtdGV4dCB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cbi5kcm9wZG93bi1sYWJlbCB7XG4gIG1hcmdpbjogMCA4cHggMCAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogJGcxMy1taXN0O1xuICBmb250LXNpemU6IDE0cHg7XG59XG4ucGFuZWwtYm9keS5jaHJvbm9ncmFmLWFkbWluLXRhYmxlLS1wYW5lbCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBwYWRkaW5nLXRvcDogMTFweDtcbn1cbi5jaHJvbm9ncmFmLWFkbWluLXRhYmxlLS1iYXRjaCB7XG4gIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgcGFkZGluZzogMTFweCAzOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmNocm9ub2dyYWYtYWRtaW4tdGFibGUtLWJhdGNoLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gID4gLmRyb3Bkb3duLFxuICA+IC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIH1cbn1cbi5jaHJvbm9ncmFmLWFkbWluLXRhYmxlLS1udW0tc2VsZWN0ZWQge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBtYXJnaW46IDBweCAxMXB4IDAgMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAkZzEzLW1pc3Q7XG59XG4uc3VwZXItYWRtaW4tdG9nZ2xlIC5kcm9wZG93bi10b2dnbGUge1xuICB3aWR0aDogNzBweDtcbn1cblxuLyogTWFrZSBkcm9wZG93bnMgaW4gYWRtaW4gdGFibGUgYXBwZWFyIGFzIHBsYWludGV4dCB1bnRpbCBob3ZlciAqL1xudGFibGUudGFibGUuY2hyb25vZ3JhZi1hZG1pbi10YWJsZSB0Ym9keSB0ci5jaHJvbm9ncmFmLWFkbWluLXRhYmxlLS11c2VyIHRkIGRpdi5kcm9wZG93biBkaXYuYnRuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG4gIGNvbG9yOiAkZzEzLW1pc3Q7XG5cbiAgPiAuY2FyZXQge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbnRhYmxlLnRhYmxlLmNocm9ub2dyYWYtYWRtaW4tdGFibGUgdGJvZHkgdHIuY2hyb25vZ3JhZi1hZG1pbi10YWJsZS0tdXNlci5zZWxlY3RlZCB0ZCBkaXYuZHJvcGRvd24gZGl2LmJ0bi5kcm9wZG93bi10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzUtcGVwcGVyO1xufVxudGFibGUudGFibGUuY2hyb25vZ3JhZi1hZG1pbi10YWJsZSB0Ym9keSB0ci5jaHJvbm9ncmFmLWFkbWluLXRhYmxlLS11c2VyOmhvdmVyIHRkIGRpdi5kcm9wZG93biBkaXYuYnRuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gIGNvbG9yOiAkZzIwLXdoaXRlO1xuXG4gID4gLmNhcmV0IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtbGFzZXI7XG4gIH1cbn1cbnRhYmxlLnRhYmxlLmNocm9ub2dyYWYtYWRtaW4tdGFibGUgdGJvZHkgdHIuY2hyb25vZ3JhZi1hZG1pbi10YWJsZS0tdXNlciB0ZCBkaXYuZHJvcGRvd24ub3BlbiBkaXYuYnRuLmRyb3Bkb3duLXRvZ2dsZSxcbnRhYmxlLnRhYmxlLmNocm9ub2dyYWYtYWRtaW4tdGFibGUgdGJvZHkgdHIuY2hyb25vZ3JhZi1hZG1pbi10YWJsZS0tdXNlciB0ZCBkaXYuZHJvcGRvd24ub3BlbiBkaXYuYnRuLmRyb3Bkb3duLXRvZ2dsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLWh5ZHJvZ2VuO1xuICBjb2xvcjogJGcyMC13aGl0ZTtcblxuICA+IC5jYXJldCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vKiBTdHlsZXMgZm9yIG5ldyB1c2VyIHJvdyAqL1xudGFibGUudGFibGUuY2hyb25vZ3JhZi1hZG1pbi10YWJsZSB0Ym9keSB0ci5jaHJvbm9ncmFmLWFkbWluLXRhYmxlLS1uZXctdXNlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xufVxuXG4vKiBIaWdobGlnaHQgXCJNZVwiIGluIHRoZSB1c2VycyB0YWJsZSAqL1xuLmNocm9ub2dyYWYtdXNlci0tbWUge1xuICBjb2xvcjogJGMtcmFpbmZvcmVzdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICA+IHNwYW4uaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICB9XG59XG4iLCIvKlxuICAgIFN0eWxlcyBmb3IgVElDS3NjcmlwdCBFZGl0b3JcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kdGlja3NjcmlwdC1jb250cm9scy1oZWlnaHQ6IDYwcHg7XG5cbi50aWNrc2NyaXB0IHtcbiAgZmxleDogMSAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLnRpY2tzY3JpcHQtY29udHJvbHMsXG4udGlja3NjcmlwdC1jb25zb2xlLFxuLnRpY2tzY3JpcHQtZWRpdG9yIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udGlja3NjcmlwdC1jb25zb2xlLFxuLnRpY2tzY3JpcHQtY29udHJvbHMge1xuICBwYWRkaW5nOiAwIDYwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4udGlja3NjcmlwdC1jb250cm9scyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogJHRpY2tzY3JpcHQtY29udHJvbHMtaGVpZ2h0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMy1jYXN0bGU7XG59XG4udGlja3NjcmlwdC1jb250cm9scy0tbmFtZSB7XG4gIG1hcmdpbjogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICRnMTMtbWlzdDtcbn1cbi50aWNrc2NyaXB0LWNvbnRyb2xzLS1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gID4gKiB7bWFyZ2luLWxlZnQ6IDhweDt9XG59XG4udGlja3NjcmlwdC1jb25zb2xlIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGhlaWdodDogJHRpY2tzY3JpcHQtY29udHJvbHMtaGVpZ2h0ICogMi4yNTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRnMy1jYXN0bGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMC1vYnNpZGlhbjtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyKCRnMC1vYnNpZGlhbiwkZzQtb255eCk7XG5cbiAgPiBwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICAgIG1hcmdpbjogMTFweCAwO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnPic7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLnRpY2tzY3JpcHQtY29uc29sZS0tZGVmYXVsdCB7XG4gIGNvbG9yOiAkZzEzLW1pc3Q7XG59XG4udGlja3NjcmlwdC1jb25zb2xlLS12YWxpZCB7XG4gIGNvbG9yOiAkYy1yYWluZm9yZXN0O1xufVxuLnRpY2tzY3JpcHQtY29uc29sZS0tZXJyb3Ige1xuICBjb2xvcjogJGMtZHJlYW1zaWNsZTtcbn1cbi50aWNrc2NyaXB0LWVkaXRvciB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gI3skdGlja3NjcmlwdC1jb250cm9scy1oZWlnaHQgKiAzLjI1fSk7XG59XG5cbi8qXG4gICAgVG9nZ2xlIGZvciBkaXNwbGF5aW5nIExvZ3NcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmxvZ3MtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuICA+IGxpIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgPiBsaTpub3QoLmFjdGl2ZSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMC1vYnNpZGlhbjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGczLWNhc3RsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4gICAgU3R5bGVzIGZvciBJRlFMIEJ1aWxkZXIgYWthIFRJTUUgTUFDSElORSBha2EgREVMT1JFQU5cbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5AaW1wb3J0ICcuLi9jb21wb25lbnRzL3RpbWUtbWFjaGluZS9pZnFsLWVkaXRvcic7XG5AaW1wb3J0ICcuLi9jb21wb25lbnRzL3RpbWUtbWFjaGluZS9pZnFsLWJ1aWxkZXInO1xuQGltcG9ydCAnLi4vY29tcG9uZW50cy90aW1lLW1hY2hpbmUvaWZxbC1leHBsb3Jlcic7XG5AaW1wb3J0ICcuLi9jb21wb25lbnRzL3RpbWUtbWFjaGluZS92aXN1YWxpemF0aW9uJztcbkBpbXBvcnQgJy4uL2NvbXBvbmVudHMvdGltZS1tYWNoaW5lL2FkZC1mdW5jLWJ1dHRvbic7IiwiLypcbiAgICBJRlFMIENvZGUgTWlycm9yIEVkaXRvclxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi50aW1lLW1hY2hpbmUtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiA5MCU7XG4gIGp1c3RpZnktY29udGVudDogYmFzZWxpbmU7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4uZnVuYy1ub2Rlcy1jb250YWluZXIsXG4udGltZS1tYWNoaW5lLWVkaXRvci1jb250YWluZXIge1xuICBmbGV4OiAxIDAgNTAlO1xufVxuXG4udGltZS1tYWNoaW5lLWVkaXRvciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4iLCIkaWZxbC1ub2RlLWhlaWdodDogMzBweDtcbiRpZnFsLW5vZGUtdG9vbHRpcC1nYXA6IDRweDtcbiRpZnFsLW5vZGUtZ2FwOiA1cHg7XG4kaWZxbC1ub2RlLXBhZGRpbmc6IDEwcHg7XG4kaWZxbC1hcmctbWluLXdpZHRoOiAxMjBweDtcbiRpZnFsLW51bWJlci1jb2xvcjogJGMtbmV1dHJpbm87XG4kaWZxbC1zdHJpbmctY29sb3I6ICRjLWhvbmV5ZGV3O1xuJGlmcWwtYm9vbGVhbi1jb2xvcjogJGMtdmlyaWRpYW47XG4kaWZxbC1pbnZhbGlkLWNvbG9yOiAkYy12aXJpZGlhbjtcbi8qXG4gIFNoYXJlZCBOb2RlIHN0eWxlc1xuICAtLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbiVpZnFsLW5vZGUge1xuICBtaW4taGVpZ2h0OiAkaWZxbC1ub2RlLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgcGFkZGluZzogMCAkaWZxbC1ub2RlLXBhZGRpbmc7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNi1zbW9rZTtcbiAgfVxufVxuXG4uYm9keS1idWlsZGVyIHtcbiAgcGFkZGluZzogMzBweDtcbiAgbWluLXdpZHRoOiA0NDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcxLXJhdmVuO1xufVxuXG4uZGVjbGFyYXRpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnZhcmlhYmxlLXN0cmluZyB7XG4gIEBleHRlbmQgJWlmcWwtbm9kZTtcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIGxpbmUtaGVpZ2h0OiAkaWZxbC1ub2RlLWhlaWdodDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbn1cblxuLnZhcmlhYmxlLWJsYW5rIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4udmFyaWFibGUtbmFtZSB7XG4gIGNvbG9yOiAkYy1wb29sO1xufVxuXG4udmFyaWFibGUtdmFsdWUtLXN0cmluZyB7XG4gIGNvbG9yOiAkaWZxbC1zdHJpbmctY29sb3I7XG59XG5cbi52YXJpYWJsZS12YWx1ZS0tYm9vbGVhbiB7XG4gIGNvbG9yOiAkaWZxbC1ib29sZWFuLWNvbG9yO1xufVxuXG4udmFyaWFibGUtdmFsdWUtLW51bWJlciB7XG4gIGNvbG9yOiAkaWZxbC1udW1iZXItY29sb3I7XG59XG5cbi52YXJpYWJsZS12YWx1ZS0taW52YWxpZCB7XG4gIGNvbG9yOiAkaWZxbC1pbnZhbGlkLWNvbG9yO1xufVxuXG4uZnVuYy1ub2RlIHtcbiAgQGV4dGVuZCAlaWZxbC1ub2RlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIG1hcmdpbi1sZWZ0OiAkaWZxbC1ub2RlLWdhcDtcblxuICAvLyBDb25uZWN0aW9uIExpbmVcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgd2lkdGg6ICRpZnFsLW5vZGUtZ2FwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtNTAlKTtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmZ1bmMtbm9kZS0tbmFtZSxcbi5mdW5jLW5vZGUtLXByZXZpZXcge1xuICBmb250LXNpemU6IDEzcHg7XG4gIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5mdW5jLW5vZGUtLW5hbWUge1xuICBoZWlnaHQ6ICRpZnFsLW5vZGUtaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlmcWwtbm9kZS1oZWlnaHQ7XG4gIGNvbG9yOiAkYy1jb21ldDtcbiAgLmZ1bmMtbm9kZTpob3ZlciAmIHtcbiAgICBjb2xvcjogJGMtcG90YXNzaXVtO1xuICB9XG59XG5cbi5mdW5jLW5vZGUtLXByZXZpZXcge1xuICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC5mdW5jLW5vZGU6aG92ZXIgJiB7XG4gICAgY29sb3I6ICRnMTctd2hpc3BlcjtcbiAgfVxufVxuXG4uZnVuYy1ub2RlLS10b29sdGlwLFxuLnZhcmlhYmxlLW5hbWUtLXRvb2x0aXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBwYWRkaW5nOiAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArICN7JGlmcWwtbm9kZS10b29sdGlwLWdhcH0pO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAycHggJGcyLWtldmxhcjsgLy8gQ2FyZXRcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci13aWR0aDogOXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZzMtY2FzdGxlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogJGlmcWwtbm9kZS1wYWRkaW5nICsgM3B4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgfSAvLyBJbnZpc2libGUgYmxvY2sgdG8gY29udGludWUgaG92ZXJpbmdcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBoZWlnaHQ6IDdweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtN3B4O1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuLmZ1bmMtbm9kZS0tYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi10b3A6IDEycHg7XG59XG5cbi5mdW5jLW5vZGUtLWRlbGV0ZSxcbi5mdW5jLW5vZGUtLWJ1aWxkIHtcbiAgd2lkdGg6IDYwcHg7XG59XG5cbi5mdW5jLW5vZGUtLXN1YiAuZnVuYy1hcmcge1xuICBtaW4td2lkdGg6ICRpZnFsLWFyZy1taW4td2lkdGg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5mdW5jLWFyZy0tbGFiZWwge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAkZzEwLXdvbGY7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbn1cblxuLmZ1bmMtYXJnLS12YWx1ZSB7XG4gIGZsZXg6IDEgMCAwO1xufVxuXG4uZnVuYy1hcmctLXRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDMwMHB4O1xufVxuXG4udmFyaWFibGUtbmFtZS0tdG9vbHRpcCB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG5cbi52YXJpYWJsZS1uYW1lLS1pbnB1dCB7XG4gIHdpZHRoOiAxNDBweDtcbn1cblxuLnZhcmlhYmxlLW5hbWUtLW9wZXJhdG9yIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbn1cblxuLypcbiAgRmlsdGVyIFByZXZpZXcgU3R5bGVzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuJGlmcWwtZmlsdGVyLWdhcDogNnB4O1xuJGlmcWwtZmlsdGVyLXVuaXQ6IDI2cHg7XG4kaWZxbC1maWx0ZXItdW5pdC13cmFwcGVkOiAzNHB4O1xuJGlmcWwtZmlsdGVyLWV4cHJlc3Npb246ICRnMy1jYXN0bGU7XG4kaWZxbC1maWx0ZXItcGFyZW5zOiAkZzUtcGVwcGVyO1xuJWlmcWwtZmlsdGVyLXN0eWxlIHtcbiAgaGVpZ2h0OiAkaWZxbC1maWx0ZXItdW5pdDtcbiAgbGluZS1oZWlnaHQ6ICRpZnFsLWZpbHRlci11bml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cbi5pZnFsLWZpbHRlci0ta2V5IHtcbiAgQGV4dGVuZCAlaWZxbC1maWx0ZXItc3R5bGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpZnFsLWZpbHRlci1leHByZXNzaW9uO1xuICBib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcbiAgcGFkZGluZy1sZWZ0OiAkaWZxbC1maWx0ZXItZ2FwO1xufVxuXG4uaWZxbC1maWx0ZXItLW9wZXJhdG9yIHtcbiAgQGV4dGVuZCAlaWZxbC1maWx0ZXItc3R5bGU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDAgKCRpZnFsLWZpbHRlci1nYXAgLyAyKTtcbn1cblxuLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yLFxuLmlmcWwtZmlsdGVyLS1wYXJlbi1jbG9zZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yIHtcbiAgcGFkZGluZzogMCAkaWZxbC1maWx0ZXItZ2FwO1xufVxuXG4uaWZxbC1maWx0ZXItLWtleSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlmcWwtZmlsdGVyLWV4cHJlc3Npb247XG59XG5cbi5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpZnFsLWZpbHRlci1leHByZXNzaW9uO1xuICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcbn1cblxuLmlmcWwtZmlsdGVyLS12YWx1ZSB7XG4gIEBleHRlbmQgJWlmcWwtZmlsdGVyLXN0eWxlO1xuICBwYWRkaW5nLXJpZ2h0OiAkaWZxbC1maWx0ZXItZ2FwO1xuICAmLm51bWJlciB7XG4gICAgY29sb3I6ICRpZnFsLW51bWJlci1jb2xvcjtcbiAgfVxuICAmLnN0cmluZyB7XG4gICAgY29sb3I6ICRpZnFsLXN0cmluZy1jb2xvcjtcbiAgfVxuICAmLmJvb2xlYW4ge1xuICAgIGNvbG9yOiAkaWZxbC1ib29sZWFuLWNvbG9yO1xuICB9XG59XG5cbi5pZnFsLWZpbHRlci0tcGFyZW4tb3Blbixcbi5pZnFsLWZpbHRlci0tcGFyZW4tY2xvc2Uge1xuICBAZXh0ZW5kICVpZnFsLWZpbHRlci1zdHlsZTtcbiAgaGVpZ2h0OiAkaWZxbC1maWx0ZXItdW5pdC13cmFwcGVkO1xuICB3aWR0aDogKCRpZnFsLWZpbHRlci11bml0LXdyYXBwZWQgLSAkaWZxbC1maWx0ZXItdW5pdCkgLyAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWZxbC1maWx0ZXItcGFyZW5zO1xuICBib3JkZXI6ICgoJGlmcWwtZmlsdGVyLXVuaXQtd3JhcHBlZCAtICRpZnFsLWZpbHRlci11bml0KSAvIDIpIHNvbGlkICRpZnFsLWZpbHRlci1leHByZXNzaW9uO1xufVxuXG4uaWZxbC1maWx0ZXItLXBhcmVuLW9wZW4ge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xufVxuXG4uaWZxbC1maWx0ZXItLXBhcmVuLWNsb3NlIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwO1xufVxuXG4laWZxbC1maWx0ZXItd3JhcHBlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlmcWwtZmlsdGVyLXBhcmVucztcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJGlmcWwtZmlsdGVyLXVuaXQtd3JhcHBlZDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGlmcWwtZmlsdGVyLXVuaXQgLSAkaWZxbC1maWx0ZXItdW5pdC13cmFwcGVkKSAvIDI7XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogKCgkaWZxbC1maWx0ZXItdW5pdC13cmFwcGVkIC0gJGlmcWwtZmlsdGVyLXVuaXQpIC8gMikgMDtcbiAgICBib3JkZXItY29sb3I6ICRpZnFsLWZpbHRlci1leHByZXNzaW9uO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cblxuLmlmcWwtZmlsdGVyLS1wYXJlbi1vcGVuKy5pZnFsLWZpbHRlci0ta2V5LFxuLmlmcWwtZmlsdGVyLS1wYXJlbi1vcGVuKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IsXG4uaWZxbC1maWx0ZXItLXBhcmVuLW9wZW4rLmlmcWwtZmlsdGVyLS1rZXkrLmlmcWwtZmlsdGVyLS1vcGVyYXRvcisuaWZxbC1maWx0ZXItLXZhbHVlLFxuLmlmcWwtZmlsdGVyLS1wYXJlbi1vcGVuKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yKy5pZnFsLWZpbHRlci0ta2V5LFxuLmlmcWwtZmlsdGVyLS1wYXJlbi1vcGVuKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IsXG4uaWZxbC1maWx0ZXItLXBhcmVuLW9wZW4rLmlmcWwtZmlsdGVyLS1rZXkrLmlmcWwtZmlsdGVyLS1vcGVyYXRvcisuaWZxbC1maWx0ZXItLXZhbHVlKy5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS1rZXkrLmlmcWwtZmlsdGVyLS1vcGVyYXRvcisuaWZxbC1maWx0ZXItLXZhbHVlLFxuLmlmcWwtZmlsdGVyLS1wYXJlbi1vcGVuKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yKy5pZnFsLWZpbHRlci0ta2V5LFxuLmlmcWwtZmlsdGVyLS1wYXJlbi1vcGVuKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IsXG4uaWZxbC1maWx0ZXItLXBhcmVuLW9wZW4rLmlmcWwtZmlsdGVyLS1rZXkrLmlmcWwtZmlsdGVyLS1vcGVyYXRvcisuaWZxbC1maWx0ZXItLXZhbHVlKy5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS1rZXkrLmlmcWwtZmlsdGVyLS1vcGVyYXRvcisuaWZxbC1maWx0ZXItLXZhbHVlKy5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS1rZXkrLmlmcWwtZmlsdGVyLS1vcGVyYXRvcisuaWZxbC1maWx0ZXItLXZhbHVlIHtcbiAgQGV4dGVuZCAlaWZxbC1maWx0ZXItd3JhcHBlZDtcbn1cblxuLmlmcWwtZmlsdGVyLS1wYXJlbi1vcGVuKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yLFxuLmlmcWwtZmlsdGVyLS1wYXJlbi1vcGVuKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yKy5pZnFsLWZpbHRlci0ta2V5Ky5pZnFsLWZpbHRlci0tb3BlcmF0b3IrLmlmcWwtZmlsdGVyLS12YWx1ZSsuaWZxbC1maWx0ZXItLW9wZXJhdG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlmcWwtZmlsdGVyLWV4cHJlc3Npb247XG4gIGhlaWdodDogJGlmcWwtZmlsdGVyLXVuaXQtd3JhcHBlZDtcbiAgbGluZS1oZWlnaHQ6ICRpZnFsLWZpbHRlci11bml0LXdyYXBwZWQ7XG59IiwiLypcbiAgICBJRlFMIFNjaGVtYSBFeHBsb3JlciAtLSBUcmVlIFZpZXdcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kaWZxbC10cmVlLWluZGVudDogMjZweDtcbiRpZnFsLXRyZWUtbGluZTogMnB4O1xuXG4uaWZxbC1zY2hlbWEtZXhwbG9yZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzIta2V2bGFyO1xuICBtaW4td2lkdGg6IDIwMHB4O1xufVxuXG4uaWZxbC1zY2hlbWEtdHJlZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICA+IC5pZnFsLXNjaGVtYS10cmVlIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRpZnFsLXRyZWUtaW5kZW50O1xuICB9XG59XG5cbi5pZnFsLXNjaGVtYS10cmVlX19lbXB0eSB7XG4gIGhlaWdodDogJGlmcWwtdHJlZS1pbmRlbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMTFweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogJGc4LXN0b3JtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5pZnFsLXNjaGVtYS1pdGVtLXRvZ2dsZSB7XG4gIHdpZHRoOiAkaWZxbC10cmVlLWluZGVudDtcbiAgaGVpZ2h0OiAkaWZxbC10cmVlLWluZGVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIFBsdXMgU2lnblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICAgIHdpZHRoOiAkaWZxbC10cmVlLWluZGVudCAvIDM7XG4gICAgaGVpZ2h0OiAkaWZxbC10cmVlLWxpbmU7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbiAgfVxuICAvLyBWZXJ0aWNhbCBMaW5lXG4gICY6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg5MGRlZyk7XG4gIH1cbn1cblxuLmlmcWwtc2NoZW1hLWl0ZW0ge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJGlmcWwtdHJlZS1pbmRlbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMTFweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG5cbiAgPiBzcGFuLmljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAkaWZxbC10cmVlLWluZGVudCAvIDI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGcxNy13aGlzcGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzQtb255eDtcblxuICAgIC5pZnFsLXNjaGVtYS1pdGVtLXRvZ2dsZTpiZWZvcmUsXG4gICAgLmlmcWwtc2NoZW1hLWl0ZW0tdG9nZ2xlOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnMTctd2hpc3BlcjtcbiAgICB9XG4gIH1cblxuICAuZXhwYW5kZWQgPiAmIHtcbiAgICBjb2xvcjogJGMtcG9vbDtcblxuICAgIC5pZnFsLXNjaGVtYS1pdGVtLXRvZ2dsZTpiZWZvcmUsXG4gICAgLmlmcWwtc2NoZW1hLWl0ZW0tdG9nZ2xlOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gICAgfVxuICAgIC5pZnFsLXNjaGVtYS1pdGVtLXRvZ2dsZTpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC05MGRlZyk7XG4gICAgICB3aWR0aDogJGlmcWwtdHJlZS1saW5lO1xuICAgIH1cbiAgICAuaWZxbC1zY2hlbWEtaXRlbS10b2dnbGU6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjLWxhc2VyO1xuXG4gICAgICAuaWZxbC1zY2hlbWEtaXRlbS10b2dnbGU6YmVmb3JlLFxuICAgICAgLmlmcWwtc2NoZW1hLWl0ZW0tdG9nZ2xlOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtbGFzZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5yZWFkb25seSxcbiAgJi5yZWFkb25seTpob3ZlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAkaWZxbC10cmVlLWluZGVudCArIDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLyogVHJlZSBOb2RlIExpbmVzICovXG4uaWZxbC10cmVlLW5vZGU6YmVmb3JlLFxuLmlmcWwtdHJlZS1ub2RlOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnNC1vbnl4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi8vIFZlcnRpY2FsIExpbmVcbi5pZnFsLXRyZWUtbm9kZTpiZWZvcmUge1xuICB0b3A6IDA7XG4gIGxlZnQ6ICRpZnFsLXRyZWUtaW5kZW50IC8gMjtcbiAgd2lkdGg6ICRpZnFsLXRyZWUtbGluZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmlmcWwtdHJlZS1ub2RlOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgaGVpZ2h0OiAkaWZxbC10cmVlLWluZGVudCAvIDI7XG59XG5cbi8vIEhvcml6b250YWwgTGluZVxuLmlmcWwtdHJlZS1ub2RlOmFmdGVyIHtcbiAgdG9wOiAkaWZxbC10cmVlLWluZGVudCAvIDI7XG4gIGxlZnQ6ICRpZnFsLXRyZWUtaW5kZW50IC8gMjtcbiAgd2lkdGg6ICRpZnFsLXRyZWUtaW5kZW50IC8gMjtcbiAgaGVpZ2h0OiAkaWZxbC10cmVlLWxpbmU7XG59XG5cbi8qXG4gICAgQ29udHJvbHNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmlmcWwtc2NoZW1hLS1jb250cm9scyB7XG4gIHBhZGRpbmc6IDExcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmlmcWwtc2NoZW1hLS1maWx0ZXIge1xuICBmbGV4OiAxIDAgMDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG5cblxuXG4vLyBIaW50c1xuLmlmcWwtc2NoZW1hLXR5cGUge1xuICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG5cbiAgLmlmcWwtc2NoZW1hLWl0ZW06aG92ZXIgICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbiIsIi8qXG4gICAgVGltZSBNYWNoaW5lIFZpc3VhbGl6YXRpb25cbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4udGltZS1tYWNoaW5lLXZpc3VhbGl6YXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBAaW5jbHVkZSBncmFkaWVudC12KCRnMi1rZXZsYXIsICRnMC1vYnNpZGlhbik7XG59XG5cbi50aW1lLW1hY2hpbmUtLWdyYXBoIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZzMtY2FzdGxlO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG5cbi50aW1lLW1hY2hpbmUtLWdyYXBoLWhlYWRlciB7XG4gIGhlaWdodDogNTZweDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxufVxuXG4udGltZS1tYWNoaW5lLS1ncmFwaC1oZWFkZXIgLm5hdi5uYXYtdGFibGlzdCB7XG4gIHdpZHRoOiAxODBweDtcblxuICBsaSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleDogMSAwIDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxufVxuXG4udGltZS1tYWNoaW5lLS1ncmFwaC1ib2R5IHtcbiAgcGFkZGluZzogMCAxNnB4IDhweCAxNnB4O1xuICBmbGV4OiAxIDAgMDtcbn0iLCIvKlxuICAgIElGUUwgQWRkIEZ1bmN0aW9uIEJ1dHRvblxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbiRpZnFsLWZ1bmMtc2VsZWN0b3ItLWdhcDogMTBweDtcbiRpZnFsLWZ1bmMtc2VsZWN0b3ItLWhlaWdodDogMzBweDtcblxuLmlmcWwtZnVuYy0tc2VsZWN0b3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJi5vcGVuIHtcbiAgICB6LWluZGV4OiA5OTk5O1xuICB9XG59XG5cbi5mdW5jLXNlbGVjdG9yLS1jb25uZWN0b3Ige1xuICB3aWR0aDogJGlmcWwtZnVuYy1zZWxlY3Rvci0tZ2FwO1xuICBoZWlnaHQ6ICRpZnFsLWZ1bmMtc2VsZWN0b3ItLWhlaWdodDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkZzQtb255eCwgJGMtcG9vbCk7XG4gIH1cbn1cblxuLmJ0bi5idG4tc20uaWZxbC1mdW5jLS1idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgOHB4IDNweCAkYy1hbWV0aHlzdDtcbiAgfVxufVxuXG4uaWZxbC1mdW5jLS1hdXRvY29tcGxldGUsXG4uaWZxbC1mdW5jLS1saXN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTY2cHg7XG59XG5cbi5pZnFsLWZ1bmMtLWF1dG9jb21wbGV0ZSB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcblxuICAuZnVuYy1zZWxlY3Rvci0tY29ubmVjdG9yICsgJiB7XG4gICAgbGVmdDogJGlmcWwtZnVuYy1zZWxlY3Rvci0tZ2FwO1xuICB9XG59XG5cbi5pZnFsLWZ1bmMtLWxpc3Qge1xuICBsZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICB0b3A6ICRpZnFsLWZ1bmMtc2VsZWN0b3ItLWhlaWdodDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBAZXh0ZW5kICVuby11c2VyLXNlbGVjdDtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkYy1zdGFyLCAkYy1wb29sKTtcbn1cblxuLmlmcWwtZnVuYy0taXRlbSB7XG4gIGhlaWdodDogMjhweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIHBhZGRpbmc6IDAgMTFweDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiAkYy1uZXV0cmlubztcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaCgkYy1jb21ldCwgJGMtbGFzZXIpO1xuICAgIGNvbG9yOiAkZzIwLXdoaXRlO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJi5lbXB0eSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGNvbG9yOiAkYy1oeWRyb2dlbjtcbiAgfVxufVxuIiwiLypcbiAgU3R5bGVzIGZvciB0aGUgTWFuYWdlIFBvdmlkZXJzIFBhZ2VcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4kcHJvdmlkZXItLWlkLXdpZHRoOiA2MHB4O1xuJHByb3ZpZGVyLS1zY2hlbWUtd2lkdGg6IDE1MHB4O1xuJHByb3ZpZGVyLS1wcm92aWRlci13aWR0aDogMTUwcHg7XG4kcHJvdmlkZXItLXByb3ZpZGVyb3JnLXdpZHRoOiAyMTBweDtcbiRwcm92aWRlci0tcmVkaXJlY3Qtd2lkdGg6IDIyMHB4O1xuJHByb3ZpZGVyLS1kZWxldGUtd2lkdGg6IDMwcHg7XG5cbi5wcm92aWRlci0taWQge1xuICB3aWR0aDogJHByb3ZpZGVyLS1pZC13aWR0aDtcbn1cbi5wcm92aWRlci0tc2NoZW1lIHtcbiAgd2lkdGg6ICRwcm92aWRlci0tc2NoZW1lLXdpZHRoO1xufVxuLnByb3ZpZGVyLS1wcm92aWRlciB7XG4gIHdpZHRoOiAkcHJvdmlkZXItLXByb3ZpZGVyLXdpZHRoO1xufVxuLnByb3ZpZGVyLS1wcm92aWRlcm9yZyB7XG4gIHdpZHRoOiAkcHJvdmlkZXItLXByb3ZpZGVyb3JnLXdpZHRoO1xufVxuLnByb3ZpZGVyLS1yZWRpcmVjdCB7XG4gIHdpZHRoOiAkcHJvdmlkZXItLXJlZGlyZWN0LXdpZHRoO1xufVxuLnByb3ZpZGVyLS1kZWxldGUge1xuICB3aWR0aDogJHByb3ZpZGVyLS1kZWxldGUtd2lkdGg7XG4gIG1pbi13aWR0aDogJHByb3ZpZGVyLS1kZWxldGUtd2lkdGg7XG59XG4ucHJvdmlkZXItLWFycm93IHtcbiAgZmxleDogMSAwIDA7XG59XG5cbi5mYW5jeXRhYmxlLS10ZC5wcm92aWRlci0taWQsXG4uZmFuY3l0YWJsZS0tdGgucHJvdmlkZXItLWlkIHtcbiAgcGFkZGluZzogMCA4cHg7XG59XG4ucHJvdmlkZXItLXJlZGlyZWN0LmNyZWF0aW5nIHtcbiAgd2lkdGg6IChcbiAgICAkcHJvdmlkZXItLXJlZGlyZWN0LXdpZHRoIC0gJGZhbmN5dGFibGUtLXRhYmxlLS1tYXJnaW4gLVxuICAgICAgJHByb3ZpZGVyLS1kZWxldGUtd2lkdGhcbiAgKTtcbn1cblxuLnByb3ZpZGVyLS1hcnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogMzZweDtcblxuICAmLmZhbmN5dGFibGUtLXRkIHtcbiAgICBwYWRkaW5nOiAwIDhweDtcbiAgfVxuXG4gID4gc3BhbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWgoJGMtcG9vbCwgJGMtc3Rhcik7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiA2cHg7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXBvb2w7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAtNnB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkYy1zdGFyO1xuICAgIH1cbiAgfVxufVxuIiwiLypcbiAgICBVbnNvcnRlZFxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4udGV4dC1yaWdodCAuYnRuIHtcbiAgbWFyZ2luOiAwIDAgMCA0cHg7XG59XG4udGV4dC1jZW50ZXIgLmJ0biB7XG4gIG1hcmdpbjogMCA2cHg7XG59XG4uZGVmYXVsdC1zb3VyY2UtbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGcyLWtldmxhcjtcbiAgY29sb3I6ICRjLXBvb2w7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgcGFkZGluZzogMnB4IDZweDtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cbi5wcm9ncmVzcy1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogJGc4LXN0b3JtO1xuICB9XG59XG4ubW9kYWwge1xuICBmb3JtIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAuZm9ybS1ncmlkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmLnBhZGRpbmctdG9wIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIH1cbiAgfVxufVxuXG4vKlxuICAgIEdlbmVyaWMgRW1wdHkgU3RhdGVcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmdlbmVyaWMtZW1wdHktc3RhdGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogJGcxMi1mb3JnZTtcbiAgcGFkZGluZzogMjBweCAwO1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xuXG4gIGg0LFxuICBoNSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC5pY29uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMXB4O1xuICB9XG59XG5cbi8qXG4gICAgTG9hZGluZyBEb3RzXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5sb2FkaW5nLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMThweDtcblxuICBkaXYge1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGc2LXNtb2tlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cblxuICBkaXY6bnRoLWNoaWxkKDEpIHtcbiAgICBsZWZ0OiAwO1xuICAgIGFuaW1hdGlvbjogcmVmcmVzaGluZ1NwaW5uZXJBIDAuOHMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpXG4gICAgICBpbmZpbml0ZTtcbiAgfVxuICBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYW5pbWF0aW9uOiByZWZyZXNoaW5nU3Bpbm5lckIgMC44cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSlcbiAgICAgIGluZmluaXRlO1xuICB9XG4gIGRpdjpudGgtY2hpbGQoMykge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgYW5pbWF0aW9uOiByZWZyZXNoaW5nU3Bpbm5lckMgMC44cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSlcbiAgICAgIGluZmluaXRlO1xuICB9XG59XG5cbi8qXG4gICAgQ3VzdG9tIFRhYnNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLnRhYi1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIC5idG4udGFiIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkZzE3LXdoaXNwZXI7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMTctd2hpc3BlcjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGcxOC1jbG91ZDtcbiAgICAgIGNvbG9yOiAkZzktbW91bnRhaW47XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCA1cHggNXB4IDA7XG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBjb2xvcjogJGc4LXN0b3JtO1xuICAgIH1cbiAgfVxufVxuLmN1cnJlbnRseS1jb25uZWN0ZWQtc291cmNlIHtcbiAgY29sb3I6ICRjLXJhaW5mb3Jlc3Q7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luOiAwIDRweDtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbn1cblxuYnIge1xuICBAaW5jbHVkZSBuby11c2VyLXNlbGVjdCgpO1xufVxuXG4uc2VsZWN0LXNvdXJjZS1wYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyKCRnMi1rZXZsYXIsICRjLXBvb2wpO1xuICBAaW5jbHVkZSBncmFkaWVudC12KCRnMi1rZXZsYXIsICRnMC1vYnNpZGlhbik7XG59XG5cbi5zb3VyY2UtdGFibGUtLWNvbm5lY3Qge1xuICB3aWR0aDogNzRweDtcbn1cbi5zb3VyY2UtdGFibGUtLWNvbm5lY3QtY29sIHtcbiAgd2lkdGg6IDkwcHg7XG59XG4uc291cmNlLXRhYmxlLS1rYXBhY2l0b3Ige1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRnNS1wZXBwZXI7XG4gIHdpZHRoOiAyNzhweDtcbn1cbi5zb3VyY2UtdGFibGUtLWthcGFjaXRvcl9fdmlldy1vbmx5IHtcbiAgQGluY2x1ZGUgbm8tdXNlci1zZWxlY3QoKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vKlxuICBTdHlsZXMgZm9yIHRoZSBTdGF0dXMgRGFzaGJvYXJkXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIE5vdCBlbm91Z2ggb2YgdGhlc2UgdG8gbWVyaXQgdGhlaXIgb3duIHBhZ2UsIHdpbGwgb3JnYW5pemUgbGF0ZXJcbiovXG4uYWxlcnRzLXdpZGdldCxcbi5nZXR0aW5nLXN0YXJ0ZWQge1xuICBwYWRkaW5nOiAwIDE2cHg7XG59XG4uZ2V0dGluZy1zdGFydGVkLS1jZWxsIHtcbiAgY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gIGJhY2tncm91bmQtY29sb3I6ICRnMi1rZXZsYXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgcGFkZGluZzogMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuXG4gICYuaW50cm8ge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWgoJGMtcG9vbCwgJGMtc3Rhcik7XG4gICAgY29sb3I6ICRnMjAtd2hpdGU7XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cbn1cbi5hbGVydHMtd2lkZ2V0IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICA+IC5idG4ge1xuICAgIG1hcmdpbjogMjBweCAwO1xuICB9XG5cbiAgLmFsZXJ0LWhpc3RvcnktdGFibGUge1xuICAgIGZsZXg6IDEgMCAwO1xuICB9XG59XG5cbi8qXG4gIFZlcnNpb24gTnVtYmVyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLnZlcnNpb24tbnVtYmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDIwcHggMDtcbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG4gIGNvbG9yOiAkZzExLXNpZGV3YWxrO1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi8qXG4gIFZpZXcgVElDS3NjcmlwdCBPdmVybGF5XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuJHRpY2stc2NyaXB0LW92ZXJsYXktbWFyZ2luOiAzMHB4O1xuLnRpY2stc2NyaXB0LW92ZXJsYXkge1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICBtYXJnaW46IDAgYXV0byAkdGljay1zY3JpcHQtb3ZlcmxheS1tYXJnaW4gYXV0bztcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyR0aWNrLXNjcmlwdC1vdmVybGF5LW1hcmdpbn0pO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLndyaXRlLWRhdGEtZm9ybS0tYm9keSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi50aWNrLXNjcmlwdC1vdmVybGF5LS1zYW1wbGUge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAkZzQtb255eDtcbn1cblxuLypcbiAgR1JPVVAgQlkgVElNRSBEcm9wZG93blxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5ncm91cC1ieS10aW1lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4uZ3JvdXAtYnktdGltZS0tbGFiZWwge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAkZzEyLWZvcmdlO1xuICBwYWRkaW5nOiAwIDZweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbn1cbi5ncm91cC1ieS10aW1lLS1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2lkdGg6IDcwcHg7XG59XG4uZ3JvdXAtYnktdGltZS0tZHJvcGRvd24gLmRyb3Bkb3duLXNlbGVjdGVkLFxuLmdyb3VwLWJ5LXRpbWUtLWRyb3Bkb3duIC5kcm9wZG93bi1pdGVtIHtcbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG59XG5cbi8qXG4gIEZpeCBEaXNwbGF5IGlzc3VlIGluIFNhZmFyaVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBUaGUgcHNldWRvIGVsZW1lbnRzIG9mZnNldCBpdGVtcyBpbiB0aGUgdGFibGlzdHNcbiovXG4ubmF2LXRhYmxpc3Qge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogbm9uZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qXG4gIERhdGEgRXhwbG9yZXIgZG93bmxvYWQgQ1NWIGJ1dHRvblxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5pY29uLmRvd25sb2FkLmRsY3N2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU5MWQnO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNiZWMyY2M7XG59XG4uYnRuLmJ0bi1zbS5idG4tZGVmYXVsdC5kbGNzdiB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4vKlxuICBEcm9wZG93biBjbGlja2FibGUgYXJlYSBmaXhcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVE9ETzogTW92ZSB0aGlzIGludG8gdGhlbWUsIG5vdCBzdXJlIGhvdyB0aGlzIGJyb2tlXG4qL1xuXG4uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgbGkuZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLyogIERlbGV0YWJsZSB0YWJzIGluIC5uYXYtdGFibGlzdFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBUT0RPOiBBZGQgdGhpcyBpbnRvIHRoZSB0aGVtZSBzdHlsZXNcbiovXG4ubmF2LXRhYi0tZGVsZXRlIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcblxuICAvLyBQc3VlZG8gZWxlbWVudHMgdXNlZCB0byBmb3JtIHRoZSBYXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnMTEtc2lkZXdhbGs7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbi8qXG4gIEF1dG8gUmVmcmVzaCBEcm9wZG93blxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5hdXRvcmVmcmVzaC1kcm9wZG93biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICYucGF1c2VkIC5kcm9wZG93biB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIH1cbiAgJi5wYXVzZWQgLmRyb3Bkb3duID4gLmJ0bi5kcm9wZG93bi10b2dnbGUge1xuICAgIHdpZHRoOiAxMjZweDtcbiAgfVxufVxuXG4vKlxuICBEYXNoYm9hcmQgU3dpdGNoZXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4uZHJvcGRvd24uZGFzaGJvYXJkLXN3aXRjaGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG4uZHJvcGRvd24uZGFzaGJvYXJkLXN3aXRjaGVyIC5idG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uZHJvcGRvd24uZGFzaGJvYXJkLXN3aXRjaGVyICsgaDEucGFnZS1oZWFkZXJfX3RpdGxlIHtcbiAgbWFyZ2luLWxlZnQ6IDZweDtcbn1cblxuLmRyb3Bkb3duLmRhc2hib2FyZC1zd2l0Y2hlciAuZHJvcGRvd24taXRlbSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qXG4gIERhc2hib2FyZCBOYW1lIEVkaXRpbmdcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4kZGFzaC1lZGl0YWJsZS1oZWFkZXItcGFkZGluZzogN3B4O1xuXG4ucGFnZS1oZWFkZXJfX2xlZnQucGFnZS1oZWFkZXJfX2Rhc2gtZWRpdGFibGUsXG4uZGFzaGJvYXJkLXRpdGxlLFxuLmRhc2hib2FyZC10aXRsZSBpbnB1dFt0eXBlPSd0ZXh0J10uZm9ybS1jb250cm9sLmRhc2hib2FyZC10aXRsZS0taW5wdXQsXG4uZGFzaGJvYXJkLXRpdGxlIGgxIHtcbiAgZmxleDogMSAwIDA7XG59XG4uZGFzaGJvYXJkLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcblxuICBpbnB1dFt0eXBlPSd0ZXh0J10uZm9ybS1jb250cm9sLmRhc2hib2FyZC10aXRsZS0taW5wdXQsXG4gIGlucHV0W3R5cGU9J3RleHQnXS5mb3JtLWNvbnRyb2wuZGFzaGJvYXJkLXRpdGxlLS1pbnB1dDpmb2N1cyxcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogJHBhZ2UtaGVhZGVyLXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRwYWdlLWhlYWRlci13ZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkZGFzaC1lZGl0YWJsZS1oZWFkZXItcGFkZGluZztcbiAgfVxuXG4gIGlucHV0W3R5cGU9J3RleHQnXS5mb3JtLWNvbnRyb2wuZGFzaGJvYXJkLXRpdGxlLS1pbnB1dCxcbiAgaW5wdXRbdHlwZT0ndGV4dCddLmZvcm0tY29udHJvbC5kYXNoYm9hcmQtdGl0bGUtLWlucHV0OmZvY3VzIHtcbiAgICBmb250LXNpemU6ICRwYWdlLWhlYWRlci1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkcGFnZS1oZWFkZXItd2VpZ2h0O1xuICB9XG5cbiAgaDEge1xuICAgIEBpbmNsdWRlIG5vLXVzZXItc2VsZWN0KCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRnMC1vYnNpZGlhbjtcbiAgICBjb2xvcjogJGcxNy13aGlzcGVyO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSxcbiAgICAgIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFxmMDU4JztcbiAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAkZGFzaC1lZGl0YWJsZS1oZWFkZXItcGFkZGluZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gICAgICBjb2xvcjogJGcxMS1zaWRld2FsaztcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogdGV4dDtcbiAgICAgIGNvbG9yOiAkZzIwLXdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGczLWNhc3RsZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJGczLWNhc3RsZTtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qICBBZGQgYm9yZGVycyBiZXR3ZWVuIGl0ZW1zIGluIC5uYXYtdGFibGlzdFxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgVE9ETzogQWRkIHRoZXNlIHN0eWxlcyBpbnRvIHRoZSB0aGVtZVxuICAqL1xuXG4ubmF2Lm5hdi10YWJsaXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGc1LXBlcHBlcjtcblxuICA+IGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8qXG4gIEZha2UgZm9ybSBwYWRkaW5nIHdpdGhvdXQgPGZvcm0+XG5cbiovXG5cbmRpdi5mYXV4LWZvcm0ge1xuICAuZm9ybS1ncm91cC5jb2wteHMtMSxcbiAgLmZvcm0tZ3JvdXAuY29sLXhzLTIsXG4gIC5mb3JtLWdyb3VwLmNvbC14cy0zLFxuICAuZm9ybS1ncm91cC5jb2wteHMtNCxcbiAgLmZvcm0tZ3JvdXAuY29sLXhzLTUsXG4gIC5mb3JtLWdyb3VwLmNvbC14cy02LFxuICAuZm9ybS1ncm91cC5jb2wteHMtNyxcbiAgLmZvcm0tZ3JvdXAuY29sLXhzLTgsXG4gIC5mb3JtLWdyb3VwLmNvbC14cy05LFxuICAuZm9ybS1ncm91cC5jb2wteHMtMTAsXG4gIC5mb3JtLWdyb3VwLmNvbC14cy0xMSxcbiAgLmZvcm0tZ3JvdXAuY29sLXhzLTEyLFxuICAuZm9ybS1ncm91cC5jb2wtc20tMSxcbiAgLmZvcm0tZ3JvdXAuY29sLXNtLTIsXG4gIC5mb3JtLWdyb3VwLmNvbC1zbS0zLFxuICAuZm9ybS1ncm91cC5jb2wtc20tNCxcbiAgLmZvcm0tZ3JvdXAuY29sLXNtLTUsXG4gIC5mb3JtLWdyb3VwLmNvbC1zbS02LFxuICAuZm9ybS1ncm91cC5jb2wtc20tNyxcbiAgLmZvcm0tZ3JvdXAuY29sLXNtLTgsXG4gIC5mb3JtLWdyb3VwLmNvbC1zbS05LFxuICAuZm9ybS1ncm91cC5jb2wtc20tMTAsXG4gIC5mb3JtLWdyb3VwLmNvbC1zbS0xMSxcbiAgLmZvcm0tZ3JvdXAuY29sLXNtLTEyLFxuICAuZm9ybS1ncm91cC5jb2wtbWQtMSxcbiAgLmZvcm0tZ3JvdXAuY29sLW1kLTIsXG4gIC5mb3JtLWdyb3VwLmNvbC1tZC0zLFxuICAuZm9ybS1ncm91cC5jb2wtbWQtNCxcbiAgLmZvcm0tZ3JvdXAuY29sLW1kLTUsXG4gIC5mb3JtLWdyb3VwLmNvbC1tZC02LFxuICAuZm9ybS1ncm91cC5jb2wtbWQtNyxcbiAgLmZvcm0tZ3JvdXAuY29sLW1kLTgsXG4gIC5mb3JtLWdyb3VwLmNvbC1tZC05LFxuICAuZm9ybS1ncm91cC5jb2wtbWQtMTAsXG4gIC5mb3JtLWdyb3VwLmNvbC1tZC0xMSxcbiAgLmZvcm0tZ3JvdXAuY29sLW1kLTEyLFxuICAuZm9ybS1ncm91cC5jb2wtbGctMSxcbiAgLmZvcm0tZ3JvdXAuY29sLWxnLTIsXG4gIC5mb3JtLWdyb3VwLmNvbC1sZy0zLFxuICAuZm9ybS1ncm91cC5jb2wtbGctNCxcbiAgLmZvcm0tZ3JvdXAuY29sLWxnLTUsXG4gIC5mb3JtLWdyb3VwLmNvbC1sZy02LFxuICAuZm9ybS1ncm91cC5jb2wtbGctNyxcbiAgLmZvcm0tZ3JvdXAuY29sLWxnLTgsXG4gIC5mb3JtLWdyb3VwLmNvbC1sZy05LFxuICAuZm9ybS1ncm91cC5jb2wtbGctMTAsXG4gIC5mb3JtLWdyb3VwLmNvbC1sZy0xMSxcbiAgLmZvcm0tZ3JvdXAuY29sLWxnLTEyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gIH1cbn1cblxuLypcbiAgU3RyZXRjaCB0byBmaXQgRHJvcGRvd25zXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5kaXYuZHJvcGRvd24uZHJvcGRvd24tc3RyZXRjaCxcbmRpdi5kcm9wZG93bi5kcm9wZG93bi1zdHJldGNoID4gZGl2LmRyb3Bkb3duLXRvZ2dsZSxcbmRpdi5kcm9wZG93bi5kcm9wZG93bi1zdHJldGNoID4gYnV0dG9uLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKlxuICBEZWxldGUgU291cmNlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmRlbGV0ZS1zb3VyY2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qXG4gIEFkZCBzcGFjaW5nIGJldHdlZW4gdGltZSBmb3JtYXQgZHJvcGRvd24gYW5kIGlucHV0XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLmN1c3RvbS10aW1lLWZvcm1hdCB7XG4gIG1hcmdpbi10b3A6IDRweDtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7OztFQUdFO0FDSEY7OztFQUdFO0FDSEY7OztFQUdFO0FtQkhGLE9BQU8sQ0FBUCxzQ0FBTztBckJ3QlAsT0FBTyxDQUFQLHFEQUFPO0FVaU5QLEFQcEhBLEVPb0hFLEVDcE9GLElBQUk7QUFDSixNQUFNLEFBQUEsSUFBSTtBQUNW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S0FBSyxHQUFHO0VBQ3RDLEFBQUQsYUFBSyxDQUFDLGdCQUFnQixDQUFDO0lBQUMsS0FBSyxFQUFFLEtBQUssR0FBRztFQUN0QyxBQUFELGFBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUFDLEtBQUssRUFBRSxLQUFLLEdBQUc7RUFDdEMsQUFBRCxhQUFLLENBQUMsZ0JBQWdCLENBQUM7SUFBQyxLQUFLLEVBQUUsS0FBSyxHQUFHO0VBQ3RDLEFBQUQsYUFBSyxDQUFDLGdCQUFnQixDQUFDO0lBQUMsS0FBSyxFQUFFLEtBQUssR0FBRztFQUN0QyxBQUFELGFBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUFDLEtBQUssRUFBRSxLQUFLLEdBQUc7RUFDdEMsQUFBRCxhQUFLLENBQUMsZ0JBQWdCLENBQUM7SUFBQyxLQUFLLEVBQUUsS0FBSyxHQUFHO0VBQ3RDLEFBQUQsYUFBSyxDQUFDLGdCQUFnQixDQUFDO0lBQUMsS0FBSyxFQUFFLEtBQUssR0FBRztFQUN0QyxBQUFELGFBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUFDLEtBQUssRUFBRSxLQUFLLEdBQUc7RUFDdEMsQUFBRCxhQUFLLENBQUMsZ0JBQWdCLENBQUM7SUFBQyxLQUFLLEVBQUUsS0FBSyxHQUFHO0VBQ3RDLEFBQUQsYUFBSyxDQUFDLGdCQUFnQixDQUFDO0lBQUMsS0FBSyxFQUFFLEtBQUssR0FBRztFQUN0QyxBQUFELGFBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUFDLEtBQUssRUFBRSxLQUFLLEdBQUc7RUFDdEMsQUFBRCxhQUFLLENBQUMsZ0JBQWdCLENBQUM7SUFBQyxLQUFLLEVBQUUsS0FBSyxHQUFHO0VBQ3RDLEFBQUQsYUFBSyxDQUFDLGdCQUFnQixDQUFDO0lBQUMsS0FBSyxFQUFFLEtBQUssR0FBRztFQUN0QyxBQUFELGFBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUFDLEtBQUssRUFBRSxLQUFLLEdBQUc7RUFDdEMsQUFBRCxhQUFLLENBQUMsZ0JBQWdCLENBQUM7SUFBQyxLQUFLLEVBQUUsS0FBSyxHQUFHO0VBQ3RDLEFBQUQsYUFBSyxDQUFD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 */
