/* Basic configuration */
:root {
  /* Layout */
  /* Typography */
  /* Colors */
}

/* Set box model to border-box globally */
:root {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
*, *::before, *::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

/* Content layout */
.container {
  min-width: 400px;
  min-height: 8vh;
  /* Use page-style layout by default */
  margin: 24px auto;
  width: 900px;
}
header, footer, main {
  padding: 24px;
}
/* Individual parts: Height, borders and background */
header, footer {
  min-height: 8vh;
}
main {
  min-height: 8vh;
}

/* Fullscreen layout */
.container.fullscreen {
  /* Full screen minus margins */
  margin: 24px 16px;
  min-height: calc(100vh - 48px);
  width: calc(100vw - 48px);
  /* Display content using flexboxes */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.container.fullscreen main {
  /* Flex positioning */
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

/* Frameless layout */
.container.frameless {
  margin: -8px;
  border: none;
  border-radius: 0;
}
.container.fullscreen.frameless {
  width: 100vw;
  height: 100vh;
}

/* Flexbox fix for IE11, per https://github.com/philipwalton/flexbugs */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .container.fullscreen {
    /* IE11 miscalculates the height, so add some slack */
    min-height: calc(100vh - 72px);
  }
}

/* Borders and backgrounds */
.container {
  border: 1px solid #e5e5e5;
  border-radius: 5px;
}
header {
  border-bottom: 1px solid #efefef;
}
footer {
  border-top: 1px solid #efefef;
  background-color: #f8f8f8;
}

/* Typography */
:root {
  font-family: "Arial", sans-serif;
  font-size: 18px;
  line-height: 1.4em;
}
header, footer, main {
  /* Set display style explicitly for legacy browsers
     that are unfamiliar with these elements */
  display: block;
  text-align: center;
}
h1, h2, h3 {
  line-height: 1.4em;
}
hr {
  border: none;
  border-top: 2px solid #e5e5e5
}

/* Special elements: Keyboard buttons */
kbd {
  /* Positioning */
  display: inline-block;
  min-width: 1.5em;
  min-height: 1.5em;
  padding: 0 0.3em;
  padding-top: 0.15em;
  /* Fonts */
  font-family: Droid Mono, Menlo, Consolas, monospace;
  font-size: 0.9em;
  text-align: center;
  /* Background and border */
  background-color: white;
  border-radius: 4px;
  border: 1px solid rgb(180, 180, 180);
}
kbd.big {
  font-size: 1.4em;
  padding-top: 0.375em;
  border-radius: 0.125em;
}

/* Alignment helpers */
.w-100 {
  width: 100%;
}
/* Block alignment based on flexbox */
.content-vertical-top,
.content-vertical-center,
.content-vertical-bottom,
.content-horizontal-left,
.content-horizontal-center,
.content-horizontal-right,
.content-horizontal-space-between,
.content-vertical-space-between,
.content-horizontal-space-around,
.content-vertical-space-around {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.content-vertical-top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.content-vertical-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.content-vertical-bottom {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.content-horizontal-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.content-horizontal-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.content-horizontal-right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.content-horizontal-space-between,
.content-vertical-space-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.content-horizontal-space-around,
.content-vertical-space-around {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
.content-vertical-space-around,
.content-vertical-space-between {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.content-vertical-space-between.content-horizontal-right,
.content-vertical-space-around.content-horizontal-right {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.content-vertical-space-between.content-horizontal-center,
.content-vertical-space-around.content-horizontal-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.content-vertical-space-between.content-horizontal-right,
.content-vertical-space-around.content-horizontal-right {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
/* Text alignment */
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-muted {
  color: #8d8d8d;
}
.text-muted a {
  color: rgb(60, 89, 156);
}
small, .small {
  font-size: 16.2px;
  font-size: 0.9rem;
}
.font-weight-bold {
  font-weight: bold;
}
.font-italic {
  font-style: italic;
}
code {
  font-family: Droid Mono, Menlo, Consolas, monospace;
  background-color: #f8f8f8;
  padding: 2px;
  border-radius: 2px;
}

/* Visibility */
.invisible {
  visibility: hidden;
}
.hidden {
  display: none;
}
.hide-if-empty:empty {
  display: none
}

/* Alerts */
.alert {
  background-color: #f8f8f8;
  border: 2px solid #e5e5e5;
  border-radius: 4px;
  padding: 16px 16px 14px;
  margin: 16px 0;
}
.alert.alert-danger {
  color: #a02c2c;
  background-color: #e9afaf;
  border-color: #a02c2c;
}
.alert.alert-warning {
  color: #f6a902;
  background-color: #ffe6a5;
  border-color: #ffb400;
}

/* Form elements */
input, select, button, textarea {
  font-family: "Arial", sans-serif;
  font-size: 16.2px;
  font-size: 0.9rem;
  line-height: 1.4em;
  border: 2px solid #e5e5e5;
  border-radius: 4px;
  margin: 8px 0;
  padding: 8px;
}
input[type="checkbox"] {
  margin: 0 10px;
}
input[type="range"] {
  border: none;
}
input + label {
  margin-left: 2px;
}
select {
  padding: 8px 5px; /* selects have a weird vertical alignment */
}
button {
  background-color: white;
  border-radius: 3px;
  padding: 8px 8px 6px;
}
button:hover {
  border-color: #ddd;
  background-color: #fcfcfc;
}
textarea {
  display: block;
  margin: 18px 0;
  resize: vertical;
}
/* Input groups */
.input-group {
  display: inline-table;
  margin: 8px 0;
}
.input-group * {
  display: table-cell;
  border-radius: 0px;
}
.input-group input {
  margin: 0;
}
.input-group *:first-child {
  border-radius: 4px 0 0 4px;
}
.input-group *:last-child {
  border-radius: 0 4px 4px 0;
}
.input-group .input-group-addon {
  background-color: #e5e5e5;
  border: 2px solid #e5e5e5;
  padding: 0 10px;
}

/* Table */
table {
  width: 100%;
  border-collapse: collapse;
}
table td, table th {
  padding: 10px 8px 8px;
}
/* Table borders (except for plain) */
table:not(.table-plain) > tr > td,
table:not(.table-plain) > tr > th,
table:not(.table-plain) > tbody > tr > td,
table:not(.table-plain) > tbody > tr > th {
  border-bottom: 2px solid #e5e5e5;
}
/* Striped rows */
table.table-striped tr:nth-child(odd) td {
  background-color: #efefef
}

/* Progress bar */
.progress {
  width: 100%;
  height: 8px;
  overflow: hidden;
  margin: 3.6px 0 7.2px;
  margin: 0.2rem 0 0.4rem;
  border-radius: 2px;
  border: 1px solid #e5e5e5;
}
.progress .progress-bar {
  width: 0%;
  min-height: 8px;
  background-color: #f8f8f8;
  border-right: 1px solid #efefef;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

/* Popovers */
.popover {
  position: absolute;
  top: 0;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-name: popover;
          animation-name: popover;
}

/* Width, for some reason, needs to be set explicitly */
.container.fullscreen .popover {
  width: calc(100vw - 48px);
}

.popover > * {
  width: 80%;
  margin: 0 auto;
}

.container:not(.fullscreen) .popover {
  width: 900px;
}

/* Slide in from the top */
@-webkit-keyframes popover {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
  }

  to {
    -webkit-transform: none;
            transform: none;
  }
}
@keyframes popover {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
  }

  to {
    -webkit-transform: none;
            transform: none;
  }
}

.popover > .alert:first-child {
  border-width: 1px;
  position: relative;
  padding-top: 24px;
  top: -8px;
}


/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdGFydGVya2l0L2xpYi9sYWIuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlCQUF5QjtBQUN6QjtFQUNFLFlBQVk7RUFPWixnQkFBZ0I7RUFNaEIsWUFBWTtDQUtiOztBQUVELDBDQUEwQztBQUMxQztFQUNFLCtCQUF1QjtVQUF2Qix1QkFBdUI7Q0FDeEI7QUFDRDtFQUNFLDRCQUFvQjtVQUFwQixvQkFBb0I7Q0FDckI7O0FBRUQsb0JBQW9CO0FBQ3BCO0VBQ0UsaUJBQXNDO0VBQ3RDLGdCQUE0QztFQUM1QyxzQ0FBc0M7RUFDdEMsa0JBQXFDO0VBQ3JDLGFBQThCO0NBQy9CO0FBQ0Q7RUFDRSxjQUFpQztDQUNsQztBQUNELHNEQUFzRDtBQUN0RDtFQUNFLGdCQUE0QztDQUM3QztBQUNEO0VBQ0UsZ0JBQTRDO0NBQzdDOztBQUVELHVCQUF1QjtBQUN2QjtFQUNFLCtCQUErQjtFQUMvQixrQkFBb0U7RUFDcEUsK0JBQW9EO0VBQ3BELDBCQUErQztFQUMvQyxxQ0FBcUM7RUFDckMscUJBQWM7RUFBZCxxQkFBYztFQUFkLGNBQWM7RUFDZCw2QkFBdUI7RUFBdkIsOEJBQXVCO01BQXZCLDJCQUF1QjtVQUF2Qix1QkFBdUI7Q0FDeEI7QUFDRDtFQUNFLHNCQUFzQjtFQUN0QixvQkFBUTtNQUFSLFlBQVE7VUFBUixRQUFRO0NBQ1Q7O0FBRUQsc0JBQXNCO0FBQ3RCO0VBQ0UsYUFBYTtFQUNiLGFBQWE7RUFDYixpQkFBaUI7Q0FDbEI7QUFDRDtFQUNFLGFBQWE7RUFDYixjQUFjO0NBQ2Y7O0FBRUQsd0VBQXdFO0FBQ3hFO0VBQ0U7SUFDRSxxQkFBYztJQUFkLHFCQUFjO0lBQWQsY0FBYztHQUNmO0VBQ0Q7SUFDRSxzREFBc0Q7SUFDdEQsK0JBQW9EO0dBQ3JEO0NBQ0Y7O0FBRUQsNkJBQTZCO0FBQzdCO0VBQ0UsMEJBQXNDO0VBQ3RDLG1CQUE4QztDQUMvQztBQUNEO0VBQ0UsaUNBQXNEO0NBQ3ZEO0FBQ0Q7RUFDRSw4QkFB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OztBQUVEO0VBQ0UsYUFBOEI7Q0FDL0I7O0FBRUQsMkJBQTJCO0FBQzNCO0VBQ0U7SUFDRSw0Q0FBb0M7WUFBcEMsb0NBQW9DO0dBQ3JDOztFQUVEO0lBQ0Usd0JBQWdCO1lBQWhCLGdCQUFnQjtHQUNqQjtDQUNGO0FBUkQ7RUFDRTtJQUNFLDRDQUFvQztZQUFwQyxvQ0FBb0M7R0FDckM7O0VBRUQ7SUFDRSx3QkFBZ0I7WUFBaEIsZ0JBQWdCO0dBQ2pCO0NBQ0Y7O0FBRUQ7RUFDRSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixVQUFVO0NBQ1giLCJmaWxlIjoibGFiLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIEJhc2ljIGNvbmZpZ3VyYXRpb24gKi9cbjpyb290IHtcbiAgLyogTGF5b3V0ICovXG4gIC0td2lkdGgtY29udGFpbmVyOiA5MDBweDtcbiAgLS13aWR0aC1taW4tY29udGFpbmVyOiA0MDBweDtcbiAgLS1oZWlnaHQtbWluLWhlYWRlci1mb290ZXI6IDh2aDtcbiAgLS1wYWRkaW5nLWludGVybmFsOiAyNHB4O1xuICAtLWJvcmRlci1yYWRpdXMtY29udGFpbmVyOiA1cHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1jb250ZW50OiA0cHg7XG4gIC8qIFR5cG9ncmFwaHkgKi9cbiAgLS1mb250LWZhbWlseTogXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtZmFtaWx5LW1vbm86IERyb2lkIE1vbm8sIE1lbmxvLCBDb25zb2xhcywgbW9ub3NwYWNlO1xuICAtLWZvbnQtc2l6ZTogMThweDtcbiAgLS1saW5lLWhlaWdodDogMS40ZW07XG4gIC0tcGFyYWdyYXBoLW1hcmdpbi12ZXJ0aWNhbDogdmFyKC0tZm9udC1zaXplKTtcbiAgLyogQ29sb3JzICovXG4gIC0tY29sb3ItYm9yZGVyOiAjZTVlNWU1O1xuICAtLWNvbG9yLWJvcmRlci1pbnRlcm5hbDogI2VmZWZlZjtcbiAgLS1jb2xvci1ncmF5LWJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gIC0tY29sb3ItZ3JheS1jb250ZW50OiAjOGQ4ZDhkO1xufVxuXG4vKiBTZXQgYm94IG1vZGVsIHRvIGJvcmRlci1ib3ggZ2xvYmFsbHkgKi9cbjpyb290IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbiosICo6OmJlZm9yZSwgKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG4vKiBDb250ZW50IGxheW91dCAqL1xuLmNvbnRhaW5lciB7XG4gIG1pbi13aWR0aDogdmFyKC0td2lkdGgtbWluLWNvbnRhaW5lcik7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLWhlaWdodC1taW4taGVhZGVyLWZvb3Rlcik7XG4gIC8qIFVzZSBwYWdlLXN0eWxlIGxheW91dCBieSBkZWZhdWx0ICovXG4gIG1hcmdpbjogdmFyKC0tcGFkZGluZy1pbnRlcm5hbCkgYXV0bztcbiAgd2lkdGg6IHZhcigtLXdpZHRoLWNvbnRhaW5lcik7XG59XG5oZWFkZXIsIGZvb3RlciwgbWFpbiB7XG4gIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctaW50ZXJuYWwpO1xufVxuLyogSW5kaXZpZHVhbCBwYXJ0czogSGVpZ2h0LCBib3JkZXJzIGFuZCBiYWNrZ3JvdW5kICovXG5oZWFkZXIsIGZvb3RlciB7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLWhlaWdodC1taW4taGVhZGVyLWZvb3Rlcik7XG59XG5tYWluIHtcbiAgbWluLWhlaWdodDogdmFyKC0taGVpZ2h0LW1pbi1oZWFkZXItZm9vdGVyKTtcbn1cblxuLyogRnVsbHNjcmVlbiBsYXlvdXQgKi9cbi5jb250YWluZXIuZnVsbHNjcmVlbiB7XG4gIC8qIEZ1bGwgc2NyZWVuIG1pbnVzIG1hcmdpbnMgKi9cbiAgbWFyZ2luOiB2YXIoLS1wYWRkaW5nLWludGVybmFsKSBjYWxjKHZhcigtLXBhZGRpbmctaW50ZXJuYWwpIC0gOHB4KTtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIqdmFyKC0tcGFkZGluZy1pbnRlcm5hbCkpO1xuICB3aWR0aDogY2FsYygxMDB2dyAtIDIqdmFyKC0tcGFkZGluZy1pbnRlcm5hbCkpO1xuICAvKiBEaXNwbGF5IGNvbnRlbnQgdXNpbmcgZmxleGJveGVzICovXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uY29udGFpbmVyLmZ1bGxzY3JlZW4gbWFpbiB7XG4gIC8qIEZsZXggcG9zaXRpb25pbmcgKi9cbiAgZmxleDogMTtcbn1cblxuLyogRnJhbWVsZXNzIGxheW91dCAqL1xuLmNvbnRhaW5lci5mcmFtZWxlc3Mge1xuICBtYXJnaW46IC04cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5jb250YWluZXIuZnVsbHNjcmVlbi5mcmFtZWxlc3Mge1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG59XG5cbi8qIEZsZXhib3ggZml4IGZvciBJRTExLCBwZXIgaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyAqL1xuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAuY29udGFpbmVyLmZ1bGxzY3JlZW4ge1xuICAgIC8qIElFMTEgbWlzY2FsY3VsYXRlcyB0aGUgaGVpZ2h0LCBzbyBhZGQgc29tZSBzbGFjayAqL1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzKnZhcigtLXBhZGRpbmctaW50ZXJuYWwpKTtcbiAgfVxufVxuXG4vKiBCb3JkZXJzIGFuZCBiYWNrZ3JvdW5kcyAqL1xuLmNvbnRhaW5lciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY29udGFpbmVyKTtcbn1cbmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItaW50ZXJuYWwpO1xufVxuZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1pbnRlcm5hbCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXktYmFja2dyb3VuZCk7XG59XG5cbi8qIFR5cG9ncmFwaHkgKi9cbjpyb290IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQpO1xufVxuaGVhZGVyLCBmb290ZXIsIG1haW4ge1xuICAvKiBTZXQgZGlzcGxheSBzdHlsZSBleHBsaWNpdGx5IGZvciBsZWdhY3kgYnJvd3NlcnNcbiAgICAgdGhhdCBhcmUgdW5mYW1pbGlhciB3aXRoIHRoZXNlIGVsZW1lbnRzICovXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5oMSwgaDIsIGgzIHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0KTtcbn1cbmhyIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKVxufVxuXG4vKiBTcGVjaWFsIGVsZW1lbnRzOiBLZXlib2FyZCBidXR0b25zICovXG5rYmQge1xuICAvKiBQb3NpdGlvbmluZyAqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMS41ZW07XG4gIG1pbi1oZWlnaHQ6IDEuNWVtO1xuICBwYWRkaW5nOiAwIDAuM2VtO1xuICBwYWRkaW5nLXRvcDogMC4xNWVtO1xuICAvKiBGb250cyAqL1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktbW9ubyk7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyogQmFja2dyb3VuZCBhbmQgYm9yZGVyICovXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWNvbnRlbnQpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMTgwLCAxODAsIDE4MCk7XG59XG5rYmQuYmlnIHtcbiAgZm9udC1zaXplOiAxLjRlbTtcbiAgcGFkZGluZy10b3A6IDAuMzc1ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMTI1ZW07XG59XG5cbi8qIEFsaWdubWVudCBoZWxwZXJzICovXG4udy0xMDAge1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIEJsb2NrIGFsaWdubWVudCBiYXNlZCBvbiBmbGV4Ym94ICovXG4uY29udGVudC12ZXJ0aWNhbC10b3AsXG4uY29udGVudC12ZXJ0aWNhbC1jZW50ZXIsXG4uY29udGVudC12ZXJ0aWNhbC1ib3R0b20sXG4uY29udGVudC1ob3Jpem9udGFsLWxlZnQsXG4uY29udGVudC1ob3Jpem9udGFsLWNlbnRlcixcbi5jb250ZW50LWhvcml6b250YWwtcmlnaHQsXG4uY29udGVudC1ob3Jpem9udGFsLXNwYWNlLWJldHdlZW4sXG4uY29udGVudC12ZXJ0aWNhbC1zcGFjZS1iZXR3ZWVuLFxuLmNvbnRlbnQtaG9yaXpvbnRhbC1zcGFjZS1hcm91bmQsXG4uY29udGVudC12ZXJ0aWNhbC1zcGFjZS1hcm91bmQge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmNvbnRlbnQtdmVydGljYWwtdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4uY29udGVudC12ZXJ0aWNhbC1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmNvbnRlbnQtdmVydGljYWwtYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuLmNvbnRlbnQtaG9yaXpvbnRhbC1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLmNvbnRlbnQtaG9yaXpvbnRhbC1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5jb250ZW50LWhvcml6b250YWwtcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLmNvbnRlbnQtaG9yaXpvbnRhbC1zcGFjZS1iZXR3ZWVuLFxuLmNvbnRlbnQtdmVydGljYWwtc3BhY2UtYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5jb250ZW50LWhvcml6b250YWwtc3BhY2UtYXJvdW5kLFxuLmNvbnRlbnQtdmVydGljYWwtc3BhY2UtYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG4uY29udGVudC12ZXJ0aWNhbC1zcGFjZS1hcm91bmQsXG4uY29udGVudC12ZXJ0aWNhbC1zcGFjZS1iZXR3ZWVuIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5jb250ZW50LXZlcnRpY2FsLXNwYWNlLWJldHdlZW4uY29udGVudC1ob3Jpem9udGFsLXJpZ2h0LFxuLmNvbnRlbnQtdmVydGljYWwtc3BhY2UtYXJvdW5kLmNvbnRlbnQtaG9yaXpvbnRhbC1yaWdodCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLmNvbnRlbnQtdmVydGljYWwtc3BhY2UtYmV0d2Vlbi5jb250ZW50LWhvcml6b250YWwtY2VudGVyLFxuLmNvbnRlbnQtdmVydGljYWwtc3BhY2UtYXJvdW5kLmNvbnRlbnQtaG9yaXpvbnRhbC1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmNvbnRlbnQtdmVydGljYWwtc3BhY2UtYmV0d2Vlbi5jb250ZW50LWhvcml6b250YWwtcmlnaHQsXG4uY29udGVudC12ZXJ0aWNhbC1zcGFjZS1hcm91bmQuY29udGVudC1ob3Jpem9udGFsLXJpZ2h0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuLyogVGV4dCBhbGlnbm1lbnQgKi9cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi50ZXh0LW11dGVkIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXktY29udGVudCk7XG59XG4udGV4dC1tdXRlZCBhIHtcbiAgY29sb3I6IHJnYig2MCwgODksIDE1Nik7XG59XG5zbWFsbCwgLnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmZvbnQtaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuY29kZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1tb25vKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheS1iYWNrZ3JvdW5kKTtcbiAgcGFkZGluZzogMnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi8qIFZpc2liaWxpdHkgKi9cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5oaWRlLWlmLWVtcHR5OmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZVxufVxuXG4vKiBBbGVydHMgKi9cbi5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXktYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY29udGVudCk7XG4gIHBhZGRpbmc6IDE2cHggMTZweCAxNHB4O1xuICBtYXJnaW46IDE2cHggMDtcbn1cbi5hbGVydC5hbGVydC1kYW5nZXIge1xuICBjb2xvcjogI2EwMmMyYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5YWZhZjtcbiAgYm9yZGVyLWNvbG9yOiAjYTAyYzJjO1xufVxuLmFsZXJ0LmFsZXJ0LXdhcm5pbmcge1xuICBjb2xvcjogI2Y2YTkwMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTZhNTtcbiAgYm9yZGVyLWNvbG9yOiAjZmZiNDAwO1xufVxuXG4vKiBGb3JtIGVsZW1lbnRzICovXG5pbnB1dCwgc2VsZWN0LCBidXR0b24sIHRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY29udGVudCk7XG4gIG1hcmdpbjogOHB4IDA7XG4gIHBhZGRpbmc6IDhweDtcbn1cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIG1hcmdpbjogMCAxMHB4O1xufVxuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgYm9yZGVyOiBub25lO1xufVxuaW5wdXQgKyBsYWJlbCB7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG59XG5zZWxlY3Qge1xuICBwYWRkaW5nOiA4cHggNXB4OyAvKiBzZWxlY3RzIGhhdmUgYSB3ZWlyZCB2ZXJ0aWNhbCBhbGlnbm1lbnQgKi9cbn1cbmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHBhZGRpbmc6IDhweCA4cHggNnB4O1xufVxuYnV0dG9uOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmY2ZjO1xufVxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiB2YXIoLS1wYXJhZ3JhcGgtbWFyZ2luLXZlcnRpY2FsKSAwO1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuLyogSW5wdXQgZ3JvdXBzICovXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gIG1hcmdpbjogOHB4IDA7XG59XG4uaW5wdXQtZ3JvdXAgKiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbn1cbi5pbnB1dC1ncm91cCBpbnB1dCB7XG4gIG1hcmdpbjogMDtcbn1cbi5pbnB1dC1ncm91cCAqOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG59XG4uaW5wdXQtZ3JvdXAgKjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XG59XG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgcGFkZGluZzogMCAxMHB4O1xufVxuXG4vKiBUYWJsZSAqL1xudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cbnRhYmxlIHRkLCB0YWJsZSB0aCB7XG4gIHBhZGRpbmc6IDEwcHggOHB4IDhweDtcbn1cbi8qIFRhYmxlIGJvcmRlcnMgKGV4Y2VwdCBmb3IgcGxhaW4pICovXG50YWJsZTpub3QoLnRhYmxlLXBsYWluKSA+IHRyID4gdGQsXG50YWJsZTpub3QoLnRhYmxlLXBsYWluKSA+IHRyID4gdGgsXG50YWJsZTpub3QoLnRhYmxlLXBsYWluKSA+IHRib2R5ID4gdHIgPiB0ZCxcbnRhYmxlOm5vdCgudGFibGUtcGxhaW4pID4gdGJvZHkgPiB0ciA+IHRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG59XG4vKiBTdHJpcGVkIHJvd3MgKi9cbnRhYmxlLnRhYmxlLXN0cmlwZWQgdHI6bnRoLWNoaWxkKG9kZCkgdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItaW50ZXJuYWwpXG59XG5cbi8qIFByb2dyZXNzIGJhciAqL1xuLnByb2dyZXNzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDAuMnJlbSAwIDAuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xufVxuLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIge1xuICB3aWR0aDogMCU7XG4gIG1pbi1oZWlnaHQ6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheS1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWludGVybmFsKTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi8qIFBvcG92ZXJzICovXG4ucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuNXM7XG4gIGFuaW1hdGlvbi1uYW1lOiBwb3BvdmVyO1xufVxuXG4vKiBXaWR0aCwgZm9yIHNvbWUgcmVhc29uLCBuZWVkcyB0byBiZSBzZXQgZXhwbGljaXRseSAqL1xuLmNvbnRhaW5lci5mdWxsc2NyZWVuIC5wb3BvdmVyIHtcbiAgd2lkdGg6IGNhbGMoMTAwdncgLSAyKnZhcigtLXBhZGRpbmctaW50ZXJuYWwpKTtcbn1cblxuLnBvcG92ZXIgPiAqIHtcbiAgd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jb250YWluZXI6bm90KC5mdWxsc2NyZWVuKSAucG9wb3ZlciB7XG4gIHdpZHRoOiB2YXIoLS13aWR0aC1jb250YWluZXIpO1xufVxuXG4vKiBTbGlkZSBpbiBmcm9tIHRoZSB0b3AgKi9cbkBrZXlmcmFtZXMgcG9wb3ZlciB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3ZlciA+IC5hbGVydDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAyNHB4O1xuICB0b3A6IC04cHg7XG59XG5cbiJdfQ== */