@charset "UTF-8";
/* 
Theme Name: Bootstrap 4 Sass
Description: Bootstrap 4 with Sass
*/
/* STANDARD BOOTSTRAP VARIABLES */
/* CUSTOM VARIABLES */
/* Topics */
/* Assets */
/* TYPOGRAPHY */
/* Google Fonts */
@import url("https://fonts.googleapis.com/css?family=Squada+One");
@import url("https://fonts.googleapis.com/css?family=PT+Sans+Narrow");
@import url("https://fonts.googleapis.com/css?family=Russo+One&display=swap");
@import url("https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300&display=swap");
.rounded {
  border-radius: 8px;
}

/* IMPORTS */
/*!
 * Bootstrap v4.6.1 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --blue: #2A6296;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #E53935;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #FEFEFE;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #2A6296;
  --secondary: #21394E;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #E53935;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

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

body {
  margin: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #FEFEFE;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

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

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

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none;
}

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

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

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

dt {
  font-weight: bold;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #2A6296;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #309B9C;
  text-decoration: underline;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

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

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

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

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

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

textarea {
  overflow: auto;
  resize: vertical;
}

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

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}
@media (max-width: 1200px) {
  legend {
    font-size: calc(1.275rem + 0.3vw);
  }
}

progress {
  vertical-align: baseline;
}

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

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1, .h1 {
  font-size: 2.5rem;
}
@media (max-width: 1200px) {
  h1, .h1 {
    font-size: calc(1.375rem + 1.5vw);
  }
}

h2, .h2 {
  font-size: 2rem;
}
@media (max-width: 1200px) {
  h2, .h2 {
    font-size: calc(1.325rem + 0.9vw);
  }
}

h3, .h3 {
  font-size: 1.75rem;
}
@media (max-width: 1200px) {
  h3, .h3 {
    font-size: calc(1.3rem + 0.6vw);
  }
}

h4, .h4 {
  font-size: 1.5rem;
}
@media (max-width: 1200px) {
  h4, .h4 {
    font-size: calc(1.275rem + 0.3vw);
  }
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

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

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .display-1 {
    font-size: calc(1.725rem + 5.7vw);
  }
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .display-2 {
    font-size: calc(1.675rem + 5.1vw);
  }
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .display-3 {
    font-size: calc(1.575rem + 3.9vw);
  }
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .display-4 {
    font-size: calc(1.475rem + 2.7vw);
  }
}

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

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

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

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

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

.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

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

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d;
}
.blockquote-footer::before {
  content: "— ";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #FEFEFE;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

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

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #FEFEFE;
  background-color: #212529;
  border-radius: 0.2rem;
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

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

.container,
.container-fluid,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1600px;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.col-xl,
.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
.col-lg-auto, .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, .col-md,
.col-md-auto, .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-sm,
.col-sm-auto, .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,
.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.33333333%;
  max-width: 8.33333333%;
}

.col-2 {
  flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.col-5 {
  flex: 0 0 41.66666667%;
  max-width: 41.66666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.33333333%;
  max-width: 58.33333333%;
}

.col-8 {
  flex: 0 0 66.66666667%;
  max-width: 66.66666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.33333333%;
  max-width: 83.33333333%;
}

.col-11 {
  flex: 0 0 91.66666667%;
  max-width: 91.66666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

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

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

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

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

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

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-sm-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-sm-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-sm-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-sm-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-sm-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-sm-first {
    order: -1;
  }

  .order-sm-last {
    order: 13;
  }

  .order-sm-0 {
    order: 0;
  }

  .order-sm-1 {
    order: 1;
  }

  .order-sm-2 {
    order: 2;
  }

  .order-sm-3 {
    order: 3;
  }

  .order-sm-4 {
    order: 4;
  }

  .order-sm-5 {
    order: 5;
  }

  .order-sm-6 {
    order: 6;
  }

  .order-sm-7 {
    order: 7;
  }

  .order-sm-8 {
    order: 8;
  }

  .order-sm-9 {
    order: 9;
  }

  .order-sm-10 {
    order: 10;
  }

  .order-sm-11 {
    order: 11;
  }

  .order-sm-12 {
    order: 12;
  }

  .offset-sm-0 {
    margin-left: 0;
  }

  .offset-sm-1 {
    margin-left: 8.33333333%;
  }

  .offset-sm-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-sm-4 {
    margin-left: 33.33333333%;
  }

  .offset-sm-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-sm-7 {
    margin-left: 58.33333333%;
  }

  .offset-sm-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-sm-10 {
    margin-left: 83.33333333%;
  }

  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-md-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-md-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-md-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-md-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-md-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-md-first {
    order: -1;
  }

  .order-md-last {
    order: 13;
  }

  .order-md-0 {
    order: 0;
  }

  .order-md-1 {
    order: 1;
  }

  .order-md-2 {
    order: 2;
  }

  .order-md-3 {
    order: 3;
  }

  .order-md-4 {
    order: 4;
  }

  .order-md-5 {
    order: 5;
  }

  .order-md-6 {
    order: 6;
  }

  .order-md-7 {
    order: 7;
  }

  .order-md-8 {
    order: 8;
  }

  .order-md-9 {
    order: 9;
  }

  .order-md-10 {
    order: 10;
  }

  .order-md-11 {
    order: 11;
  }

  .order-md-12 {
    order: 12;
  }

  .offset-md-0 {
    margin-left: 0;
  }

  .offset-md-1 {
    margin-left: 8.33333333%;
  }

  .offset-md-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-md-4 {
    margin-left: 33.33333333%;
  }

  .offset-md-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-md-7 {
    margin-left: 58.33333333%;
  }

  .offset-md-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-md-10 {
    margin-left: 83.33333333%;
  }

  .offset-md-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-lg-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-lg-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-lg-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-lg-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-lg-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-lg-first {
    order: -1;
  }

  .order-lg-last {
    order: 13;
  }

  .order-lg-0 {
    order: 0;
  }

  .order-lg-1 {
    order: 1;
  }

  .order-lg-2 {
    order: 2;
  }

  .order-lg-3 {
    order: 3;
  }

  .order-lg-4 {
    order: 4;
  }

  .order-lg-5 {
    order: 5;
  }

  .order-lg-6 {
    order: 6;
  }

  .order-lg-7 {
    order: 7;
  }

  .order-lg-8 {
    order: 8;
  }

  .order-lg-9 {
    order: 9;
  }

  .order-lg-10 {
    order: 10;
  }

  .order-lg-11 {
    order: 11;
  }

  .order-lg-12 {
    order: 12;
  }

  .offset-lg-0 {
    margin-left: 0;
  }

  .offset-lg-1 {
    margin-left: 8.33333333%;
  }

  .offset-lg-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-lg-4 {
    margin-left: 33.33333333%;
  }

  .offset-lg-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-lg-7 {
    margin-left: 58.33333333%;
  }

  .offset-lg-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-lg-10 {
    margin-left: 83.33333333%;
  }

  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-xl-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-xl-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xl-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-xl-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xl-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-xl-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xl-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-xl-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-xl-first {
    order: -1;
  }

  .order-xl-last {
    order: 13;
  }

  .order-xl-0 {
    order: 0;
  }

  .order-xl-1 {
    order: 1;
  }

  .order-xl-2 {
    order: 2;
  }

  .order-xl-3 {
    order: 3;
  }

  .order-xl-4 {
    order: 4;
  }

  .order-xl-5 {
    order: 5;
  }

  .order-xl-6 {
    order: 6;
  }

  .order-xl-7 {
    order: 7;
  }

  .order-xl-8 {
    order: 8;
  }

  .order-xl-9 {
    order: 9;
  }

  .order-xl-10 {
    order: 10;
  }

  .order-xl-11 {
    order: 11;
  }

  .order-xl-12 {
    order: 12;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

  .offset-xl-1 {
    margin-left: 8.33333333%;
  }

  .offset-xl-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-xl-4 {
    margin-left: 33.33333333%;
  }

  .offset-xl-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-xl-7 {
    margin-left: 58.33333333%;
  }

  .offset-xl-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-xl-10 {
    margin-left: 83.33333333%;
  }

  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
}
.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}
.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid gray;
}
.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid gray;
}
.table tbody + tbody {
  border-top: 2px solid gray;
}

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

.table-bordered {
  border: 1px solid gray;
}
.table-bordered th,
.table-bordered td {
  border: 1px solid gray;
}
.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #c3d2e1;
}
.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #90adc8;
}

.table-hover .table-primary:hover {
  background-color: #b2c5d9;
}
.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #b2c5d9;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #c0c7cd;
}
.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #8b98a2;
}

.table-hover .table-secondary:hover {
  background-color: #b2bac2;
}
.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #b2bac2;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c2e6ca;
}
.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

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

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bde4ea;
}
.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86ceda;
}

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

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #feedb9;
}
.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffde7e;
}

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

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f7c7c6;
}
.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #f19895;
}

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

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fcfdfd;
}
.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfbfc;
}

.table-hover .table-light:hover {
  background-color: #edf3f3;
}
.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #edf3f3;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c5c7c9;
}
.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95989b;
}

.table-hover .table-dark:hover {
  background-color: #b8babd;
}
.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b8babd;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #454d55;
}
.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: gray;
}

.table-dark {
  color: #FEFEFE;
  background-color: #343a40;
}
.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}
.table-dark.table-bordered {
  border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(254, 254, 254, 0.05);
}
.table-dark.table-hover tbody tr:hover {
  color: #FEFEFE;
  background-color: rgba(254, 254, 254, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #495057;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control:focus {
  color: #495057;
  background-color: #FEFEFE;
  border-color: #6aa2d5;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

input[type=date].form-control,
input[type=time].form-control,
input[type=datetime-local].form-control,
input[type=month].form-control {
  appearance: none;
}

select.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}
select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #FEFEFE;
}

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

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

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

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}
.form-row > .col,
.form-row > [class*=col-] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}
.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #28a745;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #FEFEFE;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}
.form-row > .col > .valid-tooltip, .form-row > [class*=col-] > .valid-tooltip {
  left: 5px;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated select.form-control:valid, select.form-control.is-valid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #FEFEFE url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}
.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}
.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}
.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #E53935;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #FEFEFE;
  background-color: rgba(229, 57, 53, 0.9);
  border-radius: 0.25rem;
}
.form-row > .col > .invalid-tooltip, .form-row > [class*=col-] > .invalid-tooltip {
  left: 5px;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #E53935;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23E53935' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23E53935' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #E53935;
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.25);
}

.was-validated select.form-control:invalid, select.form-control.is-invalid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #E53935;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #FEFEFE url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23E53935' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23E53935' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #E53935;
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #E53935;
}
.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #E53935;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #E53935;
}
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #eb6562;
  background-color: #eb6562;
}
.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.25);
}
.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #E53935;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #E53935;
}
.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #E53935;
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.form-inline .form-check {
  width: 100%;
}
@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
.form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: normal;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: #212529;
  text-decoration: none;
}
.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.btn.disabled, .btn:disabled {
  opacity: 0.65;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}
a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-primary:hover {
  color: #FEFEFE;
  background-color: #224e78;
  border-color: #1f486e;
}
.btn-primary:focus, .btn-primary.focus {
  color: #FEFEFE;
  background-color: #224e78;
  border-color: #1f486e;
  box-shadow: 0 0 0 0.2rem rgba(74, 121, 166, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1f486e;
  border-color: #1c4164;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(74, 121, 166, 0.5);
}

.btn-secondary {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-secondary:hover {
  color: #FEFEFE;
  background-color: #162533;
  border-color: #121f2a;
}
.btn-secondary:focus, .btn-secondary.focus {
  color: #FEFEFE;
  background-color: #162533;
  border-color: #121f2a;
  box-shadow: 0 0 0 0.2rem rgba(66, 87, 104, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
  color: #FEFEFE;
  background-color: #121f2a;
  border-color: #0e1821;
}
.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(66, 87, 104, 0.5);
}

.btn-success {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success:hover {
  color: #FEFEFE;
  background-color: #218838;
  border-color: #1e7e34;
}
.btn-success:focus, .btn-success.focus {
  color: #FEFEFE;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1e7e34;
  border-color: #1c7430;
}
.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:hover {
  color: #FEFEFE;
  background-color: #138496;
  border-color: #117a8b;
}
.btn-info:focus, .btn-info.focus {
  color: #FEFEFE;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
  color: #FEFEFE;
  background-color: #117a8b;
  border-color: #10707f;
}
.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}
.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}
.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-danger:hover {
  color: #FEFEFE;
  background-color: #d8201c;
  border-color: #cd1e1a;
}
.btn-danger:focus, .btn-danger.focus {
  color: #FEFEFE;
  background-color: #d8201c;
  border-color: #cd1e1a;
  box-shadow: 0 0 0 0.2rem rgba(233, 87, 83, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
  color: #FEFEFE;
  background-color: #cd1e1a;
  border-color: #c11d19;
}
.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(233, 87, 83, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}
.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}
.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}
.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark:hover {
  color: #FEFEFE;
  background-color: #23272b;
  border-color: #1d2124;
}
.btn-dark:focus, .btn-dark.focus {
  color: #FEFEFE;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 87, 93, 0.5);
}
.btn-dark.disabled, .btn-dark:disabled {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1d2124;
  border-color: #171a1d;
}
.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 87, 93, 0.5);
}

.btn-outline-primary {
  color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary:hover {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #2A6296;
  background-color: transparent;
}
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}

.btn-outline-secondary {
  color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary:hover {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #21394E;
  background-color: transparent;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:hover {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}
.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}
.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, .show > .btn-outline-success.dropdown-toggle {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:hover {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}
.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}
.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, .show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger:hover {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #E53935;
  background-color: transparent;
}
.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, .show > .btn-outline-danger.dropdown-toggle {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}
.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:hover {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}
.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: normal;
  color: #2A6296;
  text-decoration: none;
}
.btn-link:hover {
  color: #309B9C;
  text-decoration: underline;
}
.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}
.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

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

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

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropleft .dropdown-toggle::after {
  display: none;
}
.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^=top], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: normal;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: #FEFEFE;
  text-decoration: none;
  background-color: #2A6296;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

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

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}
.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

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

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropright .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}
.btn-group-toggle > .btn input[type=radio],
.btn-group-toggle > .btn input[type=checkbox],
.btn-group-toggle > .btn-group > .btn input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}
.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}
.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}
.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}
.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .custom-file {
  display: flex;
  align-items: center;
}
.input-group > .custom-file:not(:last-child) .custom-file-label, .input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > .form-control:nth-last-child(n+3),
.input-group.has-validation > .custom-select:nth-last-child(n+3),
.input-group.has-validation > .custom-file:nth-last-child(n+3) .custom-file-label,
.input-group.has-validation > .custom-file:nth-last-child(n+3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: flex;
}
.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}
.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}
.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}
.input-group-text input[type=radio],
.input-group-text input[type=checkbox] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n+3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n+3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  color-adjust: exact;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}
.custom-control-input:checked ~ .custom-control-label::before {
  color: #FEFEFE;
  border-color: #2A6296;
  background-color: #2A6296;
}
.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #6aa2d5;
}
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #FEFEFE;
  background-color: #92bbe0;
  border-color: #92bbe0;
}
.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}
.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #FEFEFE;
  border: #adb5bd solid 1px;
}
.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50%/50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23FEFEFE' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #2A6296;
  background-color: #2A6296;
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23FEFEFE' d='M0 2h4'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(42, 98, 150, 0.5);
}
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(42, 98, 150, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23FEFEFE'/%3e%3c/svg%3e");
}
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(42, 98, 150, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}
.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}
.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #FEFEFE;
  transform: translateX(0.75rem);
}
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(42, 98, 150, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #FEFEFE url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none;
}
.custom-select:focus {
  border-color: #6aa2d5;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #FEFEFE;
}
.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}
.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}
.custom-select::-ms-expand {
  display: none;
}
.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}
.custom-file-input:focus ~ .custom-file-label {
  border-color: #6aa2d5;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-file-input[disabled] ~ .custom-file-label, .custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}
.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}
.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: normal;
  line-height: 1.5;
  color: #495057;
  background-color: #FEFEFE;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}
.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  appearance: none;
}
.custom-range:focus {
  outline: 0;
}
.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #FEFEFE, 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #FEFEFE, 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #FEFEFE, 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-range::-moz-focus-outer {
  border: 0;
}
.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #2A6296;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}
.custom-range::-webkit-slider-thumb:active {
  background-color: #92bbe0;
}
.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #2A6296;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}
.custom-range::-moz-range-thumb:active {
  background-color: #92bbe0;
}
.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #2A6296;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}
.custom-range::-ms-thumb:active {
  background-color: #92bbe0;
}
.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}
.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}
.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}
.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}
.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}
.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}
.custom-range:disabled::-moz-range-track {
  cursor: default;
}
.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
.custom-file-label,
.custom-select {
    transition: none;
  }
}

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

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}
.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}
.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #FEFEFE;
  border-color: #dee2e6 #dee2e6 #FEFEFE;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #FEFEFE;
  background-color: #2A6296;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

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

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}
.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50%/100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}
@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  flex-wrap: nowrap;
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #FEFEFE;
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #FEFEFE;
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(254, 254, 254, 0.5);
}
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(254, 254, 254, 0.75);
}
.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(254, 254, 254, 0.25);
}
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #FEFEFE;
}
.navbar-dark .navbar-toggler {
  color: rgba(254, 254, 254, 0.5);
  border-color: rgba(254, 254, 254, 0.1);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28254, 254, 254, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-dark .navbar-text {
  color: rgba(254, 254, 254, 0.5);
}
.navbar-dark .navbar-text a {
  color: #FEFEFE;
}
.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #FEFEFE;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #FEFEFE;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

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

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

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

.card-link:hover {
  text-decoration: none;
}
.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}
.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
.card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
.card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
.card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
.card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .card-columns {
    column-count: 3;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion {
  overflow-anchor: none;
}
.accordion > .card {
  overflow: hidden;
}
.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}
.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #2A6296;
  background-color: #FEFEFE;
  border: 1px solid #dee2e6;
}
.page-link:hover {
  z-index: 2;
  color: #309B9C;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.page-item.active .page-link {
  z-index: 3;
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #FEFEFE;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}
.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}
.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}
.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}
.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}
a.badge:hover, a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

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

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #FEFEFE;
  background-color: #2A6296;
}
a.badge-primary:hover, a.badge-primary:focus {
  color: #FEFEFE;
  background-color: #1f486e;
}
a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}

.badge-secondary {
  color: #FEFEFE;
  background-color: #21394E;
}
a.badge-secondary:hover, a.badge-secondary:focus {
  color: #FEFEFE;
  background-color: #121f2a;
}
a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}

.badge-success {
  color: #FEFEFE;
  background-color: #28a745;
}
a.badge-success:hover, a.badge-success:focus {
  color: #FEFEFE;
  background-color: #1e7e34;
}
a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #FEFEFE;
  background-color: #17a2b8;
}
a.badge-info:hover, a.badge-info:focus {
  color: #FEFEFE;
  background-color: #117a8b;
}
a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}
a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}
a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #FEFEFE;
  background-color: #E53935;
}
a.badge-danger:hover, a.badge-danger:focus {
  color: #FEFEFE;
  background-color: #cd1e1a;
}
a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}
a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}
a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #FEFEFE;
  background-color: #343a40;
}
a.badge-dark:hover, a.badge-dark:focus {
  color: #FEFEFE;
  background-color: #1d2124;
}
a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}
@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

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

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

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

.alert-dismissible {
  padding-right: 4rem;
}
.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #16334e;
  background-color: #d4dfe9;
  border-color: #c3d2e1;
}
.alert-primary hr {
  border-top-color: #b2c5d9;
}
.alert-primary .alert-link {
  color: #0b1926;
}

.alert-secondary {
  color: #111e29;
  background-color: #d2d7db;
  border-color: #c0c7cd;
}
.alert-secondary hr {
  border-top-color: #b2bac2;
}
.alert-secondary .alert-link {
  color: #020405;
}

.alert-success {
  color: #155724;
  background-color: #d3edd9;
  border-color: #c2e6ca;
}
.alert-success hr {
  border-top-color: #b0dfba;
}
.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d0ecf0;
  border-color: #bde4ea;
}
.alert-info hr {
  border-top-color: #aadce4;
}
.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fef2cd;
  border-color: #feedb9;
}
.alert-warning hr {
  border-top-color: #fee7a0;
}
.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #771e1c;
  background-color: #f9d7d6;
  border-color: #f7c7c6;
}
.alert-danger hr {
  border-top-color: #f4b1b0;
}
.alert-danger .alert-link {
  color: #4e1412;
}

.alert-light {
  color: #818182;
  background-color: #fdfdfd;
  border-color: #fcfdfd;
}
.alert-light hr {
  border-top-color: #edf3f3;
}
.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d7d8;
  border-color: #c5c7c9;
}
.alert-dark hr {
  border-top-color: #b8babd;
}
.alert-dark .alert-link {
  color: #040505;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #FEFEFE;
  text-align: center;
  white-space: nowrap;
  background-color: #2A6296;
  transition: width 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(254, 254, 254, 0.15) 25%, transparent 25%, transparent 50%, rgba(254, 254, 254, 0.15) 50%, rgba(254, 254, 254, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}
.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #FEFEFE;
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #FEFEFE;
}
.list-group-item.active {
  z-index: 2;
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #16334e;
  background-color: #c3d2e1;
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #16334e;
  background-color: #b2c5d9;
}
.list-group-item-primary.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #16334e;
  border-color: #16334e;
}

.list-group-item-secondary {
  color: #111e29;
  background-color: #c0c7cd;
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #111e29;
  background-color: #b2bac2;
}
.list-group-item-secondary.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #111e29;
  border-color: #111e29;
}

.list-group-item-success {
  color: #155724;
  background-color: #c2e6ca;
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b0dfba;
}
.list-group-item-success.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bde4ea;
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #aadce4;
}
.list-group-item-info.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #feedb9;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #fee7a0;
}
.list-group-item-warning.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #771e1c;
  background-color: #f7c7c6;
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #771e1c;
  background-color: #f4b1b0;
}
.list-group-item-danger.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #771e1c;
  border-color: #771e1c;
}

.list-group-item-light {
  color: #818182;
  background-color: #fcfdfd;
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #edf3f3;
}
.list-group-item-light.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c5c7c9;
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b8babd;
}
.list-group-item-dark.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #FEFEFE;
  opacity: 0.5;
}
@media (max-width: 1200px) {
  .close {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.close:hover {
  color: #000;
  text-decoration: none;
}
.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: 0.75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  flex-basis: 350px;
  max-width: 350px;
  font-size: 0.875rem;
  background-color: rgba(254, 254, 254, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 0.25rem;
}
.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}
.toast.showing {
  opacity: 1;
}
.toast.show {
  display: block;
  opacity: 1;
}
.toast.hide {
  display: none;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(254, 254, 254, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.toast-body {
  padding: 0.75rem;
}

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

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}
.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid gray;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

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

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid gray;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}
.modal-footer > * {
  margin: 0.25rem;
}

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

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: min-content;
  }

  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
.modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] {
  padding: 0.4rem 0;
}
.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=top] .arrow {
  bottom: 0;
}
.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=top] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] {
  padding: 0 0.4rem;
}
.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=right] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=right] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] {
  padding: 0.4rem 0;
}
.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=bottom] .arrow {
  top: 0;
}
.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] {
  padding: 0 0.4rem;
}
.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=left] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=left] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #FEFEFE;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}
.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^=top] {
  margin-bottom: 0.5rem;
}
.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=top] > .arrow {
  bottom: calc(-0.5rem - 1px);
}
.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=top] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=top] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #FEFEFE;
}

.bs-popover-right, .bs-popover-auto[x-placement^=right] {
  margin-left: 0.5rem;
}
.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=right] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=right] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=right] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #FEFEFE;
}

.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] {
  margin-top: 0.5rem;
}
.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=bottom] > .arrow {
  top: calc(-0.5rem - 1px);
}
.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=bottom] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=bottom] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #FEFEFE;
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f6f6f6;
}

.bs-popover-left, .bs-popover-auto[x-placement^=left] {
  margin-right: 0.5rem;
}
.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=left] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=left] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=left] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #FEFEFE;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f6f6f6;
  border-bottom: 1px solid #eaeaea;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #FEFEFE;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
.carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #FEFEFE;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: 50%/100% 100% no-repeat;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23FEFEFE' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23FEFEFE' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}
.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #FEFEFE;
  text-align: center;
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: 0.75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
.spinner-grow {
    animation-duration: 1.5s;
  }
}
.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #2A6296 !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #1f486e !important;
}

.bg-secondary {
  background-color: #21394E !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #121f2a !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

.bg-danger {
  background-color: #E53935 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #cd1e1a !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #FEFEFE !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid gray !important;
}

.border-top {
  border-top: 1px solid gray !important;
}

.border-right {
  border-right: 1px solid gray !important;
}

.border-bottom {
  border-bottom: 1px solid gray !important;
}

.border-left {
  border-left: 1px solid gray !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #2A6296 !important;
}

.border-secondary {
  border-color: #21394E !important;
}

.border-success {
  border-color: #28a745 !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #E53935 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-white {
  border-color: #FEFEFE !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

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

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }

  .d-sm-inline {
    display: inline !important;
  }

  .d-sm-inline-block {
    display: inline-block !important;
  }

  .d-sm-block {
    display: block !important;
  }

  .d-sm-table {
    display: table !important;
  }

  .d-sm-table-row {
    display: table-row !important;
  }

  .d-sm-table-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }

  .d-md-inline {
    display: inline !important;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-block {
    display: block !important;
  }

  .d-md-table {
    display: table !important;
  }

  .d-md-table-row {
    display: table-row !important;
  }

  .d-md-table-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: flex !important;
  }

  .d-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }

  .d-lg-inline {
    display: inline !important;
  }

  .d-lg-inline-block {
    display: inline-block !important;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-table {
    display: table !important;
  }

  .d-lg-table-row {
    display: table-row !important;
  }

  .d-lg-table-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }

  .d-xl-inline {
    display: inline !important;
  }

  .d-xl-inline-block {
    display: inline-block !important;
  }

  .d-xl-block {
    display: block !important;
  }

  .d-xl-table {
    display: table !important;
  }

  .d-xl-table-row {
    display: table-row !important;
  }

  .d-xl-table-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: flex !important;
  }

  .d-xl-inline-flex {
    display: inline-flex !important;
  }
}
@media print {
  .d-print-none {
    display: none !important;
  }

  .d-print-inline {
    display: inline !important;
  }

  .d-print-inline-block {
    display: inline-block !important;
  }

  .d-print-block {
    display: block !important;
  }

  .d-print-table {
    display: table !important;
  }

  .d-print-table-row {
    display: table-row !important;
  }

  .d-print-table-cell {
    display: table-cell !important;
  }

  .d-print-flex {
    display: flex !important;
  }

  .d-print-inline-flex {
    display: inline-flex !important;
  }
}
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.embed-responsive::before {
  display: block;
  content: "";
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714286%;
}

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

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

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

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }

  .flex-sm-column {
    flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }

  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-sm-fill {
    flex: 1 1 auto !important;
  }

  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-sm-start {
    justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    justify-content: center !important;
  }

  .justify-content-sm-between {
    justify-content: space-between !important;
  }

  .justify-content-sm-around {
    justify-content: space-around !important;
  }

  .align-items-sm-start {
    align-items: flex-start !important;
  }

  .align-items-sm-end {
    align-items: flex-end !important;
  }

  .align-items-sm-center {
    align-items: center !important;
  }

  .align-items-sm-baseline {
    align-items: baseline !important;
  }

  .align-items-sm-stretch {
    align-items: stretch !important;
  }

  .align-content-sm-start {
    align-content: flex-start !important;
  }

  .align-content-sm-end {
    align-content: flex-end !important;
  }

  .align-content-sm-center {
    align-content: center !important;
  }

  .align-content-sm-between {
    align-content: space-between !important;
  }

  .align-content-sm-around {
    align-content: space-around !important;
  }

  .align-content-sm-stretch {
    align-content: stretch !important;
  }

  .align-self-sm-auto {
    align-self: auto !important;
  }

  .align-self-sm-start {
    align-self: flex-start !important;
  }

  .align-self-sm-end {
    align-self: flex-end !important;
  }

  .align-self-sm-center {
    align-self: center !important;
  }

  .align-self-sm-baseline {
    align-self: baseline !important;
  }

  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }

  .flex-md-column {
    flex-direction: column !important;
  }

  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-md-wrap {
    flex-wrap: wrap !important;
  }

  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-md-fill {
    flex: 1 1 auto !important;
  }

  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-md-start {
    justify-content: flex-start !important;
  }

  .justify-content-md-end {
    justify-content: flex-end !important;
  }

  .justify-content-md-center {
    justify-content: center !important;
  }

  .justify-content-md-between {
    justify-content: space-between !important;
  }

  .justify-content-md-around {
    justify-content: space-around !important;
  }

  .align-items-md-start {
    align-items: flex-start !important;
  }

  .align-items-md-end {
    align-items: flex-end !important;
  }

  .align-items-md-center {
    align-items: center !important;
  }

  .align-items-md-baseline {
    align-items: baseline !important;
  }

  .align-items-md-stretch {
    align-items: stretch !important;
  }

  .align-content-md-start {
    align-content: flex-start !important;
  }

  .align-content-md-end {
    align-content: flex-end !important;
  }

  .align-content-md-center {
    align-content: center !important;
  }

  .align-content-md-between {
    align-content: space-between !important;
  }

  .align-content-md-around {
    align-content: space-around !important;
  }

  .align-content-md-stretch {
    align-content: stretch !important;
  }

  .align-self-md-auto {
    align-self: auto !important;
  }

  .align-self-md-start {
    align-self: flex-start !important;
  }

  .align-self-md-end {
    align-self: flex-end !important;
  }

  .align-self-md-center {
    align-self: center !important;
  }

  .align-self-md-baseline {
    align-self: baseline !important;
  }

  .align-self-md-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }

  .flex-lg-column {
    flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }

  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-lg-fill {
    flex: 1 1 auto !important;
  }

  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-lg-start {
    justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    justify-content: center !important;
  }

  .justify-content-lg-between {
    justify-content: space-between !important;
  }

  .justify-content-lg-around {
    justify-content: space-around !important;
  }

  .align-items-lg-start {
    align-items: flex-start !important;
  }

  .align-items-lg-end {
    align-items: flex-end !important;
  }

  .align-items-lg-center {
    align-items: center !important;
  }

  .align-items-lg-baseline {
    align-items: baseline !important;
  }

  .align-items-lg-stretch {
    align-items: stretch !important;
  }

  .align-content-lg-start {
    align-content: flex-start !important;
  }

  .align-content-lg-end {
    align-content: flex-end !important;
  }

  .align-content-lg-center {
    align-content: center !important;
  }

  .align-content-lg-between {
    align-content: space-between !important;
  }

  .align-content-lg-around {
    align-content: space-around !important;
  }

  .align-content-lg-stretch {
    align-content: stretch !important;
  }

  .align-self-lg-auto {
    align-self: auto !important;
  }

  .align-self-lg-start {
    align-self: flex-start !important;
  }

  .align-self-lg-end {
    align-self: flex-end !important;
  }

  .align-self-lg-center {
    align-self: center !important;
  }

  .align-self-lg-baseline {
    align-self: baseline !important;
  }

  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }

  .flex-xl-column {
    flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-xl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-xl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    justify-content: center !important;
  }

  .justify-content-xl-between {
    justify-content: space-between !important;
  }

  .justify-content-xl-around {
    justify-content: space-around !important;
  }

  .align-items-xl-start {
    align-items: flex-start !important;
  }

  .align-items-xl-end {
    align-items: flex-end !important;
  }

  .align-items-xl-center {
    align-items: center !important;
  }

  .align-items-xl-baseline {
    align-items: baseline !important;
  }

  .align-items-xl-stretch {
    align-items: stretch !important;
  }

  .align-content-xl-start {
    align-content: flex-start !important;
  }

  .align-content-xl-end {
    align-content: flex-end !important;
  }

  .align-content-xl-center {
    align-content: center !important;
  }

  .align-content-xl-between {
    align-content: space-between !important;
  }

  .align-content-xl-around {
    align-content: space-around !important;
  }

  .align-content-xl-stretch {
    align-content: stretch !important;
  }

  .align-self-xl-auto {
    align-self: auto !important;
  }

  .align-self-xl-start {
    align-self: flex-start !important;
  }

  .align-self-xl-end {
    align-self: flex-end !important;
  }

  .align-self-xl-center {
    align-self: center !important;
  }

  .align-self-xl-baseline {
    align-self: baseline !important;
  }

  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}
.float-left {
  float: left !important;
}

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

.float-none {
  float: none !important;
}

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }

  .float-sm-right {
    float: right !important;
  }

  .float-sm-none {
    float: none !important;
  }
}
@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }

  .float-md-right {
    float: right !important;
  }

  .float-md-none {
    float: none !important;
  }
}
@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }

  .float-lg-right {
    float: right !important;
  }

  .float-lg-none {
    float: none !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }

  .float-xl-right {
    float: right !important;
  }

  .float-xl-none {
    float: none !important;
  }
}
.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

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

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

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

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

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

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

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

.m-n3 {
  margin: -1rem !important;
}

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

.m-n5 {
  margin: -3rem !important;
}

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }

  .mt-sm-0,
.my-sm-0 {
    margin-top: 0 !important;
  }

  .mr-sm-0,
.mx-sm-0 {
    margin-right: 0 !important;
  }

  .mb-sm-0,
.my-sm-0 {
    margin-bottom: 0 !important;
  }

  .ml-sm-0,
.mx-sm-0 {
    margin-left: 0 !important;
  }

  .m-sm-1 {
    margin: 0.25rem !important;
  }

  .mt-sm-1,
.my-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mr-sm-1,
.mx-sm-1 {
    margin-right: 0.25rem !important;
  }

  .mb-sm-1,
.my-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-sm-1,
.mx-sm-1 {
    margin-left: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem !important;
  }

  .mt-sm-2,
.my-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mr-sm-2,
.mx-sm-2 {
    margin-right: 0.5rem !important;
  }

  .mb-sm-2,
.my-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-sm-2,
.mx-sm-2 {
    margin-left: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem !important;
  }

  .mt-sm-3,
.my-sm-3 {
    margin-top: 1rem !important;
  }

  .mr-sm-3,
.mx-sm-3 {
    margin-right: 1rem !important;
  }

  .mb-sm-3,
.my-sm-3 {
    margin-bottom: 1rem !important;
  }

  .ml-sm-3,
.mx-sm-3 {
    margin-left: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem !important;
  }

  .mt-sm-4,
.my-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mr-sm-4,
.mx-sm-4 {
    margin-right: 1.5rem !important;
  }

  .mb-sm-4,
.my-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-sm-4,
.mx-sm-4 {
    margin-left: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem !important;
  }

  .mt-sm-5,
.my-sm-5 {
    margin-top: 3rem !important;
  }

  .mr-sm-5,
.mx-sm-5 {
    margin-right: 3rem !important;
  }

  .mb-sm-5,
.my-sm-5 {
    margin-bottom: 3rem !important;
  }

  .ml-sm-5,
.mx-sm-5 {
    margin-left: 3rem !important;
  }

  .p-sm-0 {
    padding: 0 !important;
  }

  .pt-sm-0,
.py-sm-0 {
    padding-top: 0 !important;
  }

  .pr-sm-0,
.px-sm-0 {
    padding-right: 0 !important;
  }

  .pb-sm-0,
.py-sm-0 {
    padding-bottom: 0 !important;
  }

  .pl-sm-0,
.px-sm-0 {
    padding-left: 0 !important;
  }

  .p-sm-1 {
    padding: 0.25rem !important;
  }

  .pt-sm-1,
.py-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pr-sm-1,
.px-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pb-sm-1,
.py-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-sm-1,
.px-sm-1 {
    padding-left: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem !important;
  }

  .pt-sm-2,
.py-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pr-sm-2,
.px-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pb-sm-2,
.py-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-sm-2,
.px-sm-2 {
    padding-left: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem !important;
  }

  .pt-sm-3,
.py-sm-3 {
    padding-top: 1rem !important;
  }

  .pr-sm-3,
.px-sm-3 {
    padding-right: 1rem !important;
  }

  .pb-sm-3,
.py-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pl-sm-3,
.px-sm-3 {
    padding-left: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem !important;
  }

  .pt-sm-4,
.py-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pr-sm-4,
.px-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pb-sm-4,
.py-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-sm-4,
.px-sm-4 {
    padding-left: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem !important;
  }

  .pt-sm-5,
.py-sm-5 {
    padding-top: 3rem !important;
  }

  .pr-sm-5,
.px-sm-5 {
    padding-right: 3rem !important;
  }

  .pb-sm-5,
.py-sm-5 {
    padding-bottom: 3rem !important;
  }

  .pl-sm-5,
.px-sm-5 {
    padding-left: 3rem !important;
  }

  .m-sm-n1 {
    margin: -0.25rem !important;
  }

  .mt-sm-n1,
.my-sm-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-sm-n1,
.mx-sm-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-sm-n1,
.my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-sm-n1,
.mx-sm-n1 {
    margin-left: -0.25rem !important;
  }

  .m-sm-n2 {
    margin: -0.5rem !important;
  }

  .mt-sm-n2,
.my-sm-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-sm-n2,
.mx-sm-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-sm-n2,
.my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-sm-n2,
.mx-sm-n2 {
    margin-left: -0.5rem !important;
  }

  .m-sm-n3 {
    margin: -1rem !important;
  }

  .mt-sm-n3,
.my-sm-n3 {
    margin-top: -1rem !important;
  }

  .mr-sm-n3,
.mx-sm-n3 {
    margin-right: -1rem !important;
  }

  .mb-sm-n3,
.my-sm-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-sm-n3,
.mx-sm-n3 {
    margin-left: -1rem !important;
  }

  .m-sm-n4 {
    margin: -1.5rem !important;
  }

  .mt-sm-n4,
.my-sm-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-sm-n4,
.mx-sm-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-sm-n4,
.my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-sm-n4,
.mx-sm-n4 {
    margin-left: -1.5rem !important;
  }

  .m-sm-n5 {
    margin: -3rem !important;
  }

  .mt-sm-n5,
.my-sm-n5 {
    margin-top: -3rem !important;
  }

  .mr-sm-n5,
.mx-sm-n5 {
    margin-right: -3rem !important;
  }

  .mb-sm-n5,
.my-sm-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-sm-n5,
.mx-sm-n5 {
    margin-left: -3rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mt-sm-auto,
.my-sm-auto {
    margin-top: auto !important;
  }

  .mr-sm-auto,
.mx-sm-auto {
    margin-right: auto !important;
  }

  .mb-sm-auto,
.my-sm-auto {
    margin-bottom: auto !important;
  }

  .ml-sm-auto,
.mx-sm-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }

  .mt-md-0,
.my-md-0 {
    margin-top: 0 !important;
  }

  .mr-md-0,
.mx-md-0 {
    margin-right: 0 !important;
  }

  .mb-md-0,
.my-md-0 {
    margin-bottom: 0 !important;
  }

  .ml-md-0,
.mx-md-0 {
    margin-left: 0 !important;
  }

  .m-md-1 {
    margin: 0.25rem !important;
  }

  .mt-md-1,
.my-md-1 {
    margin-top: 0.25rem !important;
  }

  .mr-md-1,
.mx-md-1 {
    margin-right: 0.25rem !important;
  }

  .mb-md-1,
.my-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-md-1,
.mx-md-1 {
    margin-left: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem !important;
  }

  .mt-md-2,
.my-md-2 {
    margin-top: 0.5rem !important;
  }

  .mr-md-2,
.mx-md-2 {
    margin-right: 0.5rem !important;
  }

  .mb-md-2,
.my-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-md-2,
.mx-md-2 {
    margin-left: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem !important;
  }

  .mt-md-3,
.my-md-3 {
    margin-top: 1rem !important;
  }

  .mr-md-3,
.mx-md-3 {
    margin-right: 1rem !important;
  }

  .mb-md-3,
.my-md-3 {
    margin-bottom: 1rem !important;
  }

  .ml-md-3,
.mx-md-3 {
    margin-left: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem !important;
  }

  .mt-md-4,
.my-md-4 {
    margin-top: 1.5rem !important;
  }

  .mr-md-4,
.mx-md-4 {
    margin-right: 1.5rem !important;
  }

  .mb-md-4,
.my-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-md-4,
.mx-md-4 {
    margin-left: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem !important;
  }

  .mt-md-5,
.my-md-5 {
    margin-top: 3rem !important;
  }

  .mr-md-5,
.mx-md-5 {
    margin-right: 3rem !important;
  }

  .mb-md-5,
.my-md-5 {
    margin-bottom: 3rem !important;
  }

  .ml-md-5,
.mx-md-5 {
    margin-left: 3rem !important;
  }

  .p-md-0 {
    padding: 0 !important;
  }

  .pt-md-0,
.py-md-0 {
    padding-top: 0 !important;
  }

  .pr-md-0,
.px-md-0 {
    padding-right: 0 !important;
  }

  .pb-md-0,
.py-md-0 {
    padding-bottom: 0 !important;
  }

  .pl-md-0,
.px-md-0 {
    padding-left: 0 !important;
  }

  .p-md-1 {
    padding: 0.25rem !important;
  }

  .pt-md-1,
.py-md-1 {
    padding-top: 0.25rem !important;
  }

  .pr-md-1,
.px-md-1 {
    padding-right: 0.25rem !important;
  }

  .pb-md-1,
.py-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-md-1,
.px-md-1 {
    padding-left: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem !important;
  }

  .pt-md-2,
.py-md-2 {
    padding-top: 0.5rem !important;
  }

  .pr-md-2,
.px-md-2 {
    padding-right: 0.5rem !important;
  }

  .pb-md-2,
.py-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-md-2,
.px-md-2 {
    padding-left: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem !important;
  }

  .pt-md-3,
.py-md-3 {
    padding-top: 1rem !important;
  }

  .pr-md-3,
.px-md-3 {
    padding-right: 1rem !important;
  }

  .pb-md-3,
.py-md-3 {
    padding-bottom: 1rem !important;
  }

  .pl-md-3,
.px-md-3 {
    padding-left: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem !important;
  }

  .pt-md-4,
.py-md-4 {
    padding-top: 1.5rem !important;
  }

  .pr-md-4,
.px-md-4 {
    padding-right: 1.5rem !important;
  }

  .pb-md-4,
.py-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-md-4,
.px-md-4 {
    padding-left: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem !important;
  }

  .pt-md-5,
.py-md-5 {
    padding-top: 3rem !important;
  }

  .pr-md-5,
.px-md-5 {
    padding-right: 3rem !important;
  }

  .pb-md-5,
.py-md-5 {
    padding-bottom: 3rem !important;
  }

  .pl-md-5,
.px-md-5 {
    padding-left: 3rem !important;
  }

  .m-md-n1 {
    margin: -0.25rem !important;
  }

  .mt-md-n1,
.my-md-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-md-n1,
.mx-md-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-md-n1,
.my-md-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-md-n1,
.mx-md-n1 {
    margin-left: -0.25rem !important;
  }

  .m-md-n2 {
    margin: -0.5rem !important;
  }

  .mt-md-n2,
.my-md-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-md-n2,
.mx-md-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-md-n2,
.my-md-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-md-n2,
.mx-md-n2 {
    margin-left: -0.5rem !important;
  }

  .m-md-n3 {
    margin: -1rem !important;
  }

  .mt-md-n3,
.my-md-n3 {
    margin-top: -1rem !important;
  }

  .mr-md-n3,
.mx-md-n3 {
    margin-right: -1rem !important;
  }

  .mb-md-n3,
.my-md-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-md-n3,
.mx-md-n3 {
    margin-left: -1rem !important;
  }

  .m-md-n4 {
    margin: -1.5rem !important;
  }

  .mt-md-n4,
.my-md-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-md-n4,
.mx-md-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-md-n4,
.my-md-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-md-n4,
.mx-md-n4 {
    margin-left: -1.5rem !important;
  }

  .m-md-n5 {
    margin: -3rem !important;
  }

  .mt-md-n5,
.my-md-n5 {
    margin-top: -3rem !important;
  }

  .mr-md-n5,
.mx-md-n5 {
    margin-right: -3rem !important;
  }

  .mb-md-n5,
.my-md-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-md-n5,
.mx-md-n5 {
    margin-left: -3rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mt-md-auto,
.my-md-auto {
    margin-top: auto !important;
  }

  .mr-md-auto,
.mx-md-auto {
    margin-right: auto !important;
  }

  .mb-md-auto,
.my-md-auto {
    margin-bottom: auto !important;
  }

  .ml-md-auto,
.mx-md-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }

  .mt-lg-0,
.my-lg-0 {
    margin-top: 0 !important;
  }

  .mr-lg-0,
.mx-lg-0 {
    margin-right: 0 !important;
  }

  .mb-lg-0,
.my-lg-0 {
    margin-bottom: 0 !important;
  }

  .ml-lg-0,
.mx-lg-0 {
    margin-left: 0 !important;
  }

  .m-lg-1 {
    margin: 0.25rem !important;
  }

  .mt-lg-1,
.my-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mr-lg-1,
.mx-lg-1 {
    margin-right: 0.25rem !important;
  }

  .mb-lg-1,
.my-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-lg-1,
.mx-lg-1 {
    margin-left: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem !important;
  }

  .mt-lg-2,
.my-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mr-lg-2,
.mx-lg-2 {
    margin-right: 0.5rem !important;
  }

  .mb-lg-2,
.my-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-lg-2,
.mx-lg-2 {
    margin-left: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem !important;
  }

  .mt-lg-3,
.my-lg-3 {
    margin-top: 1rem !important;
  }

  .mr-lg-3,
.mx-lg-3 {
    margin-right: 1rem !important;
  }

  .mb-lg-3,
.my-lg-3 {
    margin-bottom: 1rem !important;
  }

  .ml-lg-3,
.mx-lg-3 {
    margin-left: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem !important;
  }

  .mt-lg-4,
.my-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mr-lg-4,
.mx-lg-4 {
    margin-right: 1.5rem !important;
  }

  .mb-lg-4,
.my-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-lg-4,
.mx-lg-4 {
    margin-left: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem !important;
  }

  .mt-lg-5,
.my-lg-5 {
    margin-top: 3rem !important;
  }

  .mr-lg-5,
.mx-lg-5 {
    margin-right: 3rem !important;
  }

  .mb-lg-5,
.my-lg-5 {
    margin-bottom: 3rem !important;
  }

  .ml-lg-5,
.mx-lg-5 {
    margin-left: 3rem !important;
  }

  .p-lg-0 {
    padding: 0 !important;
  }

  .pt-lg-0,
.py-lg-0 {
    padding-top: 0 !important;
  }

  .pr-lg-0,
.px-lg-0 {
    padding-right: 0 !important;
  }

  .pb-lg-0,
.py-lg-0 {
    padding-bottom: 0 !important;
  }

  .pl-lg-0,
.px-lg-0 {
    padding-left: 0 !important;
  }

  .p-lg-1 {
    padding: 0.25rem !important;
  }

  .pt-lg-1,
.py-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pr-lg-1,
.px-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pb-lg-1,
.py-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-lg-1,
.px-lg-1 {
    padding-left: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem !important;
  }

  .pt-lg-2,
.py-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pr-lg-2,
.px-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pb-lg-2,
.py-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-lg-2,
.px-lg-2 {
    padding-left: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem !important;
  }

  .pt-lg-3,
.py-lg-3 {
    padding-top: 1rem !important;
  }

  .pr-lg-3,
.px-lg-3 {
    padding-right: 1rem !important;
  }

  .pb-lg-3,
.py-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pl-lg-3,
.px-lg-3 {
    padding-left: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem !important;
  }

  .pt-lg-4,
.py-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pr-lg-4,
.px-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pb-lg-4,
.py-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-lg-4,
.px-lg-4 {
    padding-left: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem !important;
  }

  .pt-lg-5,
.py-lg-5 {
    padding-top: 3rem !important;
  }

  .pr-lg-5,
.px-lg-5 {
    padding-right: 3rem !important;
  }

  .pb-lg-5,
.py-lg-5 {
    padding-bottom: 3rem !important;
  }

  .pl-lg-5,
.px-lg-5 {
    padding-left: 3rem !important;
  }

  .m-lg-n1 {
    margin: -0.25rem !important;
  }

  .mt-lg-n1,
.my-lg-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-lg-n1,
.mx-lg-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-lg-n1,
.my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-lg-n1,
.mx-lg-n1 {
    margin-left: -0.25rem !important;
  }

  .m-lg-n2 {
    margin: -0.5rem !important;
  }

  .mt-lg-n2,
.my-lg-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-lg-n2,
.mx-lg-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-lg-n2,
.my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-lg-n2,
.mx-lg-n2 {
    margin-left: -0.5rem !important;
  }

  .m-lg-n3 {
    margin: -1rem !important;
  }

  .mt-lg-n3,
.my-lg-n3 {
    margin-top: -1rem !important;
  }

  .mr-lg-n3,
.mx-lg-n3 {
    margin-right: -1rem !important;
  }

  .mb-lg-n3,
.my-lg-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-lg-n3,
.mx-lg-n3 {
    margin-left: -1rem !important;
  }

  .m-lg-n4 {
    margin: -1.5rem !important;
  }

  .mt-lg-n4,
.my-lg-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-lg-n4,
.mx-lg-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-lg-n4,
.my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-lg-n4,
.mx-lg-n4 {
    margin-left: -1.5rem !important;
  }

  .m-lg-n5 {
    margin: -3rem !important;
  }

  .mt-lg-n5,
.my-lg-n5 {
    margin-top: -3rem !important;
  }

  .mr-lg-n5,
.mx-lg-n5 {
    margin-right: -3rem !important;
  }

  .mb-lg-n5,
.my-lg-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-lg-n5,
.mx-lg-n5 {
    margin-left: -3rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mt-lg-auto,
.my-lg-auto {
    margin-top: auto !important;
  }

  .mr-lg-auto,
.mx-lg-auto {
    margin-right: auto !important;
  }

  .mb-lg-auto,
.my-lg-auto {
    margin-bottom: auto !important;
  }

  .ml-lg-auto,
.mx-lg-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }

  .mt-xl-0,
.my-xl-0 {
    margin-top: 0 !important;
  }

  .mr-xl-0,
.mx-xl-0 {
    margin-right: 0 !important;
  }

  .mb-xl-0,
.my-xl-0 {
    margin-bottom: 0 !important;
  }

  .ml-xl-0,
.mx-xl-0 {
    margin-left: 0 !important;
  }

  .m-xl-1 {
    margin: 0.25rem !important;
  }

  .mt-xl-1,
.my-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mr-xl-1,
.mx-xl-1 {
    margin-right: 0.25rem !important;
  }

  .mb-xl-1,
.my-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-xl-1,
.mx-xl-1 {
    margin-left: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem !important;
  }

  .mt-xl-2,
.my-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mr-xl-2,
.mx-xl-2 {
    margin-right: 0.5rem !important;
  }

  .mb-xl-2,
.my-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-xl-2,
.mx-xl-2 {
    margin-left: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem !important;
  }

  .mt-xl-3,
.my-xl-3 {
    margin-top: 1rem !important;
  }

  .mr-xl-3,
.mx-xl-3 {
    margin-right: 1rem !important;
  }

  .mb-xl-3,
.my-xl-3 {
    margin-bottom: 1rem !important;
  }

  .ml-xl-3,
.mx-xl-3 {
    margin-left: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem !important;
  }

  .mt-xl-4,
.my-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mr-xl-4,
.mx-xl-4 {
    margin-right: 1.5rem !important;
  }

  .mb-xl-4,
.my-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-xl-4,
.mx-xl-4 {
    margin-left: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem !important;
  }

  .mt-xl-5,
.my-xl-5 {
    margin-top: 3rem !important;
  }

  .mr-xl-5,
.mx-xl-5 {
    margin-right: 3rem !important;
  }

  .mb-xl-5,
.my-xl-5 {
    margin-bottom: 3rem !important;
  }

  .ml-xl-5,
.mx-xl-5 {
    margin-left: 3rem !important;
  }

  .p-xl-0 {
    padding: 0 !important;
  }

  .pt-xl-0,
.py-xl-0 {
    padding-top: 0 !important;
  }

  .pr-xl-0,
.px-xl-0 {
    padding-right: 0 !important;
  }

  .pb-xl-0,
.py-xl-0 {
    padding-bottom: 0 !important;
  }

  .pl-xl-0,
.px-xl-0 {
    padding-left: 0 !important;
  }

  .p-xl-1 {
    padding: 0.25rem !important;
  }

  .pt-xl-1,
.py-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pr-xl-1,
.px-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pb-xl-1,
.py-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-xl-1,
.px-xl-1 {
    padding-left: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem !important;
  }

  .pt-xl-2,
.py-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pr-xl-2,
.px-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pb-xl-2,
.py-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-xl-2,
.px-xl-2 {
    padding-left: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem !important;
  }

  .pt-xl-3,
.py-xl-3 {
    padding-top: 1rem !important;
  }

  .pr-xl-3,
.px-xl-3 {
    padding-right: 1rem !important;
  }

  .pb-xl-3,
.py-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pl-xl-3,
.px-xl-3 {
    padding-left: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem !important;
  }

  .pt-xl-4,
.py-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pr-xl-4,
.px-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pb-xl-4,
.py-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-xl-4,
.px-xl-4 {
    padding-left: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem !important;
  }

  .pt-xl-5,
.py-xl-5 {
    padding-top: 3rem !important;
  }

  .pr-xl-5,
.px-xl-5 {
    padding-right: 3rem !important;
  }

  .pb-xl-5,
.py-xl-5 {
    padding-bottom: 3rem !important;
  }

  .pl-xl-5,
.px-xl-5 {
    padding-left: 3rem !important;
  }

  .m-xl-n1 {
    margin: -0.25rem !important;
  }

  .mt-xl-n1,
.my-xl-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-xl-n1,
.mx-xl-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-xl-n1,
.my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-xl-n1,
.mx-xl-n1 {
    margin-left: -0.25rem !important;
  }

  .m-xl-n2 {
    margin: -0.5rem !important;
  }

  .mt-xl-n2,
.my-xl-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-xl-n2,
.mx-xl-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-xl-n2,
.my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-xl-n2,
.mx-xl-n2 {
    margin-left: -0.5rem !important;
  }

  .m-xl-n3 {
    margin: -1rem !important;
  }

  .mt-xl-n3,
.my-xl-n3 {
    margin-top: -1rem !important;
  }

  .mr-xl-n3,
.mx-xl-n3 {
    margin-right: -1rem !important;
  }

  .mb-xl-n3,
.my-xl-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-xl-n3,
.mx-xl-n3 {
    margin-left: -1rem !important;
  }

  .m-xl-n4 {
    margin: -1.5rem !important;
  }

  .mt-xl-n4,
.my-xl-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-xl-n4,
.mx-xl-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-xl-n4,
.my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xl-n4,
.mx-xl-n4 {
    margin-left: -1.5rem !important;
  }

  .m-xl-n5 {
    margin: -3rem !important;
  }

  .mt-xl-n5,
.my-xl-n5 {
    margin-top: -3rem !important;
  }

  .mr-xl-n5,
.mx-xl-n5 {
    margin-right: -3rem !important;
  }

  .mb-xl-n5,
.my-xl-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-xl-n5,
.mx-xl-n5 {
    margin-left: -3rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mt-xl-auto,
.my-xl-auto {
    margin-top: auto !important;
  }

  .mr-xl-auto,
.mx-xl-auto {
    margin-right: auto !important;
  }

  .mb-xl-auto,
.my-xl-auto {
    margin-bottom: auto !important;
  }

  .ml-xl-auto,
.mx-xl-auto {
    margin-left: auto !important;
  }
}
.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace !important;
}

.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-left {
  text-align: left !important;
}

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }

  .text-sm-right {
    text-align: right !important;
  }

  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }

  .text-md-right {
    text-align: right !important;
  }

  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }

  .text-lg-right {
    text-align: right !important;
  }

  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }

  .text-xl-right {
    text-align: right !important;
  }

  .text-xl-center {
    text-align: center !important;
  }
}
.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: normal !important;
}

.font-weight-bold {
  font-weight: bold !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #FEFEFE !important;
}

.text-primary {
  color: #2A6296 !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #193b5a !important;
}

.text-secondary {
  color: #21394E !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: #0a1218 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

.text-danger {
  color: #E53935 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #b61b17 !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(254, 254, 254, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
*::before,
*::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a:not(.btn) {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }

  tr,
img {
    page-break-inside: avoid;
  }

  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
h3 {
    page-break-after: avoid;
  }

  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }

  .container {
    min-width: 992px !important;
  }

  .navbar {
    display: none;
  }

  .badge {
    border: 1px solid #000;
  }

  .table {
    border-collapse: collapse !important;
  }
  .table td,
.table th {
    background-color: #FEFEFE !important;
  }

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

  .table-dark {
    color: inherit;
  }
  .table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
    border-color: gray;
  }

  .table .thead-dark th {
    color: inherit;
    border-color: gray;
  }
}
/**
 * @file
 * Styles for Bootstrap Barrio affix effect.
 */
.affix {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 1035;
  left: 0;
}

/**
 * @file
 * Visual styles for comments in Barrio.
 */
.alert-wrapper {
  position: fixed;
  bottom: 0;
  left: 0;
  max-width: 100%;
  width: 97%;
  z-index: 9999;
  margin-left: 1em;
}

.toast-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
}

/**
 * @file
 * Bootstrap Barrio specific styling for the Book module.
 */
.book-navigation .menu {
  border-top: 1px solid gray;
}

.book-navigation .book-pager {
  border-bottom: 1px solid gray;
  border-top: 1px solid gray;
  margin: 0;
}

/**
 * @file
 * Styling for the Book module.
 */
.book-navigation .menu {
  padding-bottom: 0;
  padding-top: 1em;
}

.book-navigation .book-pager {
  margin: 0;
  overflow: auto;
  padding: 0.5em 0;
}

.book-pager__item {
  display: inline-block;
  list-style-type: none;
  vertical-align: top;
}

.book-pager__item--previous {
  text-align: left;
  /* LTR */
  width: 45%;
}

[dir=rtl] .book-pager__item--previous {
  float: right;
  text-align: right;
}

.book-pager__item--center {
  text-align: center;
  width: 8%;
}

.book-pager__item--next {
  float: right;
  /* LTR */
  text-align: right;
  /* LTR */
  width: 45%;
}

[dir=rtl] .book-pager__item--next {
  float: left;
  text-align: left;
}

/**
 * @file
 * Styles for Bootstrap Barrio's breadcrumbs.
 */
#block-breadcrumbs {
  display: block;
  width: 100%;
}

.breadcrumb {
  font-size: 0.929em 0.875rem;
}

.region-breadcrumb {
  padding: 0 15px 0.25em;
  width: 100%;
}

/**
 * @file
 * Visual styles for comments in Bartik.
 */
/* This is required to win over specificity of #content h2 */
#content .comment-wrapper h2 {
  margin-bottom: 1em;
}

#content .comment-wrapper h2.comment-form__title {
  margin-bottom: 1em;
}

.field-node--comment {
  font-size: 0.875rem;
}

.comment {
  margin-bottom: 1.25em;
  vertical-align: top;
  display: table;
}

[dir=rtl] .comment {
  direction: rtl;
}

.comment__meta {
  padding: 0 30px 0 0;
  /* LTR */
  font-size: 1rem;
}

[dir=rtl] .comment__meta {
  padding: 0 0 0 30px;
}

.comment__attribution img {
  border: 1px solid gray;
}

/* This is required to win over specificity of .field--type-image img */
.comment .field--name-user-picture img {
  margin: 0;
}

.comment__author .username {
  white-space: nowrap;
}

.comment__author {
  margin: 4px 0;
  line-height: 1.2;
}

.comment__time,
.comment__permalink {
  margin-bottom: 4px;
  color: #68696b;
  font-size: 0.875rem;
  line-height: 1.2;
  padding: 0 0.5em 0 0;
  /* LTR */
}

[dir=rtl] .comment__time,
.comment__permalink {
  padding: 0 0 0 0.5em;
}

.comment__permalink {
  font-size: 0.875rem;
  line-height: 1.2;
}

.comment__content:before {
  content: "";
  position: absolute;
  right: 100%;
  /* LTR */
  top: 1.25em;
  border-top: 1.25em solid transparent;
  border-right: 1.25em solid gray;
  /* LTR */
  border-bottom: 1.25em solid transparent;
}

[dir=rtl] .comment__content:before {
  right: auto;
  left: 100%;
  border-right: none;
  border-left: 1.25em solid gray;
}

.comment__content:after {
  content: "";
  position: absolute;
  right: 100%;
  /* LTR */
  top: 1.25em;
  border-top: 1.25em solid transparent;
  border-right: 1.25em solid #FEFEFE;
  /* LTR */
  border-bottom: 1.25em solid transparent;
  margin-right: -1px;
  /* LTR */
}

[dir=rtl] .comment__content:after {
  right: auto;
  left: 100%;
  border-right: none;
  border-left: 1.25em solid #FEFEFE;
  margin-right: 0;
  margin-left: -1px;
}

.comment__content h3 {
  margin-top: 0.94em;
  margin-bottom: 0.45em;
  font-size: 1.25rem;
}

.comment__content nav {
  padding-top: 1px;
}

.indented {
  margin-left: 40px;
  /* LTR */
}

[dir=rtl] .indented {
  margin-right: 40px;
  margin-left: 0;
}

.comment .links {
  padding: 0 0 0.25em 0;
}

.comment .links-inline span {
  padding: 0 0.5em 0 0;
  /* LTR */
  font-size: 1rem;
}

[dir=rtl] .comment .links-inline span {
  padding: 0 0 0 0.5em;
}

.comment--unpublished {
  margin-right: 5px;
  /* LTR */
  padding: 5px 2px 5px 5px;
  /* LTR */
  background: #6b99c0;
}

[dir=rtl] .comment--unpublished {
  margin-left: 5px;
  margin-right: 0;
  padding: 5px 5px 5px 2px;
}

/**
 * @todo: unpublished nodes have class .node--unpublished.
 * change this to .comment--unpublished.
 */
.unpublished .comment-text .comment-arrow {
  border-left: 1px solid #6b99c0;
  border-right: 1px solid #6b99c0;
}

.unpublished {
  padding: 1.25em 1.25em 0;
}

.comment-footer {
  display: table-row;
}

.comment--unpublished .comment__text:after,
.node--unpublished .comment__text:after {
  border-right-color: #6b99c0;
  /* LTR */
}

[dir=rtl] .comment--unpublished .comment__content:after,
[dir=rtl] .node--unpublished .comment__content:after {
  border-left-color: #6b99c0;
}

/**
 * @file
 * Contextual links styles for Bootstrap Barrio.
 */
.contextual-links a {
  border-bottom: none;
  text-shadow: 0 0 0;
}

/**
 * @file
 * Collapsible details.
 *
 * @see collapse.js
 * @see http://nicolasgallagher.com/css-background-image-hacks/
 */
details {
  border: 1px solid gray;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

details > .details-wrapper {
  padding: 0.5em 1.5em;
}

/* @todo Regression: The summary of uncollapsible details are no longer
     vertically aligned with the .details-wrapper in browsers without native
     details support. */
summary {
  cursor: pointer;
  padding: 0.2em 0.5em;
}

/**
 * @file
 * Visual styles for Bartik's dropbutton component.
 */
.js .dropbutton-wrapper .dropbutton-widget {
  /* This is required to win over specifity of .js td .dropbutton-widget */
  position: relative;
}

.js .dropbutton-widget {
  border: 1px solid;
  border-color: #e4e4e4 #d2d2d2 #b4b4b4 #d2d2d2;
  background-color: #fff;
  background-image: -webkit-linear-gradient(top, #f3f3f3, #e8e8e8);
  background-image: linear-gradient(to bottom, #f3f3f3, #e8e8e8);
  color: #3a3a3a;
  cursor: pointer;
  text-align: center;
  margin: 0.125em 0;
  border-radius: 1em;
  overflow: hidden;
}

.js .dropbutton-widget:hover {
  border-color: #e4e4e4 #d2d2d2 #b4b4b4 #d2d2d2;
}

.js .dropbutton-widget .button {
  border: none;
  margin: 0;
  padding: 0.32em 1em;
  background: transparent none;
}

.js .dropbutton-multiple .dropbutton-widget .dropbutton-action a {
  margin-right: 0;
  /* LTR */
}

[dir=rtl].js .dropbutton-multiple .dropbutton-widget .dropbutton-action a {
  margin-left: 0;
}

.js .dropbutton .secondary-action {
  border-top-color: #ccc;
}

.js .dropbutton-toggle button {
  background-color: #e8e8e8;
  background-image: -webkit-linear-gradient(top, #e8e8e8, #d2d2d2);
  background-image: linear-gradient(to bottom, #e8e8e8, #d2d2d2);
}

.js .dropbutton-toggle .dropbutton-arrow:hover {
  background: #ccc;
}

.js .dropbutton a {
  color: #3a3a3a;
  border-bottom: 0 none;
}

.js .dropbutton .dropbutton-action:hover,
.js .dropbutton a:hover {
  background: #dedede;
  border-bottom: 0 none;
}

/**
 * @file
 * General styles for dropbuttons.
 */
.js .dropbutton-widget {
  background-color: white;
  border: 1px solid #cccccc;
}

.js .dropbutton-widget:hover {
  border-color: #b8b8b8;
}

.dropbutton .dropbutton-action > * {
  padding: 0.1em 0.5em;
  white-space: nowrap;
}

.dropbutton .secondary-action {
  border-top: 1px solid #e8e8e8;
}

.dropbutton-multiple .dropbutton {
  border-right: 1px solid #e8e8e8;
  /* LTR */
}

[dir=rtl] .dropbutton-multiple .dropbutton {
  border-left: 1px solid #e8e8e8;
  border-right: 0 none;
}

.dropbutton-multiple .dropbutton .dropbutton-action > * {
  margin-right: 0.25em;
  /* LTR */
}

[dir=rtl] .dropbutton-multiple .dropbutton .dropbutton-action > * {
  margin-left: 0.25em;
  margin-right: 0;
}

.js td .dropbutton-multiple {
  padding-right: 10em;
  margin-right: 2em;
  max-width: 100%;
}

.js td .dropbutton-wrapper {
  min-height: 2em;
}

.js .dropbutton-wrapper,
.js .dropbutton-widget {
  display: block;
  position: relative;
}

.js td .dropbutton-widget {
  position: absolute;
}

/**
 * @file
 * Feed icon styles for Bootstrap Barrio.
 */
.feed-icon {
  border-bottom: none;
  display: inline-block;
  padding: 1rem 0 0 0;
}

/**
 * @file
 * Visual styles for Bootstrap Barrio's field components.
 */
.field--type-entity-reference {
  margin: 0 0 1.2rem;
}
.field--type-entity-reference div.field__label {
  display: inline;
}

.field--type-entity-reference .field__label {
  font-weight: normal;
  margin: 0;
  padding-right: 0.3rem;
  /* LTR */
}

[dir=rtl] .field--type-entity-reference .field__label {
  padding-left: 0.3rem;
  padding-right: 0;
}

.field--type-entity-reference ul.links {
  padding: 0;
  margin: 0;
  list-style: none;
}

.field--type-entity-reference ul.links li {
  float: left;
  /* LTR */
  padding: 0 1rem 0 0;
  /* LTR */
  white-space: nowrap;
}

[dir=rtl] .field--type-entity-reference ul.links li {
  padding: 0 0 0 1rem;
  float: right;
}

@media all and (min-width: 560px) {
  .node .field--type-image {
    float: left;
    /* LTR */
    margin: 0 1rem 0 0;
    /* LTR */
  }

  [dir=rtl] .node .field--type-image {
    float: right;
    margin: 0 0 0 1rem;
  }

  .node .field--type-image + .field--type-image {
    clear: both;
  }
}
.field--type-image img,
.field--name-field-user-picture img {
  margin: 0 0 1rem;
}

.field--type-image a {
  border-bottom: none;
}

.field--name-field-tags {
  margin: 0 0 1.2rem;
}

.field--name-field-tags .field__label {
  font-weight: normal;
  margin: 0;
  padding-right: 5px;
  /* LTR */
}

[dir=rtl] .field--name-field-tags .field__label {
  padding-left: 5px;
  padding-right: 0;
}

.field--name-field-tags .field__label,
.field--name-field-tags ul.links {
  font-size: 0.875rem;
}

.node--view-mode-teaser .field--name-field-tags .field__label,
.node--view-mode-teaser .field--name-field-tags ul.links {
  font-size: 0.875rem;
}

.field--name-field-tags ul.links {
  padding: 0;
  margin: 0;
}

.field--name-field-tags ul.links li {
  float: left;
  /* LTR */
  padding: 0 1rem 0 0;
  /* LTR */
  white-space: nowrap;
}

[dir=rtl] .field--name-field-tags ul.links li {
  padding: 0 0 0 1rem;
  float: right;
}

.field--label-inline .field__label,
.field--label-inline .field__item {
  display: inline-block;
}

.field--name-field-labs-view-reference,
.field--name-field-view-ref-attachment {
  margin-bottom: 1rem;
  border-bottom: 3px solid #DCDCDC;
}

/**
 * @file
 * Default style for file module.
 */
/* File icons.*/
.file {
  padding-left: 1.5rem;
  /* LTR */
  display: inline-block;
  min-height: 1rem;
  background-repeat: no-repeat;
  background-position: left center;
  /* LTR */
}

[dir=rtl] .file {
  padding-left: inherit;
  padding-right: 1.5rem;
  background-position: right center;
}

.file--general,
.file--application-octet-stream {
  background-image: url(../img/icons/application-octet-stream.png);
}

.file--package-x-generic {
  background-image: url(../img/icons/package-x-generic.png);
}

.file--x-office-spreadsheet {
  background-image: url(../img/icons/x-office-spreadsheet.png);
}

.file--x-office-document {
  background-image: url(../img/icons/x-office-document.png);
}

.file--x-office-presentation {
  background-image: url(../img/icons/x-office-presentation.png);
}

.file--text-x-script {
  background-image: url(../img/icons/text-x-script.png);
}

.file--text-html {
  background-image: url(../img/icons/text-html.png);
}

.file--text-plain {
  background-image: url(../img/icons/text-plain.png);
}

.file--application-pdf {
  background-image: url(../img/icons/application-pdf.png);
}

.file--application-x-executable {
  background-image: url(../img/icons/application-x-executable.png);
}

.file--audio {
  background-image: url(../img/icons/audio-x-generic.png);
}

.file--video {
  background-image: url(../img/icons/video-x-generic.png);
}

.file--text {
  background-image: url(../img/icons/text-x-generic.png);
}

.file--image {
  background-image: url(../img/icons/image-x-generic.png);
}

/**
 * @file
 * Visual styles for Bootstrap Barrio's form components.
 */
.form-required::after {
  content: "";
  vertical-align: super;
  display: inline-block;
  background-image: url(../../img/required.svg);
  background-repeat: no-repeat;
  background-size: calc(1.5em + 0.75rem + 2px)/2 calc(1.5em + 0.75rem + 2px)/2;
  width: calc(1.5em + 0.75rem + 2px)/2;
  height: calc(1.5em + 0.75rem + 2px)/2;
  margin: 0 0.3em;
}

form .filter-wrapper {
  padding-left: 0;
  padding-right: 0;
  margin-left: 1rem;
  margin-right: 1rem;
}

form .form-type-textarea {
  margin-bottom: 0;
}

/* ------------------ Header ------------------ */
body #navbar-top {
  width: 100%;
  clear: both;
  padding: 0.25rem 0;
  background-color: #FEFEFE;
  text-align: center;
}
body #navbar-top div.row {
  padding: 0 0;
}
body #navbar-top #block-toptoolbox, body #navbar-top .region-secondary-menu, body #navbar-top div.row {
  width: 100%;
}
body #navbar-top h4 {
  display: inline;
  font-size: 16px;
  font-weight: 700;
}
@media all and (max-width: 767px) {
  body #navbar-top h4 {
    font-size: 12px;
  }
}
body #navbar-top p {
  margin-bottom: 0;
}
body #navbar-top span.col-8 {
  text-align: center;
}
body #navbar-top i, body #navbar-top .fa {
  font-size: 27px;
}
body #navbar-top a.inactive {
  color: silver;
}
body #navbar-top span.centered {
  text-align: center;
}

/* Primary Header */
header#header {
  background-image: url("../img/earthblack_opacity_sm_crop.png"), linear-gradient(#21394E, #2A6296 15%, #21394E 95%);
  background-repeat: no-repeat, repeat-x;
  background-position: 15% top, left top;
  background-size: top middle, contain;
  /* Mobile Nav Bars / Hamburger */
}
@media all and (min-width: 992px) {
  header#header {
    padding-bottom: 1rem;
  }
}
header#header.container {
  max-width: 100%;
}
header#header button.navbar-toggler {
  border: none;
  padding: 0 0;
  margin-right: 1em;
  color: #FEFEFE;
}
@media all and (min-width: 768px) {
  header#header button.navbar-toggler {
    display: none;
  }
}
header#header i.fa-bars {
  color: #FEFEFE;
}
header#header h4.subtitle {
  font-family: "Apple Symbols", "Open Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 300;
  display: inline-block;
  color: #FEFEFE;
  opacity: 0.7;
  padding-left: 0.5rem;
}
@media all and (max-width: 1063px) and (min-width: 769px) {
  header#header h4.subtitle {
    font-size: 1.3rem;
  }
}
@media all and (min-width: 801px) {
  header#header h4.subtitle {
    margin-top: 1.5rem;
  }
}
@media all and (max-width: 800px) {
  header#header h4.subtitle {
    margin-top: 0.5rem;
  }
}
@media all and (max-width: 767px) {
  header#header h4.subtitle {
    display: none;
  }
}
@media all and (max-width: 499px) {
  header#header h4.subtitle {
    font-size: 1.1rem;
    left: 1.5rem;
  }
}
@media all and (max-width: 767px) {
  header#header #CollapsingNavbar {
    position: relative;
    top: 1.5rem;
  }
}
header#header .region-header-brand {
  position: relative;
}
header#header .region-header-brand .col-1, header#header .region-header-brand .col-2, header#header .region-header-brand .col-3, header#header .region-header-brand .col-4, header#header .region-header-brand .col-5, header#header .region-header-brand .col-6,
header#header .region-header-brand .col-7, header#header .region-header-brand .col-8, header#header .region-header-brand .col-9, header#header .region-header-brand .col-10, header#header .region-header-brand .col-11, header#header .region-header-brand .col-12 {
  padding-left: 0;
  padding-right: 0;
}
@media all and (min-width: 1200px) {
  header#header .region-header-brand {
    left: -1.5rem;
  }
}
@media all and (min-width: 992px) and (max-width: 1199px) {
  header#header .region-header-brand {
    left: -1rem;
  }
}
@media all and (min-width: 768px) and (max-width: 991px) {
  header#header .region-header-brand {
    left: 3rem;
  }
}
@media all and (max-width: 580px) {
  header#header .region-header-brand {
    margin-left: -1rem !important;
  }
}
header#header .region-header-brand .navbar-brand {
  margin-top: 0.75rem;
  padding-bottom: 0;
}
header#header .region-header-brand .navbar-brand img {
  max-width: 150px;
  height: auto;
}
header#header .region-header-brand .navbar-brand span {
  display: inline-block;
}
header#header .region-header-brand img#site-logo {
  display: inline-block;
  color: #FEFEFE;
  margin-top: 1rem;
  max-width: 200%;
  width: 110%;
  height: auto;
}
@media all and (min-width: 1200px) {
  header#header .region-header-brand img#site-logo {
    width: 100%;
    position: relative;
    left: 1rem;
  }
}
@media all and (max-width: 768px) {
  header#header .region-header-brand img#site-logo {
    margin-top: 1rem;
    width: 100%;
    min-width: 75px;
  }
}
@media all and (min-width: 1280px) {
  header#header .region-header-brand .navbar-brand {
    position: relative;
    top: 0.25rem;
  }
}
header#header .region-header-brand .navbar-brand h1 {
  display: inline;
}
header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
  color: #FEFEFE;
  font-family: "Russo One", "Helvetica Neue", Arial, sans-serif;
  letter-spacing: 3px;
  font-size: 32px !important;
  font-weight: bold;
  margin-left: 0.5rem;
}
@media all and (min-width: 1200px) {
  header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
    margin-top: 0.75rem;
  }
}
@media all and (max-width: 1199px) {
  header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
    margin-top: 1rem;
  }
}
@media all and (max-width: 767px) and (min-width: 401px) {
  header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
    margin-left: 0.5rem;
    margin-top: 0.33rem;
  }
}
@media all and (max-width: 400px) {
  header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
    margin-left: 0.5rem;
    margin-top: 0.33rem;
  }
}
header#header .region-header-brand span.branding {
  padding-left: 0;
}
header#header .region-header-brand span.branding div {
  display: inline-block;
  padding: 0 0;
}
header#header .region-header-brand span.branding span {
  padding: 0 0;
}
header#header .region-header-brand .site-name-slogan {
  font-family: "Apple Symbols", "Open Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  color: #FEFEFE;
  letter-spacing: 5px;
  font-size: 1.33rem;
  font-weight: 300;
  margin-top: 0;
  margin-left: 0.5rem;
  display: block !important;
  position: relative;
  bottom: 0.5rem;
}
@media all and (min-width: 1280px) {
  header#header .region-header-brand .site-name-slogan {
    margin-top: 0.25rem;
  }
}
@media all and (max-width: 767px) {
  header#header .region-header-brand .site-name-slogan {
    margin-left: 0.25rem;
  }
}
@media all and (max-width: 400px) {
  header#header .region-header-brand .site-name-slogan {
    margin-left: 0.5rem;
  }
}
header#header #block-topmenu,
header#header .region-primary-menu {
  display: inline-block;
}
header#header #block-topmenu ul,
header#header .region-primary-menu ul {
  border-bottom: 1px solid red;
  padding-left: 0;
  z-index: 100;
}
header#header #block-topmenu ul li a,
header#header .region-primary-menu ul li a {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  font-size: 1.25rem;
}
header#header #block-topmenu ul li.nav-item a,
header#header .region-primary-menu ul li.nav-item a {
  color: #FEFEFE;
}
header#header #block-topmenu ul li.nav-item a:hover,
header#header .region-primary-menu ul li.nav-item a:hover {
  color: #309B9C;
}
header#header #block-topmenu ul li.dropdown-item a,
header#header .region-primary-menu ul li.dropdown-item a {
  color: #000;
}
header#header #block-topmenu ul li.dropdown-item a.active,
header#header .region-primary-menu ul li.dropdown-item a.active {
  color: #FEFEFE;
}

/*
 * MEDIA QUERIES
 */
@media all and (max-width: 767px) {
  #header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
  }

  .navbarCtl {
    margin-left: 1rem;
  }
  #primary-main-menu-sm-block {
    margin-top: 1rem;
  }

  .col-1 {
    padding-left: 0;
  }
}
@media all and (min-width: 768px) {
  nav.bg-primary {
    padding-top: 0.5rem;
  }
}
@media all and (max-width: 767px) {
  span.top-main-menu {
    display: none;
  }
}
@media (max-width: 33.9em) {
  .navbar-toggleable-xs .navbar-nav .nav-item + .nav-item,
.navbar-toggleable-xs.collapse.in .navbar-nav .nav-item {
    margin-left: 0;
    float: none;
  }
}
@media (max-width: 47.9em) {
  .navbar-toggleable-sm .navbar-nav .nav-item + .nav-item,
.navbar-toggleable-xs.collapse.in .navbar-nav .nav-item {
    margin-left: 0;
    float: none;
  }
}
/**
 * @file
 * Styles for the help block.
 */
.block-help {
  border: 1px solid gray;
  padding: 0 1.5rem;
  margin-bottom: 2rem;
}

/**
 * @file
 * Visual styles for icons.
 */
.icon-help {
  background: url(/../../img/help.png) 0 50% no-repeat;
  /* LTR */
  padding: 1px 0 1px 1.5rem;
  /* LTR */
}

[dir=rtl] .icon-help {
  background-position: 100% 50%;
  padding: 1px 1.5rem 1px 0;
}

.feed-icon {
  background: url(/../../img/feed.svg) no-repeat;
  overflow: hidden;
  text-indent: -9999px;
  display: block;
  width: 1rem;
  height: 1rem;
}

i.fa-search {
  color: #FFFFFF;
  font-size: 20px;
}

/**
 * @file
 * Styles for Bootstrap Barrio's image buttons.
 */
.image-button.is-disabled:hover,
.image-button.is-disabled:active,
.image-button.is-disabled:focus,
.image-button.is-disabled {
  background: transparent;
  opacity: 0.5;
  cursor: default;
}

/**
 * @file
 * Basic styling for comment module.
 */
/**
 * Indent threaded comments.
 */
.indented {
  margin-left: 1.5rem;
  /* LTR */
}

[dir=rtl] .indented {
  margin-left: 0;
  margin-right: 1.5rem;
}

/**
 * @file
 * Visual styles for Bootstrap Barrio's item list.
 */
.item-list ul {
  list-style: none;
  margin: 0 0 0.75rem 0;
  padding: 0;
  /* LTR */
}

[dir=rtl] .item-list ul {
  padding: 0;
}

.item-list ul li {
  /* This is needed to reset styles in item-list.theme.css */
  margin: 0;
  padding: 0.75rem 1.25rem 0 0;
  /* LTR */
}

[dir=rtl] .item-list ul li {
  /* This is needed to reset [dir="rtl"] styles in item-list.theme.css */
  margin: 0;
  padding: 0.75rem 0 0 1.25rem;
}

.item-list .item-list__comma-list,
.item-list .item-list__comma-list li,
[dir=rtl] .item-list .item-list__comma-list,
[dir=rtl] .item-list .item-list__comma-list li {
  padding: 0;
}

/**
 * @file
 * List group.
 * A list of links, grouped together.
 */
.list-group__link {
  border-top: 1px solid gray;
  padding: 0.75rem 0 0;
}

.list-group__description {
  margin: 0 0 0.75rem;
}

/**
 * @file
 * Visual styles for Bootstrap Barrio's node component.
 */
.node__content {
  font-size: 1rem;
  margin-top: 1rem;
}

/* View mode teaser styles. */
.node--view-mode-teaser {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}

.node--view-mode-teaser h2 {
  margin-top: 0;
  padding-top: 0.5em;
}

.node--view-mode-teaser.node--sticky {
  background: #f9f9f9;
  background: rgba(0, 0, 0, 0.024);
  border: 1px solid gray;
  padding: 0 1rem 1rem;
}

.node--view-mode-teaser .node__content {
  clear: none;
  font-size: 1rem;
  line-height: 1.5;
}

/* Node metadata styles. */
.node__meta {
  font-size: 0.875rem;
  margin-bottom: -5px;
}

.node__meta .field--name-field-user-picture img {
  float: left;
  /* LTR */
  margin: 1px 1rem 0 0;
  /* LTR */
}

[dir=rtl] .node__meta .field--name-field-user-picture img {
  float: right;
  margin-left: 1rem;
  margin-right: 0;
}

/* Node links styles. */
.node__links {
  text-align: right;
  /* LTR */
  font-size: 1rem;
}

[dir=rtl] .node__links {
  text-align: left;
}

/* Unpublished node styles. */
.node--unpublished {
  padding: 1rem 1rem 0;
}

.node--unpublished .comment-text .comment-arrow {
  border-left: 1px solid #fff4f4;
  border-right: 1px solid #fff4f4;
}

.node-preview-container {
  background: #d1e8f5;
  background-image: -webkit-linear-gradient(top, #d1e8f5, #d3e8f4);
  background-image: linear-gradient(to bottom, #d1e8f5, #d3e8f4);
  font-family: Arial, sans-serif;
  box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.3333);
  position: fixed;
  z-index: 499;
  width: 100%;
  padding: 10px;
}

.node-preview-backlink {
  background-color: #419ff1;
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, -webkit-linear-gradient(top, #419ff1, #1076d5);
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, linear-gradient(to bottom, #419ff1, #1076d5);
  /* LTR */
  border: 1px solid #0048c8;
  border-radius: 0.4em;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4);
  color: #fff;
  font-size: 0.9em;
  line-height: normal;
  margin: 0;
  padding: 4px 1em 4px 0.6em;
  /* LTR */
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
}

[dir=rtl] .node-preview-backlink {
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, -webkit-linear-gradient(top, #419ff1, #1076d5);
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, linear-gradient(to bottom, #419ff1, #1076d5);
  padding: 4px 0.6em 4px 1em;
  float: right;
}

.node-preview-backlink:focus,
.node-preview-backlink:hover {
  background-color: #419cf1;
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, -webkit-linear-gradient(top, #59abf3, #2a90ef);
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, linear-gradient(to bottom, #59abf3, #2a90ef);
  /* LTR */
  border: 1px solid #0048c8;
  text-decoration: none;
  color: #fff;
}

[dir=rtl] .node-preview-backlink:focus,
[dir=rtl] .node-preview-backlink:hover {
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, -webkit-linear-gradient(top, #59abf3, #2a90ef);
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, linear-gradient(to bottom, #59abf3, #2a90ef);
}

.node-preview-backlink:active {
  background-color: #0e69be;
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, -webkit-linear-gradient(top, #0e69be, #2a93ef);
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, linear-gradient(to bottom, #0e69be, #2a93ef);
  /* LTR */
  border: 1px solid #0048c8;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.25);
}

[dir=rtl] .node-preview-backlink:active {
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, -webkit-linear-gradient(top, #0e69be, #2a93ef);
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, linear-gradient(to bottom, #0e69be, #2a93ef);
}

.node-preview-backlink::before {
  content: "";
  width: 10px;
  display: inline-block;
}

/**
 * @file
 * Styles for Bootstrap Barrio page.
 */
.responsive-video {
  width: 100%;
  height: 100%;
  position: absolute;
}

div.field--name-field-sandboxed-youtube-video {
  position: relative;
  padding-bottom: 60%;
  overflow: hidden;
}

/**
 * @file
 * The visual styles for Bootstrap Barrio's search form(s).
 */
.search-block-form,
.region-search-area {
  position: absolute;
  display: inline;
}
@media all and (min-width: 768px) {
  .search-block-form,
.region-search-area {
    right: 1rem;
  }
}

input[type=search] {
  box-sizing: border-box;
  padding-right: 0;
  margin-right: 0 !important;
  border-color: dimgray;
}

button.navbar-toggler {
  margin-top: 1rem;
  font-size: 24px;
}

#search-block-form {
  padding: 0 0;
  display: inline;
  float: right;
  background: transparent;
}
#search-block-form button {
  border: 0;
}
#search-block-form input.form-control {
  display: none;
  right: 4rem;
  height: 42px;
}
@media all and (min-width: 1060px) {
  #search-block-form input.form-control {
    border-radius: 4px;
    border-collapse: separate;
    padding: 6px 12px 6px 12px;
  }
}
@media all and (max-width: 1059px) and (min-width: 992px) {
  #search-block-form input.form-control {
    padding: 6px 0 6px 12px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    margin-right: 0;
  }
}
@media all and (min-width: 992px) {
  #search-block-form input.form-control {
    min-height: 1px;
  }
}
@media all and (max-width: 991px) {
  #search-block-form input.form-control {
    max-width: 150px;
    margin-right: 0.5em;
    border-radius: 4px;
    padding: 4px 4px;
  }
}
#search-block-form input.form-search {
  right: 3rem;
}
#search-block-form input.form-search, #search-block-form input.form-control {
  border-radius: 6px;
  position: absolute;
  top: 2.25rem;
}

#navbar-top .search-block-form button, #navbar-top .search-block-form i {
  color: black;
}

#search-block-form,
#top-search-box {
  background-color: transparent;
  color: #FEFEFE;
  padding-top: 0;
}
#search-block-form button,
#top-search-box button {
  border: 0px solid transparent;
  border: none;
  margin-top: 2rem !important;
}
#search-block-form .fa-search,
#top-search-box .fa-search {
  color: inherit;
  font-size: 28px;
  font-weight: 300;
}

/* Search Results Page */
body.path-search #content_section form.search-form {
  width: 75%;
  margin-left: 12.5%;
  margin-bottom: 2rem;
}
body.path-search #content_section form.search-form #edit-submit {
  max-width: 100px;
}
body.path-search #content_section form.search-form fieldset {
  padding: 0 0;
  width: inherit;
}
body.path-search div.form-group,
body.path-search fieldset.form-type-search,
body.path-search input[type=search] {
  padding-left: 0;
}

.head-search {
  padding: 0 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media all and (min-width: 992px) {
  div.searchable {
    position: absolute;
    right: 1em;
    z-index: 10000;
  }
}

@media all and (max-width: 767px) {
  #search-block-form {
    display: none;
  }
}

@media all and (max-width: 767px) {
  nav.topmenubar {
    background-color: black;
  }
  nav.topmenubar form {
    width: 75%;
  }
}
/**
 * @file
 * Visual styles for the Shortcut action link in Bootstrap Barrio.
 */
.shortcut-wrapper {
  margin: 2.2em 0 1.1em 0;
  /* Same as usual .page-title margin. */
}

.shortcut-wrapper .page-title {
  float: left;
  /* LTR */
  margin: 0;
}

[dir=rtl] .shortcut-wrapper .page-title {
  float: right;
}

.shortcut-action {
  border-bottom: none;
  margin-left: 0.5em;
  /* LTR */
  padding-top: 0.35em;
}

[dir=rtl] .shortcut-action {
  margin-left: 0;
  margin-right: 0.5em;
}

.shortcut-action:hover,
.shortcut-action:active,
.shortcut-action:focus {
  border-bottom: none;
}

/* ------------------ Sidebar ----------------- */
.sidebar {
  padding: 1rem 0.5rem 0.5rem 1rem;
  background-color: #309B9C;
}
.sidebar div.contextual {
  z-index: 10000;
}
@media all and (max-width: 767px) {
  .sidebar {
    display: none;
  }
}
.sidebar nav.title-test h2 {
  text-transform: capitalize;
}
.sidebar .block {
  border: none;
  padding-left: 5px;
  padding-right: 10px;
  margin: 0 0 1rem;
}
.sidebar .block .content {
  font-size: 1rem;
  line-height: 1.5;
}
.sidebar h2 {
  margin: 0 0 0.5rem;
  border-bottom: 1px solid gray;
  padding-bottom: 5px;
  text-shadow: 0 1px 0 #FEFEFE;
  font-size: 24px;
  line-height: 1.2;
}
.sidebar ul.menu {
  padding-inline-start: 0;
}
.sidebar nav ul.nav,
.sidebar nav ul.menu {
  margin: 0 0;
  padding-left: 0;
  background-color: #FEFEFE;
  border-radius: 4px;
}
@media all and (min-width: 868px) {
  .sidebar li {
    padding: 0.75rem 1.25rem;
  }
}
@media all and (max-width: 867px) and (min-width: 768px) {
  .sidebar li {
    padding: 0.33rem 1rem;
  }
}
.sidebar li.nav-item {
  width: 100%;
  max-width: 100%;
}
.sidebar li.nav-item a {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  color: #2A6296;
}
.sidebar li.nav-item:hover {
  background-color: #1d4366;
}
.sidebar li.nav-item:hover a {
  color: #FEFEFE;
}
.sidebar li.nav-item.menu-item--active-trail, .sidebar li.nav-item.is-active, .sidebar li.nav-item.active {
  background-color: #2A6296;
}
.sidebar li.nav-item.menu-item--active-trail a, .sidebar li.nav-item.is-active a, .sidebar li.nav-item.active a {
  font-weight: bold;
  color: #FEFEFE;
}
.sidebar li.nav-item a.is-active {
  font-weight: bold;
  color: #FEFEFE;
}
.sidebar .dropdown-menu {
  border: 1px solid #ced4da;
  border-radius: 8px;
}
.sidebar .dropdown-item {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.sidebar .dropdown-item:active, .sidebar .dropdown-item.active {
  background: #d4dae1;
}
.sidebar .side-nav li.active a, .sidebar .side-nav a.is-active {
  color: #FEFEFE;
}

.sidebar-first .side-nav {
  top: 1rem;
  position: -webkit-sticky;
  /* Safari */
  border-radius: 7px;
}
.sidebar-first .side-nav nav.block-menu,
.sidebar-first .side-nav .sidebar-menu {
  padding: 0px 10px 0px 5px;
}
.sidebar-first .side-nav nav.block-menu h2,
.sidebar-first .side-nav .sidebar-menu h2 {
  background-color: white;
  padding: 15px;
}
.sidebar-first .side-nav nav.block-menu .nav-link,
.sidebar-first .side-nav .sidebar-menu .nav-link {
  padding: 0.25rem 0;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item {
  border-top: 1px solid rgba(0, 0, 0, 0.125);
  display: inline;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item a,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item a,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item a,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item a,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item a,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item a,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item a,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item a {
  display: block;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover {
  background-color: #1d4366;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover a:active, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover a:hover, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover a:visited, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover a:link,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover a:active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover a:hover,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover a:visited,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover a:link,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover a:active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover a:link,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover a:active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover a:link {
  font-weight: bold;
  color: #FEFEFE !important;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active {
  color: #FEFEFE;
  font-weight: bold;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active a:active, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active a:hover, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active a:visited, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active a:link, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active a:active, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active a:hover, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active a:visited, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active a:link,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active a:active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active a:hover,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active a:visited,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active a:link,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active a:active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active a:hover,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active a:visited,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active a:link,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active a:active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active a:link,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active a:active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active a:link,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active a:active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active a:link,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active a:active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active a:link {
  color: #FEFEFE !important;
}

body.toolbar-fixed .sidebar-first .side-nav,
body.user-logged-in .sidebar-first .side-nav {
  top: 6rem;
}

/**
 * @file
 * Footer Styling.
 */
footer.site-footer {
  font-family: Tahoma, Arial, Verdana, sans-serif;
  padding: 2rem 0;
  background-color: #2A6296;
  color: #FEFEFE;
  background-image: url("../img/footerback.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}
@media all and (min-width: 992px) {
  footer.site-footer {
    font-size: 1.2rem;
  }
}
@media all and (max-width: 991px) {
  footer.site-footer {
    font-size: 1.1rem;
  }
}
@media all and (min-width: 768px) {
  footer.site-footer {
    border-top: 3rem solid #21394E;
  }
}
@media all and (max-width: 767px) {
  footer.site-footer {
    border-top: 8px solid #21394E;
  }
}
footer.site-footer a {
  color: #FEFEFE;
  font-weight: 300;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
footer.site-footer .layout-container {
  padding: 0 1rem;
}
footer.site-footer .nav-item {
  display: inline;
}
footer.site-footer .nav-link {
  display: inline-block;
}
footer.site-footer #lastUpdate {
  font-weight: 300;
  text-align: center;
  font-size: 1rem;
}
footer.site-footer #footer-requirements {
  text-align: center;
  position: relative;
  margin: 0 auto;
  padding-bottom: 1rem;
  border-bottom: 1px solid red;
}
footer.site-footer #footer-requirements strong {
  font-family: Tahoma, Arial, Verdana, sans-serif;
}
@media all and (min-width: 992px) {
  footer.site-footer #footer-requirements strong {
    font-size: 1.4rem;
  }
}
@media all and (max-width: 991px) {
  footer.site-footer #footer-requirements strong {
    font-size: 1.1rem;
  }
}
footer.site-footer #footer-requirements a {
  font-family: Tahoma, Arial, Verdana, sans-serif;
}
@media all and (min-width: 900px) {
  footer.site-footer #footer-requirements {
    max-width: 50%;
  }
}
@media all and (max-width: 899px) and (min-width: 580px) {
  footer.site-footer #footer-requirements {
    max-width: 55%;
  }
}
@media all and (max-width: 579px) {
  footer.site-footer #footer-requirements {
    max-width: 100%;
    padding: 0.5rem 0.5rem;
  }
}
footer.site-footer .site-footer__bottom {
  border-top: 0;
  margin-top: 0;
  padding-top: 0.5rem;
}
footer.site-footer .site-footer__bottom .region {
  margin-top: 0;
}
footer.site-footer .site-footer__bottom .region-footer-bottom nav.block-menu {
  position: relative;
  margin: 0 auto;
}
footer.site-footer .site-footer__bottom .region-footer-bottom nav.block-menu li:after {
  content: " | ";
}
footer.site-footer .site-footer__bottom .region-footer-bottom nav.block-menu li:last-child:after {
  content: "";
}

.featured-bottom {
  background: #21394E;
  margin-bottom: 0;
}
.featured-bottom aside {
  width: inherit;
  max-width: 100%;
  margin: 0 0;
}
@media all and (max-width: 767px) {
  .featured-bottom .menu--quick-links {
    position: relative;
    margin: 0 auto;
  }
  .featured-bottom .menu--quick-links ul {
    text-align: center;
    margin-top: 0.5rem;
  }
  .featured-bottom .menu--quick-links ul li {
    color: #FEFEFE;
  }
}
@media all and (max-width: 767px) and (min-width: 400px) {
  .featured-bottom .menu--quick-links ul li {
    width: 33%;
  }
}
@media all and (max-width: 767px) and (max-width: 399px) {
  .featured-bottom .menu--quick-links ul li {
    width: 50%;
  }
}
@media all and (max-width: 767px) {
  .featured-bottom .menu--quick-links ul li a {
    color: #FEFEFE;
  }
}
@media all and (max-width: 767px) {
  .featured-bottom .menu--quick-links ul li:after {
    content: "" !important;
  }
}
@media all and (min-width: 768px) {
  .featured-bottom {
    display: none;
  }
}

/**
 * @file
 * Styles for the skip link.
 */
.skip-link {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 50;
  background: #495057;
  font-size: 1rem;
  line-height: 1.5;
  padding: 1px 1rem 2px;
  border-radius: 0 0 0.3rem 0.3rem;
  border-bottom-width: 0;
  outline: 0;
}

.skip-link.visually-hidden.focusable:focus {
  position: absolute !important;
  color: #FEFEFE;
}

/**
 * @file
 * Styles for Bootstrap Barrio's tables.
 */
.sticky-header thead th {
  vertical-align: bottom;
  border-bottom: 2px solid gray;
}

.sticky-header th {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid gray;
}

/**
 * @file
 * Visual styles for table drag.
 */
tr.drag {
  background-color: #fffff0;
}

tr.drag-previous {
  background-color: #ffd;
}

body div.tabledrag-changed-warning {
  margin-bottom: 0.5rem;
}

/**
 * @file
 * Table select behavior.
 *
 * @see tableselect.js
 */
tr.selected td {
  background: #ffc;
}

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

[dir=rtl] td.checkbox,
[dir=rtl] th.checkbox {
  /* This is required to win over specificity of [dir="rtl"] td */
  text-align: center;
}

/**
 * @file
 * Table sort indicator.
 */
th.is-active img {
  display: inline;
}

td.is-active {
  background-color: #dee2e6;
}

/**
 * @file
 * Tablesort indicator styles.
 */
.tablesort {
  width: 14px;
  height: 14px;
  vertical-align: top;
  margin: 1px 0 0 5px;
}

.tablesort--asc {
  background-image: url(/core/misc/icons/ffffff/twistie-down.svg);
}

.tablesort--desc {
  background-image: url(/core/misc/icons/ffffff/twistie-up.svg);
}

/**
 * @file
 * Theme styling for tabs.
 */
nav.tabs {
  margin-bottom: 1rem;
}

/**
 * @file
 * Visual styles for a resizable textarea.
 */
.form-textarea-wrapper textarea {
  display: block;
  margin: 0;
  width: 100%;
  box-sizing: border-box;
}

/**
 * @file
 * Visual styles for Bartik's ui-widget component.
 */
/**
 * @file
 * Styles for Bartik's modal windows
 */
.ui-widget-overlay {
  background: #000;
  opacity: 0.7;
}

.ui-dialog {
  border-radius: 0;
}

.ui-dialog input,
.ui-dialog select,
.ui-dialog textarea {
  font-size: 1rem;
}

.ui-dialog .button {
  background-color: #fff;
  background-image: -webkit-linear-gradient(top, #f3f3f3, #e8e8e8);
  background-image: linear-gradient(to bottom, #f3f3f3, #e8e8e8);
  border: 1px solid #e4e4e4;
  border-bottom-color: #b4b4b4;
  border-left-color: #d2d2d2;
  border-right-color: #d2d2d2;
  color: #3a3a3a;
  cursor: pointer;
  font-size: 1rem;
  font-weight: normal;
  text-align: center;
  padding: 0.25em 1.063em;
  border-radius: 1em;
}

/**
 * @file
 * Theme styling for user module.
 */
/* Visual styling for the Password strength indicator */
.password-strength__meter {
  margin-top: 0.5em;
  background-color: #e9ecef;
}

.password-strength__indicator {
  background-color: #28a745;
  -webkit-transition: width 0.5s ease-out;
  transition: width 0.5s ease-out;
}

.password-strength__indicator.is-weak {
  background-color: #E53935;
}

.password-strength__indicator.is-fair {
  background-color: #ffc107;
}

.password-strength__indicator.is-good {
  background-color: #17a2b8;
}

.password-strength__indicator.is-strong {
  background-color: #28a745;
}

.password-confirm,
.password-field,
.password-strength,
.password-confirm-match {
  width: 55%;
}

.password-suggestions {
  padding: 0.2em 0.5em;
  margin: 0.7em 0;
  max-width: 34.7em;
  border: 1px solid gray;
}

.password-suggestions ul {
  margin-bottom: 0;
}

.confirm-parent,
.password-parent {
  clear: left;
  /* LTR */
  margin: 0;
  max-width: 33em;
  overflow: hidden;
}

[dir=rtl] .confirm-parent,
[dir=rtl] .password-parent {
  clear: right;
}

/* Styling for the status indicator of the passwords match test.  */
.password-confirm .ok {
  color: #28a745;
  font-weight: bold;
}

.password-confirm .error {
  color: #E53935;
  font-weight: bold;
}

/* Login page stype */
.page-user-login main .region-content,
.page-user-password main .region-content {
  max-width: 400px;
  background: white;
  padding: 1rem 1rem;
  margin: 0 auto;
  border-radius: 0.3rem;
}

/**
 * @file
 * Vertical tabs component.
 */
/* Vertical Tabs Reset */
.vertical-tabs__menu {
  margin: -1px 0 -1px;
  /* LTR */
  padding: 0;
}

[dir=rtl] .vertical-tabs__menu {
  margin-left: 0;
  margin-right: -1em;
  /* This is required to win specificity over [dir="rtl"] .region-content ul */
  padding: 0;
}

/**
 * @file
 * Vertical Tabs.
 */
.vertical-tabs {
  margin: 0;
  /* LTR */
  border: 1px solid gray;
  display: flex;
  flex-direction: row;
  font-size: 0.875rem;
}

[dir=rtl] .vertical-tabs {
  flex-direction: row-reverse;
  margin-left: 0;
  margin-right: 0;
}

.vertical-tabs__menu {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  /* LTR */
  width: 15em;
  margin: 0;
  /* LTR */
  padding: 0;
  border-top: 1px solid gray;
  list-style: none;
}

[dir=rtl] .vertical-tabs__menu {
  margin-left: 0;
  margin-right: -15em;
}

.vertical-tabs__pane {
  margin: 0;
  border: 0;
}

.vertical-tabs__pane > summary {
  display: none;
}

/* Layout of each tab. */
.vertical-tabs__menu-item {
  border: 1px solid gray;
  border-top: 0;
  background: #eee;
}

.vertical-tabs__menu-item a {
  display: block;
  padding: 0.5em 0.6em;
  text-decoration: none;
}

.vertical-tabs__menu-item a:focus .vertical-tabs__menu-item-title,
.vertical-tabs__menu-item a:active .vertical-tabs__menu-item-title,
.vertical-tabs__menu-item a:hover .vertical-tabs__menu-item-title {
  text-decoration: underline;
}

.vertical-tabs__menu-item a:hover {
  outline: 1px dotted;
}

.vertical-tabs__menu-item.is-selected {
  border-right-width: 0;
  /* LTR */
  background-color: #FEFEFE;
}

[dir=rtl] .vertical-tabs__menu-item.is-selected {
  border-left-width: 0;
  border-right-width: 1px;
}

.vertical-tabs__menu-item.is-selected .vertical-tabs__menu-item-title {
  color: #000;
}

.vertical-tabs__menu-item-summary {
  display: block;
  margin-bottom: 0;
  line-height: normal;
}

/**
 * @file
 * Styling for Views in Bartik.
 */
/* Tab styles */
.views-displays .tabs .open > a {
  border-radius: 0.3rem 0.3rem 0 0;
}

.views-displays .tabs .open > a:hover,
.views-displays .tabs .open > a:focus {
  color: #2A6296;
}

.views-displays .secondary .form-submit {
  font-size: 0.875rem;
}

/* Tabs action list styles */
.views-displays .tabs .action-list {
  padding: 0;
}

/* Contextual filter options styles */
.views-filterable-options .filterable-option:nth-of-type(even) .form-type-checkbox {
  background-color: #F9F9F9;
}

/* Views action dropbutton styles */
.views-ui-display-tab-actions .dropbutton .form-submit {
  color: #309B9C;
}

.views-ui-display-tab-actions .dropbutton .form-submit:hover,
.views-ui-display-tab-actions .dropbutton .form-submit:focus {
  color: #2A6296;
}

/* Generic Views Fields */
div.view-header {
  margin-top: 0.5rem;
}

div.views-view-grid.horizontal {
  width: 100%;
}

.node--view-mode-teaser .field--name-node-title {
  clear: both;
}
.node--view-mode-teaser .field--name-node-link {
  margin: 1rem 0;
}
.node--view-mode-teaser .field--name-field-image {
  margin-right: 0;
}

.view-content .field--name-node-title h2 {
  font-size: 26px;
}

.views-row {
  width: 100%;
}

/* DATA */
.block-views .view-data-products-by-lab .view-content > div {
  width: 100%;
}
.block-views .view-data-products-by-lab .view-content .row {
  border-bottom: 1px dotted #E6E6E6;
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem;
}

.view-data-products-by-lab .views-view-grid .row > div {
  margin-bottom: 2rem;
  box-shadow: 0 10px 8px #EBF3FA;
}
.view-data-products-by-lab .field--name-field-teaser-summary-plain {
  margin-bottom: 1rem;
}

@media all and (max-width: 768px) {
  .views-element-container {
    padding: 0 0;
  }
  .views-element-container div.view {
    padding: 0.25rem 0.25rem;
  }
}
/* MIXINS */
.btn-primary a {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-primary a:hover {
  color: #FEFEFE;
  background-color: #224e78;
  border-color: #1f486e;
}
.btn-primary a:focus, .btn-primary a.focus {
  color: #FEFEFE;
  background-color: #224e78;
  border-color: #1f486e;
  box-shadow: 0 0 0 0.2rem rgba(74, 121, 166, 0.5);
}
.btn-primary a.disabled, .btn-primary a:disabled {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-primary a:not(:disabled):not(.disabled):active, .btn-primary a:not(:disabled):not(.disabled).active, .show > .btn-primary a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1f486e;
  border-color: #1c4164;
}
.btn-primary a:not(:disabled):not(.disabled):active:focus, .btn-primary a:not(:disabled):not(.disabled).active:focus, .show > .btn-primary a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(74, 121, 166, 0.5);
}

.btn-secondary a {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-secondary a:hover {
  color: #FEFEFE;
  background-color: #162533;
  border-color: #121f2a;
}
.btn-secondary a:focus, .btn-secondary a.focus {
  color: #FEFEFE;
  background-color: #162533;
  border-color: #121f2a;
  box-shadow: 0 0 0 0.2rem rgba(66, 87, 104, 0.5);
}
.btn-secondary a.disabled, .btn-secondary a:disabled {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-secondary a:not(:disabled):not(.disabled):active, .btn-secondary a:not(:disabled):not(.disabled).active, .show > .btn-secondary a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #121f2a;
  border-color: #0e1821;
}
.btn-secondary a:not(:disabled):not(.disabled):active:focus, .btn-secondary a:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(66, 87, 104, 0.5);
}

.btn-success a {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success a:hover {
  color: #FEFEFE;
  background-color: #218838;
  border-color: #1e7e34;
}
.btn-success a:focus, .btn-success a.focus {
  color: #FEFEFE;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}
.btn-success a.disabled, .btn-success a:disabled {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success a:not(:disabled):not(.disabled):active, .btn-success a:not(:disabled):not(.disabled).active, .show > .btn-success a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1e7e34;
  border-color: #1c7430;
}
.btn-success a:not(:disabled):not(.disabled):active:focus, .btn-success a:not(:disabled):not(.disabled).active:focus, .show > .btn-success a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info a {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info a:hover {
  color: #FEFEFE;
  background-color: #138496;
  border-color: #117a8b;
}
.btn-info a:focus, .btn-info a.focus {
  color: #FEFEFE;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}
.btn-info a.disabled, .btn-info a:disabled {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info a:not(:disabled):not(.disabled):active, .btn-info a:not(:disabled):not(.disabled).active, .show > .btn-info a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #117a8b;
  border-color: #10707f;
}
.btn-info a:not(:disabled):not(.disabled):active:focus, .btn-info a:not(:disabled):not(.disabled).active:focus, .show > .btn-info a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning a {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning a:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}
.btn-warning a:focus, .btn-warning a.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.btn-warning a.disabled, .btn-warning a:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning a:not(:disabled):not(.disabled):active, .btn-warning a:not(:disabled):not(.disabled).active, .show > .btn-warning a.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}
.btn-warning a:not(:disabled):not(.disabled):active:focus, .btn-warning a:not(:disabled):not(.disabled).active:focus, .show > .btn-warning a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger a {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-danger a:hover {
  color: #FEFEFE;
  background-color: #d8201c;
  border-color: #cd1e1a;
}
.btn-danger a:focus, .btn-danger a.focus {
  color: #FEFEFE;
  background-color: #d8201c;
  border-color: #cd1e1a;
  box-shadow: 0 0 0 0.2rem rgba(233, 87, 83, 0.5);
}
.btn-danger a.disabled, .btn-danger a:disabled {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-danger a:not(:disabled):not(.disabled):active, .btn-danger a:not(:disabled):not(.disabled).active, .show > .btn-danger a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #cd1e1a;
  border-color: #c11d19;
}
.btn-danger a:not(:disabled):not(.disabled):active:focus, .btn-danger a:not(:disabled):not(.disabled).active:focus, .show > .btn-danger a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(233, 87, 83, 0.5);
}

.btn-light a {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light a:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}
.btn-light a:focus, .btn-light a.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}
.btn-light a.disabled, .btn-light a:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light a:not(:disabled):not(.disabled):active, .btn-light a:not(:disabled):not(.disabled).active, .show > .btn-light a.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}
.btn-light a:not(:disabled):not(.disabled):active:focus, .btn-light a:not(:disabled):not(.disabled).active:focus, .show > .btn-light a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark a {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark a:hover {
  color: #FEFEFE;
  background-color: #23272b;
  border-color: #1d2124;
}
.btn-dark a:focus, .btn-dark a.focus {
  color: #FEFEFE;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 87, 93, 0.5);
}
.btn-dark a.disabled, .btn-dark a:disabled {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark a:not(:disabled):not(.disabled):active, .btn-dark a:not(:disabled):not(.disabled).active, .show > .btn-dark a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1d2124;
  border-color: #171a1d;
}
.btn-dark a:not(:disabled):not(.disabled):active:focus, .btn-dark a:not(:disabled):not(.disabled).active:focus, .show > .btn-dark a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 87, 93, 0.5);
}

.btn-outline-primary a {
  color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary a:hover {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary a:focus, .btn-outline-primary a.focus {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}
.btn-outline-primary a.disabled, .btn-outline-primary a:disabled {
  color: #2A6296;
  background-color: transparent;
}
.btn-outline-primary a:not(:disabled):not(.disabled):active, .btn-outline-primary a:not(:disabled):not(.disabled).active, .show > .btn-outline-primary a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary a:not(:disabled):not(.disabled):active:focus, .btn-outline-primary a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}

.btn-outline-secondary a {
  color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary a:hover {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary a:focus, .btn-outline-secondary a.focus {
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}
.btn-outline-secondary a.disabled, .btn-outline-secondary a:disabled {
  color: #21394E;
  background-color: transparent;
}
.btn-outline-secondary a:not(:disabled):not(.disabled):active, .btn-outline-secondary a:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary a:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}

.btn-outline-success a {
  color: #28a745;
  border-color: #28a745;
}
.btn-outline-success a:hover {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success a:focus, .btn-outline-success a.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}
.btn-outline-success a.disabled, .btn-outline-success a:disabled {
  color: #28a745;
  background-color: transparent;
}
.btn-outline-success a:not(:disabled):not(.disabled):active, .btn-outline-success a:not(:disabled):not(.disabled).active, .show > .btn-outline-success a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success a:not(:disabled):not(.disabled):active:focus, .btn-outline-success a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info a {
  color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info a:hover {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info a:focus, .btn-outline-info a.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.btn-outline-info a.disabled, .btn-outline-info a:disabled {
  color: #17a2b8;
  background-color: transparent;
}
.btn-outline-info a:not(:disabled):not(.disabled):active, .btn-outline-info a:not(:disabled):not(.disabled).active, .show > .btn-outline-info a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info a:not(:disabled):not(.disabled):active:focus, .btn-outline-info a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning a {
  color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning a:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning a:focus, .btn-outline-warning a.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.btn-outline-warning a.disabled, .btn-outline-warning a:disabled {
  color: #ffc107;
  background-color: transparent;
}
.btn-outline-warning a:not(:disabled):not(.disabled):active, .btn-outline-warning a:not(:disabled):not(.disabled).active, .show > .btn-outline-warning a.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning a:not(:disabled):not(.disabled):active:focus, .btn-outline-warning a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger a {
  color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger a:hover {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger a:focus, .btn-outline-danger a.focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}
.btn-outline-danger a.disabled, .btn-outline-danger a:disabled {
  color: #E53935;
  background-color: transparent;
}
.btn-outline-danger a:not(:disabled):not(.disabled):active, .btn-outline-danger a:not(:disabled):not(.disabled).active, .show > .btn-outline-danger a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger a:not(:disabled):not(.disabled):active:focus, .btn-outline-danger a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}

.btn-outline-light a {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light a:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light a:focus, .btn-outline-light a.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light a.disabled, .btn-outline-light a:disabled {
  color: #f8f9fa;
  background-color: transparent;
}
.btn-outline-light a:not(:disabled):not(.disabled):active, .btn-outline-light a:not(:disabled):not(.disabled).active, .show > .btn-outline-light a.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light a:not(:disabled):not(.disabled):active:focus, .btn-outline-light a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark a {
  color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark a:hover {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark a:focus, .btn-outline-dark a.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.btn-outline-dark a.disabled, .btn-outline-dark a:disabled {
  color: #343a40;
  background-color: transparent;
}
.btn-outline-dark a:not(:disabled):not(.disabled):active, .btn-outline-dark a:not(:disabled):not(.disabled).active, .show > .btn-outline-dark a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark a:not(:disabled):not(.disabled):active:focus, .btn-outline-dark a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.header-gradient {
  background: -webkit-linear-gradient(#6c757d, #2A6296, #6c757d);
  background: -o-linear-gradient(#6c757d, #2A6296, #6c757d);
  background: -moz-linear-gradient(#6c757d, #2A6296, #6c757d);
  background: linear-gradient(#6c757d, #2A6296, #6c757d);
}

pre {
  white-space: pre-wrap;
}

.field--name-field-laboratories .field__item:not(:last-child):after,
.field--name-field-missions .field__item:not(:last-child):after {
  content: ", ";
}

div.featured-top {
  width: 100%;
  margin: 0 0;
  overflow: hidden;
}
div.featured-top aside.featured-top__inner {
  padding: 0 0;
  max-width: 100%;
}
div.featured-top #block-featuredimagebanner {
  width: 100%;
}
div.featured-top div.content {
  padding: 0 0;
}
.region-featured-top div {
  display: inline;
}
.region-featured-top #block-featuredimagebanner p {
  margin-bottom: 0;
}
.region-featured-top #block-featuredimagebanner p:nth-child(2) {
  display: none;
}

#block-homepagebanner p {
  margin-bottom: 0 !important;
}

nav#toolbar-bar,
.toolbar .toolbar-tray,
#toolbar-administration,
#toolbar-administration-tray {
  z-index: 500000;
}

div.topical-menu {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  font-size: 1.2rem;
  background-color: #2A6296;
  background-image: url("../img/topicsGradient.jpg");
  background-size: contain;
  background-repeat: repeat-x;
  max-height: 120px;
}
div.topical-menu .views-field-field-topic-teaser-image .field-content.inactive,
div.topical-menu .views-field-field-hover-topic-icon .field-content.inactive {
  display: none;
}
@media all and (min-width: 1200px) {
  div.topical-menu {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}
@media all and (min-width: 992px) and (max-width: 1199px) {
  div.topical-menu {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}
@media all and (min-width: 768px) and (max-width: 991px) {
  div.topical-menu {
    margin-top: 0;
    padding-top: 4px;
    padding-bottom: 4px;
  }
}
@media all and (max-width: 767px) {
  div.topical-menu {
    padding-top: 4px;
    padding-bottom: 4px;
  }
}

.region-topical-menu a {
  color: #FEFEFE;
  font-weight: 700;
}
.region-topical-menu a:hover {
  color: #DCDCDC;
}
.region-topical-menu .views-field-name {
  margin: 0 0;
}
@media all and (min-width: 1200px) {
  .region-topical-menu .views-field-name {
    padding-top: 0.5rem;
  }
}
.region-topical-menu .views-element-container {
  width: 100%;
}
@media all and (min-width: 769px) {
  .region-topical-menu .views-element-container {
    padding: 0 10%;
  }
}
.region-topical-menu .views-row {
  width: 16.66667%;
  text-align: center;
}
.region-topical-menu .views-row .views-field views-field-field-hover-topic-icon,
.region-topical-menu .views-row .views-field-field-topic-teaser-image {
  max-height: 50px;
}
.region-topical-menu .views-row .views-field views-field-field-hover-topic-icon img,
.region-topical-menu .views-row .views-field-field-topic-teaser-image img {
  max-width: 50px;
  max-height: 50px !important;
}
@media all and (max-width: 767px) {
  .region-topical-menu .views-row .views-field-field-topic-teaser-image {
    padding: 0.25rem 0.5rem;
  }
  .region-topical-menu .views-row .views-field-name {
    display: none;
  }
}
.region-topical-menu .views-field-field-topic-teaser-image {
  display: inline;
}

.block-views .views-element-container {
  padding: 0px;
}

.block-views-blockorganizational-units-block-1 h2,
.block-views-blockorganizational-units-block-1 .viewsreference--view-title,
.block-views-blocklaboratories-block-1 h2,
.block-views-blocklaboratories-block-1 .viewsreference--view-title,
.field--type-viewsreference h2,
.field--type-viewsreference .viewsreference--view-title {
  font-weight: 700;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 2rem;
  color: black;
}
.block-views-blockorganizational-units-block-1 .field--type-image,
.block-views-blocklaboratories-block-1 .field--type-image,
.field--type-viewsreference .field--type-image {
  float: none !important;
}
.block-views-blockorganizational-units-block-1 .taxonomy-term--type-labs .bs-region--main,
.block-views-blocklaboratories-block-1 .taxonomy-term--type-labs .bs-region--main,
.field--type-viewsreference .taxonomy-term--type-labs .bs-region--main {
  float: left;
}
.block-views-blockorganizational-units-block-1 .view-content,
.block-views-blocklaboratories-block-1 .view-content,
.field--type-viewsreference .view-content {
  margin-bottom: 1.5rem;
  /*
   * Creative use of nth-child for styling 
   */
}
.block-views-blockorganizational-units-block-1 .view-content h5,
.block-views-blocklaboratories-block-1 .view-content h5,
.field--type-viewsreference .view-content h5 {
  display: inline-block;
  color: #2A6296;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div, .block-views-blockorganizational-units-block-1 .view-content div.taxonomy-term,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.taxonomy-term,
.field--type-viewsreference .view-content div.no-div,
.field--type-viewsreference .view-content div.taxonomy-term {
  display: inline !important;
  text-align: center;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
  position: relative;
  margin: 0 auto;
  margin-bottom: 1rem;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div img,
.block-views-blocklaboratories-block-1 .view-content div.no-div img,
.field--type-viewsreference .view-content div.no-div img {
  border: 2px solid white;
  outline: 4px solid #2A6296;
  border-radius: 4px;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div a,
.block-views-blocklaboratories-block-1 .view-content div.no-div a,
.field--type-viewsreference .view-content div.no-div a {
  text-align: center;
  color: #2A6296;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div a:hover,
.block-views-blocklaboratories-block-1 .view-content div.no-div a:hover,
.field--type-viewsreference .view-content div.no-div a:hover {
  color: #1d4366;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div div.col-sm-12,
.block-views-blocklaboratories-block-1 .view-content div.no-div div.col-sm-12,
.field--type-viewsreference .view-content div.no-div div.col-sm-12 {
  padding: 0 0;
}
@media all and (min-width: 992px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    width: 20%;
    padding: 0 2rem;
  }
  .block-views-blockorganizational-units-block-1 .view-content div.no-div h3,
.block-views-blocklaboratories-block-1 .view-content div.no-div h3,
.field--type-viewsreference .view-content div.no-div h3 {
    font-size: 26px;
    min-height: 62px;
  }
}
@media all and (min-width: 768px) and (max-width: 991px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    padding: 0.5rem 0.5rem;
  }
  .block-views-blockorganizational-units-block-1 .view-content div.no-div h3,
.block-views-blocklaboratories-block-1 .view-content div.no-div h3,
.field--type-viewsreference .view-content div.no-div h3 {
    font-size: 20px;
    min-height: 42px;
  }
}
@media all and (min-width: 550px) and (max-width: 767px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    padding: 0.25rem 0.25rem;
  }
  .block-views-blockorganizational-units-block-1 .view-content div.no-div h3,
.block-views-blocklaboratories-block-1 .view-content div.no-div h3,
.field--type-viewsreference .view-content div.no-div h3 {
    font-size: 18px;
    min-height: 42px;
  }
}
@media all and (max-width: 549px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    padding: 1rem 1rem;
    width: 50%;
  }
}
@media all and (min-width: 992px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div:nth-child(1),
.block-views-blockorganizational-units-block-1 .view-content div.no-div:nth-child(10),
.block-views-blocklaboratories-block-1 .view-content div.no-div:nth-child(1),
.block-views-blocklaboratories-block-1 .view-content div.no-div:nth-child(10),
.field--type-viewsreference .view-content div.no-div:nth-child(1),
.field--type-viewsreference .view-content div.no-div:nth-child(10) {
    margin-left: 10%;
  }
  .block-views-blockorganizational-units-block-1 .view-content div.no-div:nth-child(4),
.block-views-blockorganizational-units-block-1 .view-content div.no-div:nth-child(13),
.block-views-blocklaboratories-block-1 .view-content div.no-div:nth-child(4),
.block-views-blocklaboratories-block-1 .view-content div.no-div:nth-child(13),
.field--type-viewsreference .view-content div.no-div:nth-child(4),
.field--type-viewsreference .view-content div.no-div:nth-child(13) {
    margin-right: 10%;
  }
}
@media all and (max-width: 991px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    width: 33%;
  }
  .block-views-blockorganizational-units-block-1 .view-content .field--name-field-lab-icon-image,
.block-views-blocklaboratories-block-1 .view-content .field--name-field-lab-icon-image,
.field--type-viewsreference .view-content .field--name-field-lab-icon-image {
    float: none;
  }
}

/* Separate page display */
@media all and (max-width: 768px) {
  #views-bootstrap-organizational-units-page-1 div.views-field,
#views-bootstrap-organizational-units-page-1 div.field-content,
#views-bootstrap-organizational-units-page-1 div.row {
    display: inline;
  }
  #views-bootstrap-organizational-units-page-1 div.col {
    display: inline-grid;
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 1.5rem;
  }
  #views-bootstrap-organizational-units-page-1 div.col h3 {
    display: inline;
    font-size: 22px;
  }
}
#views-bootstrap-organizational-units-page-1 .views-field-field-full-name,
#views-bootstrap-organizational-units-page-1 .views-field-field-full-name h3 {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  max-height: 24px;
}
#views-bootstrap-organizational-units-page-1 h3 {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 20px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}

.view-organizational-units div.taxonomy-term--type-labs .field--name-field-full-name,
.view-organizational-units div.taxonomy-term--type-offices-and-centers .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 40px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}
.view-organizational-units div.taxonomy-term--type-labs h2, .view-organizational-units div.taxonomy-term--type-labs h3,
.view-organizational-units div.taxonomy-term--type-offices-and-centers h2,
.view-organizational-units div.taxonomy-term--type-offices-and-centers h3 {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
}
.view-organizational-units .rounded img {
  border-radius: 8px;
}
.view-organizational-units h2, .view-organizational-units .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  padding: 0.5rem 0.5rem;
  margin-bottom: 1rem;
}
.view-organizational-units h3 {
  text-align: center;
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  padding: 0.5rem 0.5rem;
  margin-bottom: 1rem;
}
.view-organizational-units .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  padding: 0.5rem 0.5rem;
  margin-bottom: 1rem;
}

/* I'm assuming all taxonomy pages w/ one-sidebar Layout Builder Display = Labs */
/* This is patently false, because topics are also prone to one-sidebary tax. layouts */
body.layout-one-sidebar.path-taxonomy h1.title {
  display: none;
}

.vocabulary-labs .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 40px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  margin: 0 0.25rem 0.5rem 0.25rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}
.vocabulary-labs .field--name-description {
  /*        @media all and (min-width: 992px) {
              width: 110%;
              position: relative;
              left: -10%;
              z-index: 1000000;
          }
  */
  background: white;
  margin-bottom: 2rem;
  padding: 1rem 1rem;
  border: 1px dotted black;
  border-radius: 4px;
}

.block-views-blockoffices-and-centers-block-1 h2 {
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.taxonomy-term--type-offices-and-centers.taxonomy-term--view-mode-teaser-block .field--name-taxonomy-term-title {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 20px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}

.view-offices-and-centers {
  /*
   * Creative use of nth-child for styling 
   */
}
.view-offices-and-centers .views-row {
  display: inline-block;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media all and (min-width: 992px) {
  .view-offices-and-centers .views-row:nth-child(1) {
    margin-left: 10%;
  }
  .view-offices-and-centers .views-row:nth-child(4) {
    margin-right: 10%;
  }
  .view-offices-and-centers .views-row {
    width: 20%;
  }
}
@media all and (max-width: 991px) {
  .view-offices-and-centers .views-row {
    width: 50%;
  }
}
.view-offices-and-centers img {
  max-width: inherit;
  text-align: center;
}
.view-offices-and-centers .field--name-taxonomy-term-title {
  text-align: center;
}

/*
 * Home Page Ribbon Menu
 */
.menu--home-page-ribbon-menu {
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-left: -23px;
  margin-right: -23px;
  background-color: #ADE3B2;
  background-image: url("../img/ribbonGradient1.jpg");
  background-size: contain;
  background-repeat: repeat-x;
  font-family: "Squada One", "PT Sans Narrow", "Helvetica Neue", sans-serif;
}
.menu--home-page-ribbon-menu ul, .menu--home-page-ribbon-menu li {
  position: relative;
  margin: 0 auto;
}
.menu--home-page-ribbon-menu a {
  margin: 1rem auto;
  text-align: center;
  color: #2A6296;
  font-weight: bold;
  font-size: 1.5rem;
}

.vocabulary-offices-and-centers .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 32px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}

.slick button.slick-prev {
  left: -2.5rem;
}
.slick button.slick-next {
  right: -2.5rem;
}
.slick .slide__title {
  margin: 5px 0px 5px 0px;
}

@media all and (min-width: 768px) {
  .slick-slide .slide__caption {
    min-height: 240px;
  }
  .slick-slide .slide__caption a {
    font-size: 24px;
  }
  .slick-slide img {
    height: 220px;
    overflow: hidden;
  }
}
@media all and (max-width: 767px) {
  .slick-slide .slide__caption a {
    font-size: 18px;
  }
  .slick-slide img {
    height: 110px;
    overflow: hidden;
  }
}

.view-upcoming-events {
  margin: 0 15px;
}

@media all and (max-width: 1600px) and (min-width: 992px) {
  body.path-frontpage div.field--name-field-paragraphs,
body.path-frontpage div.paragraph--type--custom-paragraph-content-block {
    margin-left: -23px;
    margin-right: -23px !important;
  }
}

#content-categories {
  width: 100%;
  height: 0;
  padding: 0 4.166667%;
  padding-top: 31.823%;
}
@media all and (min-width: 992px) {
  #content-categories {
    background-image: url("../img/skinnyearth2.gif");
    background-size: contain;
    background-repeat: no-repeat;
  }
}
#content-categories div.bubbles {
  position: relative;
  margin-left: 8.3333%;
}
#content-categories div.row {
  height: 150px;
  position: relative;
}
@media all and (min-width: 1400px) {
  #content-categories div.row:nth-child(1) {
    top: 1rem;
  }
}
#content-categories div.row:nth-child(2) {
  top: -3rem;
}
@media all and (min-width: 1400px) {
  #content-categories div.row:nth-child(2) {
    top: -2rem;
  }
}
#content-categories div.row:nth-child(3) {
  top: -6rem;
}
@media all and (min-width: 1400px) {
  #content-categories div.row:nth-child(3) {
    top: -4rem;
  }
}
#content-categories span.col-md-2,
#content-categories span.col-2 {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  font-size: 1.3rem;
  position: relative;
  z-index: 10000;
  padding: 0.5rem 1rem;
}
@media all and (max-width: 1139px) and (min-width: 1080px) {
  #content-categories span.col-md-2,
#content-categories span.col-2 {
    padding: 1rem 0.5rem;
  }
}
#content-categories span.col-md-2 a,
#content-categories span.col-2 a {
  visibility: hidden;
  color: #FFFFFF;
  text-align: center;
  background-image: url("../img/bubble.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media all and (min-width: 1140px) {
  #content-categories span.col-md-2 a,
#content-categories span.col-2 a {
    height: 150px;
  }
}
@media all and (max-width: 1139px) and (min-width: 1080px) {
  #content-categories span.col-md-2 a,
#content-categories span.col-2 a {
    height: 120px;
  }
}
@media all and (max-width: 1079px) {
  #content-categories span.col-md-2 a,
#content-categories span.col-2 a {
    height: 100px;
  }
}
#content-categories span.col-md-2 a:hover, #content-categories span.col-md-2 a:active,
#content-categories span.col-2 a:hover,
#content-categories span.col-2 a:active {
  color: aqua;
}
#content-categories ul {
  width: 100%;
  padding-left: 4.166667%;
  position: relative;
  color: #FFFFFF;
  z-index: 1000;
  text-align: center;
}
#content-categories ul li {
  font-family: "PT Sans Narrow", "Helvetica Neue", sans-serif;
  font-size: 1.4rem;
  visibility: hidden;
  background-image: url("../img/bubble.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
#content-categories ul li a {
  position: relative;
  color: #FFFFFF;
  bottom: 1.75rem;
  /*                
                  @media all and (max-width: 1199px) and (min-width: 992px) {
                      font-size: 0.8rem;
                      max-height: 1rem;
                      bottom: 1.25rem;
                  }
                  @media all and (max-width: 991px) {
                      font-size: 0.6rem;
                      max-height: 1rem;   // force two-line names to display as one
                      bottom: 1rem;
                  }
  */
}
@media all and (min-width: 1080px) {
  #content-categories ul li:nth-child(1),
#content-categories ul li:nth-child(6) {
    top: 4rem;
  }
}
@media all and (max-width: 1079px) and (min-width: 768px) {
  #content-categories ul li:nth-child(1),
#content-categories ul li:nth-child(6) {
    top: 2rem;
  }
}
@media all and (min-width: 1080px) {
  #content-categories ul li:nth-child(2),
#content-categories ul li:nth-child(5) {
    top: 1.5rem;
  }
}
@media all and (max-width: 1079px) and (min-width: 768px) {
  #content-categories ul li:nth-child(2),
#content-categories ul li:nth-child(5) {
    top: 0rem;
  }
}
@media all and (max-width: 991px) {
  #content-categories {
    display: none;
  }
}

/*
#earth-horizon {
    position: relative;
    bottom: 404px;
    z-index: 100;
}
*/
/* Slick Slider for Events*/
div.block-views-blockupcoming-events-block-2 {
  background-image: url("../img/peopleopacity.png");
  background-repeat: no-repeat;
  background-size: cover;
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  padding-top: 1.5rem;
  position: relative;
  bottom: 1rem;
}
div.block-views-blockupcoming-events-block-2 h2 {
  font-weight: 700;
  color: #2A6296;
  text-align: center;
}
div.block-views-blockupcoming-events-block-2 .slide__caption {
  color: #21394E;
  background: #FFFFFF;
  font-size: 1.33rem;
  margin-top: 1em;
  position: relative;
  width: 103%;
  left: -1.5%;
  padding: 0.5rem 0.5rem;
}
div.block-views-blockupcoming-events-block-2 .slide__caption h2 {
  background-image: none;
  color: #21394E;
}
div.block-views-blockupcoming-events-block-2 div.slick .grid {
  padding-top: 1rem;
  padding-bottom: 0;
  background-image: linear-gradient(to right, rgba(255, 0, 0, 0), rgba(255, 0, 0, 0) 3%, #21394E 3%, #21394E 97%, rgba(255, 0, 0, 0) 97%);
}
div.block-views-blockupcoming-events-block-2 div.slick .grid a {
  text-align: center;
}
div.block-views-blockupcoming-events-block-2 div.slick .grid img {
  width: 104%;
  max-width: 110%;
  position: relative;
  left: -2%;
}
div.block-views-blockupcoming-events-block-2 .slick-arrow:before {
  color: #2A6296;
}

/* Home Page View Displays for Events */
.view-upcoming-events .field--type-datetime {
  font-style: italic;
  border-bottom: 1px dashed silver;
  padding: 0.25rem 0.25rem;
}
.view-upcoming-events .field--name-field-summary {
  padding: 0.25rem 0;
}

.vocabulary-labs div.content div.view-upcoming-events div.views-view-grid .row div.col {
  margin-bottom: 0.5rem;
}
.vocabulary-labs div.content div.view-upcoming-events div.views-view-grid .row div.col div.node--type-article {
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  height: 100%;
}
.vocabulary-labs div.content div.view-upcoming-events div.views-view-grid .row div.col .field--name-field-post-date {
  font-style: italic;
  font-weight: 600;
}
.vocabulary-labs div.content div.view-upcoming-events div.view-footer {
  margin-bottom: 1rem;
}

.view-upcoming-events .view-content .grid .row div.col {
  margin-bottom: 1rem;
}
.view-upcoming-events .view-content .grid .row div.col div.node--view-mode-teaser {
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  height: 100%;
  padding: 1rem 1rem;
  margin-right: 1rem;
}

/* Events View Blocks */
#views-bootstrap-upcoming-events-page-1 div.col {
  padding-left: 0.333rem;
  padding-right: 0.333rem;
}

div.field--name-node-link a {
  color: coral;
  padding: 0.5rem 0.5rem;
  border: 1px solid gray;
  border-radius: 7px;
}
div.field--name-node-link a:hover {
  color: #ff571a;
  background: #E6E6E6;
}

#block-earth-science-content .item-list--blazy {
  width: 100%;
}
#block-earth-science-content .grid__content {
  padding: 0px;
}

.block-field-blocktaxonomy-termtopicsname .field--name-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 32px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
  margin: 0.75rem 0.5rem 0.5rem 0.5rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}

.field--name-field-topics.field--type-entity-reference {
  float: right;
}
.field--name-field-topics.field--type-entity-reference .field__label:after {
  content: ": ";
}
.field--name-field-topics.field--type-entity-reference .field__items .field__item {
  display: inline;
}
.field--name-field-topics.field--type-entity-reference .field__items .field__item:not(:last-child):after {
  content: ", ";
}

.views-field-field-topics div.field-content a {
  float: right;
}

.vocabulary-topics .field--type-datetime {
  font-style: italic;
  border-bottom: 1px dashed silver;
  padding: 0.25rem 0.25rem;
}
.vocabulary-topics .field--name-field-summary {
  padding: 0.25rem 0;
}

.node--type-space-mission.node--view-mode-teaser .field--name-field-image img {
  max-height: 480px;
  overflow: hidden;
}

.field--name-field-launch-date {
  font-weight: 600;
  font-style: italic;
}
.field--name-field-launch-date .field__label::after {
  content: ": ";
}

.node--type-highlights h2, .node--type-highlights .field--name-node-title, .node--type-highlights div.item-list {
  background-image: none !important;
  font-size: 28px;
  display: inline-block;
}
.node--type-highlights .field--name-node-title h2 {
  font-size: 22px;
}
.node--type-highlights .field--name-field-month-year {
  margin-bottom: 0;
  padding-bottom: 0;
}

#block-earth-science-content .field--name-field-summary p {
  font-size: 24px;
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
}

.path-highlights .node--type-highlights.node--view-mode-teaser {
  max-width: 220px;
  display: inline-block;
}
.path-highlights .node--type-highlights.node--view-mode-teaser div.field--name-node-title {
  height: 112px;
  max-height: 112px;
  overflow: hidden;
}
.path-highlights .node--type-highlights.node--view-mode-teaser div.field--name-node-title h2 {
  padding-left: 0;
}

.view-science-highlights time {
  color: Tomato;
  font-weight: bold;
}
.view-science-highlights .field--name-node-title h2 {
  font-size: 22px;
}
.view-science-highlights .field--name-field-month-year {
  margin-bottom: 0;
  padding-bottom: 0;
}
.view-science-highlights .views-field-field-primary-category div {
  display: inline !important;
}

@media all and (min-width: 529px) {
  #block-earth-science-content .field--name-field-summary p {
    font-size: 24px;
    font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  }

  .path-highlights .node--type-highlights.node--view-mode-teaser {
    max-width: 220px;
  }

  .node--type-highlights div.field--name-node-title {
    height: 112px;
    max-height: 112px;
    overflow: hidden;
  }
  .node--type-highlights div.field--name-node-title h2 {
    padding-left: 0;
    height: 140px;
    overflow: hidden;
  }
}
@media all and (max-width: 575px) {
  .view-science-highlights .row {
    width: 100% !important;
  }
  .view-science-highlights .node--view-mode-teaser {
    width: inherit !important;
    text-align: center !important;
  }

  .view-science-highlights .row,
.node--type-highlights {
    display: inline-block;
    width: inherit;
  }

  .view-science-highlights .row > div {
    display: inline-block;
    width: auto !important;
  }
}
section.region-offcanvas li.nav-item {
  width: 100%;
}

html, body {
  font-size: 16px;
  color: #666666;
  background-color: #FFFFFF;
  font-family: "Squada One", "Helvetica Neue", Arial, sans-serif;
}

body {
  max-width: 1600px;
  overflow-x: hidden;
}
@media all and (min-width: 1601px) {
  body {
    position: relative;
    margin: 0 auto !important;
  }
}

#page-wrapper {
  background-color: #FEFEFE;
}
@media all and (max-width: 767px) {
  #page-wrapper #page {
    padding-top: 90px;
  }
}

#main-wrapper {
  min-height: 400px;
  padding: 0 0.5rem 0 0;
}
@media all and (max-width: 768px) {
  #main-wrapper {
    padding-right: 0;
  }
}
#main-wrapper h1, #main-wrapper h2, #main-wrapper h3, #main-wrapper h4, #main-wrapper h5, #main-wrapper h6 {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  letter-spacing: 0;
}

h1 {
  font-size: 2.5rem;
}

h1.title {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 32px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 1rem;
  margin-top: 0.5rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
}

h2 {
  margin-top: 0.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 2rem;
  font-weight: 700 !important;
}
h3 {
  font-size: 1.75rem;
}

h4 {
  font-size: 1.5rem;
}

h5 {
  font-size: 1.25rem;
}

h6 {
  font-size: 1rem;
}

pre {
  font-size: 0.875rem;
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  margin: 0.5em 1.5em;
}

aside, main, figcaption, figure, nav, section {
  display: static;
}

a {
  text-decoration: none !important;
  border-bottom: none;
  color: #2A6296;
}

a:hover {
  color: #1d4366;
}

img {
  max-width: 100%;
  height: auto;
  max-height: 100%;
}

div.brand h1 a {
  font-family: "Russo One", "Helvetica Neue", Arial, sans-serif;
}

ul.menu {
  padding-inline-start: 10px;
}
ul.menu li {
  list-style-type: none;
}

.centered {
  text-align: center;
}

.view-title {
  margin-top: 20px;
  margin-bottom: 20px;
}

.views-field-field-image img {
  width: auto;
}

.blazy .list-group-item {
  border: none;
}
.blazy .views-field-field-image {
  margin-bottom: 10px;
}

.view-labs .item-list--blazy {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.view-labs .item-list--blazy .grid--5 {
  margin-left: 120px;
}

.outreach-accordion .card {
  width: 100%;
  margin-bottom: 20px;
}
.outreach-accordion .card .card-header a {
  font-weight: bold;
}

.path-frontpage #main-wrapper {
  background-color: #010408;
  padding: 0px;
}
.path-frontpage #main-wrapper main.content {
  padding: 0px;
}

/*
 * Generic Page Container
 */
#page-container {
  padding-left: 0px;
  padding-right: 0px;
}

/*
 * Main page content settings
 */
#page-wrapper {
  /*
   * Max width on main page content.
   */
}
@media all and (min-width: 1601px) {
  #page-wrapper {
    max-width: 1600px;
    position: relative;
    margin: 0 auto;
    border: 2px solid gray;
  }
}

@media all and (min-width: 1601px) {
  #toolbar-bar {
    max-width: 1600px;
    margin: 0 auto;
  }
}

.row {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

@media all and (min-width: 1024px) {
  .container {
    margin: 0 0 !important;
  }
}

#main main.content {
  padding: 10px 20px 10px 20px;
}
@media all and (max-width: 991px) {
  #main main.content {
    padding: 0 0.5rem 0.5rem 0.5rem;
  }
}

body.path-frontpage #block-earth-science-page-title {
  display: none;
}

aside.offcanvas {
  width: 0;
  height: 100%;
  max-width: 350px;
  top: 0;
  z-index: 100000000;
  position: fixed;
  background-color: #404040;
  overflow-x: hidden;
}
aside.offcanvas nav {
  width: 100%;
}
@media all and (max-width: 767px) {
  aside.offcanvas nav ul {
    background: transparent !important;
    margin-bottom: 0;
  }
}
@media all and (max-width: 767px) {
  aside.offcanvas.showit {
    width: auto;
    min-width: 250px;
    max-width: 67%;
    border-left: 1px solid #000000;
    padding: 1rem 1rem;
  }
  aside.offcanvas.showit h2 {
    font-size: 16px;
    background-color: #FFFFFF;
  }
  aside.offcanvas.showit li.active {
    background-color: #000000;
    width: 100%;
  }
  aside.offcanvas.showit li a {
    color: #DCDCDC;
  }
}
aside.offcanvas ul.slinky-menu {
  height: 100%;
}

/*
 * Views default styling
 */
.views-view-grid div.views-row > div {
  display: inline-block;
}
.views-view-grid.cols-3 .views-row > div {
  max-width: 33% !important;
}
.views-view-grid.cols-4 .views-row > div {
  max-width: 24%;
}

/* IMPORTS */
/*!
 * Bootstrap v4.6.1 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --blue: #2A6296;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #E53935;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #FEFEFE;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #2A6296;
  --secondary: #21394E;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #E53935;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

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

body {
  margin: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #FEFEFE;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

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

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

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none;
}

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

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

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

dt {
  font-weight: bold;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #2A6296;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #309B9C;
  text-decoration: underline;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

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

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

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

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

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

textarea {
  overflow: auto;
  resize: vertical;
}

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

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}
@media (max-width: 1200px) {
  legend {
    font-size: calc(1.275rem + 0.3vw);
  }
}

progress {
  vertical-align: baseline;
}

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

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1, .h1 {
  font-size: 2.5rem;
}
@media (max-width: 1200px) {
  h1, .h1 {
    font-size: calc(1.375rem + 1.5vw);
  }
}

h2, .h2 {
  font-size: 2rem;
}
@media (max-width: 1200px) {
  h2, .h2 {
    font-size: calc(1.325rem + 0.9vw);
  }
}

h3, .h3 {
  font-size: 1.75rem;
}
@media (max-width: 1200px) {
  h3, .h3 {
    font-size: calc(1.3rem + 0.6vw);
  }
}

h4, .h4 {
  font-size: 1.5rem;
}
@media (max-width: 1200px) {
  h4, .h4 {
    font-size: calc(1.275rem + 0.3vw);
  }
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

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

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .display-1 {
    font-size: calc(1.725rem + 5.7vw);
  }
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .display-2 {
    font-size: calc(1.675rem + 5.1vw);
  }
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .display-3 {
    font-size: calc(1.575rem + 3.9vw);
  }
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .display-4 {
    font-size: calc(1.475rem + 2.7vw);
  }
}

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

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

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

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

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

.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

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

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d;
}
.blockquote-footer::before {
  content: "— ";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #FEFEFE;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

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

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #FEFEFE;
  background-color: #212529;
  border-radius: 0.2rem;
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

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

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1600px;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.33333333%;
  max-width: 8.33333333%;
}

.col-2 {
  flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.col-5 {
  flex: 0 0 41.66666667%;
  max-width: 41.66666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.33333333%;
  max-width: 58.33333333%;
}

.col-8 {
  flex: 0 0 66.66666667%;
  max-width: 66.66666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.33333333%;
  max-width: 83.33333333%;
}

.col-11 {
  flex: 0 0 91.66666667%;
  max-width: 91.66666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

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

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

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

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

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

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-sm-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-sm-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-sm-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-sm-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-sm-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-sm-first {
    order: -1;
  }

  .order-sm-last {
    order: 13;
  }

  .order-sm-0 {
    order: 0;
  }

  .order-sm-1 {
    order: 1;
  }

  .order-sm-2 {
    order: 2;
  }

  .order-sm-3 {
    order: 3;
  }

  .order-sm-4 {
    order: 4;
  }

  .order-sm-5 {
    order: 5;
  }

  .order-sm-6 {
    order: 6;
  }

  .order-sm-7 {
    order: 7;
  }

  .order-sm-8 {
    order: 8;
  }

  .order-sm-9 {
    order: 9;
  }

  .order-sm-10 {
    order: 10;
  }

  .order-sm-11 {
    order: 11;
  }

  .order-sm-12 {
    order: 12;
  }

  .offset-sm-0 {
    margin-left: 0;
  }

  .offset-sm-1 {
    margin-left: 8.33333333%;
  }

  .offset-sm-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-sm-4 {
    margin-left: 33.33333333%;
  }

  .offset-sm-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-sm-7 {
    margin-left: 58.33333333%;
  }

  .offset-sm-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-sm-10 {
    margin-left: 83.33333333%;
  }

  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-md-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-md-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-md-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-md-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-md-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-md-first {
    order: -1;
  }

  .order-md-last {
    order: 13;
  }

  .order-md-0 {
    order: 0;
  }

  .order-md-1 {
    order: 1;
  }

  .order-md-2 {
    order: 2;
  }

  .order-md-3 {
    order: 3;
  }

  .order-md-4 {
    order: 4;
  }

  .order-md-5 {
    order: 5;
  }

  .order-md-6 {
    order: 6;
  }

  .order-md-7 {
    order: 7;
  }

  .order-md-8 {
    order: 8;
  }

  .order-md-9 {
    order: 9;
  }

  .order-md-10 {
    order: 10;
  }

  .order-md-11 {
    order: 11;
  }

  .order-md-12 {
    order: 12;
  }

  .offset-md-0 {
    margin-left: 0;
  }

  .offset-md-1 {
    margin-left: 8.33333333%;
  }

  .offset-md-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-md-4 {
    margin-left: 33.33333333%;
  }

  .offset-md-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-md-7 {
    margin-left: 58.33333333%;
  }

  .offset-md-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-md-10 {
    margin-left: 83.33333333%;
  }

  .offset-md-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-lg-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-lg-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-lg-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-lg-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-lg-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-lg-first {
    order: -1;
  }

  .order-lg-last {
    order: 13;
  }

  .order-lg-0 {
    order: 0;
  }

  .order-lg-1 {
    order: 1;
  }

  .order-lg-2 {
    order: 2;
  }

  .order-lg-3 {
    order: 3;
  }

  .order-lg-4 {
    order: 4;
  }

  .order-lg-5 {
    order: 5;
  }

  .order-lg-6 {
    order: 6;
  }

  .order-lg-7 {
    order: 7;
  }

  .order-lg-8 {
    order: 8;
  }

  .order-lg-9 {
    order: 9;
  }

  .order-lg-10 {
    order: 10;
  }

  .order-lg-11 {
    order: 11;
  }

  .order-lg-12 {
    order: 12;
  }

  .offset-lg-0 {
    margin-left: 0;
  }

  .offset-lg-1 {
    margin-left: 8.33333333%;
  }

  .offset-lg-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-lg-4 {
    margin-left: 33.33333333%;
  }

  .offset-lg-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-lg-7 {
    margin-left: 58.33333333%;
  }

  .offset-lg-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-lg-10 {
    margin-left: 83.33333333%;
  }

  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-xl-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-xl-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xl-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-xl-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xl-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-xl-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xl-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-xl-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-xl-first {
    order: -1;
  }

  .order-xl-last {
    order: 13;
  }

  .order-xl-0 {
    order: 0;
  }

  .order-xl-1 {
    order: 1;
  }

  .order-xl-2 {
    order: 2;
  }

  .order-xl-3 {
    order: 3;
  }

  .order-xl-4 {
    order: 4;
  }

  .order-xl-5 {
    order: 5;
  }

  .order-xl-6 {
    order: 6;
  }

  .order-xl-7 {
    order: 7;
  }

  .order-xl-8 {
    order: 8;
  }

  .order-xl-9 {
    order: 9;
  }

  .order-xl-10 {
    order: 10;
  }

  .order-xl-11 {
    order: 11;
  }

  .order-xl-12 {
    order: 12;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

  .offset-xl-1 {
    margin-left: 8.33333333%;
  }

  .offset-xl-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-xl-4 {
    margin-left: 33.33333333%;
  }

  .offset-xl-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-xl-7 {
    margin-left: 58.33333333%;
  }

  .offset-xl-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-xl-10 {
    margin-left: 83.33333333%;
  }

  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
}
.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}
.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid gray;
}
.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid gray;
}
.table tbody + tbody {
  border-top: 2px solid gray;
}

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

.table-bordered {
  border: 1px solid gray;
}
.table-bordered th,
.table-bordered td {
  border: 1px solid gray;
}
.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #c3d2e1;
}
.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #90adc8;
}

.table-hover .table-primary:hover {
  background-color: #b2c5d9;
}
.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #b2c5d9;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #c0c7cd;
}
.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #8b98a2;
}

.table-hover .table-secondary:hover {
  background-color: #b2bac2;
}
.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #b2bac2;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c2e6ca;
}
.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

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

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bde4ea;
}
.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86ceda;
}

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

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #feedb9;
}
.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffde7e;
}

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

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f7c7c6;
}
.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #f19895;
}

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

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fcfdfd;
}
.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfbfc;
}

.table-hover .table-light:hover {
  background-color: #edf3f3;
}
.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #edf3f3;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c5c7c9;
}
.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95989b;
}

.table-hover .table-dark:hover {
  background-color: #b8babd;
}
.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b8babd;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #454d55;
}
.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: gray;
}

.table-dark {
  color: #FEFEFE;
  background-color: #343a40;
}
.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}
.table-dark.table-bordered {
  border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(254, 254, 254, 0.05);
}
.table-dark.table-hover tbody tr:hover {
  color: #FEFEFE;
  background-color: rgba(254, 254, 254, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #495057;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control:focus {
  color: #495057;
  background-color: #FEFEFE;
  border-color: #6aa2d5;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

input[type=date].form-control,
input[type=time].form-control,
input[type=datetime-local].form-control,
input[type=month].form-control {
  appearance: none;
}

select.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}
select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #FEFEFE;
}

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

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

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

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}
.form-row > .col,
.form-row > [class*=col-] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}
.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #28a745;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #FEFEFE;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}
.form-row > .col > .valid-tooltip, .form-row > [class*=col-] > .valid-tooltip {
  left: 5px;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated select.form-control:valid, select.form-control.is-valid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #FEFEFE url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}
.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}
.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}
.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #E53935;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #FEFEFE;
  background-color: rgba(229, 57, 53, 0.9);
  border-radius: 0.25rem;
}
.form-row > .col > .invalid-tooltip, .form-row > [class*=col-] > .invalid-tooltip {
  left: 5px;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #E53935;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23E53935' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23E53935' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #E53935;
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.25);
}

.was-validated select.form-control:invalid, select.form-control.is-invalid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #E53935;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #FEFEFE url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23E53935' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23E53935' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #E53935;
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #E53935;
}
.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #E53935;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #E53935;
}
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #eb6562;
  background-color: #eb6562;
}
.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.25);
}
.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #E53935;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #E53935;
}
.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #E53935;
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.form-inline .form-check {
  width: 100%;
}
@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
.form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: normal;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: #212529;
  text-decoration: none;
}
.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.btn.disabled, .btn:disabled {
  opacity: 0.65;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}
a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-primary:hover {
  color: #FEFEFE;
  background-color: #224e78;
  border-color: #1f486e;
}
.btn-primary:focus, .btn-primary.focus {
  color: #FEFEFE;
  background-color: #224e78;
  border-color: #1f486e;
  box-shadow: 0 0 0 0.2rem rgba(74, 121, 166, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1f486e;
  border-color: #1c4164;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(74, 121, 166, 0.5);
}

.btn-secondary {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-secondary:hover {
  color: #FEFEFE;
  background-color: #162533;
  border-color: #121f2a;
}
.btn-secondary:focus, .btn-secondary.focus {
  color: #FEFEFE;
  background-color: #162533;
  border-color: #121f2a;
  box-shadow: 0 0 0 0.2rem rgba(66, 87, 104, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
  color: #FEFEFE;
  background-color: #121f2a;
  border-color: #0e1821;
}
.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(66, 87, 104, 0.5);
}

.btn-success {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success:hover {
  color: #FEFEFE;
  background-color: #218838;
  border-color: #1e7e34;
}
.btn-success:focus, .btn-success.focus {
  color: #FEFEFE;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1e7e34;
  border-color: #1c7430;
}
.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:hover {
  color: #FEFEFE;
  background-color: #138496;
  border-color: #117a8b;
}
.btn-info:focus, .btn-info.focus {
  color: #FEFEFE;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
  color: #FEFEFE;
  background-color: #117a8b;
  border-color: #10707f;
}
.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}
.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}
.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-danger:hover {
  color: #FEFEFE;
  background-color: #d8201c;
  border-color: #cd1e1a;
}
.btn-danger:focus, .btn-danger.focus {
  color: #FEFEFE;
  background-color: #d8201c;
  border-color: #cd1e1a;
  box-shadow: 0 0 0 0.2rem rgba(233, 87, 83, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
  color: #FEFEFE;
  background-color: #cd1e1a;
  border-color: #c11d19;
}
.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(233, 87, 83, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}
.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}
.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}
.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark:hover {
  color: #FEFEFE;
  background-color: #23272b;
  border-color: #1d2124;
}
.btn-dark:focus, .btn-dark.focus {
  color: #FEFEFE;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 87, 93, 0.5);
}
.btn-dark.disabled, .btn-dark:disabled {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1d2124;
  border-color: #171a1d;
}
.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 87, 93, 0.5);
}

.btn-outline-primary {
  color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary:hover {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #2A6296;
  background-color: transparent;
}
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}

.btn-outline-secondary {
  color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary:hover {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #21394E;
  background-color: transparent;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:hover {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}
.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}
.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, .show > .btn-outline-success.dropdown-toggle {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:hover {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}
.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}
.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, .show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger:hover {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #E53935;
  background-color: transparent;
}
.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, .show > .btn-outline-danger.dropdown-toggle {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}
.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:hover {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}
.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: normal;
  color: #2A6296;
  text-decoration: none;
}
.btn-link:hover {
  color: #309B9C;
  text-decoration: underline;
}
.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}
.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

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

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

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropleft .dropdown-toggle::after {
  display: none;
}
.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^=top], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: normal;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: #FEFEFE;
  text-decoration: none;
  background-color: #2A6296;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

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

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}
.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

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

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropright .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}
.btn-group-toggle > .btn input[type=radio],
.btn-group-toggle > .btn input[type=checkbox],
.btn-group-toggle > .btn-group > .btn input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}
.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}
.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}
.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}
.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .custom-file {
  display: flex;
  align-items: center;
}
.input-group > .custom-file:not(:last-child) .custom-file-label, .input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > .form-control:nth-last-child(n+3),
.input-group.has-validation > .custom-select:nth-last-child(n+3),
.input-group.has-validation > .custom-file:nth-last-child(n+3) .custom-file-label,
.input-group.has-validation > .custom-file:nth-last-child(n+3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: flex;
}
.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}
.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}
.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}
.input-group-text input[type=radio],
.input-group-text input[type=checkbox] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n+3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n+3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  color-adjust: exact;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}
.custom-control-input:checked ~ .custom-control-label::before {
  color: #FEFEFE;
  border-color: #2A6296;
  background-color: #2A6296;
}
.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #6aa2d5;
}
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #FEFEFE;
  background-color: #92bbe0;
  border-color: #92bbe0;
}
.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}
.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #FEFEFE;
  border: #adb5bd solid 1px;
}
.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50%/50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23FEFEFE' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #2A6296;
  background-color: #2A6296;
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23FEFEFE' d='M0 2h4'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(42, 98, 150, 0.5);
}
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(42, 98, 150, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23FEFEFE'/%3e%3c/svg%3e");
}
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(42, 98, 150, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}
.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}
.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #FEFEFE;
  transform: translateX(0.75rem);
}
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(42, 98, 150, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #FEFEFE url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none;
}
.custom-select:focus {
  border-color: #6aa2d5;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #FEFEFE;
}
.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}
.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}
.custom-select::-ms-expand {
  display: none;
}
.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}
.custom-file-input:focus ~ .custom-file-label {
  border-color: #6aa2d5;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-file-input[disabled] ~ .custom-file-label, .custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}
.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}
.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: normal;
  line-height: 1.5;
  color: #495057;
  background-color: #FEFEFE;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}
.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  appearance: none;
}
.custom-range:focus {
  outline: 0;
}
.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #FEFEFE, 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #FEFEFE, 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #FEFEFE, 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}
.custom-range::-moz-focus-outer {
  border: 0;
}
.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #2A6296;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}
.custom-range::-webkit-slider-thumb:active {
  background-color: #92bbe0;
}
.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #2A6296;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}
.custom-range::-moz-range-thumb:active {
  background-color: #92bbe0;
}
.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #2A6296;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}
.custom-range::-ms-thumb:active {
  background-color: #92bbe0;
}
.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}
.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}
.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}
.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}
.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}
.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}
.custom-range:disabled::-moz-range-track {
  cursor: default;
}
.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
.custom-file-label,
.custom-select {
    transition: none;
  }
}

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

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}
.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}
.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #FEFEFE;
  border-color: #dee2e6 #dee2e6 #FEFEFE;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #FEFEFE;
  background-color: #2A6296;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

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

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}
.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50%/100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}
@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  flex-wrap: nowrap;
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #FEFEFE;
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #FEFEFE;
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(254, 254, 254, 0.5);
}
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(254, 254, 254, 0.75);
}
.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(254, 254, 254, 0.25);
}
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #FEFEFE;
}
.navbar-dark .navbar-toggler {
  color: rgba(254, 254, 254, 0.5);
  border-color: rgba(254, 254, 254, 0.1);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28254, 254, 254, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-dark .navbar-text {
  color: rgba(254, 254, 254, 0.5);
}
.navbar-dark .navbar-text a {
  color: #FEFEFE;
}
.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #FEFEFE;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #FEFEFE;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

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

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

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

.card-link:hover {
  text-decoration: none;
}
.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}
.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
.card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
.card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
.card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
.card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .card-columns {
    column-count: 3;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion {
  overflow-anchor: none;
}
.accordion > .card {
  overflow: hidden;
}
.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}
.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #2A6296;
  background-color: #FEFEFE;
  border: 1px solid #dee2e6;
}
.page-link:hover {
  z-index: 2;
  color: #309B9C;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.page-item.active .page-link {
  z-index: 3;
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #FEFEFE;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}
.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}
.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}
.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}
.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}
a.badge:hover, a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

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

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #FEFEFE;
  background-color: #2A6296;
}
a.badge-primary:hover, a.badge-primary:focus {
  color: #FEFEFE;
  background-color: #1f486e;
}
a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}

.badge-secondary {
  color: #FEFEFE;
  background-color: #21394E;
}
a.badge-secondary:hover, a.badge-secondary:focus {
  color: #FEFEFE;
  background-color: #121f2a;
}
a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}

.badge-success {
  color: #FEFEFE;
  background-color: #28a745;
}
a.badge-success:hover, a.badge-success:focus {
  color: #FEFEFE;
  background-color: #1e7e34;
}
a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #FEFEFE;
  background-color: #17a2b8;
}
a.badge-info:hover, a.badge-info:focus {
  color: #FEFEFE;
  background-color: #117a8b;
}
a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}
a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}
a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #FEFEFE;
  background-color: #E53935;
}
a.badge-danger:hover, a.badge-danger:focus {
  color: #FEFEFE;
  background-color: #cd1e1a;
}
a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}
a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}
a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #FEFEFE;
  background-color: #343a40;
}
a.badge-dark:hover, a.badge-dark:focus {
  color: #FEFEFE;
  background-color: #1d2124;
}
a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}
@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

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

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

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

.alert-dismissible {
  padding-right: 4rem;
}
.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #16334e;
  background-color: #d4dfe9;
  border-color: #c3d2e1;
}
.alert-primary hr {
  border-top-color: #b2c5d9;
}
.alert-primary .alert-link {
  color: #0b1926;
}

.alert-secondary {
  color: #111e29;
  background-color: #d2d7db;
  border-color: #c0c7cd;
}
.alert-secondary hr {
  border-top-color: #b2bac2;
}
.alert-secondary .alert-link {
  color: #020405;
}

.alert-success {
  color: #155724;
  background-color: #d3edd9;
  border-color: #c2e6ca;
}
.alert-success hr {
  border-top-color: #b0dfba;
}
.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d0ecf0;
  border-color: #bde4ea;
}
.alert-info hr {
  border-top-color: #aadce4;
}
.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fef2cd;
  border-color: #feedb9;
}
.alert-warning hr {
  border-top-color: #fee7a0;
}
.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #771e1c;
  background-color: #f9d7d6;
  border-color: #f7c7c6;
}
.alert-danger hr {
  border-top-color: #f4b1b0;
}
.alert-danger .alert-link {
  color: #4e1412;
}

.alert-light {
  color: #818182;
  background-color: #fdfdfd;
  border-color: #fcfdfd;
}
.alert-light hr {
  border-top-color: #edf3f3;
}
.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d7d8;
  border-color: #c5c7c9;
}
.alert-dark hr {
  border-top-color: #b8babd;
}
.alert-dark .alert-link {
  color: #040505;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #FEFEFE;
  text-align: center;
  white-space: nowrap;
  background-color: #2A6296;
  transition: width 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(254, 254, 254, 0.15) 25%, transparent 25%, transparent 50%, rgba(254, 254, 254, 0.15) 50%, rgba(254, 254, 254, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}
.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #FEFEFE;
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #FEFEFE;
}
.list-group-item.active {
  z-index: 2;
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #16334e;
  background-color: #c3d2e1;
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #16334e;
  background-color: #b2c5d9;
}
.list-group-item-primary.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #16334e;
  border-color: #16334e;
}

.list-group-item-secondary {
  color: #111e29;
  background-color: #c0c7cd;
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #111e29;
  background-color: #b2bac2;
}
.list-group-item-secondary.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #111e29;
  border-color: #111e29;
}

.list-group-item-success {
  color: #155724;
  background-color: #c2e6ca;
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b0dfba;
}
.list-group-item-success.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bde4ea;
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #aadce4;
}
.list-group-item-info.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #feedb9;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #fee7a0;
}
.list-group-item-warning.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #771e1c;
  background-color: #f7c7c6;
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #771e1c;
  background-color: #f4b1b0;
}
.list-group-item-danger.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #771e1c;
  border-color: #771e1c;
}

.list-group-item-light {
  color: #818182;
  background-color: #fcfdfd;
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #edf3f3;
}
.list-group-item-light.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c5c7c9;
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b8babd;
}
.list-group-item-dark.list-group-item-action.active {
  color: #FEFEFE;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #FEFEFE;
  opacity: 0.5;
}
@media (max-width: 1200px) {
  .close {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.close:hover {
  color: #000;
  text-decoration: none;
}
.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: 0.75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  flex-basis: 350px;
  max-width: 350px;
  font-size: 0.875rem;
  background-color: rgba(254, 254, 254, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 0.25rem;
}
.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}
.toast.showing {
  opacity: 1;
}
.toast.show {
  display: block;
  opacity: 1;
}
.toast.hide {
  display: none;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(254, 254, 254, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.toast-body {
  padding: 0.75rem;
}

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

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}
.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid gray;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

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

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid gray;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}
.modal-footer > * {
  margin: 0.25rem;
}

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

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: min-content;
  }

  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
.modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] {
  padding: 0.4rem 0;
}
.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=top] .arrow {
  bottom: 0;
}
.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=top] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] {
  padding: 0 0.4rem;
}
.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=right] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=right] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] {
  padding: 0.4rem 0;
}
.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=bottom] .arrow {
  top: 0;
}
.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] {
  padding: 0 0.4rem;
}
.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=left] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=left] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #FEFEFE;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}
.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^=top] {
  margin-bottom: 0.5rem;
}
.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=top] > .arrow {
  bottom: calc(-0.5rem - 1px);
}
.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=top] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=top] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #FEFEFE;
}

.bs-popover-right, .bs-popover-auto[x-placement^=right] {
  margin-left: 0.5rem;
}
.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=right] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=right] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=right] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #FEFEFE;
}

.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] {
  margin-top: 0.5rem;
}
.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=bottom] > .arrow {
  top: calc(-0.5rem - 1px);
}
.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=bottom] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=bottom] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #FEFEFE;
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f6f6f6;
}

.bs-popover-left, .bs-popover-auto[x-placement^=left] {
  margin-right: 0.5rem;
}
.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=left] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=left] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=left] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #FEFEFE;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f6f6f6;
  border-bottom: 1px solid #eaeaea;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #FEFEFE;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
.carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #FEFEFE;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: 50%/100% 100% no-repeat;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23FEFEFE' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23FEFEFE' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}
.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #FEFEFE;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #FEFEFE;
  text-align: center;
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: 0.75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
.spinner-grow {
    animation-duration: 1.5s;
  }
}
.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #2A6296 !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #1f486e !important;
}

.bg-secondary {
  background-color: #21394E !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #121f2a !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

.bg-danger {
  background-color: #E53935 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #cd1e1a !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #FEFEFE !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid gray !important;
}

.border-top {
  border-top: 1px solid gray !important;
}

.border-right {
  border-right: 1px solid gray !important;
}

.border-bottom {
  border-bottom: 1px solid gray !important;
}

.border-left {
  border-left: 1px solid gray !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #2A6296 !important;
}

.border-secondary {
  border-color: #21394E !important;
}

.border-success {
  border-color: #28a745 !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #E53935 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-white {
  border-color: #FEFEFE !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

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

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }

  .d-sm-inline {
    display: inline !important;
  }

  .d-sm-inline-block {
    display: inline-block !important;
  }

  .d-sm-block {
    display: block !important;
  }

  .d-sm-table {
    display: table !important;
  }

  .d-sm-table-row {
    display: table-row !important;
  }

  .d-sm-table-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }

  .d-md-inline {
    display: inline !important;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-block {
    display: block !important;
  }

  .d-md-table {
    display: table !important;
  }

  .d-md-table-row {
    display: table-row !important;
  }

  .d-md-table-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: flex !important;
  }

  .d-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }

  .d-lg-inline {
    display: inline !important;
  }

  .d-lg-inline-block {
    display: inline-block !important;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-table {
    display: table !important;
  }

  .d-lg-table-row {
    display: table-row !important;
  }

  .d-lg-table-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }

  .d-xl-inline {
    display: inline !important;
  }

  .d-xl-inline-block {
    display: inline-block !important;
  }

  .d-xl-block {
    display: block !important;
  }

  .d-xl-table {
    display: table !important;
  }

  .d-xl-table-row {
    display: table-row !important;
  }

  .d-xl-table-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: flex !important;
  }

  .d-xl-inline-flex {
    display: inline-flex !important;
  }
}
@media print {
  .d-print-none {
    display: none !important;
  }

  .d-print-inline {
    display: inline !important;
  }

  .d-print-inline-block {
    display: inline-block !important;
  }

  .d-print-block {
    display: block !important;
  }

  .d-print-table {
    display: table !important;
  }

  .d-print-table-row {
    display: table-row !important;
  }

  .d-print-table-cell {
    display: table-cell !important;
  }

  .d-print-flex {
    display: flex !important;
  }

  .d-print-inline-flex {
    display: inline-flex !important;
  }
}
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.embed-responsive::before {
  display: block;
  content: "";
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714286%;
}

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

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

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

.embed-responsive-21by9::before {
  padding-top: 42.85714286%;
}

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

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

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

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }

  .flex-sm-column {
    flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }

  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-sm-fill {
    flex: 1 1 auto !important;
  }

  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-sm-start {
    justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    justify-content: center !important;
  }

  .justify-content-sm-between {
    justify-content: space-between !important;
  }

  .justify-content-sm-around {
    justify-content: space-around !important;
  }

  .align-items-sm-start {
    align-items: flex-start !important;
  }

  .align-items-sm-end {
    align-items: flex-end !important;
  }

  .align-items-sm-center {
    align-items: center !important;
  }

  .align-items-sm-baseline {
    align-items: baseline !important;
  }

  .align-items-sm-stretch {
    align-items: stretch !important;
  }

  .align-content-sm-start {
    align-content: flex-start !important;
  }

  .align-content-sm-end {
    align-content: flex-end !important;
  }

  .align-content-sm-center {
    align-content: center !important;
  }

  .align-content-sm-between {
    align-content: space-between !important;
  }

  .align-content-sm-around {
    align-content: space-around !important;
  }

  .align-content-sm-stretch {
    align-content: stretch !important;
  }

  .align-self-sm-auto {
    align-self: auto !important;
  }

  .align-self-sm-start {
    align-self: flex-start !important;
  }

  .align-self-sm-end {
    align-self: flex-end !important;
  }

  .align-self-sm-center {
    align-self: center !important;
  }

  .align-self-sm-baseline {
    align-self: baseline !important;
  }

  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }

  .flex-md-column {
    flex-direction: column !important;
  }

  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-md-wrap {
    flex-wrap: wrap !important;
  }

  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-md-fill {
    flex: 1 1 auto !important;
  }

  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-md-start {
    justify-content: flex-start !important;
  }

  .justify-content-md-end {
    justify-content: flex-end !important;
  }

  .justify-content-md-center {
    justify-content: center !important;
  }

  .justify-content-md-between {
    justify-content: space-between !important;
  }

  .justify-content-md-around {
    justify-content: space-around !important;
  }

  .align-items-md-start {
    align-items: flex-start !important;
  }

  .align-items-md-end {
    align-items: flex-end !important;
  }

  .align-items-md-center {
    align-items: center !important;
  }

  .align-items-md-baseline {
    align-items: baseline !important;
  }

  .align-items-md-stretch {
    align-items: stretch !important;
  }

  .align-content-md-start {
    align-content: flex-start !important;
  }

  .align-content-md-end {
    align-content: flex-end !important;
  }

  .align-content-md-center {
    align-content: center !important;
  }

  .align-content-md-between {
    align-content: space-between !important;
  }

  .align-content-md-around {
    align-content: space-around !important;
  }

  .align-content-md-stretch {
    align-content: stretch !important;
  }

  .align-self-md-auto {
    align-self: auto !important;
  }

  .align-self-md-start {
    align-self: flex-start !important;
  }

  .align-self-md-end {
    align-self: flex-end !important;
  }

  .align-self-md-center {
    align-self: center !important;
  }

  .align-self-md-baseline {
    align-self: baseline !important;
  }

  .align-self-md-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }

  .flex-lg-column {
    flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }

  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-lg-fill {
    flex: 1 1 auto !important;
  }

  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-lg-start {
    justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    justify-content: center !important;
  }

  .justify-content-lg-between {
    justify-content: space-between !important;
  }

  .justify-content-lg-around {
    justify-content: space-around !important;
  }

  .align-items-lg-start {
    align-items: flex-start !important;
  }

  .align-items-lg-end {
    align-items: flex-end !important;
  }

  .align-items-lg-center {
    align-items: center !important;
  }

  .align-items-lg-baseline {
    align-items: baseline !important;
  }

  .align-items-lg-stretch {
    align-items: stretch !important;
  }

  .align-content-lg-start {
    align-content: flex-start !important;
  }

  .align-content-lg-end {
    align-content: flex-end !important;
  }

  .align-content-lg-center {
    align-content: center !important;
  }

  .align-content-lg-between {
    align-content: space-between !important;
  }

  .align-content-lg-around {
    align-content: space-around !important;
  }

  .align-content-lg-stretch {
    align-content: stretch !important;
  }

  .align-self-lg-auto {
    align-self: auto !important;
  }

  .align-self-lg-start {
    align-self: flex-start !important;
  }

  .align-self-lg-end {
    align-self: flex-end !important;
  }

  .align-self-lg-center {
    align-self: center !important;
  }

  .align-self-lg-baseline {
    align-self: baseline !important;
  }

  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }

  .flex-xl-column {
    flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-xl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-xl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    justify-content: center !important;
  }

  .justify-content-xl-between {
    justify-content: space-between !important;
  }

  .justify-content-xl-around {
    justify-content: space-around !important;
  }

  .align-items-xl-start {
    align-items: flex-start !important;
  }

  .align-items-xl-end {
    align-items: flex-end !important;
  }

  .align-items-xl-center {
    align-items: center !important;
  }

  .align-items-xl-baseline {
    align-items: baseline !important;
  }

  .align-items-xl-stretch {
    align-items: stretch !important;
  }

  .align-content-xl-start {
    align-content: flex-start !important;
  }

  .align-content-xl-end {
    align-content: flex-end !important;
  }

  .align-content-xl-center {
    align-content: center !important;
  }

  .align-content-xl-between {
    align-content: space-between !important;
  }

  .align-content-xl-around {
    align-content: space-around !important;
  }

  .align-content-xl-stretch {
    align-content: stretch !important;
  }

  .align-self-xl-auto {
    align-self: auto !important;
  }

  .align-self-xl-start {
    align-self: flex-start !important;
  }

  .align-self-xl-end {
    align-self: flex-end !important;
  }

  .align-self-xl-center {
    align-self: center !important;
  }

  .align-self-xl-baseline {
    align-self: baseline !important;
  }

  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}
.float-left {
  float: left !important;
}

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

.float-none {
  float: none !important;
}

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }

  .float-sm-right {
    float: right !important;
  }

  .float-sm-none {
    float: none !important;
  }
}
@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }

  .float-md-right {
    float: right !important;
  }

  .float-md-none {
    float: none !important;
  }
}
@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }

  .float-lg-right {
    float: right !important;
  }

  .float-lg-none {
    float: none !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }

  .float-xl-right {
    float: right !important;
  }

  .float-xl-none {
    float: none !important;
  }
}
.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

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

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

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

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

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

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

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

.m-n3 {
  margin: -1rem !important;
}

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

.m-n5 {
  margin: -3rem !important;
}

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }

  .mt-sm-0,
.my-sm-0 {
    margin-top: 0 !important;
  }

  .mr-sm-0,
.mx-sm-0 {
    margin-right: 0 !important;
  }

  .mb-sm-0,
.my-sm-0 {
    margin-bottom: 0 !important;
  }

  .ml-sm-0,
.mx-sm-0 {
    margin-left: 0 !important;
  }

  .m-sm-1 {
    margin: 0.25rem !important;
  }

  .mt-sm-1,
.my-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mr-sm-1,
.mx-sm-1 {
    margin-right: 0.25rem !important;
  }

  .mb-sm-1,
.my-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-sm-1,
.mx-sm-1 {
    margin-left: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem !important;
  }

  .mt-sm-2,
.my-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mr-sm-2,
.mx-sm-2 {
    margin-right: 0.5rem !important;
  }

  .mb-sm-2,
.my-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-sm-2,
.mx-sm-2 {
    margin-left: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem !important;
  }

  .mt-sm-3,
.my-sm-3 {
    margin-top: 1rem !important;
  }

  .mr-sm-3,
.mx-sm-3 {
    margin-right: 1rem !important;
  }

  .mb-sm-3,
.my-sm-3 {
    margin-bottom: 1rem !important;
  }

  .ml-sm-3,
.mx-sm-3 {
    margin-left: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem !important;
  }

  .mt-sm-4,
.my-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mr-sm-4,
.mx-sm-4 {
    margin-right: 1.5rem !important;
  }

  .mb-sm-4,
.my-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-sm-4,
.mx-sm-4 {
    margin-left: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem !important;
  }

  .mt-sm-5,
.my-sm-5 {
    margin-top: 3rem !important;
  }

  .mr-sm-5,
.mx-sm-5 {
    margin-right: 3rem !important;
  }

  .mb-sm-5,
.my-sm-5 {
    margin-bottom: 3rem !important;
  }

  .ml-sm-5,
.mx-sm-5 {
    margin-left: 3rem !important;
  }

  .p-sm-0 {
    padding: 0 !important;
  }

  .pt-sm-0,
.py-sm-0 {
    padding-top: 0 !important;
  }

  .pr-sm-0,
.px-sm-0 {
    padding-right: 0 !important;
  }

  .pb-sm-0,
.py-sm-0 {
    padding-bottom: 0 !important;
  }

  .pl-sm-0,
.px-sm-0 {
    padding-left: 0 !important;
  }

  .p-sm-1 {
    padding: 0.25rem !important;
  }

  .pt-sm-1,
.py-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pr-sm-1,
.px-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pb-sm-1,
.py-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-sm-1,
.px-sm-1 {
    padding-left: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem !important;
  }

  .pt-sm-2,
.py-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pr-sm-2,
.px-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pb-sm-2,
.py-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-sm-2,
.px-sm-2 {
    padding-left: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem !important;
  }

  .pt-sm-3,
.py-sm-3 {
    padding-top: 1rem !important;
  }

  .pr-sm-3,
.px-sm-3 {
    padding-right: 1rem !important;
  }

  .pb-sm-3,
.py-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pl-sm-3,
.px-sm-3 {
    padding-left: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem !important;
  }

  .pt-sm-4,
.py-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pr-sm-4,
.px-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pb-sm-4,
.py-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-sm-4,
.px-sm-4 {
    padding-left: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem !important;
  }

  .pt-sm-5,
.py-sm-5 {
    padding-top: 3rem !important;
  }

  .pr-sm-5,
.px-sm-5 {
    padding-right: 3rem !important;
  }

  .pb-sm-5,
.py-sm-5 {
    padding-bottom: 3rem !important;
  }

  .pl-sm-5,
.px-sm-5 {
    padding-left: 3rem !important;
  }

  .m-sm-n1 {
    margin: -0.25rem !important;
  }

  .mt-sm-n1,
.my-sm-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-sm-n1,
.mx-sm-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-sm-n1,
.my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-sm-n1,
.mx-sm-n1 {
    margin-left: -0.25rem !important;
  }

  .m-sm-n2 {
    margin: -0.5rem !important;
  }

  .mt-sm-n2,
.my-sm-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-sm-n2,
.mx-sm-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-sm-n2,
.my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-sm-n2,
.mx-sm-n2 {
    margin-left: -0.5rem !important;
  }

  .m-sm-n3 {
    margin: -1rem !important;
  }

  .mt-sm-n3,
.my-sm-n3 {
    margin-top: -1rem !important;
  }

  .mr-sm-n3,
.mx-sm-n3 {
    margin-right: -1rem !important;
  }

  .mb-sm-n3,
.my-sm-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-sm-n3,
.mx-sm-n3 {
    margin-left: -1rem !important;
  }

  .m-sm-n4 {
    margin: -1.5rem !important;
  }

  .mt-sm-n4,
.my-sm-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-sm-n4,
.mx-sm-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-sm-n4,
.my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-sm-n4,
.mx-sm-n4 {
    margin-left: -1.5rem !important;
  }

  .m-sm-n5 {
    margin: -3rem !important;
  }

  .mt-sm-n5,
.my-sm-n5 {
    margin-top: -3rem !important;
  }

  .mr-sm-n5,
.mx-sm-n5 {
    margin-right: -3rem !important;
  }

  .mb-sm-n5,
.my-sm-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-sm-n5,
.mx-sm-n5 {
    margin-left: -3rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mt-sm-auto,
.my-sm-auto {
    margin-top: auto !important;
  }

  .mr-sm-auto,
.mx-sm-auto {
    margin-right: auto !important;
  }

  .mb-sm-auto,
.my-sm-auto {
    margin-bottom: auto !important;
  }

  .ml-sm-auto,
.mx-sm-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }

  .mt-md-0,
.my-md-0 {
    margin-top: 0 !important;
  }

  .mr-md-0,
.mx-md-0 {
    margin-right: 0 !important;
  }

  .mb-md-0,
.my-md-0 {
    margin-bottom: 0 !important;
  }

  .ml-md-0,
.mx-md-0 {
    margin-left: 0 !important;
  }

  .m-md-1 {
    margin: 0.25rem !important;
  }

  .mt-md-1,
.my-md-1 {
    margin-top: 0.25rem !important;
  }

  .mr-md-1,
.mx-md-1 {
    margin-right: 0.25rem !important;
  }

  .mb-md-1,
.my-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-md-1,
.mx-md-1 {
    margin-left: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem !important;
  }

  .mt-md-2,
.my-md-2 {
    margin-top: 0.5rem !important;
  }

  .mr-md-2,
.mx-md-2 {
    margin-right: 0.5rem !important;
  }

  .mb-md-2,
.my-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-md-2,
.mx-md-2 {
    margin-left: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem !important;
  }

  .mt-md-3,
.my-md-3 {
    margin-top: 1rem !important;
  }

  .mr-md-3,
.mx-md-3 {
    margin-right: 1rem !important;
  }

  .mb-md-3,
.my-md-3 {
    margin-bottom: 1rem !important;
  }

  .ml-md-3,
.mx-md-3 {
    margin-left: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem !important;
  }

  .mt-md-4,
.my-md-4 {
    margin-top: 1.5rem !important;
  }

  .mr-md-4,
.mx-md-4 {
    margin-right: 1.5rem !important;
  }

  .mb-md-4,
.my-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-md-4,
.mx-md-4 {
    margin-left: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem !important;
  }

  .mt-md-5,
.my-md-5 {
    margin-top: 3rem !important;
  }

  .mr-md-5,
.mx-md-5 {
    margin-right: 3rem !important;
  }

  .mb-md-5,
.my-md-5 {
    margin-bottom: 3rem !important;
  }

  .ml-md-5,
.mx-md-5 {
    margin-left: 3rem !important;
  }

  .p-md-0 {
    padding: 0 !important;
  }

  .pt-md-0,
.py-md-0 {
    padding-top: 0 !important;
  }

  .pr-md-0,
.px-md-0 {
    padding-right: 0 !important;
  }

  .pb-md-0,
.py-md-0 {
    padding-bottom: 0 !important;
  }

  .pl-md-0,
.px-md-0 {
    padding-left: 0 !important;
  }

  .p-md-1 {
    padding: 0.25rem !important;
  }

  .pt-md-1,
.py-md-1 {
    padding-top: 0.25rem !important;
  }

  .pr-md-1,
.px-md-1 {
    padding-right: 0.25rem !important;
  }

  .pb-md-1,
.py-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-md-1,
.px-md-1 {
    padding-left: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem !important;
  }

  .pt-md-2,
.py-md-2 {
    padding-top: 0.5rem !important;
  }

  .pr-md-2,
.px-md-2 {
    padding-right: 0.5rem !important;
  }

  .pb-md-2,
.py-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-md-2,
.px-md-2 {
    padding-left: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem !important;
  }

  .pt-md-3,
.py-md-3 {
    padding-top: 1rem !important;
  }

  .pr-md-3,
.px-md-3 {
    padding-right: 1rem !important;
  }

  .pb-md-3,
.py-md-3 {
    padding-bottom: 1rem !important;
  }

  .pl-md-3,
.px-md-3 {
    padding-left: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem !important;
  }

  .pt-md-4,
.py-md-4 {
    padding-top: 1.5rem !important;
  }

  .pr-md-4,
.px-md-4 {
    padding-right: 1.5rem !important;
  }

  .pb-md-4,
.py-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-md-4,
.px-md-4 {
    padding-left: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem !important;
  }

  .pt-md-5,
.py-md-5 {
    padding-top: 3rem !important;
  }

  .pr-md-5,
.px-md-5 {
    padding-right: 3rem !important;
  }

  .pb-md-5,
.py-md-5 {
    padding-bottom: 3rem !important;
  }

  .pl-md-5,
.px-md-5 {
    padding-left: 3rem !important;
  }

  .m-md-n1 {
    margin: -0.25rem !important;
  }

  .mt-md-n1,
.my-md-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-md-n1,
.mx-md-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-md-n1,
.my-md-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-md-n1,
.mx-md-n1 {
    margin-left: -0.25rem !important;
  }

  .m-md-n2 {
    margin: -0.5rem !important;
  }

  .mt-md-n2,
.my-md-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-md-n2,
.mx-md-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-md-n2,
.my-md-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-md-n2,
.mx-md-n2 {
    margin-left: -0.5rem !important;
  }

  .m-md-n3 {
    margin: -1rem !important;
  }

  .mt-md-n3,
.my-md-n3 {
    margin-top: -1rem !important;
  }

  .mr-md-n3,
.mx-md-n3 {
    margin-right: -1rem !important;
  }

  .mb-md-n3,
.my-md-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-md-n3,
.mx-md-n3 {
    margin-left: -1rem !important;
  }

  .m-md-n4 {
    margin: -1.5rem !important;
  }

  .mt-md-n4,
.my-md-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-md-n4,
.mx-md-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-md-n4,
.my-md-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-md-n4,
.mx-md-n4 {
    margin-left: -1.5rem !important;
  }

  .m-md-n5 {
    margin: -3rem !important;
  }

  .mt-md-n5,
.my-md-n5 {
    margin-top: -3rem !important;
  }

  .mr-md-n5,
.mx-md-n5 {
    margin-right: -3rem !important;
  }

  .mb-md-n5,
.my-md-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-md-n5,
.mx-md-n5 {
    margin-left: -3rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mt-md-auto,
.my-md-auto {
    margin-top: auto !important;
  }

  .mr-md-auto,
.mx-md-auto {
    margin-right: auto !important;
  }

  .mb-md-auto,
.my-md-auto {
    margin-bottom: auto !important;
  }

  .ml-md-auto,
.mx-md-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }

  .mt-lg-0,
.my-lg-0 {
    margin-top: 0 !important;
  }

  .mr-lg-0,
.mx-lg-0 {
    margin-right: 0 !important;
  }

  .mb-lg-0,
.my-lg-0 {
    margin-bottom: 0 !important;
  }

  .ml-lg-0,
.mx-lg-0 {
    margin-left: 0 !important;
  }

  .m-lg-1 {
    margin: 0.25rem !important;
  }

  .mt-lg-1,
.my-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mr-lg-1,
.mx-lg-1 {
    margin-right: 0.25rem !important;
  }

  .mb-lg-1,
.my-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-lg-1,
.mx-lg-1 {
    margin-left: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem !important;
  }

  .mt-lg-2,
.my-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mr-lg-2,
.mx-lg-2 {
    margin-right: 0.5rem !important;
  }

  .mb-lg-2,
.my-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-lg-2,
.mx-lg-2 {
    margin-left: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem !important;
  }

  .mt-lg-3,
.my-lg-3 {
    margin-top: 1rem !important;
  }

  .mr-lg-3,
.mx-lg-3 {
    margin-right: 1rem !important;
  }

  .mb-lg-3,
.my-lg-3 {
    margin-bottom: 1rem !important;
  }

  .ml-lg-3,
.mx-lg-3 {
    margin-left: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem !important;
  }

  .mt-lg-4,
.my-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mr-lg-4,
.mx-lg-4 {
    margin-right: 1.5rem !important;
  }

  .mb-lg-4,
.my-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-lg-4,
.mx-lg-4 {
    margin-left: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem !important;
  }

  .mt-lg-5,
.my-lg-5 {
    margin-top: 3rem !important;
  }

  .mr-lg-5,
.mx-lg-5 {
    margin-right: 3rem !important;
  }

  .mb-lg-5,
.my-lg-5 {
    margin-bottom: 3rem !important;
  }

  .ml-lg-5,
.mx-lg-5 {
    margin-left: 3rem !important;
  }

  .p-lg-0 {
    padding: 0 !important;
  }

  .pt-lg-0,
.py-lg-0 {
    padding-top: 0 !important;
  }

  .pr-lg-0,
.px-lg-0 {
    padding-right: 0 !important;
  }

  .pb-lg-0,
.py-lg-0 {
    padding-bottom: 0 !important;
  }

  .pl-lg-0,
.px-lg-0 {
    padding-left: 0 !important;
  }

  .p-lg-1 {
    padding: 0.25rem !important;
  }

  .pt-lg-1,
.py-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pr-lg-1,
.px-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pb-lg-1,
.py-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-lg-1,
.px-lg-1 {
    padding-left: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem !important;
  }

  .pt-lg-2,
.py-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pr-lg-2,
.px-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pb-lg-2,
.py-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-lg-2,
.px-lg-2 {
    padding-left: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem !important;
  }

  .pt-lg-3,
.py-lg-3 {
    padding-top: 1rem !important;
  }

  .pr-lg-3,
.px-lg-3 {
    padding-right: 1rem !important;
  }

  .pb-lg-3,
.py-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pl-lg-3,
.px-lg-3 {
    padding-left: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem !important;
  }

  .pt-lg-4,
.py-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pr-lg-4,
.px-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pb-lg-4,
.py-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-lg-4,
.px-lg-4 {
    padding-left: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem !important;
  }

  .pt-lg-5,
.py-lg-5 {
    padding-top: 3rem !important;
  }

  .pr-lg-5,
.px-lg-5 {
    padding-right: 3rem !important;
  }

  .pb-lg-5,
.py-lg-5 {
    padding-bottom: 3rem !important;
  }

  .pl-lg-5,
.px-lg-5 {
    padding-left: 3rem !important;
  }

  .m-lg-n1 {
    margin: -0.25rem !important;
  }

  .mt-lg-n1,
.my-lg-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-lg-n1,
.mx-lg-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-lg-n1,
.my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-lg-n1,
.mx-lg-n1 {
    margin-left: -0.25rem !important;
  }

  .m-lg-n2 {
    margin: -0.5rem !important;
  }

  .mt-lg-n2,
.my-lg-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-lg-n2,
.mx-lg-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-lg-n2,
.my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-lg-n2,
.mx-lg-n2 {
    margin-left: -0.5rem !important;
  }

  .m-lg-n3 {
    margin: -1rem !important;
  }

  .mt-lg-n3,
.my-lg-n3 {
    margin-top: -1rem !important;
  }

  .mr-lg-n3,
.mx-lg-n3 {
    margin-right: -1rem !important;
  }

  .mb-lg-n3,
.my-lg-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-lg-n3,
.mx-lg-n3 {
    margin-left: -1rem !important;
  }

  .m-lg-n4 {
    margin: -1.5rem !important;
  }

  .mt-lg-n4,
.my-lg-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-lg-n4,
.mx-lg-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-lg-n4,
.my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-lg-n4,
.mx-lg-n4 {
    margin-left: -1.5rem !important;
  }

  .m-lg-n5 {
    margin: -3rem !important;
  }

  .mt-lg-n5,
.my-lg-n5 {
    margin-top: -3rem !important;
  }

  .mr-lg-n5,
.mx-lg-n5 {
    margin-right: -3rem !important;
  }

  .mb-lg-n5,
.my-lg-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-lg-n5,
.mx-lg-n5 {
    margin-left: -3rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mt-lg-auto,
.my-lg-auto {
    margin-top: auto !important;
  }

  .mr-lg-auto,
.mx-lg-auto {
    margin-right: auto !important;
  }

  .mb-lg-auto,
.my-lg-auto {
    margin-bottom: auto !important;
  }

  .ml-lg-auto,
.mx-lg-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }

  .mt-xl-0,
.my-xl-0 {
    margin-top: 0 !important;
  }

  .mr-xl-0,
.mx-xl-0 {
    margin-right: 0 !important;
  }

  .mb-xl-0,
.my-xl-0 {
    margin-bottom: 0 !important;
  }

  .ml-xl-0,
.mx-xl-0 {
    margin-left: 0 !important;
  }

  .m-xl-1 {
    margin: 0.25rem !important;
  }

  .mt-xl-1,
.my-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mr-xl-1,
.mx-xl-1 {
    margin-right: 0.25rem !important;
  }

  .mb-xl-1,
.my-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-xl-1,
.mx-xl-1 {
    margin-left: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem !important;
  }

  .mt-xl-2,
.my-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mr-xl-2,
.mx-xl-2 {
    margin-right: 0.5rem !important;
  }

  .mb-xl-2,
.my-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-xl-2,
.mx-xl-2 {
    margin-left: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem !important;
  }

  .mt-xl-3,
.my-xl-3 {
    margin-top: 1rem !important;
  }

  .mr-xl-3,
.mx-xl-3 {
    margin-right: 1rem !important;
  }

  .mb-xl-3,
.my-xl-3 {
    margin-bottom: 1rem !important;
  }

  .ml-xl-3,
.mx-xl-3 {
    margin-left: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem !important;
  }

  .mt-xl-4,
.my-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mr-xl-4,
.mx-xl-4 {
    margin-right: 1.5rem !important;
  }

  .mb-xl-4,
.my-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-xl-4,
.mx-xl-4 {
    margin-left: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem !important;
  }

  .mt-xl-5,
.my-xl-5 {
    margin-top: 3rem !important;
  }

  .mr-xl-5,
.mx-xl-5 {
    margin-right: 3rem !important;
  }

  .mb-xl-5,
.my-xl-5 {
    margin-bottom: 3rem !important;
  }

  .ml-xl-5,
.mx-xl-5 {
    margin-left: 3rem !important;
  }

  .p-xl-0 {
    padding: 0 !important;
  }

  .pt-xl-0,
.py-xl-0 {
    padding-top: 0 !important;
  }

  .pr-xl-0,
.px-xl-0 {
    padding-right: 0 !important;
  }

  .pb-xl-0,
.py-xl-0 {
    padding-bottom: 0 !important;
  }

  .pl-xl-0,
.px-xl-0 {
    padding-left: 0 !important;
  }

  .p-xl-1 {
    padding: 0.25rem !important;
  }

  .pt-xl-1,
.py-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pr-xl-1,
.px-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pb-xl-1,
.py-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-xl-1,
.px-xl-1 {
    padding-left: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem !important;
  }

  .pt-xl-2,
.py-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pr-xl-2,
.px-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pb-xl-2,
.py-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-xl-2,
.px-xl-2 {
    padding-left: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem !important;
  }

  .pt-xl-3,
.py-xl-3 {
    padding-top: 1rem !important;
  }

  .pr-xl-3,
.px-xl-3 {
    padding-right: 1rem !important;
  }

  .pb-xl-3,
.py-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pl-xl-3,
.px-xl-3 {
    padding-left: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem !important;
  }

  .pt-xl-4,
.py-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pr-xl-4,
.px-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pb-xl-4,
.py-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-xl-4,
.px-xl-4 {
    padding-left: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem !important;
  }

  .pt-xl-5,
.py-xl-5 {
    padding-top: 3rem !important;
  }

  .pr-xl-5,
.px-xl-5 {
    padding-right: 3rem !important;
  }

  .pb-xl-5,
.py-xl-5 {
    padding-bottom: 3rem !important;
  }

  .pl-xl-5,
.px-xl-5 {
    padding-left: 3rem !important;
  }

  .m-xl-n1 {
    margin: -0.25rem !important;
  }

  .mt-xl-n1,
.my-xl-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-xl-n1,
.mx-xl-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-xl-n1,
.my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-xl-n1,
.mx-xl-n1 {
    margin-left: -0.25rem !important;
  }

  .m-xl-n2 {
    margin: -0.5rem !important;
  }

  .mt-xl-n2,
.my-xl-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-xl-n2,
.mx-xl-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-xl-n2,
.my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-xl-n2,
.mx-xl-n2 {
    margin-left: -0.5rem !important;
  }

  .m-xl-n3 {
    margin: -1rem !important;
  }

  .mt-xl-n3,
.my-xl-n3 {
    margin-top: -1rem !important;
  }

  .mr-xl-n3,
.mx-xl-n3 {
    margin-right: -1rem !important;
  }

  .mb-xl-n3,
.my-xl-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-xl-n3,
.mx-xl-n3 {
    margin-left: -1rem !important;
  }

  .m-xl-n4 {
    margin: -1.5rem !important;
  }

  .mt-xl-n4,
.my-xl-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-xl-n4,
.mx-xl-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-xl-n4,
.my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xl-n4,
.mx-xl-n4 {
    margin-left: -1.5rem !important;
  }

  .m-xl-n5 {
    margin: -3rem !important;
  }

  .mt-xl-n5,
.my-xl-n5 {
    margin-top: -3rem !important;
  }

  .mr-xl-n5,
.mx-xl-n5 {
    margin-right: -3rem !important;
  }

  .mb-xl-n5,
.my-xl-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-xl-n5,
.mx-xl-n5 {
    margin-left: -3rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mt-xl-auto,
.my-xl-auto {
    margin-top: auto !important;
  }

  .mr-xl-auto,
.mx-xl-auto {
    margin-right: auto !important;
  }

  .mb-xl-auto,
.my-xl-auto {
    margin-bottom: auto !important;
  }

  .ml-xl-auto,
.mx-xl-auto {
    margin-left: auto !important;
  }
}
.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace !important;
}

.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-left {
  text-align: left !important;
}

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }

  .text-sm-right {
    text-align: right !important;
  }

  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }

  .text-md-right {
    text-align: right !important;
  }

  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }

  .text-lg-right {
    text-align: right !important;
  }

  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }

  .text-xl-right {
    text-align: right !important;
  }

  .text-xl-center {
    text-align: center !important;
  }
}
.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: normal !important;
}

.font-weight-bold {
  font-weight: bold !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #FEFEFE !important;
}

.text-primary {
  color: #2A6296 !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #193b5a !important;
}

.text-secondary {
  color: #21394E !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: #0a1218 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

.text-danger {
  color: #E53935 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #b61b17 !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(254, 254, 254, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
*::before,
*::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a:not(.btn) {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }

  tr,
img {
    page-break-inside: avoid;
  }

  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
h3 {
    page-break-after: avoid;
  }

  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }

  .container {
    min-width: 992px !important;
  }

  .navbar {
    display: none;
  }

  .badge {
    border: 1px solid #000;
  }

  .table {
    border-collapse: collapse !important;
  }
  .table td,
.table th {
    background-color: #FEFEFE !important;
  }

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

  .table-dark {
    color: inherit;
  }
  .table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
    border-color: gray;
  }

  .table .thead-dark th {
    color: inherit;
    border-color: gray;
  }
}
/**
 * @file
 * Styles for Bootstrap Barrio affix effect.
 */
.affix {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 1035;
  left: 0;
}

/**
 * @file
 * Visual styles for comments in Barrio.
 */
.alert-wrapper {
  position: fixed;
  bottom: 0;
  left: 0;
  max-width: 100%;
  width: 97%;
  z-index: 9999;
  margin-left: 1em;
}

.toast-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
}

/**
 * @file
 * Bootstrap Barrio specific styling for the Book module.
 */
.book-navigation .menu {
  border-top: 1px solid gray;
}

.book-navigation .book-pager {
  border-bottom: 1px solid gray;
  border-top: 1px solid gray;
  margin: 0;
}

/**
 * @file
 * Styling for the Book module.
 */
.book-navigation .menu {
  padding-bottom: 0;
  padding-top: 1em;
}

.book-navigation .book-pager {
  margin: 0;
  overflow: auto;
  padding: 0.5em 0;
}

.book-pager__item {
  display: inline-block;
  list-style-type: none;
  vertical-align: top;
}

.book-pager__item--previous {
  text-align: left;
  /* LTR */
  width: 45%;
}

[dir=rtl] .book-pager__item--previous {
  float: right;
  text-align: right;
}

.book-pager__item--center {
  text-align: center;
  width: 8%;
}

.book-pager__item--next {
  float: right;
  /* LTR */
  text-align: right;
  /* LTR */
  width: 45%;
}

[dir=rtl] .book-pager__item--next {
  float: left;
  text-align: left;
}

/**
 * @file
 * Styles for Bootstrap Barrio's breadcrumbs.
 */
#block-breadcrumbs {
  display: block;
  width: 100%;
}

.breadcrumb {
  font-size: 0.929em 0.875rem;
}

.region-breadcrumb {
  padding: 0 15px 0.25em;
  width: 100%;
}

/**
 * @file
 * Visual styles for comments in Bartik.
 */
/* This is required to win over specificity of #content h2 */
#content .comment-wrapper h2 {
  margin-bottom: 1em;
}

#content .comment-wrapper h2.comment-form__title {
  margin-bottom: 1em;
}

.field-node--comment {
  font-size: 0.875rem;
}

.comment {
  margin-bottom: 1.25em;
  vertical-align: top;
  display: table;
}

[dir=rtl] .comment {
  direction: rtl;
}

.comment__meta {
  padding: 0 30px 0 0;
  /* LTR */
  font-size: 1rem;
}

[dir=rtl] .comment__meta {
  padding: 0 0 0 30px;
}

.comment__attribution img {
  border: 1px solid gray;
}

/* This is required to win over specificity of .field--type-image img */
.comment .field--name-user-picture img {
  margin: 0;
}

.comment__author .username {
  white-space: nowrap;
}

.comment__author {
  margin: 4px 0;
  line-height: 1.2;
}

.comment__time,
.comment__permalink {
  margin-bottom: 4px;
  color: #68696b;
  font-size: 0.875rem;
  line-height: 1.2;
  padding: 0 0.5em 0 0;
  /* LTR */
}

[dir=rtl] .comment__time,
.comment__permalink {
  padding: 0 0 0 0.5em;
}

.comment__permalink {
  font-size: 0.875rem;
  line-height: 1.2;
}

.comment__content:before {
  content: "";
  position: absolute;
  right: 100%;
  /* LTR */
  top: 1.25em;
  border-top: 1.25em solid transparent;
  border-right: 1.25em solid gray;
  /* LTR */
  border-bottom: 1.25em solid transparent;
}

[dir=rtl] .comment__content:before {
  right: auto;
  left: 100%;
  border-right: none;
  border-left: 1.25em solid gray;
}

.comment__content:after {
  content: "";
  position: absolute;
  right: 100%;
  /* LTR */
  top: 1.25em;
  border-top: 1.25em solid transparent;
  border-right: 1.25em solid #FEFEFE;
  /* LTR */
  border-bottom: 1.25em solid transparent;
  margin-right: -1px;
  /* LTR */
}

[dir=rtl] .comment__content:after {
  right: auto;
  left: 100%;
  border-right: none;
  border-left: 1.25em solid #FEFEFE;
  margin-right: 0;
  margin-left: -1px;
}

.comment__content h3 {
  margin-top: 0.94em;
  margin-bottom: 0.45em;
  font-size: 1.25rem;
}

.comment__content nav {
  padding-top: 1px;
}

.indented {
  margin-left: 40px;
  /* LTR */
}

[dir=rtl] .indented {
  margin-right: 40px;
  margin-left: 0;
}

.comment .links {
  padding: 0 0 0.25em 0;
}

.comment .links-inline span {
  padding: 0 0.5em 0 0;
  /* LTR */
  font-size: 1rem;
}

[dir=rtl] .comment .links-inline span {
  padding: 0 0 0 0.5em;
}

.comment--unpublished {
  margin-right: 5px;
  /* LTR */
  padding: 5px 2px 5px 5px;
  /* LTR */
  background: #6b99c0;
}

[dir=rtl] .comment--unpublished {
  margin-left: 5px;
  margin-right: 0;
  padding: 5px 5px 5px 2px;
}

/**
 * @todo: unpublished nodes have class .node--unpublished.
 * change this to .comment--unpublished.
 */
.unpublished .comment-text .comment-arrow {
  border-left: 1px solid #6b99c0;
  border-right: 1px solid #6b99c0;
}

.unpublished {
  padding: 1.25em 1.25em 0;
}

.comment-footer {
  display: table-row;
}

.comment--unpublished .comment__text:after,
.node--unpublished .comment__text:after {
  border-right-color: #6b99c0;
  /* LTR */
}

[dir=rtl] .comment--unpublished .comment__content:after,
[dir=rtl] .node--unpublished .comment__content:after {
  border-left-color: #6b99c0;
}

/**
 * @file
 * Contextual links styles for Bootstrap Barrio.
 */
.contextual-links a {
  border-bottom: none;
  text-shadow: 0 0 0;
}

/**
 * @file
 * Collapsible details.
 *
 * @see collapse.js
 * @see http://nicolasgallagher.com/css-background-image-hacks/
 */
details {
  border: 1px solid gray;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

details > .details-wrapper {
  padding: 0.5em 1.5em;
}

/* @todo Regression: The summary of uncollapsible details are no longer
     vertically aligned with the .details-wrapper in browsers without native
     details support. */
summary {
  cursor: pointer;
  padding: 0.2em 0.5em;
}

/**
 * @file
 * Visual styles for Bartik's dropbutton component.
 */
.js .dropbutton-wrapper .dropbutton-widget {
  /* This is required to win over specifity of .js td .dropbutton-widget */
  position: relative;
}

.js .dropbutton-widget {
  border: 1px solid;
  border-color: #e4e4e4 #d2d2d2 #b4b4b4 #d2d2d2;
  background-color: #fff;
  background-image: -webkit-linear-gradient(top, #f3f3f3, #e8e8e8);
  background-image: linear-gradient(to bottom, #f3f3f3, #e8e8e8);
  color: #3a3a3a;
  cursor: pointer;
  text-align: center;
  margin: 0.125em 0;
  border-radius: 1em;
  overflow: hidden;
}

.js .dropbutton-widget:hover {
  border-color: #e4e4e4 #d2d2d2 #b4b4b4 #d2d2d2;
}

.js .dropbutton-widget .button {
  border: none;
  margin: 0;
  padding: 0.32em 1em;
  background: transparent none;
}

.js .dropbutton-multiple .dropbutton-widget .dropbutton-action a {
  margin-right: 0;
  /* LTR */
}

[dir=rtl].js .dropbutton-multiple .dropbutton-widget .dropbutton-action a {
  margin-left: 0;
}

.js .dropbutton .secondary-action {
  border-top-color: #ccc;
}

.js .dropbutton-toggle button {
  background-color: #e8e8e8;
  background-image: -webkit-linear-gradient(top, #e8e8e8, #d2d2d2);
  background-image: linear-gradient(to bottom, #e8e8e8, #d2d2d2);
}

.js .dropbutton-toggle .dropbutton-arrow:hover {
  background: #ccc;
}

.js .dropbutton a {
  color: #3a3a3a;
  border-bottom: 0 none;
}

.js .dropbutton .dropbutton-action:hover,
.js .dropbutton a:hover {
  background: #dedede;
  border-bottom: 0 none;
}

/**
 * @file
 * General styles for dropbuttons.
 */
.js .dropbutton-widget {
  background-color: white;
  border: 1px solid #cccccc;
}

.js .dropbutton-widget:hover {
  border-color: #b8b8b8;
}

.dropbutton .dropbutton-action > * {
  padding: 0.1em 0.5em;
  white-space: nowrap;
}

.dropbutton .secondary-action {
  border-top: 1px solid #e8e8e8;
}

.dropbutton-multiple .dropbutton {
  border-right: 1px solid #e8e8e8;
  /* LTR */
}

[dir=rtl] .dropbutton-multiple .dropbutton {
  border-left: 1px solid #e8e8e8;
  border-right: 0 none;
}

.dropbutton-multiple .dropbutton .dropbutton-action > * {
  margin-right: 0.25em;
  /* LTR */
}

[dir=rtl] .dropbutton-multiple .dropbutton .dropbutton-action > * {
  margin-left: 0.25em;
  margin-right: 0;
}

.js td .dropbutton-multiple {
  padding-right: 10em;
  margin-right: 2em;
  max-width: 100%;
}

.js td .dropbutton-wrapper {
  min-height: 2em;
}

.js .dropbutton-wrapper,
.js .dropbutton-widget {
  display: block;
  position: relative;
}

.js td .dropbutton-widget {
  position: absolute;
}

/**
 * @file
 * Feed icon styles for Bootstrap Barrio.
 */
.feed-icon {
  border-bottom: none;
  display: inline-block;
  padding: 1rem 0 0 0;
}

/**
 * @file
 * Visual styles for Bootstrap Barrio's field components.
 */
.field--type-entity-reference {
  margin: 0 0 1.2rem;
}
.field--type-entity-reference div.field__label {
  display: inline;
}

.field--type-entity-reference .field__label {
  font-weight: normal;
  margin: 0;
  padding-right: 0.3rem;
  /* LTR */
}

[dir=rtl] .field--type-entity-reference .field__label {
  padding-left: 0.3rem;
  padding-right: 0;
}

.field--type-entity-reference ul.links {
  padding: 0;
  margin: 0;
  list-style: none;
}

.field--type-entity-reference ul.links li {
  float: left;
  /* LTR */
  padding: 0 1rem 0 0;
  /* LTR */
  white-space: nowrap;
}

[dir=rtl] .field--type-entity-reference ul.links li {
  padding: 0 0 0 1rem;
  float: right;
}

@media all and (min-width: 560px) {
  .node .field--type-image {
    float: left;
    /* LTR */
    margin: 0 1rem 0 0;
    /* LTR */
  }

  [dir=rtl] .node .field--type-image {
    float: right;
    margin: 0 0 0 1rem;
  }

  .node .field--type-image + .field--type-image {
    clear: both;
  }
}
.field--type-image img,
.field--name-field-user-picture img {
  margin: 0 0 1rem;
}

.field--type-image a {
  border-bottom: none;
}

.field--name-field-tags {
  margin: 0 0 1.2rem;
}

.field--name-field-tags .field__label {
  font-weight: normal;
  margin: 0;
  padding-right: 5px;
  /* LTR */
}

[dir=rtl] .field--name-field-tags .field__label {
  padding-left: 5px;
  padding-right: 0;
}

.field--name-field-tags .field__label,
.field--name-field-tags ul.links {
  font-size: 0.875rem;
}

.node--view-mode-teaser .field--name-field-tags .field__label,
.node--view-mode-teaser .field--name-field-tags ul.links {
  font-size: 0.875rem;
}

.field--name-field-tags ul.links {
  padding: 0;
  margin: 0;
}

.field--name-field-tags ul.links li {
  float: left;
  /* LTR */
  padding: 0 1rem 0 0;
  /* LTR */
  white-space: nowrap;
}

[dir=rtl] .field--name-field-tags ul.links li {
  padding: 0 0 0 1rem;
  float: right;
}

.field--label-inline .field__label,
.field--label-inline .field__item {
  display: inline-block;
}

.field--name-field-labs-view-reference,
.field--name-field-view-ref-attachment {
  margin-bottom: 1rem;
  border-bottom: 3px solid #DCDCDC;
}

/**
 * @file
 * Default style for file module.
 */
/* File icons.*/
.file {
  padding-left: 1.5rem;
  /* LTR */
  display: inline-block;
  min-height: 1rem;
  background-repeat: no-repeat;
  background-position: left center;
  /* LTR */
}

[dir=rtl] .file {
  padding-left: inherit;
  padding-right: 1.5rem;
  background-position: right center;
}

.file--general,
.file--application-octet-stream {
  background-image: url(../img/icons/application-octet-stream.png);
}

.file--package-x-generic {
  background-image: url(../img/icons/package-x-generic.png);
}

.file--x-office-spreadsheet {
  background-image: url(../img/icons/x-office-spreadsheet.png);
}

.file--x-office-document {
  background-image: url(../img/icons/x-office-document.png);
}

.file--x-office-presentation {
  background-image: url(../img/icons/x-office-presentation.png);
}

.file--text-x-script {
  background-image: url(../img/icons/text-x-script.png);
}

.file--text-html {
  background-image: url(../img/icons/text-html.png);
}

.file--text-plain {
  background-image: url(../img/icons/text-plain.png);
}

.file--application-pdf {
  background-image: url(../img/icons/application-pdf.png);
}

.file--application-x-executable {
  background-image: url(../img/icons/application-x-executable.png);
}

.file--audio {
  background-image: url(../img/icons/audio-x-generic.png);
}

.file--video {
  background-image: url(../img/icons/video-x-generic.png);
}

.file--text {
  background-image: url(../img/icons/text-x-generic.png);
}

.file--image {
  background-image: url(../img/icons/image-x-generic.png);
}

/**
 * @file
 * Visual styles for Bootstrap Barrio's form components.
 */
.form-required::after {
  content: "";
  vertical-align: super;
  display: inline-block;
  background-image: url(../../img/required.svg);
  background-repeat: no-repeat;
  background-size: calc(1.5em + 0.75rem + 2px)/2 calc(1.5em + 0.75rem + 2px)/2;
  width: calc(1.5em + 0.75rem + 2px)/2;
  height: calc(1.5em + 0.75rem + 2px)/2;
  margin: 0 0.3em;
}

form .filter-wrapper {
  padding-left: 0;
  padding-right: 0;
  margin-left: 1rem;
  margin-right: 1rem;
}

form .form-type-textarea {
  margin-bottom: 0;
}

/* ------------------ Header ------------------ */
body #navbar-top {
  width: 100%;
  clear: both;
  padding: 0.25rem 0;
  background-color: #FEFEFE;
  text-align: center;
}
body #navbar-top div.row {
  padding: 0 0;
}
body #navbar-top #block-toptoolbox, body #navbar-top .region-secondary-menu, body #navbar-top div.row {
  width: 100%;
}
body #navbar-top h4 {
  display: inline;
  font-size: 16px;
  font-weight: 700;
}
@media all and (max-width: 767px) {
  body #navbar-top h4 {
    font-size: 12px;
  }
}
body #navbar-top p {
  margin-bottom: 0;
}
body #navbar-top span.col-8 {
  text-align: center;
}
body #navbar-top i, body #navbar-top .fa {
  font-size: 27px;
}
body #navbar-top a.inactive {
  color: silver;
}
body #navbar-top span.centered {
  text-align: center;
}

/* Primary Header */
header#header {
  background-image: url("../img/earthblack_opacity_sm_crop.png"), linear-gradient(#21394E, #2A6296 15%, #21394E 95%);
  background-repeat: no-repeat, repeat-x;
  background-position: 15% top, left top;
  background-size: top middle, contain;
  /* Mobile Nav Bars / Hamburger */
}
@media all and (min-width: 992px) {
  header#header {
    padding-bottom: 1rem;
  }
}
header#header.container {
  max-width: 100%;
}
header#header button.navbar-toggler {
  border: none;
  padding: 0 0;
  margin-right: 1em;
  color: #FEFEFE;
}
@media all and (min-width: 768px) {
  header#header button.navbar-toggler {
    display: none;
  }
}
header#header i.fa-bars {
  color: #FEFEFE;
}
header#header h4.subtitle {
  font-family: "Apple Symbols", "Open Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 300;
  display: inline-block;
  color: #FEFEFE;
  opacity: 0.7;
  padding-left: 0.5rem;
}
@media all and (max-width: 1063px) and (min-width: 769px) {
  header#header h4.subtitle {
    font-size: 1.3rem;
  }
}
@media all and (min-width: 801px) {
  header#header h4.subtitle {
    margin-top: 1.5rem;
  }
}
@media all and (max-width: 800px) {
  header#header h4.subtitle {
    margin-top: 0.5rem;
  }
}
@media all and (max-width: 767px) {
  header#header h4.subtitle {
    display: none;
  }
}
@media all and (max-width: 499px) {
  header#header h4.subtitle {
    font-size: 1.1rem;
    left: 1.5rem;
  }
}
@media all and (max-width: 767px) {
  header#header #CollapsingNavbar {
    position: relative;
    top: 1.5rem;
  }
}
header#header .region-header-brand {
  position: relative;
}
header#header .region-header-brand .col-1, header#header .region-header-brand .col-2, header#header .region-header-brand .col-3, header#header .region-header-brand .col-4, header#header .region-header-brand .col-5, header#header .region-header-brand .col-6,
header#header .region-header-brand .col-7, header#header .region-header-brand .col-8, header#header .region-header-brand .col-9, header#header .region-header-brand .col-10, header#header .region-header-brand .col-11, header#header .region-header-brand .col-12 {
  padding-left: 0;
  padding-right: 0;
}
@media all and (min-width: 1200px) {
  header#header .region-header-brand {
    left: -1.5rem;
  }
}
@media all and (min-width: 992px) and (max-width: 1199px) {
  header#header .region-header-brand {
    left: -1rem;
  }
}
@media all and (min-width: 768px) and (max-width: 991px) {
  header#header .region-header-brand {
    left: 3rem;
  }
}
@media all and (max-width: 580px) {
  header#header .region-header-brand {
    margin-left: -1rem !important;
  }
}
header#header .region-header-brand .navbar-brand {
  margin-top: 0.75rem;
  padding-bottom: 0;
}
header#header .region-header-brand .navbar-brand img {
  max-width: 150px;
  height: auto;
}
header#header .region-header-brand .navbar-brand span {
  display: inline-block;
}
header#header .region-header-brand img#site-logo {
  display: inline-block;
  color: #FEFEFE;
  margin-top: 1rem;
  max-width: 200%;
  width: 110%;
  height: auto;
}
@media all and (min-width: 1200px) {
  header#header .region-header-brand img#site-logo {
    width: 100%;
    position: relative;
    left: 1rem;
  }
}
@media all and (max-width: 768px) {
  header#header .region-header-brand img#site-logo {
    margin-top: 1rem;
    width: 100%;
    min-width: 75px;
  }
}
@media all and (min-width: 1280px) {
  header#header .region-header-brand .navbar-brand {
    position: relative;
    top: 0.25rem;
  }
}
header#header .region-header-brand .navbar-brand h1 {
  display: inline;
}
header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
  color: #FEFEFE;
  font-family: "Russo One", "Helvetica Neue", Arial, sans-serif;
  letter-spacing: 3px;
  font-size: 32px !important;
  font-weight: bold;
  margin-left: 0.5rem;
}
@media all and (min-width: 1200px) {
  header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
    margin-top: 0.75rem;
  }
}
@media all and (max-width: 1199px) {
  header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
    margin-top: 1rem;
  }
}
@media all and (max-width: 767px) and (min-width: 401px) {
  header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
    margin-left: 0.5rem;
    margin-top: 0.33rem;
  }
}
@media all and (max-width: 400px) {
  header#header .region-header-brand .navbar-brand h1 a, header#header .region-header-brand .navbar-brand h1 span {
    margin-left: 0.5rem;
    margin-top: 0.33rem;
  }
}
header#header .region-header-brand span.branding {
  padding-left: 0;
}
header#header .region-header-brand span.branding div {
  display: inline-block;
  padding: 0 0;
}
header#header .region-header-brand span.branding span {
  padding: 0 0;
}
header#header .region-header-brand .site-name-slogan {
  font-family: "Apple Symbols", "Open Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  color: #FEFEFE;
  letter-spacing: 5px;
  font-size: 1.33rem;
  font-weight: 300;
  margin-top: 0;
  margin-left: 0.5rem;
  display: block !important;
  position: relative;
  bottom: 0.5rem;
}
@media all and (min-width: 1280px) {
  header#header .region-header-brand .site-name-slogan {
    margin-top: 0.25rem;
  }
}
@media all and (max-width: 767px) {
  header#header .region-header-brand .site-name-slogan {
    margin-left: 0.25rem;
  }
}
@media all and (max-width: 400px) {
  header#header .region-header-brand .site-name-slogan {
    margin-left: 0.5rem;
  }
}
header#header #block-topmenu,
header#header .region-primary-menu {
  display: inline-block;
}
header#header #block-topmenu ul,
header#header .region-primary-menu ul {
  border-bottom: 1px solid red;
  padding-left: 0;
  z-index: 100;
}
header#header #block-topmenu ul li a,
header#header .region-primary-menu ul li a {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  font-size: 1.25rem;
}
header#header #block-topmenu ul li.nav-item a,
header#header .region-primary-menu ul li.nav-item a {
  color: #FEFEFE;
}
header#header #block-topmenu ul li.nav-item a:hover,
header#header .region-primary-menu ul li.nav-item a:hover {
  color: #309B9C;
}
header#header #block-topmenu ul li.dropdown-item a,
header#header .region-primary-menu ul li.dropdown-item a {
  color: #000;
}
header#header #block-topmenu ul li.dropdown-item a.active,
header#header .region-primary-menu ul li.dropdown-item a.active {
  color: #FEFEFE;
}

/*
 * MEDIA QUERIES
 */
@media all and (max-width: 767px) {
  #header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
  }

  .navbarCtl {
    margin-left: 1rem;
  }
  #primary-main-menu-sm-block {
    margin-top: 1rem;
  }

  .col-1 {
    padding-left: 0;
  }
}
@media all and (min-width: 768px) {
  nav.bg-primary {
    padding-top: 0.5rem;
  }
}
@media all and (max-width: 767px) {
  span.top-main-menu {
    display: none;
  }
}
@media (max-width: 33.9em) {
  .navbar-toggleable-xs .navbar-nav .nav-item + .nav-item,
.navbar-toggleable-xs.collapse.in .navbar-nav .nav-item {
    margin-left: 0;
    float: none;
  }
}
@media (max-width: 47.9em) {
  .navbar-toggleable-sm .navbar-nav .nav-item + .nav-item,
.navbar-toggleable-xs.collapse.in .navbar-nav .nav-item {
    margin-left: 0;
    float: none;
  }
}
/**
 * @file
 * Styles for the help block.
 */
.block-help {
  border: 1px solid gray;
  padding: 0 1.5rem;
  margin-bottom: 2rem;
}

/**
 * @file
 * Visual styles for icons.
 */
.icon-help {
  background: url(/../../img/help.png) 0 50% no-repeat;
  /* LTR */
  padding: 1px 0 1px 1.5rem;
  /* LTR */
}

[dir=rtl] .icon-help {
  background-position: 100% 50%;
  padding: 1px 1.5rem 1px 0;
}

.feed-icon {
  background: url(/../../img/feed.svg) no-repeat;
  overflow: hidden;
  text-indent: -9999px;
  display: block;
  width: 1rem;
  height: 1rem;
}

i.fa-search {
  color: #FFFFFF;
  font-size: 20px;
}

/**
 * @file
 * Styles for Bootstrap Barrio's image buttons.
 */
.image-button.is-disabled:hover,
.image-button.is-disabled:active,
.image-button.is-disabled:focus,
.image-button.is-disabled {
  background: transparent;
  opacity: 0.5;
  cursor: default;
}

/**
 * @file
 * Basic styling for comment module.
 */
/**
 * Indent threaded comments.
 */
.indented {
  margin-left: 1.5rem;
  /* LTR */
}

[dir=rtl] .indented {
  margin-left: 0;
  margin-right: 1.5rem;
}

/**
 * @file
 * Visual styles for Bootstrap Barrio's item list.
 */
.item-list ul {
  list-style: none;
  margin: 0 0 0.75rem 0;
  padding: 0;
  /* LTR */
}

[dir=rtl] .item-list ul {
  padding: 0;
}

.item-list ul li {
  /* This is needed to reset styles in item-list.theme.css */
  margin: 0;
  padding: 0.75rem 1.25rem 0 0;
  /* LTR */
}

[dir=rtl] .item-list ul li {
  /* This is needed to reset [dir="rtl"] styles in item-list.theme.css */
  margin: 0;
  padding: 0.75rem 0 0 1.25rem;
}

.item-list .item-list__comma-list,
.item-list .item-list__comma-list li,
[dir=rtl] .item-list .item-list__comma-list,
[dir=rtl] .item-list .item-list__comma-list li {
  padding: 0;
}

/**
 * @file
 * List group.
 * A list of links, grouped together.
 */
.list-group__link {
  border-top: 1px solid gray;
  padding: 0.75rem 0 0;
}

.list-group__description {
  margin: 0 0 0.75rem;
}

/**
 * @file
 * Visual styles for Bootstrap Barrio's node component.
 */
.node__content {
  font-size: 1rem;
  margin-top: 1rem;
}

/* View mode teaser styles. */
.node--view-mode-teaser {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}

.node--view-mode-teaser h2 {
  margin-top: 0;
  padding-top: 0.5em;
}

.node--view-mode-teaser.node--sticky {
  background: #f9f9f9;
  background: rgba(0, 0, 0, 0.024);
  border: 1px solid gray;
  padding: 0 1rem 1rem;
}

.node--view-mode-teaser .node__content {
  clear: none;
  font-size: 1rem;
  line-height: 1.5;
}

/* Node metadata styles. */
.node__meta {
  font-size: 0.875rem;
  margin-bottom: -5px;
}

.node__meta .field--name-field-user-picture img {
  float: left;
  /* LTR */
  margin: 1px 1rem 0 0;
  /* LTR */
}

[dir=rtl] .node__meta .field--name-field-user-picture img {
  float: right;
  margin-left: 1rem;
  margin-right: 0;
}

/* Node links styles. */
.node__links {
  text-align: right;
  /* LTR */
  font-size: 1rem;
}

[dir=rtl] .node__links {
  text-align: left;
}

/* Unpublished node styles. */
.node--unpublished {
  padding: 1rem 1rem 0;
}

.node--unpublished .comment-text .comment-arrow {
  border-left: 1px solid #fff4f4;
  border-right: 1px solid #fff4f4;
}

.node-preview-container {
  background: #d1e8f5;
  background-image: -webkit-linear-gradient(top, #d1e8f5, #d3e8f4);
  background-image: linear-gradient(to bottom, #d1e8f5, #d3e8f4);
  font-family: Arial, sans-serif;
  box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.3333);
  position: fixed;
  z-index: 499;
  width: 100%;
  padding: 10px;
}

.node-preview-backlink {
  background-color: #419ff1;
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, -webkit-linear-gradient(top, #419ff1, #1076d5);
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, linear-gradient(to bottom, #419ff1, #1076d5);
  /* LTR */
  border: 1px solid #0048c8;
  border-radius: 0.4em;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4);
  color: #fff;
  font-size: 0.9em;
  line-height: normal;
  margin: 0;
  padding: 4px 1em 4px 0.6em;
  /* LTR */
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
}

[dir=rtl] .node-preview-backlink {
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, -webkit-linear-gradient(top, #419ff1, #1076d5);
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, linear-gradient(to bottom, #419ff1, #1076d5);
  padding: 4px 0.6em 4px 1em;
  float: right;
}

.node-preview-backlink:focus,
.node-preview-backlink:hover {
  background-color: #419cf1;
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, -webkit-linear-gradient(top, #59abf3, #2a90ef);
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, linear-gradient(to bottom, #59abf3, #2a90ef);
  /* LTR */
  border: 1px solid #0048c8;
  text-decoration: none;
  color: #fff;
}

[dir=rtl] .node-preview-backlink:focus,
[dir=rtl] .node-preview-backlink:hover {
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, -webkit-linear-gradient(top, #59abf3, #2a90ef);
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, linear-gradient(to bottom, #59abf3, #2a90ef);
}

.node-preview-backlink:active {
  background-color: #0e69be;
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, -webkit-linear-gradient(top, #0e69be, #2a93ef);
  background: url(/core/misc/icons/000000/chevron-left.svg) left no-repeat, linear-gradient(to bottom, #0e69be, #2a93ef);
  /* LTR */
  border: 1px solid #0048c8;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.25);
}

[dir=rtl] .node-preview-backlink:active {
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, -webkit-linear-gradient(top, #0e69be, #2a93ef);
  background: url(/core/misc/icons/000000/chevron-right.svg) right no-repeat, linear-gradient(to bottom, #0e69be, #2a93ef);
}

.node-preview-backlink::before {
  content: "";
  width: 10px;
  display: inline-block;
}

/**
 * @file
 * Styles for Bootstrap Barrio page.
 */
.responsive-video {
  width: 100%;
  height: 100%;
  position: absolute;
}

div.field--name-field-sandboxed-youtube-video {
  position: relative;
  padding-bottom: 60%;
  overflow: hidden;
}

/**
 * @file
 * The visual styles for Bootstrap Barrio's search form(s).
 */
.search-block-form,
.region-search-area {
  position: absolute;
  display: inline;
}
@media all and (min-width: 768px) {
  .search-block-form,
.region-search-area {
    right: 1rem;
  }
}

input[type=search] {
  box-sizing: border-box;
  padding-right: 0;
  margin-right: 0 !important;
  border-color: dimgray;
}

button.navbar-toggler {
  margin-top: 1rem;
  font-size: 24px;
}

#search-block-form {
  padding: 0 0;
  display: inline;
  float: right;
  background: transparent;
}
#search-block-form button {
  border: 0;
}
#search-block-form input.form-control {
  display: none;
  right: 4rem;
  height: 42px;
}
@media all and (min-width: 1060px) {
  #search-block-form input.form-control {
    border-radius: 4px;
    border-collapse: separate;
    padding: 6px 12px 6px 12px;
  }
}
@media all and (max-width: 1059px) and (min-width: 992px) {
  #search-block-form input.form-control {
    padding: 6px 0 6px 12px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    margin-right: 0;
  }
}
@media all and (min-width: 992px) {
  #search-block-form input.form-control {
    min-height: 1px;
  }
}
@media all and (max-width: 991px) {
  #search-block-form input.form-control {
    max-width: 150px;
    margin-right: 0.5em;
    border-radius: 4px;
    padding: 4px 4px;
  }
}
#search-block-form input.form-search {
  right: 3rem;
}
#search-block-form input.form-search, #search-block-form input.form-control {
  border-radius: 6px;
  position: absolute;
  top: 2.25rem;
}

#navbar-top .search-block-form button, #navbar-top .search-block-form i {
  color: black;
}

#search-block-form,
#top-search-box {
  background-color: transparent;
  color: #FEFEFE;
  padding-top: 0;
}
#search-block-form button,
#top-search-box button {
  border: 0px solid transparent;
  border: none;
  margin-top: 2rem !important;
}
#search-block-form .fa-search,
#top-search-box .fa-search {
  color: inherit;
  font-size: 28px;
  font-weight: 300;
}

/* Search Results Page */
body.path-search #content_section form.search-form {
  width: 75%;
  margin-left: 12.5%;
  margin-bottom: 2rem;
}
body.path-search #content_section form.search-form #edit-submit {
  max-width: 100px;
}
body.path-search #content_section form.search-form fieldset {
  padding: 0 0;
  width: inherit;
}
body.path-search div.form-group,
body.path-search fieldset.form-type-search,
body.path-search input[type=search] {
  padding-left: 0;
}

.head-search {
  padding: 0 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media all and (min-width: 992px) {
  div.searchable {
    position: absolute;
    right: 1em;
    z-index: 10000;
  }
}

@media all and (max-width: 767px) {
  #search-block-form {
    display: none;
  }
}

@media all and (max-width: 767px) {
  nav.topmenubar {
    background-color: black;
  }
  nav.topmenubar form {
    width: 75%;
  }
}
/**
 * @file
 * Visual styles for the Shortcut action link in Bootstrap Barrio.
 */
.shortcut-wrapper {
  margin: 2.2em 0 1.1em 0;
  /* Same as usual .page-title margin. */
}

.shortcut-wrapper .page-title {
  float: left;
  /* LTR */
  margin: 0;
}

[dir=rtl] .shortcut-wrapper .page-title {
  float: right;
}

.shortcut-action {
  border-bottom: none;
  margin-left: 0.5em;
  /* LTR */
  padding-top: 0.35em;
}

[dir=rtl] .shortcut-action {
  margin-left: 0;
  margin-right: 0.5em;
}

.shortcut-action:hover,
.shortcut-action:active,
.shortcut-action:focus {
  border-bottom: none;
}

/* ------------------ Sidebar ----------------- */
.sidebar {
  padding: 1rem 0.5rem 0.5rem 1rem;
  background-color: #309B9C;
}
.sidebar div.contextual {
  z-index: 10000;
}
@media all and (max-width: 767px) {
  .sidebar {
    display: none;
  }
}
.sidebar nav.title-test h2 {
  text-transform: capitalize;
}
.sidebar .block {
  border: none;
  padding-left: 5px;
  padding-right: 10px;
  margin: 0 0 1rem;
}
.sidebar .block .content {
  font-size: 1rem;
  line-height: 1.5;
}
.sidebar h2 {
  margin: 0 0 0.5rem;
  border-bottom: 1px solid gray;
  padding-bottom: 5px;
  text-shadow: 0 1px 0 #FEFEFE;
  font-size: 24px;
  line-height: 1.2;
}
.sidebar ul.menu {
  padding-inline-start: 0;
}
.sidebar nav ul.nav,
.sidebar nav ul.menu {
  margin: 0 0;
  padding-left: 0;
  background-color: #FEFEFE;
  border-radius: 4px;
}
@media all and (min-width: 868px) {
  .sidebar li {
    padding: 0.75rem 1.25rem;
  }
}
@media all and (max-width: 867px) and (min-width: 768px) {
  .sidebar li {
    padding: 0.33rem 1rem;
  }
}
.sidebar li.nav-item {
  width: 100%;
  max-width: 100%;
}
.sidebar li.nav-item a {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  color: #2A6296;
}
.sidebar li.nav-item:hover {
  background-color: #1d4366;
}
.sidebar li.nav-item:hover a {
  color: #FEFEFE;
}
.sidebar li.nav-item.menu-item--active-trail, .sidebar li.nav-item.is-active, .sidebar li.nav-item.active {
  background-color: #2A6296;
}
.sidebar li.nav-item.menu-item--active-trail a, .sidebar li.nav-item.is-active a, .sidebar li.nav-item.active a {
  font-weight: bold;
  color: #FEFEFE;
}
.sidebar li.nav-item a.is-active {
  font-weight: bold;
  color: #FEFEFE;
}
.sidebar .dropdown-menu {
  border: 1px solid #ced4da;
  border-radius: 8px;
}
.sidebar .dropdown-item {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.sidebar .dropdown-item:active, .sidebar .dropdown-item.active {
  background: #d4dae1;
}
.sidebar .side-nav li.active a, .sidebar .side-nav a.is-active {
  color: #FEFEFE;
}

.sidebar-first .side-nav {
  top: 1rem;
  position: -webkit-sticky;
  /* Safari */
  border-radius: 7px;
}
.sidebar-first .side-nav nav.block-menu,
.sidebar-first .side-nav .sidebar-menu {
  padding: 0px 10px 0px 5px;
}
.sidebar-first .side-nav nav.block-menu h2,
.sidebar-first .side-nav .sidebar-menu h2 {
  background-color: white;
  padding: 15px;
}
.sidebar-first .side-nav nav.block-menu .nav-link,
.sidebar-first .side-nav .sidebar-menu .nav-link {
  padding: 0.25rem 0;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item {
  border-top: 1px solid rgba(0, 0, 0, 0.125);
  display: inline;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item a,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item a,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item a,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item a,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item a,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item a,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item a,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item a {
  display: block;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover {
  background-color: #1d4366;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover a:active, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover a:hover, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover a:visited, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item:hover a:link,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover a:active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover a:hover,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover a:visited,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item:hover a:link,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover a:active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item:hover a:link,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover a:active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item:hover a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item:hover a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item:hover a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item:hover a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item:hover a:link {
  font-weight: bold;
  color: #FEFEFE !important;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active {
  color: #FEFEFE;
  font-weight: bold;
}
.sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active a:active, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active a:hover, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active a:visited, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.is-active a:link, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active a:active, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active a:hover, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active a:visited, .sidebar-first .side-nav nav.block-menu .navbar-nav .nav-item.active a:link,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active a:active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active a:hover,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active a:visited,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.is-active a:link,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active a:active,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active a:hover,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active a:visited,
.sidebar-first .side-nav nav.block-menu .navbar-nav .list-group-item.active a:link,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active a:active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.is-active a:link,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active a:active,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .nav-item.active a:link,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active a:active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.is-active a:link,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active a:active,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active a:hover,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active a:visited,
.sidebar-first .side-nav nav.block-menu .list-group .list-group-item.active a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.is-active a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .nav-item.active a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.is-active a:link,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active a:active,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active a:hover,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active a:visited,
.sidebar-first .side-nav .sidebar-menu .navbar-nav .list-group-item.active a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.is-active a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .nav-item.active a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.is-active a:link,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active a:active,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active a:hover,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active a:visited,
.sidebar-first .side-nav .sidebar-menu .list-group .list-group-item.active a:link {
  color: #FEFEFE !important;
}

body.toolbar-fixed .sidebar-first .side-nav,
body.user-logged-in .sidebar-first .side-nav {
  top: 6rem;
}

/**
 * @file
 * Footer Styling.
 */
footer.site-footer {
  font-family: Tahoma, Arial, Verdana, sans-serif;
  padding: 2rem 0;
  background-color: #2A6296;
  color: #FEFEFE;
  background-image: url("../img/footerback.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}
@media all and (min-width: 992px) {
  footer.site-footer {
    font-size: 1.2rem;
  }
}
@media all and (max-width: 991px) {
  footer.site-footer {
    font-size: 1.1rem;
  }
}
@media all and (min-width: 768px) {
  footer.site-footer {
    border-top: 3rem solid #21394E;
  }
}
@media all and (max-width: 767px) {
  footer.site-footer {
    border-top: 8px solid #21394E;
  }
}
footer.site-footer a {
  color: #FEFEFE;
  font-weight: 300;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
footer.site-footer .layout-container {
  padding: 0 1rem;
}
footer.site-footer .nav-item {
  display: inline;
}
footer.site-footer .nav-link {
  display: inline-block;
}
footer.site-footer #lastUpdate {
  font-weight: 300;
  text-align: center;
  font-size: 1rem;
}
footer.site-footer #footer-requirements {
  text-align: center;
  position: relative;
  margin: 0 auto;
  padding-bottom: 1rem;
  border-bottom: 1px solid red;
}
footer.site-footer #footer-requirements strong {
  font-family: Tahoma, Arial, Verdana, sans-serif;
}
@media all and (min-width: 992px) {
  footer.site-footer #footer-requirements strong {
    font-size: 1.4rem;
  }
}
@media all and (max-width: 991px) {
  footer.site-footer #footer-requirements strong {
    font-size: 1.1rem;
  }
}
footer.site-footer #footer-requirements a {
  font-family: Tahoma, Arial, Verdana, sans-serif;
}
@media all and (min-width: 900px) {
  footer.site-footer #footer-requirements {
    max-width: 50%;
  }
}
@media all and (max-width: 899px) and (min-width: 580px) {
  footer.site-footer #footer-requirements {
    max-width: 55%;
  }
}
@media all and (max-width: 579px) {
  footer.site-footer #footer-requirements {
    max-width: 100%;
    padding: 0.5rem 0.5rem;
  }
}
footer.site-footer .site-footer__bottom {
  border-top: 0;
  margin-top: 0;
  padding-top: 0.5rem;
}
footer.site-footer .site-footer__bottom .region {
  margin-top: 0;
}
footer.site-footer .site-footer__bottom .region-footer-bottom nav.block-menu {
  position: relative;
  margin: 0 auto;
}
footer.site-footer .site-footer__bottom .region-footer-bottom nav.block-menu li:after {
  content: " | ";
}
footer.site-footer .site-footer__bottom .region-footer-bottom nav.block-menu li:last-child:after {
  content: "";
}

.featured-bottom {
  background: #21394E;
  margin-bottom: 0;
}
.featured-bottom aside {
  width: inherit;
  max-width: 100%;
  margin: 0 0;
}
@media all and (max-width: 767px) {
  .featured-bottom .menu--quick-links {
    position: relative;
    margin: 0 auto;
  }
  .featured-bottom .menu--quick-links ul {
    text-align: center;
    margin-top: 0.5rem;
  }
  .featured-bottom .menu--quick-links ul li {
    color: #FEFEFE;
  }
}
@media all and (max-width: 767px) and (min-width: 400px) {
  .featured-bottom .menu--quick-links ul li {
    width: 33%;
  }
}
@media all and (max-width: 767px) and (max-width: 399px) {
  .featured-bottom .menu--quick-links ul li {
    width: 50%;
  }
}
@media all and (max-width: 767px) {
  .featured-bottom .menu--quick-links ul li a {
    color: #FEFEFE;
  }
}
@media all and (max-width: 767px) {
  .featured-bottom .menu--quick-links ul li:after {
    content: "" !important;
  }
}
@media all and (min-width: 768px) {
  .featured-bottom {
    display: none;
  }
}

/**
 * @file
 * Styles for the skip link.
 */
.skip-link {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 50;
  background: #495057;
  font-size: 1rem;
  line-height: 1.5;
  padding: 1px 1rem 2px;
  border-radius: 0 0 0.3rem 0.3rem;
  border-bottom-width: 0;
  outline: 0;
}

.skip-link.visually-hidden.focusable:focus {
  position: absolute !important;
  color: #FEFEFE;
}

/**
 * @file
 * Styles for Bootstrap Barrio's tables.
 */
.sticky-header thead th {
  vertical-align: bottom;
  border-bottom: 2px solid gray;
}

.sticky-header th {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid gray;
}

/**
 * @file
 * Visual styles for table drag.
 */
tr.drag {
  background-color: #fffff0;
}

tr.drag-previous {
  background-color: #ffd;
}

body div.tabledrag-changed-warning {
  margin-bottom: 0.5rem;
}

/**
 * @file
 * Table select behavior.
 *
 * @see tableselect.js
 */
tr.selected td {
  background: #ffc;
}

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

[dir=rtl] td.checkbox,
[dir=rtl] th.checkbox {
  /* This is required to win over specificity of [dir="rtl"] td */
  text-align: center;
}

/**
 * @file
 * Table sort indicator.
 */
th.is-active img {
  display: inline;
}

td.is-active {
  background-color: #dee2e6;
}

/**
 * @file
 * Tablesort indicator styles.
 */
.tablesort {
  width: 14px;
  height: 14px;
  vertical-align: top;
  margin: 1px 0 0 5px;
}

.tablesort--asc {
  background-image: url(/core/misc/icons/ffffff/twistie-down.svg);
}

.tablesort--desc {
  background-image: url(/core/misc/icons/ffffff/twistie-up.svg);
}

/**
 * @file
 * Theme styling for tabs.
 */
nav.tabs {
  margin-bottom: 1rem;
}

/**
 * @file
 * Visual styles for a resizable textarea.
 */
.form-textarea-wrapper textarea {
  display: block;
  margin: 0;
  width: 100%;
  box-sizing: border-box;
}

/**
 * @file
 * Visual styles for Bartik's ui-widget component.
 */
/**
 * @file
 * Styles for Bartik's modal windows
 */
.ui-widget-overlay {
  background: #000;
  opacity: 0.7;
}

.ui-dialog {
  border-radius: 0;
}

.ui-dialog input,
.ui-dialog select,
.ui-dialog textarea {
  font-size: 1rem;
}

.ui-dialog .button {
  background-color: #fff;
  background-image: -webkit-linear-gradient(top, #f3f3f3, #e8e8e8);
  background-image: linear-gradient(to bottom, #f3f3f3, #e8e8e8);
  border: 1px solid #e4e4e4;
  border-bottom-color: #b4b4b4;
  border-left-color: #d2d2d2;
  border-right-color: #d2d2d2;
  color: #3a3a3a;
  cursor: pointer;
  font-size: 1rem;
  font-weight: normal;
  text-align: center;
  padding: 0.25em 1.063em;
  border-radius: 1em;
}

/**
 * @file
 * Theme styling for user module.
 */
/* Visual styling for the Password strength indicator */
.password-strength__meter {
  margin-top: 0.5em;
  background-color: #e9ecef;
}

.password-strength__indicator {
  background-color: #28a745;
  -webkit-transition: width 0.5s ease-out;
  transition: width 0.5s ease-out;
}

.password-strength__indicator.is-weak {
  background-color: #E53935;
}

.password-strength__indicator.is-fair {
  background-color: #ffc107;
}

.password-strength__indicator.is-good {
  background-color: #17a2b8;
}

.password-strength__indicator.is-strong {
  background-color: #28a745;
}

.password-confirm,
.password-field,
.password-strength,
.password-confirm-match {
  width: 55%;
}

.password-suggestions {
  padding: 0.2em 0.5em;
  margin: 0.7em 0;
  max-width: 34.7em;
  border: 1px solid gray;
}

.password-suggestions ul {
  margin-bottom: 0;
}

.confirm-parent,
.password-parent {
  clear: left;
  /* LTR */
  margin: 0;
  max-width: 33em;
  overflow: hidden;
}

[dir=rtl] .confirm-parent,
[dir=rtl] .password-parent {
  clear: right;
}

/* Styling for the status indicator of the passwords match test.  */
.password-confirm .ok {
  color: #28a745;
  font-weight: bold;
}

.password-confirm .error {
  color: #E53935;
  font-weight: bold;
}

/* Login page stype */
.page-user-login main .region-content,
.page-user-password main .region-content {
  max-width: 400px;
  background: white;
  padding: 1rem 1rem;
  margin: 0 auto;
  border-radius: 0.3rem;
}

/**
 * @file
 * Vertical tabs component.
 */
/* Vertical Tabs Reset */
.vertical-tabs__menu {
  margin: -1px 0 -1px;
  /* LTR */
  padding: 0;
}

[dir=rtl] .vertical-tabs__menu {
  margin-left: 0;
  margin-right: -1em;
  /* This is required to win specificity over [dir="rtl"] .region-content ul */
  padding: 0;
}

/**
 * @file
 * Vertical Tabs.
 */
.vertical-tabs {
  margin: 0;
  /* LTR */
  border: 1px solid gray;
  display: flex;
  flex-direction: row;
  font-size: 0.875rem;
}

[dir=rtl] .vertical-tabs {
  flex-direction: row-reverse;
  margin-left: 0;
  margin-right: 0;
}

.vertical-tabs__menu {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  /* LTR */
  width: 15em;
  margin: 0;
  /* LTR */
  padding: 0;
  border-top: 1px solid gray;
  list-style: none;
}

[dir=rtl] .vertical-tabs__menu {
  margin-left: 0;
  margin-right: -15em;
}

.vertical-tabs__pane {
  margin: 0;
  border: 0;
}

.vertical-tabs__pane > summary {
  display: none;
}

/* Layout of each tab. */
.vertical-tabs__menu-item {
  border: 1px solid gray;
  border-top: 0;
  background: #eee;
}

.vertical-tabs__menu-item a {
  display: block;
  padding: 0.5em 0.6em;
  text-decoration: none;
}

.vertical-tabs__menu-item a:focus .vertical-tabs__menu-item-title,
.vertical-tabs__menu-item a:active .vertical-tabs__menu-item-title,
.vertical-tabs__menu-item a:hover .vertical-tabs__menu-item-title {
  text-decoration: underline;
}

.vertical-tabs__menu-item a:hover {
  outline: 1px dotted;
}

.vertical-tabs__menu-item.is-selected {
  border-right-width: 0;
  /* LTR */
  background-color: #FEFEFE;
}

[dir=rtl] .vertical-tabs__menu-item.is-selected {
  border-left-width: 0;
  border-right-width: 1px;
}

.vertical-tabs__menu-item.is-selected .vertical-tabs__menu-item-title {
  color: #000;
}

.vertical-tabs__menu-item-summary {
  display: block;
  margin-bottom: 0;
  line-height: normal;
}

/**
 * @file
 * Styling for Views in Bartik.
 */
/* Tab styles */
.views-displays .tabs .open > a {
  border-radius: 0.3rem 0.3rem 0 0;
}

.views-displays .tabs .open > a:hover,
.views-displays .tabs .open > a:focus {
  color: #2A6296;
}

.views-displays .secondary .form-submit {
  font-size: 0.875rem;
}

/* Tabs action list styles */
.views-displays .tabs .action-list {
  padding: 0;
}

/* Contextual filter options styles */
.views-filterable-options .filterable-option:nth-of-type(even) .form-type-checkbox {
  background-color: #F9F9F9;
}

/* Views action dropbutton styles */
.views-ui-display-tab-actions .dropbutton .form-submit {
  color: #309B9C;
}

.views-ui-display-tab-actions .dropbutton .form-submit:hover,
.views-ui-display-tab-actions .dropbutton .form-submit:focus {
  color: #2A6296;
}

/* Generic Views Fields */
div.view-header {
  margin-top: 0.5rem;
}

div.views-view-grid.horizontal {
  width: 100%;
}

.node--view-mode-teaser .field--name-node-title {
  clear: both;
}
.node--view-mode-teaser .field--name-node-link {
  margin: 1rem 0;
}
.node--view-mode-teaser .field--name-field-image {
  margin-right: 0;
}

.view-content .field--name-node-title h2 {
  font-size: 26px;
}

.views-row {
  width: 100%;
}

/* DATA */
.block-views .view-data-products-by-lab .view-content > div {
  width: 100%;
}
.block-views .view-data-products-by-lab .view-content .row {
  border-bottom: 1px dotted #E6E6E6;
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem;
}

.view-data-products-by-lab .views-view-grid .row > div {
  margin-bottom: 2rem;
  box-shadow: 0 10px 8px #EBF3FA;
}
.view-data-products-by-lab .field--name-field-teaser-summary-plain {
  margin-bottom: 1rem;
}

@media all and (max-width: 768px) {
  .views-element-container {
    padding: 0 0;
  }
  .views-element-container div.view {
    padding: 0.25rem 0.25rem;
  }
}
/* MIXINS */
.btn-primary a {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-primary a:hover {
  color: #FEFEFE;
  background-color: #224e78;
  border-color: #1f486e;
}
.btn-primary a:focus, .btn-primary a.focus {
  color: #FEFEFE;
  background-color: #224e78;
  border-color: #1f486e;
  box-shadow: 0 0 0 0.2rem rgba(74, 121, 166, 0.5);
}
.btn-primary a.disabled, .btn-primary a:disabled {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-primary a:not(:disabled):not(.disabled):active, .btn-primary a:not(:disabled):not(.disabled).active, .show > .btn-primary a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1f486e;
  border-color: #1c4164;
}
.btn-primary a:not(:disabled):not(.disabled):active:focus, .btn-primary a:not(:disabled):not(.disabled).active:focus, .show > .btn-primary a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(74, 121, 166, 0.5);
}

.btn-secondary a {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-secondary a:hover {
  color: #FEFEFE;
  background-color: #162533;
  border-color: #121f2a;
}
.btn-secondary a:focus, .btn-secondary a.focus {
  color: #FEFEFE;
  background-color: #162533;
  border-color: #121f2a;
  box-shadow: 0 0 0 0.2rem rgba(66, 87, 104, 0.5);
}
.btn-secondary a.disabled, .btn-secondary a:disabled {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-secondary a:not(:disabled):not(.disabled):active, .btn-secondary a:not(:disabled):not(.disabled).active, .show > .btn-secondary a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #121f2a;
  border-color: #0e1821;
}
.btn-secondary a:not(:disabled):not(.disabled):active:focus, .btn-secondary a:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(66, 87, 104, 0.5);
}

.btn-success a {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success a:hover {
  color: #FEFEFE;
  background-color: #218838;
  border-color: #1e7e34;
}
.btn-success a:focus, .btn-success a.focus {
  color: #FEFEFE;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}
.btn-success a.disabled, .btn-success a:disabled {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success a:not(:disabled):not(.disabled):active, .btn-success a:not(:disabled):not(.disabled).active, .show > .btn-success a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1e7e34;
  border-color: #1c7430;
}
.btn-success a:not(:disabled):not(.disabled):active:focus, .btn-success a:not(:disabled):not(.disabled).active:focus, .show > .btn-success a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info a {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info a:hover {
  color: #FEFEFE;
  background-color: #138496;
  border-color: #117a8b;
}
.btn-info a:focus, .btn-info a.focus {
  color: #FEFEFE;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}
.btn-info a.disabled, .btn-info a:disabled {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info a:not(:disabled):not(.disabled):active, .btn-info a:not(:disabled):not(.disabled).active, .show > .btn-info a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #117a8b;
  border-color: #10707f;
}
.btn-info a:not(:disabled):not(.disabled):active:focus, .btn-info a:not(:disabled):not(.disabled).active:focus, .show > .btn-info a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning a {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning a:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}
.btn-warning a:focus, .btn-warning a.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.btn-warning a.disabled, .btn-warning a:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning a:not(:disabled):not(.disabled):active, .btn-warning a:not(:disabled):not(.disabled).active, .show > .btn-warning a.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}
.btn-warning a:not(:disabled):not(.disabled):active:focus, .btn-warning a:not(:disabled):not(.disabled).active:focus, .show > .btn-warning a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger a {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-danger a:hover {
  color: #FEFEFE;
  background-color: #d8201c;
  border-color: #cd1e1a;
}
.btn-danger a:focus, .btn-danger a.focus {
  color: #FEFEFE;
  background-color: #d8201c;
  border-color: #cd1e1a;
  box-shadow: 0 0 0 0.2rem rgba(233, 87, 83, 0.5);
}
.btn-danger a.disabled, .btn-danger a:disabled {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-danger a:not(:disabled):not(.disabled):active, .btn-danger a:not(:disabled):not(.disabled).active, .show > .btn-danger a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #cd1e1a;
  border-color: #c11d19;
}
.btn-danger a:not(:disabled):not(.disabled):active:focus, .btn-danger a:not(:disabled):not(.disabled).active:focus, .show > .btn-danger a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(233, 87, 83, 0.5);
}

.btn-light a {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light a:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}
.btn-light a:focus, .btn-light a.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}
.btn-light a.disabled, .btn-light a:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light a:not(:disabled):not(.disabled):active, .btn-light a:not(:disabled):not(.disabled).active, .show > .btn-light a.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}
.btn-light a:not(:disabled):not(.disabled):active:focus, .btn-light a:not(:disabled):not(.disabled).active:focus, .show > .btn-light a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark a {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark a:hover {
  color: #FEFEFE;
  background-color: #23272b;
  border-color: #1d2124;
}
.btn-dark a:focus, .btn-dark a.focus {
  color: #FEFEFE;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 87, 93, 0.5);
}
.btn-dark a.disabled, .btn-dark a:disabled {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark a:not(:disabled):not(.disabled):active, .btn-dark a:not(:disabled):not(.disabled).active, .show > .btn-dark a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #1d2124;
  border-color: #171a1d;
}
.btn-dark a:not(:disabled):not(.disabled):active:focus, .btn-dark a:not(:disabled):not(.disabled).active:focus, .show > .btn-dark a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 87, 93, 0.5);
}

.btn-outline-primary a {
  color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary a:hover {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary a:focus, .btn-outline-primary a.focus {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}
.btn-outline-primary a.disabled, .btn-outline-primary a:disabled {
  color: #2A6296;
  background-color: transparent;
}
.btn-outline-primary a:not(:disabled):not(.disabled):active, .btn-outline-primary a:not(:disabled):not(.disabled).active, .show > .btn-outline-primary a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #2A6296;
  border-color: #2A6296;
}
.btn-outline-primary a:not(:disabled):not(.disabled):active:focus, .btn-outline-primary a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(42, 98, 150, 0.5);
}

.btn-outline-secondary a {
  color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary a:hover {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary a:focus, .btn-outline-secondary a.focus {
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}
.btn-outline-secondary a.disabled, .btn-outline-secondary a:disabled {
  color: #21394E;
  background-color: transparent;
}
.btn-outline-secondary a:not(:disabled):not(.disabled):active, .btn-outline-secondary a:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #21394E;
  border-color: #21394E;
}
.btn-outline-secondary a:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(33, 57, 78, 0.5);
}

.btn-outline-success a {
  color: #28a745;
  border-color: #28a745;
}
.btn-outline-success a:hover {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success a:focus, .btn-outline-success a.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}
.btn-outline-success a.disabled, .btn-outline-success a:disabled {
  color: #28a745;
  background-color: transparent;
}
.btn-outline-success a:not(:disabled):not(.disabled):active, .btn-outline-success a:not(:disabled):not(.disabled).active, .show > .btn-outline-success a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success a:not(:disabled):not(.disabled):active:focus, .btn-outline-success a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info a {
  color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info a:hover {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info a:focus, .btn-outline-info a.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.btn-outline-info a.disabled, .btn-outline-info a:disabled {
  color: #17a2b8;
  background-color: transparent;
}
.btn-outline-info a:not(:disabled):not(.disabled):active, .btn-outline-info a:not(:disabled):not(.disabled).active, .show > .btn-outline-info a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info a:not(:disabled):not(.disabled):active:focus, .btn-outline-info a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning a {
  color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning a:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning a:focus, .btn-outline-warning a.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.btn-outline-warning a.disabled, .btn-outline-warning a:disabled {
  color: #ffc107;
  background-color: transparent;
}
.btn-outline-warning a:not(:disabled):not(.disabled):active, .btn-outline-warning a:not(:disabled):not(.disabled).active, .show > .btn-outline-warning a.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning a:not(:disabled):not(.disabled):active:focus, .btn-outline-warning a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger a {
  color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger a:hover {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger a:focus, .btn-outline-danger a.focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}
.btn-outline-danger a.disabled, .btn-outline-danger a:disabled {
  color: #E53935;
  background-color: transparent;
}
.btn-outline-danger a:not(:disabled):not(.disabled):active, .btn-outline-danger a:not(:disabled):not(.disabled).active, .show > .btn-outline-danger a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #E53935;
  border-color: #E53935;
}
.btn-outline-danger a:not(:disabled):not(.disabled):active:focus, .btn-outline-danger a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 57, 53, 0.5);
}

.btn-outline-light a {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light a:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light a:focus, .btn-outline-light a.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light a.disabled, .btn-outline-light a:disabled {
  color: #f8f9fa;
  background-color: transparent;
}
.btn-outline-light a:not(:disabled):not(.disabled):active, .btn-outline-light a:not(:disabled):not(.disabled).active, .show > .btn-outline-light a.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light a:not(:disabled):not(.disabled):active:focus, .btn-outline-light a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark a {
  color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark a:hover {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark a:focus, .btn-outline-dark a.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.btn-outline-dark a.disabled, .btn-outline-dark a:disabled {
  color: #343a40;
  background-color: transparent;
}
.btn-outline-dark a:not(:disabled):not(.disabled):active, .btn-outline-dark a:not(:disabled):not(.disabled).active, .show > .btn-outline-dark a.dropdown-toggle {
  color: #FEFEFE;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark a:not(:disabled):not(.disabled):active:focus, .btn-outline-dark a:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark a.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.header-gradient {
  background: -webkit-linear-gradient(#6c757d, #2A6296, #6c757d);
  background: -o-linear-gradient(#6c757d, #2A6296, #6c757d);
  background: -moz-linear-gradient(#6c757d, #2A6296, #6c757d);
  background: linear-gradient(#6c757d, #2A6296, #6c757d);
}

pre {
  white-space: pre-wrap;
}

.field--name-field-laboratories .field__item:not(:last-child):after,
.field--name-field-missions .field__item:not(:last-child):after {
  content: ", ";
}

div.featured-top {
  width: 100%;
  margin: 0 0;
  overflow: hidden;
}
div.featured-top aside.featured-top__inner {
  padding: 0 0;
  max-width: 100%;
}
div.featured-top #block-featuredimagebanner {
  width: 100%;
}
div.featured-top div.content {
  padding: 0 0;
}
.region-featured-top div {
  display: inline;
}
.region-featured-top #block-featuredimagebanner p {
  margin-bottom: 0;
}
.region-featured-top #block-featuredimagebanner p:nth-child(2) {
  display: none;
}

#block-homepagebanner p {
  margin-bottom: 0 !important;
}

nav#toolbar-bar,
.toolbar .toolbar-tray,
#toolbar-administration,
#toolbar-administration-tray {
  z-index: 500000;
}

div.topical-menu {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  font-size: 1.2rem;
  background-color: #2A6296;
  background-image: url("../img/topicsGradient.jpg");
  background-size: contain;
  background-repeat: repeat-x;
  max-height: 120px;
}
div.topical-menu .views-field-field-topic-teaser-image .field-content.inactive,
div.topical-menu .views-field-field-hover-topic-icon .field-content.inactive {
  display: none;
}
@media all and (min-width: 1200px) {
  div.topical-menu {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}
@media all and (min-width: 992px) and (max-width: 1199px) {
  div.topical-menu {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}
@media all and (min-width: 768px) and (max-width: 991px) {
  div.topical-menu {
    margin-top: 0;
    padding-top: 4px;
    padding-bottom: 4px;
  }
}
@media all and (max-width: 767px) {
  div.topical-menu {
    padding-top: 4px;
    padding-bottom: 4px;
  }
}

.region-topical-menu a {
  color: #FEFEFE;
  font-weight: 700;
}
.region-topical-menu a:hover {
  color: #DCDCDC;
}
.region-topical-menu .views-field-name {
  margin: 0 0;
}
@media all and (min-width: 1200px) {
  .region-topical-menu .views-field-name {
    padding-top: 0.5rem;
  }
}
.region-topical-menu .views-element-container {
  width: 100%;
}
@media all and (min-width: 769px) {
  .region-topical-menu .views-element-container {
    padding: 0 10%;
  }
}
.region-topical-menu .views-row {
  width: 16.66667%;
  text-align: center;
}
.region-topical-menu .views-row .views-field views-field-field-hover-topic-icon,
.region-topical-menu .views-row .views-field-field-topic-teaser-image {
  max-height: 50px;
}
.region-topical-menu .views-row .views-field views-field-field-hover-topic-icon img,
.region-topical-menu .views-row .views-field-field-topic-teaser-image img {
  max-width: 50px;
  max-height: 50px !important;
}
@media all and (max-width: 767px) {
  .region-topical-menu .views-row .views-field-field-topic-teaser-image {
    padding: 0.25rem 0.5rem;
  }
  .region-topical-menu .views-row .views-field-name {
    display: none;
  }
}
.region-topical-menu .views-field-field-topic-teaser-image {
  display: inline;
}

.block-views .views-element-container {
  padding: 0px;
}

.block-views-blockorganizational-units-block-1 h2,
.block-views-blockorganizational-units-block-1 .viewsreference--view-title,
.block-views-blocklaboratories-block-1 h2,
.block-views-blocklaboratories-block-1 .viewsreference--view-title,
.field--type-viewsreference h2,
.field--type-viewsreference .viewsreference--view-title {
  font-weight: 700;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 2rem;
  color: black;
}
.block-views-blockorganizational-units-block-1 .field--type-image,
.block-views-blocklaboratories-block-1 .field--type-image,
.field--type-viewsreference .field--type-image {
  float: none !important;
}
.block-views-blockorganizational-units-block-1 .taxonomy-term--type-labs .bs-region--main,
.block-views-blocklaboratories-block-1 .taxonomy-term--type-labs .bs-region--main,
.field--type-viewsreference .taxonomy-term--type-labs .bs-region--main {
  float: left;
}
.block-views-blockorganizational-units-block-1 .view-content,
.block-views-blocklaboratories-block-1 .view-content,
.field--type-viewsreference .view-content {
  margin-bottom: 1.5rem;
  /*
   * Creative use of nth-child for styling 
   */
}
.block-views-blockorganizational-units-block-1 .view-content h5,
.block-views-blocklaboratories-block-1 .view-content h5,
.field--type-viewsreference .view-content h5 {
  display: inline-block;
  color: #2A6296;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div, .block-views-blockorganizational-units-block-1 .view-content div.taxonomy-term,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.taxonomy-term,
.field--type-viewsreference .view-content div.no-div,
.field--type-viewsreference .view-content div.taxonomy-term {
  display: inline !important;
  text-align: center;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
  position: relative;
  margin: 0 auto;
  margin-bottom: 1rem;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div img,
.block-views-blocklaboratories-block-1 .view-content div.no-div img,
.field--type-viewsreference .view-content div.no-div img {
  border: 2px solid white;
  outline: 4px solid #2A6296;
  border-radius: 4px;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div a,
.block-views-blocklaboratories-block-1 .view-content div.no-div a,
.field--type-viewsreference .view-content div.no-div a {
  text-align: center;
  color: #2A6296;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div a:hover,
.block-views-blocklaboratories-block-1 .view-content div.no-div a:hover,
.field--type-viewsreference .view-content div.no-div a:hover {
  color: #1d4366;
}
.block-views-blockorganizational-units-block-1 .view-content div.no-div div.col-sm-12,
.block-views-blocklaboratories-block-1 .view-content div.no-div div.col-sm-12,
.field--type-viewsreference .view-content div.no-div div.col-sm-12 {
  padding: 0 0;
}
@media all and (min-width: 992px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    width: 20%;
    padding: 0 2rem;
  }
  .block-views-blockorganizational-units-block-1 .view-content div.no-div h3,
.block-views-blocklaboratories-block-1 .view-content div.no-div h3,
.field--type-viewsreference .view-content div.no-div h3 {
    font-size: 26px;
    min-height: 62px;
  }
}
@media all and (min-width: 768px) and (max-width: 991px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    padding: 0.5rem 0.5rem;
  }
  .block-views-blockorganizational-units-block-1 .view-content div.no-div h3,
.block-views-blocklaboratories-block-1 .view-content div.no-div h3,
.field--type-viewsreference .view-content div.no-div h3 {
    font-size: 20px;
    min-height: 42px;
  }
}
@media all and (min-width: 550px) and (max-width: 767px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    padding: 0.25rem 0.25rem;
  }
  .block-views-blockorganizational-units-block-1 .view-content div.no-div h3,
.block-views-blocklaboratories-block-1 .view-content div.no-div h3,
.field--type-viewsreference .view-content div.no-div h3 {
    font-size: 18px;
    min-height: 42px;
  }
}
@media all and (max-width: 549px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    padding: 1rem 1rem;
    width: 50%;
  }
}
@media all and (min-width: 992px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div:nth-child(1),
.block-views-blockorganizational-units-block-1 .view-content div.no-div:nth-child(10),
.block-views-blocklaboratories-block-1 .view-content div.no-div:nth-child(1),
.block-views-blocklaboratories-block-1 .view-content div.no-div:nth-child(10),
.field--type-viewsreference .view-content div.no-div:nth-child(1),
.field--type-viewsreference .view-content div.no-div:nth-child(10) {
    margin-left: 10%;
  }
  .block-views-blockorganizational-units-block-1 .view-content div.no-div:nth-child(4),
.block-views-blockorganizational-units-block-1 .view-content div.no-div:nth-child(13),
.block-views-blocklaboratories-block-1 .view-content div.no-div:nth-child(4),
.block-views-blocklaboratories-block-1 .view-content div.no-div:nth-child(13),
.field--type-viewsreference .view-content div.no-div:nth-child(4),
.field--type-viewsreference .view-content div.no-div:nth-child(13) {
    margin-right: 10%;
  }
}
@media all and (max-width: 991px) {
  .block-views-blockorganizational-units-block-1 .view-content div.no-div,
.block-views-blocklaboratories-block-1 .view-content div.no-div,
.field--type-viewsreference .view-content div.no-div {
    width: 33%;
  }
  .block-views-blockorganizational-units-block-1 .view-content .field--name-field-lab-icon-image,
.block-views-blocklaboratories-block-1 .view-content .field--name-field-lab-icon-image,
.field--type-viewsreference .view-content .field--name-field-lab-icon-image {
    float: none;
  }
}

/* Separate page display */
@media all and (max-width: 768px) {
  #views-bootstrap-organizational-units-page-1 div.views-field,
#views-bootstrap-organizational-units-page-1 div.field-content,
#views-bootstrap-organizational-units-page-1 div.row {
    display: inline;
  }
  #views-bootstrap-organizational-units-page-1 div.col {
    display: inline-grid;
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 1.5rem;
  }
  #views-bootstrap-organizational-units-page-1 div.col h3 {
    display: inline;
    font-size: 22px;
  }
}
#views-bootstrap-organizational-units-page-1 .views-field-field-full-name,
#views-bootstrap-organizational-units-page-1 .views-field-field-full-name h3 {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  max-height: 24px;
}
#views-bootstrap-organizational-units-page-1 h3 {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 20px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}

.view-organizational-units div.taxonomy-term--type-labs .field--name-field-full-name,
.view-organizational-units div.taxonomy-term--type-offices-and-centers .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 40px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}
.view-organizational-units div.taxonomy-term--type-labs h2, .view-organizational-units div.taxonomy-term--type-labs h3,
.view-organizational-units div.taxonomy-term--type-offices-and-centers h2,
.view-organizational-units div.taxonomy-term--type-offices-and-centers h3 {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
}
.view-organizational-units .rounded img {
  border-radius: 8px;
}
.view-organizational-units h2, .view-organizational-units .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  padding: 0.5rem 0.5rem;
  margin-bottom: 1rem;
}
.view-organizational-units h3 {
  text-align: center;
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  padding: 0.5rem 0.5rem;
  margin-bottom: 1rem;
}
.view-organizational-units .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  padding: 0.5rem 0.5rem;
  margin-bottom: 1rem;
}

/* I'm assuming all taxonomy pages w/ one-sidebar Layout Builder Display = Labs */
/* This is patently false, because topics are also prone to one-sidebary tax. layouts */
body.layout-one-sidebar.path-taxonomy h1.title {
  display: none;
}

.vocabulary-labs .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 40px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  margin: 0 0.25rem 0.5rem 0.25rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}
.vocabulary-labs .field--name-description {
  /*        @media all and (min-width: 992px) {
              width: 110%;
              position: relative;
              left: -10%;
              z-index: 1000000;
          }
  */
  background: white;
  margin-bottom: 2rem;
  padding: 1rem 1rem;
  border: 1px dotted black;
  border-radius: 4px;
}

.block-views-blockoffices-and-centers-block-1 h2 {
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.taxonomy-term--type-offices-and-centers.taxonomy-term--view-mode-teaser-block .field--name-taxonomy-term-title {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 20px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}

.view-offices-and-centers {
  /*
   * Creative use of nth-child for styling 
   */
}
.view-offices-and-centers .views-row {
  display: inline-block;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media all and (min-width: 992px) {
  .view-offices-and-centers .views-row:nth-child(1) {
    margin-left: 10%;
  }
  .view-offices-and-centers .views-row:nth-child(4) {
    margin-right: 10%;
  }
  .view-offices-and-centers .views-row {
    width: 20%;
  }
}
@media all and (max-width: 991px) {
  .view-offices-and-centers .views-row {
    width: 50%;
  }
}
.view-offices-and-centers img {
  max-width: inherit;
  text-align: center;
}
.view-offices-and-centers .field--name-taxonomy-term-title {
  text-align: center;
}

/*
 * Home Page Ribbon Menu
 */
.menu--home-page-ribbon-menu {
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-left: -23px;
  margin-right: -23px;
  background-color: #ADE3B2;
  background-image: url("../img/ribbonGradient1.jpg");
  background-size: contain;
  background-repeat: repeat-x;
  font-family: "Squada One", "PT Sans Narrow", "Helvetica Neue", sans-serif;
}
.menu--home-page-ribbon-menu ul, .menu--home-page-ribbon-menu li {
  position: relative;
  margin: 0 auto;
}
.menu--home-page-ribbon-menu a {
  margin: 1rem auto;
  text-align: center;
  color: #2A6296;
  font-weight: bold;
  font-size: 1.5rem;
}

.vocabulary-offices-and-centers .field--name-field-full-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 32px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}

.slick button.slick-prev {
  left: -2.5rem;
}
.slick button.slick-next {
  right: -2.5rem;
}
.slick .slide__title {
  margin: 5px 0px 5px 0px;
}

@media all and (min-width: 768px) {
  .slick-slide .slide__caption {
    min-height: 240px;
  }
  .slick-slide .slide__caption a {
    font-size: 24px;
  }
  .slick-slide img {
    height: 220px;
    overflow: hidden;
  }
}
@media all and (max-width: 767px) {
  .slick-slide .slide__caption a {
    font-size: 18px;
  }
  .slick-slide img {
    height: 110px;
    overflow: hidden;
  }
}

.view-upcoming-events {
  margin: 0 15px;
}

@media all and (max-width: 1600px) and (min-width: 992px) {
  body.path-frontpage div.field--name-field-paragraphs,
body.path-frontpage div.paragraph--type--custom-paragraph-content-block {
    margin-left: -23px;
    margin-right: -23px !important;
  }
}

#content-categories {
  width: 100%;
  height: 0;
  padding: 0 4.166667%;
  padding-top: 31.823%;
}
@media all and (min-width: 992px) {
  #content-categories {
    background-image: url("../img/skinnyearth2.gif");
    background-size: contain;
    background-repeat: no-repeat;
  }
}
#content-categories div.bubbles {
  position: relative;
  margin-left: 8.3333%;
}
#content-categories div.row {
  height: 150px;
  position: relative;
}
@media all and (min-width: 1400px) {
  #content-categories div.row:nth-child(1) {
    top: 1rem;
  }
}
#content-categories div.row:nth-child(2) {
  top: -3rem;
}
@media all and (min-width: 1400px) {
  #content-categories div.row:nth-child(2) {
    top: -2rem;
  }
}
#content-categories div.row:nth-child(3) {
  top: -6rem;
}
@media all and (min-width: 1400px) {
  #content-categories div.row:nth-child(3) {
    top: -4rem;
  }
}
#content-categories span.col-md-2,
#content-categories span.col-2 {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  font-size: 1.3rem;
  position: relative;
  z-index: 10000;
  padding: 0.5rem 1rem;
}
@media all and (max-width: 1139px) and (min-width: 1080px) {
  #content-categories span.col-md-2,
#content-categories span.col-2 {
    padding: 1rem 0.5rem;
  }
}
#content-categories span.col-md-2 a,
#content-categories span.col-2 a {
  visibility: hidden;
  color: #FFFFFF;
  text-align: center;
  background-image: url("../img/bubble.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media all and (min-width: 1140px) {
  #content-categories span.col-md-2 a,
#content-categories span.col-2 a {
    height: 150px;
  }
}
@media all and (max-width: 1139px) and (min-width: 1080px) {
  #content-categories span.col-md-2 a,
#content-categories span.col-2 a {
    height: 120px;
  }
}
@media all and (max-width: 1079px) {
  #content-categories span.col-md-2 a,
#content-categories span.col-2 a {
    height: 100px;
  }
}
#content-categories span.col-md-2 a:hover, #content-categories span.col-md-2 a:active,
#content-categories span.col-2 a:hover,
#content-categories span.col-2 a:active {
  color: aqua;
}
#content-categories ul {
  width: 100%;
  padding-left: 4.166667%;
  position: relative;
  color: #FFFFFF;
  z-index: 1000;
  text-align: center;
}
#content-categories ul li {
  font-family: "PT Sans Narrow", "Helvetica Neue", sans-serif;
  font-size: 1.4rem;
  visibility: hidden;
  background-image: url("../img/bubble.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
#content-categories ul li a {
  position: relative;
  color: #FFFFFF;
  bottom: 1.75rem;
  /*                
                  @media all and (max-width: 1199px) and (min-width: 992px) {
                      font-size: 0.8rem;
                      max-height: 1rem;
                      bottom: 1.25rem;
                  }
                  @media all and (max-width: 991px) {
                      font-size: 0.6rem;
                      max-height: 1rem;   // force two-line names to display as one
                      bottom: 1rem;
                  }
  */
}
@media all and (min-width: 1080px) {
  #content-categories ul li:nth-child(1),
#content-categories ul li:nth-child(6) {
    top: 4rem;
  }
}
@media all and (max-width: 1079px) and (min-width: 768px) {
  #content-categories ul li:nth-child(1),
#content-categories ul li:nth-child(6) {
    top: 2rem;
  }
}
@media all and (min-width: 1080px) {
  #content-categories ul li:nth-child(2),
#content-categories ul li:nth-child(5) {
    top: 1.5rem;
  }
}
@media all and (max-width: 1079px) and (min-width: 768px) {
  #content-categories ul li:nth-child(2),
#content-categories ul li:nth-child(5) {
    top: 0rem;
  }
}
@media all and (max-width: 991px) {
  #content-categories {
    display: none;
  }
}

/*
#earth-horizon {
    position: relative;
    bottom: 404px;
    z-index: 100;
}
*/
/* Slick Slider for Events*/
div.block-views-blockupcoming-events-block-2 {
  background-image: url("../img/peopleopacity.png");
  background-repeat: no-repeat;
  background-size: cover;
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  padding-top: 1.5rem;
  position: relative;
  bottom: 1rem;
}
div.block-views-blockupcoming-events-block-2 h2 {
  font-weight: 700;
  color: #2A6296;
  text-align: center;
}
div.block-views-blockupcoming-events-block-2 .slide__caption {
  color: #21394E;
  background: #FFFFFF;
  font-size: 1.33rem;
  margin-top: 1em;
  position: relative;
  width: 103%;
  left: -1.5%;
  padding: 0.5rem 0.5rem;
}
div.block-views-blockupcoming-events-block-2 .slide__caption h2 {
  background-image: none;
  color: #21394E;
}
div.block-views-blockupcoming-events-block-2 div.slick .grid {
  padding-top: 1rem;
  padding-bottom: 0;
  background-image: linear-gradient(to right, rgba(255, 0, 0, 0), rgba(255, 0, 0, 0) 3%, #21394E 3%, #21394E 97%, rgba(255, 0, 0, 0) 97%);
}
div.block-views-blockupcoming-events-block-2 div.slick .grid a {
  text-align: center;
}
div.block-views-blockupcoming-events-block-2 div.slick .grid img {
  width: 104%;
  max-width: 110%;
  position: relative;
  left: -2%;
}
div.block-views-blockupcoming-events-block-2 .slick-arrow:before {
  color: #2A6296;
}

/* Home Page View Displays for Events */
.view-upcoming-events .field--type-datetime {
  font-style: italic;
  border-bottom: 1px dashed silver;
  padding: 0.25rem 0.25rem;
}
.view-upcoming-events .field--name-field-summary {
  padding: 0.25rem 0;
}

.vocabulary-labs div.content div.view-upcoming-events div.views-view-grid .row div.col {
  margin-bottom: 0.5rem;
}
.vocabulary-labs div.content div.view-upcoming-events div.views-view-grid .row div.col div.node--type-article {
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  height: 100%;
}
.vocabulary-labs div.content div.view-upcoming-events div.views-view-grid .row div.col .field--name-field-post-date {
  font-style: italic;
  font-weight: 600;
}
.vocabulary-labs div.content div.view-upcoming-events div.view-footer {
  margin-bottom: 1rem;
}

.view-upcoming-events .view-content .grid .row div.col {
  margin-bottom: 1rem;
}
.view-upcoming-events .view-content .grid .row div.col div.node--view-mode-teaser {
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  height: 100%;
  padding: 1rem 1rem;
  margin-right: 1rem;
}

/* Events View Blocks */
#views-bootstrap-upcoming-events-page-1 div.col {
  padding-left: 0.333rem;
  padding-right: 0.333rem;
}

div.field--name-node-link a {
  color: coral;
  padding: 0.5rem 0.5rem;
  border: 1px solid gray;
  border-radius: 7px;
}
div.field--name-node-link a:hover {
  color: #ff571a;
  background: #E6E6E6;
}

#block-earth-science-content .item-list--blazy {
  width: 100%;
}
#block-earth-science-content .grid__content {
  padding: 0px;
}

.block-field-blocktaxonomy-termtopicsname .field--name-name {
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif !important;
  font-size: 32px;
  font-weight: bold;
  color: black;
  padding: 0.5rem 0.5rem;
  position: relative;
  top: -0.5rem;
  left: -0.5rem;
  margin: 0.75rem 0.5rem 0.5rem 0.5rem;
  background-image: url("../img/opacityheader.png");
  background-repeat: repeat-x;
  background-size: contain;
  margin-bottom: 1rem;
}

.field--name-field-topics.field--type-entity-reference {
  float: right;
}
.field--name-field-topics.field--type-entity-reference .field__label:after {
  content: ": ";
}
.field--name-field-topics.field--type-entity-reference .field__items .field__item {
  display: inline;
}
.field--name-field-topics.field--type-entity-reference .field__items .field__item:not(:last-child):after {
  content: ", ";
}

.views-field-field-topics div.field-content a {
  float: right;
}

.vocabulary-topics .field--type-datetime {
  font-style: italic;
  border-bottom: 1px dashed silver;
  padding: 0.25rem 0.25rem;
}
.vocabulary-topics .field--name-field-summary {
  padding: 0.25rem 0;
}

.node--type-space-mission.node--view-mode-teaser .field--name-field-image img {
  max-height: 480px;
  overflow: hidden;
}

.field--name-field-launch-date {
  font-weight: 600;
  font-style: italic;
}
.field--name-field-launch-date .field__label::after {
  content: ": ";
}

.node--type-highlights h2, .node--type-highlights .field--name-node-title, .node--type-highlights div.item-list {
  background-image: none !important;
  font-size: 28px;
  display: inline-block;
}
.node--type-highlights .field--name-node-title h2 {
  font-size: 22px;
}
.node--type-highlights .field--name-field-month-year {
  margin-bottom: 0;
  padding-bottom: 0;
}

#block-earth-science-content .field--name-field-summary p {
  font-size: 24px;
  font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
}

.path-highlights .node--type-highlights.node--view-mode-teaser {
  max-width: 220px;
  display: inline-block;
}
.path-highlights .node--type-highlights.node--view-mode-teaser div.field--name-node-title {
  height: 112px;
  max-height: 112px;
  overflow: hidden;
}
.path-highlights .node--type-highlights.node--view-mode-teaser div.field--name-node-title h2 {
  padding-left: 0;
}

.view-science-highlights time {
  color: Tomato;
  font-weight: bold;
}
.view-science-highlights .field--name-node-title h2 {
  font-size: 22px;
}
.view-science-highlights .field--name-field-month-year {
  margin-bottom: 0;
  padding-bottom: 0;
}
.view-science-highlights .views-field-field-primary-category div {
  display: inline !important;
}

@media all and (min-width: 529px) {
  #block-earth-science-content .field--name-field-summary p {
    font-size: 24px;
    font-family: "PT Sans Narrow", "Squada One", "Helvetica Neue", sans-serif;
  }

  .path-highlights .node--type-highlights.node--view-mode-teaser {
    max-width: 220px;
  }

  .node--type-highlights div.field--name-node-title {
    height: 112px;
    max-height: 112px;
    overflow: hidden;
  }
  .node--type-highlights div.field--name-node-title h2 {
    padding-left: 0;
    height: 140px;
    overflow: hidden;
  }
}
@media all and (max-width: 575px) {
  .view-science-highlights .row {
    width: 100% !important;
  }
  .view-science-highlights .node--view-mode-teaser {
    width: inherit !important;
    text-align: center !important;
  }

  .view-science-highlights .row,
.node--type-highlights {
    display: inline-block;
    width: inherit;
  }

  .view-science-highlights .row > div {
    display: inline-block;
    width: auto !important;
  }
}
section.region-offcanvas li.nav-item {
  width: 100%;
}

/*
 * Standard link color on hover
 */
a:hover {
  color: #121f2a;
}

/*
 * Set an active menu font color, except on home page.
 */
body:not(.path-frontpage) #main-wrapper main .active, body:not(.path-frontpage) #main-wrapper main .is-active {
  color: #d4dae1 !important;
}

/*
 *  Set an active menu color when active. 
 */
#header ul.navbar-nav li.active, #header ul.navbar-nav a.is-active {
  color: pink;
}

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

footer.site-footer a:hover {
  color: #e5e5e5;
}

@media all and (max-width: 767px) {
  .sm-hide {
    display: none;
  }
}

@media all and (min-width: 768px) {
  .sm-only {
    display: none;
  }
}

/* GENERAL STYLES
-------------------------------------------------*

body {
    background: $white;
}


/* COLORS 
--------------------------------------------------*

a {
    color: $accent-shade;
}

.bg-inverse {
    background: $primary-shade !important;
}

.site-footer {
    background: $accent-shade !important;
}

.menu--main li a {
    color: $primary-shade;
}

.menu--account li a {
    color: $primary-shade;
}

.site-name-slogan a {
    text-decoration: none;
}

.card-group img {
    margin: 0;
    width: 100%;
    height: auto;
}

.card-group .field--type-image {
    margin: 0
}

.slick {
    width: 100%;
}

.slick>div {
    margin: 0 15px;
}
*/
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJ2YXJpYWJsZXMuc2NzcyIsInR5cG9ncmFwaHkuc2NzcyIsImltcG9ydC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb2RlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mb3Jtcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS1mb3Jtcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19qdW1ib3Ryb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fc3Bpbm5lcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9faW50ZXJhY3Rpb25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3RleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIiwiY29tcG9uZW50cy9hZmZpeC5zY3NzIiwiY29tcG9uZW50cy9hbGVydHMuc2NzcyIsImNvbXBvbmVudHMvYm9vay5zY3NzIiwiY29tcG9uZW50cy9ib29rLW5hdmlnYXRpb24uc2NzcyIsImNvbXBvbmVudHMvYnJlYWRjcnVtYi5zY3NzIiwiY29tcG9uZW50cy9jb21tZW50cy5zY3NzIiwiY29tcG9uZW50cy9jb250ZXh0dWFsLnNjc3MiLCJjb21wb25lbnRzL2RldGFpbHMuc2NzcyIsImNvbXBvbmVudHMvZHJvcGJ1dHRvbi5jb21wb25lbnQuc2NzcyIsImNvbXBvbmVudHMvZHJvcGJ1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9mZWVkLWljb24uc2NzcyIsImNvbXBvbmVudHMvZmllbGQuc2NzcyIsImNvbXBvbmVudHMvZmlsZS5zY3NzIiwiY29tcG9uZW50cy9mb3JtLnNjc3MiLCJjb21wb25lbnRzL2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9oZWxwLnNjc3MiLCJjb21wb25lbnRzL2ljb25zLnNjc3MiLCJjb21wb25lbnRzL2ltYWdlLWJ1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9pbmRlbnRlZC5zY3NzIiwiY29tcG9uZW50cy9pdGVtLWxpc3Quc2NzcyIsImNvbXBvbmVudHMvbGlzdC1ncm91cC5zY3NzIiwiY29tcG9uZW50cy9ub2RlLnNjc3MiLCJjb21wb25lbnRzL25vZGUtcHJldmlldy5zY3NzIiwiY29tcG9uZW50cy9wYWdlLnNjc3MiLCJjb21wb25lbnRzL3NlYXJjaC1mb3JtLnNjc3MiLCJjb21wb25lbnRzL3Nob3J0Y3V0LnNjc3MiLCJjb21wb25lbnRzL3NpZGViYXIuc2NzcyIsImNvbXBvbmVudHMvc2l0ZS1mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvc2tpcC1saW5rLnNjc3MiLCJjb21wb25lbnRzL3RhYmxlLnNjc3MiLCJjb21wb25lbnRzL3RhYmxlZHJhZy5zY3NzIiwiY29tcG9uZW50cy90YWJsZXNlbGVjdC5zY3NzIiwiY29tcG9uZW50cy90YWJsZXNvcnQuc2NzcyIsImNvbXBvbmVudHMvdGFibGVzb3J0LWluZGljYXRvci5zY3NzIiwiY29tcG9uZW50cy90YWJzLnNjc3MiLCJjb21wb25lbnRzL3RleHRhcmVhLnNjc3MiLCJjb21wb25lbnRzL3VpLXdpZGdldC5zY3NzIiwiY29tcG9uZW50cy91aS1kaWFsb2cuc2NzcyIsImNvbXBvbmVudHMvdXNlci5zY3NzIiwiY29tcG9uZW50cy92ZXJ0aWNhbC10YWJzLmNvbXBvbmVudC5zY3NzIiwiY29tcG9uZW50cy92ZXJ0aWNhbC10YWJzLnNjc3MiLCJjb21wb25lbnRzL3ZpZXdzLnNjc3MiLCJtaXhpbnMuc2NzcyIsImNvbXBvbmVudHMvdGF4b25vbWllcy5zY3NzIiwiY29tcG9uZW50cy9mZWF0dXJlZC5zY3NzIiwiY29tcG9uZW50cy90b29sYmFyLnNjc3MiLCJjb21wb25lbnRzL3RvcGljcy1tZW51LnNjc3MiLCJjb21wb25lbnRzL2xhYi1ibG9jay5zY3NzIiwiY29tcG9uZW50cy9sYWItbGFuZGluZy5zY3NzIiwiY29tcG9uZW50cy9vZmZpY2UtYmxvY2suc2NzcyIsImNvbXBvbmVudHMvb2ZmaWNlLWxhbmRpbmcuc2NzcyIsImNvbXBvbmVudHMvc2xpY2suc2NzcyIsImNvbXBvbmVudHMvcGFyYWdyYXBocy5zY3NzIiwiY29tcG9uZW50cy9ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvcmVhZG1vcmUuc2NzcyIsImNvbXBvbmVudHMvYmxvY2tzLnNjc3MiLCJjb21wb25lbnRzL3RvcGljcy5zY3NzIiwiY29tcG9uZW50cy9taXNzaW9ucy5zY3NzIiwiY29tcG9uZW50cy9oaWdobGlnaHRzLnNjc3MiLCJjb21wb25lbnRzL29mZmNhbnZhcy5zY3NzIiwiYmFzZS5zY3NzIiwibGF5b3V0LnNjc3MiLCJzdGF0ZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ0FBO0FBK0RBO0FBZUE7QUFXQTtBQ3pGQTtBQUVBO0FBRVE7QUFDQTtBQUNBO0FBQ0E7QUErQlI7RUFDSTs7O0FDdkNKO0FDQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDQUE7RUFHSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBS0Y7RUFDQTs7O0FDQ0Y7QUFBQTtBQUFBO0VBR0U7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQU1GO0VBQ0U7OztBQVVGO0VBQ0U7RUFDQSxhTGlCd0I7RU1vSHBCO0VEbklKLGFKNUJtQjtFSTZCbkIsYUoxQmlCO0VJMkJqQixPRW5DUztFRm9DVDtFQUNBLGtCTDVDTzs7O0FLd0RUO0VBQ0U7OztBQVNGO0VBQ0U7RUFDQTtFQUNBOzs7QUFhRjtFQUNFO0VBQ0EsZUVnTjRCOzs7QUZ6TTlCO0VBQ0U7RUFDQSxlRW9GMEI7OztBRnpFNUI7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7RUFHRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFOzs7QUFHRjtFQUNFLGFKekhpQjs7O0FJNEhuQjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdGO0FBQUE7RUFFRSxhRW9JNEI7OztBRmpJOUI7RUNJSTs7O0FES0o7QUFBQTtFQUVFO0VDUEU7RURTRjtFQUNBOzs7QUFHRjtFQUFNOzs7QUFDTjtFQUFNOzs7QUFPTjtFQUNFLE9MM0tLO0VLNEtMLGlCTHRJZ0I7RUt1SWhCOztBR2hMQTtFSG1MRSxPTHpJZTtFSzBJZixpQkVkc0M7OztBRnVCMUM7RUFDRTtFQUNBOztBRy9MQTtFSGtNRTtFQUNBOzs7QUFTSjtBQUFBO0FBQUE7QUFBQTtFQUlFLGFKN01zQjtFS3FKcEI7OztBRDRESjtFQUVFO0VBRUE7RUFFQTtFQUdBOzs7QUFRRjtFQUVFOzs7QUFRRjtFQUNFO0VBQ0E7OztBQUdGO0VBR0U7RUFDQTs7O0FBUUY7RUFDRTs7O0FBR0Y7RUFDRSxhRTZFNEI7RUY1RTVCLGdCRTRFNEI7RUYzRTVCLE9FdFFTO0VGdVFUO0VBQ0E7OztBQU9GO0VBRUU7RUFDQTs7O0FBUUY7RUFFRTtFQUNBLGVFMkpzQzs7O0FGckp4QztFQUVFOzs7QUFRRjtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7RUFDQTtFQ2hLRTtFRGtLRjs7O0FBR0Y7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0VBRUU7OztBQU1GO0VBQ0U7OztBQU1GO0VBQ0U7OztBQU9GO0FBQUE7QUFBQTtBQUFBO0VBSUU7OztBQVNFO0FBQUE7QUFBQTtBQUFBO0VBQ0U7OztBQU1OO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7OztBQUlGO0VBQ0U7RUFFQTs7O0FBR0Y7RUFNRTtFQUVBO0VBQ0E7RUFDQTs7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VDck5NO0VEdU5OO0VBQ0E7RUFDQTs7QUNsUkU7RUR5UUo7SUMzTVUsV0FYUTs7OztBRGtPbEI7RUFDRTs7O0FBSUY7QUFBQTtFQUVFOzs7QUFHRjtFQUtFO0VBQ0E7OztBQU9GO0VBQ0U7OztBQVFGO0VBQ0U7RUFDQTs7O0FBT0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFLRjtFQUNFOzs7QUk1ZEY7QUFBQTtFQUVFLGVGcVM0QjtFRW5TNUIsYUZxUzRCO0VFcFM1QixhRnFTNEI7OztBRWpTOUI7RUg4TFE7O0FBekRKO0VHcklKO0lIbU1VLFdBWFE7Ozs7QUd2TGxCO0VINkxROztBQXpESjtFR3BJSjtJSGtNVSxXQVhROzs7O0FHdExsQjtFSDRMUTs7QUF6REo7RUduSUo7SUhpTVUsV0FYUTs7OztBR3JMbEI7RUgyTFE7O0FBekRKO0VHbElKO0lIZ01VLFdBWFE7Ozs7QUdwTGxCO0VIaUtNOzs7QUdoS047RUhnS007OztBRzlKTjtFSDhKTTtFRzVKSixhRnVTNEI7OztBRW5TOUI7RUhpTFE7RUcvS04sYUYwUjRCO0VFelI1QixhRmlSNEI7O0FENUoxQjtFR3hISjtJSHNMVSxXQVhROzs7O0FHdEtsQjtFSDRLUTtFRzFLTixhRnNSNEI7RUVyUjVCLGFGNFE0Qjs7QUQ1SjFCO0VHbkhKO0lIaUxVLFdBWFE7Ozs7QUdqS2xCO0VIdUtRO0VHcktOLGFGa1I0QjtFRWpSNUIsYUZ1UTRCOztBRDVKMUI7RUc5R0o7SUg0S1UsV0FYUTs7OztBRzVKbEI7RUhrS1E7RUdoS04sYUY4UTRCO0VFN1E1QixhRmtRNEI7O0FENUoxQjtFR3pHSjtJSHVLVSxXQVhROzs7O0FHakpsQjtFQUNFLFlGZ0ZPO0VFL0VQLGVGK0VPO0VFOUVQO0VBQ0E7OztBQVFGO0FBQUE7RUhrR0k7RUcvRkYsYVJoRG1COzs7QVFtRHJCO0FBQUE7RUFFRSxTRmtRNEI7RUVqUTVCLGtCRjBRNEI7OztBRWxROUI7RUMvRUU7RUFDQTs7O0FEbUZGO0VDcEZFO0VBQ0E7OztBRHNGRjtFQUNFOztBQUVBO0VBQ0UsY0ZvUDBCOzs7QUUxTzlCO0VIMkRJO0VHekRGOzs7QUFJRjtFQUNFLGVGdUJPO0VENkNIOzs7QUdoRU47RUFDRTtFSCtDRTtFRzdDRixPRjFHUzs7QUU0R1Q7RUFDRTs7O0FFbkhKO0VDSUU7RUFHQTs7O0FEREY7RUFDRSxTSm9nQ2tDO0VJbmdDbEMsa0JYTk87RVdPUDtFRUVFO0VEUEY7RUFHQTs7O0FEY0Y7RUFFRTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtFTDhISTtFSzVIRixPSjNCUzs7O0FPWlg7RVJtS0k7RVFqS0YsT1BtQ1E7RU9sQ1I7O0FBR0E7RUFDRTs7O0FBS0o7RUFDRTtFUnNKRTtFUXBKRixPZFBPO0VjUVAsa0JQRFM7RU1FUDs7QUNHRjtFQUNFO0VSOElBO0VRNUlBLGFiRmU7OztBYVFuQjtFQUNFO0VScUlFO0VRbklGLE9QakJTOztBT29CVDtFUmdJRTtFUTlIQTtFQUNBOzs7QUFLSjtFQUNFLFlQZ2tDa0M7RU8vakNsQzs7O0FDeENBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQ0RBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQ21ERTtFRnpDRTtJQUNFLFdmbkJlOzs7QWlCMkRuQjtFRnpDRTtJQUNFLFdmbkJlOzs7QWlCMkRuQjtFRnpDRTtJQUNFLFdmbkJlOzs7QWlCMkRuQjtFRnpDRTtJQUNFLFdmbkJlOzs7QWUrQ3JCO0VDbkNBO0VBQ0E7RUFDQTtFQUNBOzs7QURzQ0E7RUFDRTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOzs7QUd0REo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQXNCRTtFQUNFO0VBQ0E7RUFDQTs7O0FGNEJOO0VBQ0U7RUFDQTs7O0FBRkY7RUFDRTtFQUNBOzs7QUFGRjtFQUNFO0VBQ0E7OztBQUZGO0VBQ0U7RUFDQTs7O0FBRkY7RUFDRTtFQUNBOzs7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Q0E7SUFDQTs7RUFHQTtJQUNFOzs7QUFUTjtFQUVJO0VBQ0E7RUFDQTtFQUNBOztBQUdBO0VBQ0U7OztBRTdLVjtFQUNFO0VBQ0E7RUFDQSxRZDBlc0M7RWN6ZXRDO0VmMEtJO0VldktKLGFwQlFtQjtFb0JQbkIsYXBCVWlCO0VvQlRqQixPZERTO0VjRVQsa0JyQlBPO0VxQlFQO0VBQ0E7RVJBRTtFU0ZFLFlEUUo7O0FDSkk7RURkTjtJQ2VROzs7QURNTjtFQUNFO0VBQ0E7O0FFaEJGO0VBQ0U7RUFDQSxrQnZCTks7RXVCT0wsY2hCcWRvQztFZ0JwZHBDO0VBS0UsWWhCb1h3Qjs7QWN0VzVCO0VBQ0UsT2R4Qk87RWMwQlA7O0FBUUY7RUFFRSxrQmR4Q087RWMwQ1A7OztBQVFGO0FBQUE7QUFBQTtBQUFBO0VBQ0U7OztBQU1GO0VBQ0U7RUFDQTs7QUFHRjtFQU1FLE9kL0RPO0VjZ0VQLGtCckJyRUs7OztBcUIwRVQ7QUFBQTtFQUVFO0VBQ0E7OztBQVVGO0VBQ0U7RUFDQTtFQUNBO0VmaUVFO0VlL0RGLGFwQjdFaUI7OztBb0JnRm5CO0VBQ0U7RUFDQTtFZjBFSTtFZXhFSixhZDZINEI7OztBYzFIOUI7RUFDRTtFQUNBO0VmbUVJO0VlakVKLGFkdUg0Qjs7O0FjOUc5QjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0Vmb0RJO0VlbERKLGFwQjFHaUI7RW9CMkdqQixPZG5IUztFY29IVDtFQUNBO0VBQ0E7O0FBRUE7RUFFRTtFQUNBOzs7QUFZSjtFQUNFLFFkNFZzQztFYzNWdEM7RWYyQkk7RWV6QkosYWQrRTRCO0VNeE4xQjs7O0FRNklKO0VBQ0UsUWRxVnNDO0VjcFZ0QztFZm1CSTtFZWpCSixhZHNFNEI7RU12TjFCOzs7QVF1SkY7RUFFRTs7O0FBSUo7RUFDRTs7O0FBUUY7RUFDRSxlZDBVc0M7OztBY3ZVeEM7RUFDRTtFQUNBLFlkMlRzQzs7O0FjblR4QztFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOzs7QUFTSjtFQUNFO0VBQ0E7RUFDQSxjZGdTc0M7OztBYzdSeEM7RUFDRTtF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O0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEY047RUNQQSxPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBRHpCTjtFQ1BBLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FEekJOO0VDUEEsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QUR6Qk47RUNQQSxPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBRHpCTjtFQ1BBLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FEekJOO0VDUEEsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QUR6Qk47RUNQQSxPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBRHpCTjtFQ1BBLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FEZFI7RUFDRSxheEI5RG1CO0V3QitEbkIsT3pCckVLO0V5QnNFTCxpQnpCaENnQjs7QVF6Q2hCO0VpQjRFRSxPekJsQ2U7RXlCbUNmLGlCbEJ5RnNDOztBa0J0RnhDO0VBRUUsaUJsQm9Gc0M7O0FrQmpGeEM7RUFFRSxPbEJ0Rk87RWtCdUZQOzs7QUFXSjtFQ1BFO0VwQjRFSTtFb0IxRUosYW5CK0g0QjtFTXZOMUI7OztBWWlHSjtFQ1hFO0VwQjRFSTtFb0IxRUosYW5CZ0k0QjtFTXhOMUI7OztBWTBHSjtFQUNFO0VBQ0E7O0FBR0E7RUFDRSxZbEJ1VDBCOzs7QWtCL1M1QjtBQUFBO0FBQUE7RUFDRTs7O0FFM0lKO0VMZ0JNLFlLZko7O0FMbUJJO0VLcEJOO0lMcUJROzs7QUtsQk47RUFDRTs7O0FBS0Y7RUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUxESSxZS0VKOztBTEVJO0VLTk47SUxPUTs7OztBTXBCUjtBQUFBO0FBQUE7QUFBQTtFQUlFOzs7QUFHRjtFQUNFOztBQ29CRTtFQUNFO0VBQ0EsYXRCK053QjtFc0I5TnhCLGdCdEI2TndCO0VzQjVOeEI7RUFoQ0o7RUFDQTtFQUNBO0VBQ0E7O0FBcURFO0VBQ0U7OztBRDFDTjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFNyQndwQmtDO0VxQnZwQmxDO0VBQ0E7RUFDQSxXckJndUJrQztFcUIvdEJsQztFQUNBO0V0QjJKSTtFc0J6SkosT3JCWFM7RXFCWVQ7RUFDQTtFQUNBLGtCNUJyQk87RTRCc0JQO0VBQ0E7RWZkRTs7O0FldUJBO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBOzs7QVhZRjtFV25CQTtJQUNFO0lBQ0E7OztFQUdGO0lBQ0U7SUFDQTs7O0FYWUY7RVduQkE7SUFDRTtJQUNB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OztBQVVGO0VwQmxHRTs7QW9CdUdBO0VBQ0U7O0FBS0Y7RUFDRSxjMUIwSHdCO0VpQnBQMUIsa0JqQm9QMEI7O0EwQnRIMUI7RUFDRTs7QUFLRjtFVHBJQSxrQmpCd2hCNEM7O0EwQmpaNUM7RVR2SUEsa0JqQndoQjRDOzs7QTBCdFk5QztFQUVFLGUxQnlaNEM7O0EwQnJaNUM7RUFDRTs7QUFLRjtFVDlKQSxrQmpCd2hCNEM7OztBMEIvV2hEO0VBQ0U7O0FBR0U7RUFDRTtFQUNBLE8xQmlZMEM7RTBCaFkxQztFQUVBLGUxQitYMEM7O0EwQjVYNUM7RUFDRTtFQUNBO0VBQ0EsTzFCMFgwQztFMEJ6WDFDLFExQnlYMEM7RTBCeFgxQyxrQjFCcExLO0UwQnNMTCxlMUJxWDBDO0VldmlCMUMsWVdtTEE7O0FYL0tBO0VXdUtGO0lYdEtJOzs7QVdtTEo7RUFDRSxrQmpDaE1HO0VpQ2lNSDs7QUFLRjtFVHpNQSxrQmpCd2hCNEM7OztBMEJsVWhEO0VBQ0U7RUFDQTtFQUNBLFExQm9Sc0M7RTBCblJ0QztFM0I1Q0k7RTJCK0NKLGFoQzlNbUI7RWdDK01uQixhaEM1TWlCO0VnQzZNakIsTzFCdk5TO0UwQndOVDtFQUNBO0VBQ0E7RXBCdE5FO0VvQnlORjs7QUFFQTtFQUNFLGMxQnVQb0M7RTBCdFBwQztFQUtFLFkxQmtXOEI7O0EwQi9WaEM7RUFNRSxPMUIvT0s7RTBCZ1BMLGtCakNyUEc7O0FpQ3lQUDtFQUVFO0VBQ0EsZTFCOEgwQjtFMEI3SDFCOztBQUdGO0VBQ0UsTzFCN1BPO0UwQjhQUCxrQjFCbFFPOztBMEJzUVQ7RUFDRTs7QUFJRjtFQUNFO0VBQ0E7OztBQUlKO0VBQ0UsUTFCeU5zQztFMEJ4TnRDLGExQmdINEI7RTBCL0c1QixnQjFCK0c0QjtFMEI5RzVCLGMxQitHNEI7RUR6TnhCOzs7QTJCOEdOO0VBQ0UsUTFCa05zQztFMEJqTnRDLGExQjZHNEI7RTBCNUc1QixnQjFCNEc0QjtFMEIzRzVCLGMxQjRHNEI7RUQ5TnhCOzs7QTJCMkhOO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsUTFCZ01zQztFMEIvTHRDOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFExQndMc0M7RTBCdkx0QztFQUNBO0VBQ0E7O0FBRUE7RUFDRSxjMUJvS29DO0UwQm5LcEMsWTFCd0UwQjs7QTBCcEU1QjtFQUVFLGtCMUIvVE87O0EwQm1VUDtFQUNFLFMxQjBUYTs7QTBCdFRqQjtFQUNFOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxRMUJ1SnNDO0UwQnRKdEM7RUFDQTtFQUVBLGFoQzNVbUI7RWdDNFVuQixhaEN6VWlCO0VnQzBVakIsTzFCcFZTO0UwQnFWVCxrQmpDMVZPO0VpQzJWUDtFcEJsVkU7O0FvQnNWRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFExQmdJb0M7RTBCL0hwQztFQUNBLGFoQ3pWZTtFZ0MwVmYsTzFCcFdPO0UwQnFXUDtFVDdXQSxrQmpCR087RTBCNFdQO0VwQm5XQTs7O0FvQjhXSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFJQTtFQUEwQixZMUJtT2U7O0EwQmxPekM7RUFBMEIsWTFCa09lOztBMEJqT3pDO0VBQTBCLFkxQmlPZTs7QTBCOU4zQztFQUNFOztBQUdGO0VBQ0UsTzFCbU55QztFMEJsTnpDLFExQmtOeUM7RTBCak56QztFVGxaQSxrQmpCb1AwQjtFMEJnSzFCLFExQmtOeUM7RU0xbEJ6QztFU0ZFLFlXNllGO0VBQ0E7O0FYMVlFO0VXaVlKO0lYaFlNOzs7QVcyWUo7RVQxWkEsa0JqQjJtQnlDOztBMEI1TTNDO0VBQ0UsTzFCNExnQztFMEIzTGhDLFExQjRMZ0M7RTBCM0xoQztFQUNBLFExQjJMZ0M7RTBCMUxoQyxrQjFCaGFPO0UwQmlhUDtFcEJ6WkE7O0FvQjhaRjtFQUNFLE8xQndMeUM7RTBCdkx6QyxRMUJ1THlDO0VpQm5tQnpDLGtCakJvUDBCO0UwQjBMMUIsUTFCd0x5QztFTTFsQnpDO0VTRkUsWVd1YUY7RUFDQTs7QVhwYUU7RVc0Wko7SVgzWk07OztBV3FhSjtFVHBiQSxrQmpCMm1CeUM7O0EwQmxMM0M7RUFDRSxPMUJrS2dDO0UwQmpLaEMsUTFCa0tnQztFMEJqS2hDO0VBQ0EsUTFCaUtnQztFMEJoS2hDLGtCMUIxYk87RTBCMmJQO0VwQm5iQTs7QW9Cd2JGO0VBQ0UsTzFCOEp5QztFMEI3SnpDLFExQjZKeUM7RTBCNUp6QztFQUNBLGMxQnRFMEI7RTBCdUUxQixhMUJ2RTBCO0VpQmxZMUIsa0JqQm9QMEI7RTBCdU4xQixRMUIySnlDO0VNMWxCekM7RVNGRSxZV29jRjtFQUNBOztBWGpjRTtFV3NiSjtJWHJiTTs7O0FXa2NKO0VUamRBLGtCakIybUJ5Qzs7QTBCckozQztFQUNFLE8xQnFJZ0M7RTBCcEloQyxRMUJxSWdDO0UwQnBJaEM7RUFDQSxRMUJvSWdDO0UwQm5JaEM7RUFDQTtFQUNBOztBQUlGO0VBQ0Usa0IxQjlkTztFTVFQOztBb0IwZEY7RUFDRTtFQUNBLGtCMUJwZU87RU1RUDs7QW9CaWVBO0VBQ0Usa0IxQnhlSzs7QTBCMmVQO0VBQ0U7O0FBR0Y7RUFDRSxrQjFCaGZLOztBMEJtZlA7RUFDRTs7QUFHRjtFQUNFLGtCMUJ4Zks7OztBMEI2Zlg7QUFBQTtBQUFBO0VYemZNLFlXNGZKOztBWHhmSTtFV3FmTjtBQUFBO0FBQUE7SVhwZlE7Ozs7QVloQlI7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7O0ExQkNBO0UwQkdFOztBQUlGO0VBQ0UsTzNCWE87RTJCWVA7RUFDQTs7O0FBUUo7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RXJCWkE7RUFDQTs7QUxaRjtFMEIyQkksYzNCbXBCOEI7O0EyQmhwQmhDO0VBQ0UsTzNCbENLO0UyQm1DTDtFQUNBOztBQUlKO0FBQUE7RUFFRSxPM0J6Q087RTJCMENQLGtCbEMvQ0s7RWtDZ0RMLGMzQndvQmdDOztBMkJyb0JsQztFQUVFO0VyQm5DQTtFQUNBOzs7QXFCOENGO0VyQnhERTs7QXFCNERGO0FBQUE7RUFFRSxPbEN2RUs7RWtDd0VMLGtCM0J5SzBCOzs7QTJCL0o1QjtBQUFBO0VBRUU7RUFDQTs7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFD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QnhDTztFK0J5Q1A7RUFFQTtFQUNBLGtCdENoREs7RXNDaURMLGMvQmhETzs7O0FnQ1BUO0VBQ0U7RWpDZ0xFO0VpQzlLRixhaENtTzBCOztBZ0M5TnhCO0UxQnFDRjtFQUNBOztBMEJqQ0U7RTFCa0JGO0VBQ0E7OztBMEJoQ0Y7RUFDRTtFakNnTEU7RWlDOUtGLGFoQ29PMEI7O0FnQy9OeEI7RTFCcUNGO0VBQ0E7O0EwQmpDRTtFMUJrQkY7RUFDQTs7O0EyQjlCSjtFQUNFO0VBQ0E7RWxDNkpFO0VrQzNKRixhdkNhaUI7RXVDWmpCO0VBQ0E7RUFDQTtFQUNBO0UzQktFO0VTRkUsWWtCREo7O0FsQktJO0VrQmZOO0lsQmdCUTs7O0FkTE47RWdDR0k7OztBQUtKO0VBQ0U7OztBQUtKO0VBQ0U7RUFDQTs7O0FBT0Y7RUFDRSxlakNnNEJrQztFaUMvM0JsQyxjakMrM0JrQztFTXQ1QmhDOzs7QTJCZ0NGO0VDakRBO0VBQ0Esa0JsQzBFYTs7QUM1RGI7RWlDVkk7RUFDQTs7QUFHRjtFQUVFO0VBQ0E7OztBRHFDSjtFQ2pEQTtFQUNBLGtCbEMwRWE7O0FDNURiO0VpQ1ZJO0VBQ0E7O0FBR0Y7RUFFRTtFQUNBOzs7QURxQ0o7RUNqREE7RUFDQSxrQmxDMEVhOztBQzVEYjtFaUNWSTtFQUNBOztBQUdGO0VBRUU7RUFDQTs7O0FEcUNKO0VDakRBO0VBQ0Esa0JsQzBFYTs7QUM1RGI7RWlDVkk7RUFDQTs7QUFHRjtFQUVFO0VBQ0E7OztBRHFDSjtFQ2pEQTtFQUNBLGtCbEMwRWE7O0FDNURiO0VpQ1ZJO0VBQ0E7O0FBR0Y7RUFFRTtFQUNBOzs7QURxQ0o7RUNqREE7RUFDQSxrQmxDMEVhOztBQzVEYjtFaUNWSTtFQUNBOztBQUdGO0VBRUU7RUFDQTs7O0FEcUNKO0VDakRBO0VBQ0Esa0JsQzBFYTs7QUM1RGI7RWlDVkk7RUFDQTs7QUFHRjtFQUVFO0VBQ0E7OztBRHFDSjtFQ2pEQTtFQUNBLGtCbEMwRWE7O0FDNURiO0VpQ1ZJO0VBQ0E7O0FBR0Y7RUFFRTtFQUNBOzs7QUNiTjtFQUNFO0VBQ0EsZW5Dd3pCa0M7RW1DdHpCbEMsa0JuQ0tTO0VNU1A7O0FJMENBO0V5QjVESjtJQVFJOzs7O0FBSUo7RUFDRTtFQUNBO0U3QklFOzs7QThCZEo7RUFDRTtFQUNBO0VBQ0EsZXBDdzlCa0M7RW9DdjlCbEM7RTlCVUU7OztBOEJMSjtFQUVFOzs7QUFJRjtFQUNFLGExQ0VpQjs7O0EwQ01uQjtFQUNFOztBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFVRjtFQy9DQSxPRGdEcUg7RW5CM0NuSCxrQm1CMkN1QjtFQzlDekIsY0Q4Q3FFOztBQzVDckU7RUFDRTs7QUFHRjtFQUNFOzs7QURzQ0Y7RUMvQ0EsT0RnRHFIO0VuQjNDbkgsa0JtQjJDdUI7RUM5Q3pCLGNEOENxRTs7QUM1Q3JFO0VBQ0U7O0FBR0Y7RUFDRTs7O0FEc0NGO0VDL0NBLE9EZ0RxSDtFbkIzQ25ILGtCbUIyQ3VCO0VDOUN6QixjRDhDcUU7O0FDNUNyRTtFQUNFOztBQUdGO0VBQ0U7OztBRHNDRjtFQy9DQSxPRGdEcUg7RW5CM0NuSCxrQm1CMkN1QjtFQzlDekIsY0Q4Q3FFOztBQzVDckU7RUFDRTs7QUFHRjtFQUNFOzs7QURzQ0Y7RUMvQ0EsT0RnRHFIO0VuQjNDbkgsa0JtQjJDdUI7RUM5Q3pCLGNEOENxRTs7QUM1Q3JFO0VBQ0U7O0FBR0Y7RUFDRTs7O0FEc0NGO0VDL0NBLE9EZ0RxSDtFbkIzQ25ILGtCbUIyQ3VCO0VDOUN6QixjRDhDcUU7O0FDNUNyRTtFQUNFOztBQUdGO0VBQ0U7OztBRHNDRjtFQy9DQSxPRGdEcUg7RW5CM0NuSCxrQm1CMkN1QjtFQzlDekIsY0Q4Q3FFOztBQzVDckU7RUFDRTs7QUFHRjtFQUNFOzs7QURzQ0Y7RUMvQ0EsT0RnRHFIO0VuQjNDbkgsa0JtQjJDdUI7RUM5Q3pCLGNEOENxRTs7QUM1Q3JFO0VBQ0U7O0FBR0Y7RUFDRTs7O0FDUkY7RUFDRTtJQUFPOztFQUNQO0lBQUs7OztBQUlUO0VBQ0U7RUFDQSxRdENpK0JrQztFc0NoK0JsQztFQUNBO0V2Q3dLSTtFdUN0S0osa0J0Q0xTO0VNU1A7OztBZ0NDSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsTzdDZk87RTZDZ0JQO0VBQ0E7RUFDQSxrQnRDczlCa0M7RWVqK0I5QixZdUJZSjs7QXZCUkk7RXVCRE47SXZCRVE7Ozs7QXVCVVI7RXJCWUU7RXFCVkE7OztBQUlBO0VBQ0U7O0FBR0U7RUFKSjtJQUtNOzs7O0FDMUNSO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTs7O0FDRkY7RUFDRTtFQUNBO0VBR0E7RUFDQTtFbENRRTs7O0FrQ0VKO0VBQ0U7RUFDQSxPeENSUztFd0NTVDs7QXZDUEE7RXVDV0U7RUFDQSxPeENkTztFd0NlUDtFQUNBLGtCL0NkTzs7QStDaUJUO0VBQ0UsT3hDbEJPO0V3Q21CUCxrQnhDMUJPOzs7QXdDbUNYO0VBQ0U7RUFDQTtFQUNBO0VBR0Esa0IvQ3pDTztFK0MwQ1A7O0FBRUE7RWxDMUJFO0VBQ0E7O0FrQzZCRjtFbENoQkU7RUFDQTs7QWtDbUJGO0VBRUUsT3hDbERPO0V3Q21EUDtFQUNBLGtCL0N4REs7O0ErQzREUDtFQUNFO0VBQ0EsTy9DOURLO0UrQytETCxrQnhDa0wwQjtFd0NqTDFCLGN4Q2lMMEI7O0F3QzlLNUI7RUFDRTs7QUFFQTtFQUNFO0VBQ0Esa0J4QzJKd0I7OztBd0M3STFCO0VBQ0U7O0FBR0U7RWxDMUJKO0VBWkE7O0FrQzJDSTtFbEMzQ0o7RUFZQTs7QWtDb0NJO0VBQ0U7O0FBR0Y7RUFDRSxrQnhDMEhvQjtFd0N6SHBCOztBQUVBO0VBQ0U7RUFDQSxtQnhDcUhrQjs7O0FVaEwxQjtFOEJtQ0E7SUFDRTs7RUFHRTtJbEMxQko7SUFaQTs7RWtDMkNJO0lsQzNDSjtJQVlBOztFa0NvQ0k7SUFDRTs7RUFHRjtJQUNFLGtCeEMwSG9CO0l3Q3pIcEI7O0VBRUE7SUFDRTtJQUNBLG1CeENxSGtCOzs7QVVoTDFCO0U4Qm1DQTtJQUNFOztFQUdFO0lsQzFCSjtJQVpBOztFa0MyQ0k7SWxDM0NKO0lBWUE7O0VrQ29DSTtJQUNFOztFQUdGO0lBQ0Usa0J4QzBIb0I7SXdDekhwQjs7RUFFQTtJQUNFO0lBQ0EsbUJ4Q3FIa0I7OztBVWhMMUI7RThCbUNBO0lBQ0U7O0VBR0U7SWxDMUJKO0lBWkE7O0VrQzJDSTtJbEMzQ0o7SUFZQTs7RWtDb0NJO0lBQ0U7O0VBR0Y7SUFDRSxrQnhDMEhvQjtJd0N6SHBCOztFQUVBO0lBQ0U7SUFDQSxtQnhDcUhrQjs7O0FVaEwxQjtFOEJtQ0E7SUFDRTs7RUFHRTtJbEMxQko7SUFaQTs7RWtDMkNJO0lsQzNDSjtJQVlBOztFa0NvQ0k7SUFDRTs7RUFHRjtJQUNFLGtCeEMwSG9CO0l3Q3pIcEI7O0VBRUE7SUFDRTtJQUNBLG1CeENxSGtCOzs7QXdDdkc5QjtFbENuSEk7O0FrQ3NIRjtFQUNFOztBQUVBO0VBQ0U7OztBQ3pJSjtFQUNFLE9Eb0pzRTtFQ25KdEUsa0JEbUp1Qzs7QXZDeEl6QztFd0NQTSxPRCtJa0U7RUM5SWxFOztBQUdGO0VBQ0UsT2hETEM7RWdETUQsa0JEeUlrRTtFQ3hJbEUsY0R3SWtFOzs7QUNySnhFO0VBQ0UsT0RvSnNFO0VDbkp0RSxrQkRtSnVDOztBdkN4SXpDO0V3Q1BNLE9EK0lrRTtFQzlJbEU7O0FBR0Y7RUFDRSxPaERMQztFZ0RNRCxrQkR5SWtFO0VDeElsRSxjRHdJa0U7OztBQ3JKeEU7RUFDRSxPRG9Kc0U7RUNuSnRFLGtCRG1KdUM7O0F2Q3hJekM7RXdDUE0sT0QrSWtFO0VDOUlsRTs7QUFHRjtFQUNFLE9oRExDO0VnRE1ELGtCRHlJa0U7RUN4SWxFLGNEd0lrRTs7O0FDckp4RTtFQUNFLE9Eb0pzRTtFQ25KdEUsa0JEbUp1Qzs7QXZDeEl6QztFd0NQTSxPRCtJa0U7RUM5SWxFOztBQUdGO0VBQ0UsT2hETEM7RWdETUQsa0JEeUlrRTtFQ3hJbEUsY0R3SWtFOzs7QUNySnhFO0VBQ0UsT0RvSnNFO0VDbkp0RSxrQkRtSnVDOztBdkN4SXpDO0V3Q1BNLE9EK0lrRTtFQzlJbEU7O0FBR0Y7RUFDRSxPaERMQztFZ0RNRCxrQkR5SWtFO0VDeElsRSxjRHdJa0U7OztBQ3JKeEU7RUFDRSxPRG9Kc0U7RUNuSnRFLGtCRG1KdUM7O0F2Q3hJekM7RXdDUE0sT0QrSWtFO0VDOUlsRTs7QUFHRjtFQUNFLE9oRExDO0VnRE1ELGtCRHlJa0U7RUN4SWxFLGNEd0lrRTs7O0FDckp4RTtFQUNFLE9Eb0pzRTtFQ25KdEUsa0JEbUp1Qzs7QXZDeEl6QztFd0NQTSxPRCtJa0U7RUM5SWxFOztBQUdGO0VBQ0UsT2hETEM7RWdETUQsa0JEeUlrRTtFQ3hJbEUsY0R3SWtFOzs7QUNySnhFO0VBQ0UsT0RvSnNFO0VDbkp0RSxrQkRtSnVDOztBdkN4SXpDO0V3Q1BNLE9EK0lrRTtFQzlJbEU7O0FBR0Y7RUFDRSxPaERMQztFZ0RNRCxrQkR5SWtFO0VDeElsRSxjRHdJa0U7OztBRXhKMUU7RUFDRTtFM0M0TU07RTJDMU1OLGFoRG1CaUI7RWdEbEJqQjtFQUNBLE8xQ1lTO0UwQ1hULGExQ3dsQ2tDO0UwQ3ZsQ2xDOztBM0M2SUU7RTJDcEpKO0kzQ2tOVSxXQVhROzs7QUUzTGhCO0V5Q0RFLE8xQ01PO0UwQ0xQOztBekNJRjtFeUNDSTs7O0FBV047RUFDRTtFQUNBO0VBQ0E7OztBQU1GO0VBQ0U7OztBQ3RDRjtFQUdFLFkzQzA0QmtDO0UyQ3o0QmxDLFczQ3k0QmtDO0VEenRCOUI7RTRDN0tKLGtCM0MyNEJrQztFMkMxNEJsQztFQUNBO0VBQ0EsWTNDNDRCa0M7RTJDMzRCbEM7RXJDT0U7O0FxQ0pGO0VBQ0UsZTNDKzNCZ0M7O0EyQzUzQmxDO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsTzNDdkJTO0UyQ3dCVCxrQjNDbzNCa0M7RTJDbjNCbEM7RUFDQTtFckNaRTtFQUNBOzs7QXFDZUo7RUFDRSxTM0NrMkJrQzs7O0E0Q3g0QnBDO0VBRUU7O0FBRUE7RUFDRTtFQUNBOzs7QUFLSjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFM1QzJwQmtDO0U0QzFwQmxDO0VBQ0E7RUFDQTtFQUNBO0VBR0E7OztBQU9GO0VBQ0U7RUFDQTtFQUNBLFE1Q2c1QmtDO0U0Qzk0QmxDOztBQUdBO0U3QjNCSSxZNkI0QkY7RUFDQSxXNUNzNkJnQzs7QWUvN0I5QjtFNkJ1Qko7STdCdEJNOzs7QTZCMEJOO0VBQ0UsVzVDbzZCZ0M7O0E0Q2g2QmxDO0VBQ0UsVzVDaTZCZ0M7OztBNEM3NUJwQztFQUNFO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUlGO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTs7O0FBTU47RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0Esa0JuRHpHTztFbUQwR1A7RUFDQTtFdENsR0U7RXNDc0dGOzs7QUFJRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFM1QytpQmtDO0U0QzlpQmxDO0VBQ0E7RUFDQSxrQjVDbEhTOztBNENxSFQ7RUFBUzs7QUFDVDtFQUFTLFM1Qzh6QnlCOzs7QTRDenpCcEM7RUFDRTtFQUNBO0VBQ0E7RUFDQSxTNUM0ekJrQztFNEMzekJsQztFdEN0SEU7RUFDQTs7QXNDd0hGO0VBQ0UsUzVDdXpCZ0M7RTRDcnpCaEM7OztBQUtKO0VBQ0U7RUFDQSxhbER0SWlCOzs7QWtEMkluQjtFQUNFO0VBR0E7RUFDQSxTNUN5d0JrQzs7O0E0Q3J3QnBDO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V0Q3pJRTtFQUNBOztBc0M4SUY7RUFDRTs7O0FBS0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QWxDdklFO0VrQzZJRjtJQUNFLFc1Q3N3QmdDO0k0Q3J3QmhDOzs7RUFHRjtJQUNFOztFQUVBO0lBQ0U7OztFQUlKO0lBQ0U7O0VBRUE7SUFDRTtJQUNBOzs7RUFRSjtJQUFZLFc1Qzh1QnNCOzs7QVVyNUJoQztFa0MyS0Y7QUFBQTtJQUVFLFc1Q3N1QmdDOzs7QVVuNUJoQztFa0NrTEY7SUFBWSxXNUNndUJzQjs7O0E2Qzc4QnBDO0VBQ0U7RUFDQSxTN0MrcUJrQztFNkM5cUJsQztFQUNBLFE3QzQxQmtDO0U4Q2gyQmxDLGFyRCtEd0I7RXFEN0R4QjtFQUNBLGFwRGlCbUI7RW9EaEJuQixhcERtQmlCO0VvRGxCakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9DcUtJO0U4Q3pLSjtFQUNBOztBQUVBO0VBQVMsUzdDZzFCeUI7O0E2QzkwQmxDO0VBQ0U7RUFDQTtFQUNBLE83Q2cxQmdDO0U2Qy8wQmhDLFE3Q2cxQmdDOztBNkM5MEJoQztFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFLTjtFQUNFOztBQUVBO0VBQ0U7O0FBRUE7RUFDRTtFQUNBO0VBQ0Esa0I3Q3ZCSzs7O0E2QzRCWDtFQUNFOztBQUVBO0VBQ0U7RUFDQSxPN0NrekJnQztFNkNqekJoQyxRN0NnekJnQzs7QTZDOXlCaEM7RUFDRTtFQUNBO0VBQ0Esb0I3Q3ZDSzs7O0E2QzRDWDtFQUNFOztBQUVBO0VBQ0U7O0FBRUE7RUFDRTtFQUNBO0VBQ0EscUI3Q3JESzs7O0E2QzBEWDtFQUNFOztBQUVBO0VBQ0U7RUFDQSxPN0NveEJnQztFNkNueEJoQyxRN0NreEJnQzs7QTZDaHhCaEM7RUFDRTtFQUNBO0VBQ0EsbUI3Q3JFSzs7O0E2QzBGWDtFQUNFLFc3Qzh1QmtDO0U2Qzd1QmxDO0VBQ0EsT3BEckdPO0VvRHNHUDtFQUNBLGtCN0MvRlM7RU1DUDs7O0F5Q2xCSjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFMvQzZxQmtDO0UrQzVxQmxDO0VBQ0EsVy9DODJCa0M7RThDbjNCbEMsYXJEK0R3QjtFcUQ3RHhCO0VBQ0EsYXBEaUJtQjtFb0RoQm5CLGFwRG1CaUI7RW9EbEJqQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0NxS0k7RWdEeEtKO0VBQ0Esa0J0REpPO0VzREtQO0VBQ0E7RXpDR0U7O0F5Q0NGO0VBQ0U7RUFDQTtFQUNBLE8vQzgyQmdDO0UrQzcyQmhDLFEvQzgyQmdDO0UrQzcyQmhDOztBQUVBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS047RUFDRSxlL0MrMUJrQzs7QStDNzFCbEM7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQSxrQi9DMDFCOEI7O0ErQ3YxQmhDO0VBQ0UsUS9DMEx3QjtFK0N6THhCO0VBQ0Esa0J0RDNDRzs7O0FzRGdEVDtFQUNFLGEvQzIwQmtDOztBK0N6MEJsQztFQUNFO0VBQ0EsTy9DdTBCZ0M7RStDdDBCaEMsUS9DcTBCZ0M7RStDcDBCaEM7O0FBRUE7RUFDRTtFQUNBO0VBQ0Esb0IvQ20wQjhCOztBK0NoMEJoQztFQUNFLE0vQ21Ld0I7RStDbEt4QjtFQUNBLG9CdERsRUc7OztBc0R1RVQ7RUFDRSxZL0NvekJrQzs7QStDbHpCbEM7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQSxxQi9DK3lCOEI7O0ErQzV5QmhDO0VBQ0UsSy9DK0l3QjtFK0M5SXhCO0VBQ0EscUJ0RHRGRzs7QXNEMkZQO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxPL0MyeEJnQztFK0MxeEJoQztFQUNBO0VBQ0E7OztBQUlKO0VBQ0UsYy9Db3hCa0M7O0ErQ2x4QmxDO0VBQ0U7RUFDQSxPL0NneEJnQztFK0Mvd0JoQyxRL0M4d0JnQztFK0M3d0JoQzs7QUFFQTtFQUNFO0VBQ0E7RUFDQSxtQi9DNHdCOEI7O0ErQ3p3QmhDO0VBQ0UsTy9DNEd3QjtFK0MzR3hCO0VBQ0EsbUJ0RHpIRzs7O0FzRCtJVDtFQUNFO0VBQ0E7RWhEMEJJO0VnRHZCSixrQi9DOHRCa0M7RStDN3RCbEM7RXpDbklFO0VBQ0E7O0F5Q3FJRjtFQUNFOzs7QUFJSjtFQUNFO0VBQ0EsTy9DeEpTOzs7QWdESFg7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FDdkJBO0VBQ0U7RUFDQTtFQUNBOzs7QUR3Qko7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpDbEJJLFlpQ21CSjs7QWpDZkk7RWlDUU47SWpDUFE7Ozs7QWlDaUJSO0FBQUE7QUFBQTtFQUdFOzs7QUFHRjtBQUFBO0VBRUU7OztBQUdGO0FBQUE7RUFFRTs7O0FBU0E7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7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Q0U7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7OztBTHhFQTtFQUNFO0VBQ0E7RUFDQTs7O0FNT0U7RUFBd0I7OztBQUF4QjtFQUF3Qjs7O0FBQXhCO0VBQXdCOzs7QUFBeEI7RUFBd0I7OztBQUF4QjtFQUF3Qjs7O0FBQXhCO0VBQXdCOzs7QUFBeEI7RUFBd0I7OztBQUF4QjtFQUF3Qjs7O0FBQXhCO0VBQXdCOzs7QTdDaUQxQjtFNkNqREU7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7QTdDaUQxQjtFNkNqREU7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7QTdDaUQxQjtFNkNqREU7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7QTdDaUQxQjtFNkNqREU7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7QUFVOUI7RUFFSTtJQUFxQjs7O0VBQXJCO0lBQXFCOzs7RUFBckI7SUFBcUI7OztFQUFyQjtJQUFxQjs7O0VBQXJCO0lBQXFCOzs7RUFBckI7SUFBcUI7OztFQUFyQjtJQUFxQjs7O0VBQXJCO0lBQXFCOzs7RUFBckI7SUFBcUI7OztBQ3JCekI7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VB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QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBUUY7RUFBd0I7OztBQUN4QjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQXdCOzs7QUFDeEI7QUFBQTtFQUVFOzs7QUFF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QTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7QXhEVEY7RXdEbERJO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQVFGO0lBQXdCOzs7RUFDeEI7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUF3Qjs7O0VBQ3hCO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBd0I7OztFQUN4QjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQXdCOzs7RUFDeEI7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUF3Qjs7O0VBQ3hCO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBTU47SUFBbUI7OztFQUNuQjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztBeERURjtFd0RsREk7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBUUY7SUFBd0I7OztFQUN4QjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQXdCOzs7RUFDeEI7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7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S0o7RUFFRTtFQUNBLGtCbkIwQ1c7RW1CekNYLGNuQnlDVzs7QW1CbENiO0VBR0U7RUFDQSxrQkF6QytJO0VBNkMvSSxjQTdDeUw7O0FBK0N6TDtFQUtJOzs7QWlHbERKO0VqR0RGO0VGQUUsa0JqQnNFVztFbUJwRWIsY25Cb0VhOztBQ2hFYjtFa0JBRTtFRk5BLGtCRUQyRDtFQVMzRCxjQVRxRzs7QUFZdkc7RUFFRTtFRmJBLGtCRUQyRDtFQWdCM0QsY0FoQnFHO0VBcUJuRzs7QUFLSjtFQUVFO0VBQ0Esa0JuQjBDVztFbUJ6Q1gsY25CeUNXOztBbUJsQ2I7RUFHRTtFQUNBLGtCQXpDK0k7RUE2Qy9JLGNBN0N5TDs7QUErQ3pMO0VBS0k7OztBaUczQ0o7RWpHa0RGLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FpR2xGSjtFakdrREYsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QWlHbEZKO0VqR2tERixPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBaUdsRko7RWpHa0RGLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FpR2xGSjtFakdrREYsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QWlHbEZKO0VqR2tERixPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBaUdsRko7RWpHa0RGLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FpR2xGSjtFakdrREYsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QWlHekVSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQzNCUTtBQUFBO0VBQ0k7OztBQ0xoQjtFQXVCSTtFQUNBO0VBQ0E7O0FBeEJBO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBbUJKO0VBQ0k7O0FBR0E7RUFDSTs7QUFFSjtFQUNJOzs7QUFLUjtFQUNJOzs7QUMxQ1I7QUFBQTtBQUFBO0FBQUE7RUFJSTs7O0FDSko7RUFDSSxhOUhnQ1c7RThIL0JYO0VBQ0Esa0IvSDBCWTtFK0h4Qlo7RUFDQTtFQUNBO0VBQ0E7O0FBSUk7QUFBQTtFQUNJOztBQUlSO0VBakJKO0lBa0JRO0lBQ0E7OztBQUVKO0VBckJKO0lBc0JRO0lBQ0E7OztBQUdKO0VBMUJKO0lBMkJRO0lBQ0E7SUFDQTs7O0FBRUo7RUEvQko7SUFnQ1E7SUFDQTs7OztBQU1KO0VBQ0ksTy9IL0JDO0UrSGdDRDs7QUFFQTtFQUNJOztBQUdSO0VBQ0k7O0FBQ0E7RUFGSjtJQUdROzs7QUFRUjtFQUNJOztBQUNBO0VBRko7SUFHUTs7O0FBR1I7RUFDSTtFQUNBOztBQUVBO0FBQUE7RUFFSTs7QUFDQTtBQUFBO0VBQ0k7RUFDQTs7QUFXUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7O0FBSVo7RUFDSTs7O0FDN0ZKO0VBQ0k7OztBQVFKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7QUFBQTtBQUFBO0VBQ0k7O0FBRUo7QUFBQTtBQUFBO0VBQ0k7O0FBRUo7QUFBQTtBQUFBO0VBQ0k7QUE0REE7QUFBQTtBQUFBOztBQTNEQTtBQUFBO0FBQUE7RUFDSTtFQUNBOztBQUVKO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFDSTtFQUNBOztBQUVKO0FBQUE7QUFBQTtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0FBQUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7QUFBQTtBQUFBO0VBQ0k7RUFDQTs7QUFFSjtBQUFBO0FBQUE7RUFDSSxPaElsQkQ7O0FnSW9CSDtBQUFBO0FBQUE7RUFDSTs7QUFHSjtFQXJCSjtBQUFBO0FBQUE7SUFzQlE7SUFDQTs7RUFFQTtBQUFBO0FBQUE7SUFDSTtJQUNBOzs7QUFHUjtFQTlCSjtBQUFBO0FBQUE7SUErQlE7O0VBRUE7QUFBQTtBQUFBO0lBQ0k7SUFDQTs7O0FBR1I7RUF0Q0o7QUFBQTtBQUFBO0lBdUNROztFQUVBO0FBQUE7QUFBQTtJQUNJO0lBQ0E7OztBQUdSO0VBOUNKO0FBQUE7QUFBQTtJQStDUTtJQUNBOzs7QUFNUjtFQUNJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQUVJOztFQUVKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQUVJOzs7QUFHUjtFQUNJO0FBQUE7QUFBQTtJQUNJOztFQUVKO0FBQUE7QUFBQTtJQUNJOzs7O0FBS2hCO0FBRUk7RUFDSTtBQUFBO0FBQUE7SUFHSTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTtJQUNBOztFQUNBO0lBQ0k7SUFDQTs7O0FBSVo7QUFBQTtFQUVJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDM0lBO0FBQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0FBQUE7QUFBQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdSO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7QUFDQTtBQUVJO0VBQ0k7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7QUFDSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU1VO0VBQ0Y7RUFDQTtFQUNBO0VBQ0E7OztBQ3ZGSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7QUFNSTtBQUFBO0FBQUE7O0FBTEE7RUFDSTtFQUNBO0VBQ0E7O0FBS0o7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBR1I7RUFDSTtJQUNJOzs7QUFJUjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7O0FBR1I7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QUNBO0VDck5NO0VEdU5OO0VBQ0E7RUFDQTs7QUNsUkU7RUR5UUo7SUMzTVUsV0FYUTs7OztBRGtPbEI7RUFDRTs7O0FBSUY7QUFBQTtFQUVFOzs7QUFHRjtFQUtFO0VBQ0E7OztBQU9GO0VBQ0U7OztBQVFGO0VBQ0U7RUFDQTs7O0FBT0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFLRjtFQUNFOzs7QUk1ZEY7QUFBQTtFQUVFLGVGcVM0QjtFRW5TNUIsYUZxUzRCO0VFcFM1QixhRnFTNEI7OztBRWpTOUI7RUg4TFE7O0FBekRKO0VHcklKO0lIbU1VLFdBWFE7Ozs7QUd2TGxCO0VINkxROztBQXpESjtFR3BJSjtJSGtNVSxXQVhROzs7O0FHdExsQjtFSDRMUTs7QUF6REo7RUduSUo7SUhpTVUsV0FYUTs7OztBR3JMbEI7RUgyTFE7O0FBekRKO0VHbElKO0lIZ01VLFdBWFE7Ozs7QUdwTGxCO0VIaUtNOzs7QUdoS047RUhnS007OztBRzlKTjtFSDhKTTtFRzVKSixhRnVTNEI7OztBRW5TOUI7RUhpTFE7RUcvS04sYUYwUjRCO0VFelI1QixhRmlSNEI7O0FENUoxQjtFR3hISjtJSHNMVSxXQVhROzs7O0FHdEtsQjtFSDRLUTtFRzFLTixhRnNSNEI7RUVyUjVCLGFGNFE0Qjs7QUQ1SjFCO0VHbkhKO0lIaUxVLFdBWFE7Ozs7QUdqS2xCO0VIdUtRO0VHcktOLGFGa1I0QjtFRWpSNUIsYUZ1UTRCOztBRDVKMUI7RUc5R0o7SUg0S1UsV0FYUTs7OztBRzVKbEI7RUhrS1E7RUdoS04sYUY4UTRCO0VFN1E1QixhRmtRNEI7O0FENUoxQjtFR3pHSjtJSHVLVSxXQVhROzs7O0FHakpsQjtFQUNFLFlGZ0ZPO0VFL0VQLGVGK0VPO0VFOUVQO0VBQ0E7OztBQVFGO0FBQUE7RUhrR0k7RUcvRkYsYVJoRG1COzs7QVFtRHJCO0FBQUE7RUFFRSxTRmtRNEI7RUVqUTVCLGtCRjBRNEI7OztBRWxROUI7RUMvRUU7RUFDQTs7O0FEbUZGO0VDcEZFO0VBQ0E7OztBRHNGRjtFQUNFOztBQUVBO0VBQ0Us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c0M7RWN6ZXRDO0VmMEtJO0VldktKLGFwQlFtQjtFb0JQbkIsYXBCVWlCO0VvQlRqQixPZERTO0VjRVQsa0JyQlBPO0VxQlFQO0VBQ0E7RVJBRTtFU0ZFLFlEUUo7O0FDSkk7RURkTjtJQ2VROzs7QURNTjtFQUNFO0VBQ0E7O0FFaEJGO0VBQ0U7RUFDQSxrQnZCTks7RXVCT0wsY2hCcWRvQztFZ0JwZHBDO0VBS0UsWWhCb1h3Qjs7QWN0VzVCO0VBQ0UsT2R4Qk87RWMwQlA7O0FBUUY7RUFFRSxrQmR4Q087RWMwQ1A7OztBQVFGO0FBQUE7QUFBQTtBQUFBO0VBQ0U7OztBQU1GO0VBQ0U7RUFDQTs7QUFHRjtFQU1FLE9kL0RPO0VjZ0VQLGtCckJyRUs7OztBcUIwRVQ7QUFBQTtFQUVFO0VBQ0E7OztBQVVGO0VBQ0U7RUFDQTtFQUNBO0VmaUVFO0VlL0RGLGFwQjdFaUI7OztBb0JnRm5CO0VBQ0U7RUFDQTtFZjBFSTtFZXhFSixhZDZINEI7OztBYzFIOUI7RUFDRTtFQUNBO0VmbUVJO0VlakVKLGFkdUg0Qjs7O0FjOUc5QjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0Vmb0RJO0VlbERKLGFwQjFHaUI7RW9CMkdqQixPZG5IUztFY29IVDtFQUNBO0VBQ0E7O0FBRUE7RUFFRTtFQUNBOzs7QUFZSjtFQUNFLFFkNFZzQztFYzNWdEM7RWYyQkk7RWV6QkosYWQrRTRCO0VNeE4xQjs7O0FRNklKO0VBQ0UsUWRxVnNDO0VjcFZ0QztFZm1CSTtFZWpCSixhZHNFNEI7RU12TjFCOzs7QVF1SkY7RUFFRTs7O0FBSUo7RUFDRTs7O0FBUUY7RUFDRSxlZDBVc0M7OztBY3ZVeEM7RUFDRTtFQUNBLFlkMlRzQzs7O0FjblR4QztFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOzs7QUFTSjtFQUNFO0VBQ0E7RUFDQSxjZGdTc0M7OztBYzdSeEM7RUFDRTtFQUNBLFlkNFJzQztFYzNSdEM7O0FBR0E7RUFFRSxPZHpOTzs7O0FjNk5YO0VBQ0U7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY2Q2UXNDOztB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RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEUU47RUMzREE7RUZBRSxrQmpCc0VXO0VtQnBFYixjbkJvRWE7O0FDaEViO0VrQkFFO0VGTkEsa0JFRDJEO0VBUzNELGNBVHFHOztBQVl2RztFQUVFO0VGYkEsa0JFRDJEO0VBZ0IzRCxjQWhCcUc7RUFxQm5HOztBQUtKO0VBRUU7RUFDQSxrQm5CMENXO0VtQnpDWCxjbkJ5Q1c7O0FtQmxDYjtFQUdFO0VBQ0Esa0JBekMrSTtFQTZDL0ksY0E3Q3lMOztBQStDekw7RUFLSTs7O0FEY047RUNQQSxPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBRHpCTjtFQ1BBLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FEekJOO0VDUEEsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QUR6Qk47RUNQQSxPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBRHpCTjtFQ1BBLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FEekJOO0VDUEEsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QUR6Qk47RUNQQSxPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBRHpCTjtFQ1BBLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FEZFI7RUFDRSxheEI5RG1CO0V3QitEbkIsT3pCckVLO0V5QnNFTCxpQnpCaENnQjs7QVF6Q2hCO0VpQjRFRSxPekJsQ2U7RXlCbUNmLGlCbEJ5RnNDOztBa0J0RnhDO0VBRUUsaUJsQm9Gc0M7O0FrQmpGeEM7RUFFRSxPbEJ0Rk87RWtCdUZQOzs7QUFXSjtFQ1BFO0VwQjRFSTtFb0IxRUosYW5CK0g0QjtFTXZOMUI7OztBWWlHSjtFQ1hFO0VwQjRFSTtFb0IxRUosYW5CZ0k0QjtFTXhOMUI7OztBWTBHSjtFQUNFO0VBQ0E7O0FBR0E7RUFDRSxZbEJ1VDBCOzs7QWtCL1M1QjtBQUFBO0FBQUE7RUFDRTs7O0FFM0lKO0VMZ0JNLFlLZko7O0FMbUJJO0VLcEJOO0lMcUJROzs7QUtsQk47RUFDRTs7O0FBS0Y7RUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUxESSxZS0VKOztBTEVJO0VLTk47SUxPUTs7OztBTXBCUjtBQUFBO0FBQUE7QUFBQTtFQUlFOzs7QUFHRjtFQUNFOztBQ29CRTtFQUNFO0VBQ0EsYXRCK053QjtFc0I5TnhCLGdCdEI2TndCO0VzQjVOeEI7RUFoQ0o7RUFDQTtFQUNBO0VBQ0E7O0FBcURFO0VBQ0U7OztBRDFDTjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFNyQndwQmtDO0VxQnZwQmxDO0VBQ0E7RUFDQSxXckJndUJrQztFcUIvdEJsQztFQUNBO0V0QjJKSTtFc0J6SkosT3JCWFM7RXFCWVQ7RUFDQTtFQUNBLGtCNUJyQk87RTRCc0JQO0VBQ0E7RWZkRTs7O0FldUJBO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBOzs7QVhZRjtFV25CQTtJQUNFO0lBQ0E7OztFQUdGO0lBQ0U7SUFDQTs7O0FYWUY7RVduQkE7SUFDRTtJQUNBOzs7RUFHRjtJQUNFO0lBQ0E7OztBWFlGO0VXbkJBO0lBQ0U7SUFDQTs7O0VBR0Y7SUFDRTtJQUNBOzs7QVhZRjtFV25CQTtJQUNFO0lBQ0E7OztF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VHBJQSxrQmpCd2hCNEM7O0EwQmpaNUM7RVR2SUEsa0JqQndoQjRDOzs7QTBCdFk5QztFQUVFLGUxQnlaNEM7O0EwQnJaNUM7RUFDRTs7QUFLRjtFVDlKQSxrQmpCd2hCNEM7OztBMEIvV2hEO0VBQ0U7O0FBR0U7RUFDRTtFQUNBLE8xQmlZMEM7RTBCaFkxQztFQUVBLGUxQitYMEM7O0EwQjVYNUM7RUFDRTtFQUNBO0VBQ0EsTzFCMFgwQztFMEJ6WDFDLFExQnlYMEM7RTBCeFgxQyxrQjFCcExLO0UwQnNMTCxlMUJxWDBDO0VldmlCMUMsWVdtTEE7O0FYL0tBO0VXdUtGO0lYdEtJOzs7QVdtTEo7RUFDRSxrQmpDaE1HO0VpQ2lNSDs7QUFLRjtFVHpNQSxrQmpCd2hCNEM7OztBMEJsVWhEO0VBQ0U7RUFDQTtFQUNBLFExQm9Sc0M7RTBCblJ0QztFM0I1Q0k7RTJCK0NKLGFoQzlNbUI7RWdDK01uQixhaEM1TWlCO0VnQzZNakIsTzFCdk5TO0UwQndOVDtFQUNBO0VBQ0E7RXBCdE5FO0VvQnlORjs7QUFFQTtFQUNFLGMxQnVQb0M7RTBCdFBwQztFQUtFLFkxQmtXOEI7O0EwQi9WaEM7RUFNRSxPMUIvT0s7RTBCZ1BMLGtCakNyUEc7O0FpQ3lQUDtFQUVFO0VBQ0EsZTFCOEgwQjtFMEI3SDFCOztBQUdGO0VBQ0UsTzFCN1BPO0UwQjhQUCxrQjFCbFFPOztBMEJzUVQ7RUFDRTs7QUFJRjtFQUNFO0VBQ0E7OztBQUlKO0VBQ0UsUTFCeU5zQztFMEJ4TnRDLGExQmdINEI7RTBCL0c1QixnQjFCK0c0QjtFMEI5RzVCLGMxQitHNEI7RUR6TnhCOzs7QTJCOEdOO0VBQ0UsUTFCa05zQztFMEJqTnRDLGExQjZHNEI7RTBCNUc1QixnQjFCNEc0QjtFMEIzRzVCLGMxQjRHNEI7RUQ5TnhCOzs7QTJCMkhOO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsUTFCZ01zQztFMEIvTHRDOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFExQndMc0M7RTBCdkx0QztFQUNBO0VBQ0E7O0FBRUE7RUFDRSxjMUJvS29DO0UwQm5LcEMsWTFCd0UwQjs7QTBCcEU1QjtFQUVFLGtCMUIvVE87O0EwQm1VUDtFQUNFLFMxQjBUYTs7QTBCdFRqQjtFQUNFOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxRMUJ1SnNDO0UwQnRKdEM7RUFDQTtFQUVBLGFoQzNVbUI7RWdDNFVuQixhaEN6VWlCO0VnQzBVakIsTzFCcFZTO0UwQnFWVCxrQmpDMVZPO0VpQzJWUDtFcEJsVkU7O0FvQnNWRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFExQmdJb0M7RTBCL0hwQztFQUNBLGFoQ3pWZTtFZ0MwVmYsTzFCcFdPO0UwQnFXUDtFVDdXQSxrQmpCR087RTBCNFdQO0VwQm5XQTs7O0FvQjhXSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFJQTtFQUEwQixZMUJtT2U7O0EwQmxPekM7RUFBMEIsWTFCa09lOztBMEJqT3pDO0VBQTBCLFkxQmlPZTs7QTBCOU4zQztFQUNFOztBQUdGO0VBQ0UsTzFCbU55QztFMEJsTnpDLFExQmtOeUM7RTBCak56QztFVGxaQSxrQmpCb1AwQjtFMEJnSzFCLFExQmtOeUM7RU0xbEJ6QztFU0ZFLFlXNllGO0VBQ0E7O0FYMVlFO0VXaVlKO0lYaFlNOzs7QVcyWUo7RVQxWkEsa0JqQjJtQnlDOztBMEI1TTNDO0VBQ0UsTzFCNExnQztFMEIzTGhDLFExQjRMZ0M7RTBCM0xoQztFQUNBLFExQjJMZ0M7RTBCMUxoQyxrQjFCaGFPO0UwQmlhUDtFcEJ6WkE7O0FvQjhaRjtFQUNFLE8xQndMeUM7RTBCdkx6QyxRMUJ1THlDO0VpQm5tQnpDLGtCakJvUDBCO0UwQjBMMUIsUTFCd0x5QztFTTFsQnpDO0VTRkUsWVd1YUY7RUFDQTs7QVhwYUU7RVc0Wko7SVgzWk07OztBV3FhSjtFVHBiQSxrQmpCMm1CeUM7O0EwQmxMM0M7RUFDRSxPMUJrS2dDO0UwQmpLaEMsUTFCa0tnQztFMEJqS2hDO0VBQ0EsUTFCaUtnQztFMEJoS2hDLGtCMUIxYk87RTBCMmJQO0VwQm5iQTs7QW9Cd2JGO0VBQ0UsTzFCOEp5QztFMEI3SnpDLFExQjZKeUM7RTBCNUp6QztFQUNBLGMxQnRFMEI7RTBCdUUxQixhMUJ2RTBCO0VpQmxZMUIsa0JqQm9QMEI7RTBCdU4xQixRMUIySnlDO0VNMWxCekM7RVNGRSxZV29jRjtFQUNBOztBWGpjRTtFV3NiSjtJWHJiTTs7O0FXa2NKO0VUamRBLGtCakIybUJ5Qzs7QTBCckozQztFQUNFLE8xQnFJZ0M7RTBCcEloQyxRMUJxSWdDO0UwQnBJaEM7RUFDQSxRMUJvSWdDO0UwQm5JaEM7RUFDQTtFQUNBOztBQUlGO0VBQ0Usa0IxQjlkTztFTVFQOztBb0IwZEY7RUFDRTtFQUNBLGtCMUJwZU87RU1RUDs7QW9CaWVBO0VBQ0Usa0IxQnhlSzs7QTBCMmVQO0VBQ0U7O0FBR0Y7RUFDRSxrQjFCaGZLOztBMEJtZlA7RUFDRTs7QUFHRjtFQUNFLGtCMUJ4Zks7OztBMEI2Zlg7QUFBQTtBQUFBO0VYemZNLFlXNGZKOztBWHhmSTtFV3FmTjtBQUFBO0FBQUE7SVhwZlE7Ozs7QVloQlI7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7O0ExQkNBO0UwQkdFOztBQUlGO0VBQ0UsTzNCWE87RTJCWVA7RUFDQTs7O0FBUUo7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RXJCWkE7RUFDQTs7QUxaRjtFMEIyQkksYzNCbXBCOEI7O0EyQmhwQmhDO0VBQ0UsTzNCbENLO0UyQm1DTDtFQUNBOztBQUlKO0FBQUE7RUFFRSxPM0J6Q087RTJCMENQLGtCbEMvQ0s7RWtDZ0RMLGMzQndvQmdDOztBMkJyb0JsQztFQUVFO0VyQm5DQTtFQUNBOzs7QXFCOENGO0VyQnhERTs7QXFCNERGO0FBQUE7RUFFRSxPbEN2RUs7RWtDd0VMLGtCM0J5SzBCOzs7QTJCL0o1QjtBQUFBO0VBRUU7RUFDQTs7O0FBS0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7O0FBVUY7RUFDRTs7QUFFRjtFQUNFOzs7QUNwR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUE7QUFBQTtBQUFBO0FBQUE7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QUdBO0lBRUU7SUFDQTs7RUFFQTtJQUNFO0lBQ0E7O0VBS0E7SXZCektKO0lBQ0E7O0V1QjJLTTtBQUFBO0lBR0U7O0VBRUY7QUFBQTtJQUdFOztFQUlKO0l2QjFLSjtJQUNBOztFdUI0S007QUFBQTtJQUdFOztFQUVGO0FBQUE7SUFHRTs7OztBQWNWO0VBQ0UsZTdCNmtCZ0M7O0FVcndCaEM7RW1Cc0xKO0lBTUksYzdCMGxCZ0M7STZCemxCaEMsWTdCMGxCZ0M7STZCemxCaEM7SUFDQTs7RUFFQTtJQUNFO0lBQ0E7Ozs7QUFVTjtFQUNFOztBQUVBO0VBQ0U7O0FBRUE7RUFDRTtFdkJ2T0Y7RUFDQTs7QXVCME9BO0V2QnpQQTtFQUNBOztBdUI0UEE7RXZCdFFBO0V1QndRRTs7O0FDMVJOO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsZTlCb2lDa0M7RThCbGlDbEM7RUFDQSxrQjlCRVM7RU1TUDs7O0F3QkxGO0VBQ0UsYzlCd2hDZ0M7O0E4QnRoQ2hDO0VBQ0U7RUFDQSxlOUJvaEM4QjtFOEJuaEM5QixPOUJOSztFOEJPTDs7QUFVSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRSxPOUIxQk87OztBK0JiWDtFQUNFO0U1QkdBO0VBQ0E7RUdhRTs7O0F5QlpKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhL0JteEJrQztFK0JseEJsQyxPdENHSztFc0NETCxrQnRDTE87RXNDTVA7O0FBRUE7RUFDRTtFQUNBLE90Q21DZTtFc0NsQ2Y7RUFDQSxrQi9CWk87RStCYVAsYy9CWk87O0ErQmVUO0VBQ0U7RUFDQSxTL0Iyd0JnQztFK0Ixd0JoQyxZL0I4VzBCOzs7QStCeFcxQjtFQUNFO0V6QmFGO0VBQ0E7O0F5QlRBO0V6Qk5BO0VBQ0E7O0F5QlVGO0VBQ0U7RUFDQSxPdEN0Q0s7RXNDdUNMLGtCL0IwTTBCO0UrQnpNMUIsYy9CeU0wQjs7QStCdE01QjtFQUNFLE8vQnhDTztFK0J5Q1A7RUFFQTtFQUNBLGtCdENoREs7RXNDaURMLGMvQmhETzs7O0FnQ1BUO0VBQ0U7RWpDZ0xFO0VpQzlLRixhaENtTzBCOztBZ0M5TnhCO0UxQnFDRjtFQUNBOztBMEJqQ0U7RTFCa0JGO0VBQ0E7OztBMEJoQ0Y7RUFDRTtFakNnTEU7RWlDOUtGLGFoQ29PMEI7O0FnQy9OeEI7RTFCcUNGO0VBQ0E7O0EwQmpDRTtFMUJrQkY7RUFDQTs7O0EyQjlCSjtFQUNFO0VBQ0E7RWxDNkpFO0VrQzNKRixhdkNhaUI7RXVDWmpCO0VBQ0E7RUFDQTtFQUNBO0UzQktFO0VTRkUsWWtCREo7O0FsQktJO0VrQmZOO0lsQmdCUTs7O0FkTE47RWdDR0k7OztBQUtKO0VBQ0U7OztBQUtKO0VBQ0U7RUFDQTs7O0FBT0Y7RUFDRSxlakNnNEJrQztFaUMvM0JsQyxjakMrM0JrQztFTXQ1QmhDOzs7QTJCZ0NGO0VDakRBO0VBQ0Esa0JsQzBFYTs7QUM1RGI7RWlDVkk7RUFDQTs7QUFHRjtFQUVFO0VBQ0E7OztBRHFDSjtFQ2pEQTtFQUNBLGtCbEMwRWE7O0FDNURiO0VpQ1ZJO0VBQ0E7O0FBR0Y7RUFFRTtFQUNBOzs7QURxQ0o7RUNqREE7RUFDQSxrQmxDMEVhOztBQzVEYjtFaUNWSTtFQUNBOztBQUdGO0VBRUU7RUFDQTs7O0FEcUNKO0VDakRBO0VBQ0Esa0JsQzBFYTs7QUM1RGI7RWlDVkk7RUFDQTs7QUFHRjtFQUVFO0VBQ0E7OztBRHFDSjtFQ2pEQTtFQUNBLGtCbEMwRWE7O0FDNURiO0VpQ1ZJO0VBQ0E7O0FBR0Y7RUFFRTtFQUNBOzs7QURxQ0o7RUNqREE7RUFDQSxrQmxDMEVhOztBQzVEYjtFaUNWSTtFQUNBOztBQUdGO0VBRUU7RUFDQTs7O0FEcUNKO0VDakRBO0VBQ0Esa0JsQzBFYTs7QUM1RGI7RWlDVkk7RUFDQTs7QUFHRjtFQUVFO0VBQ0E7OztBRHFDSjtFQ2pEQTtFQUNBLGtCbEMwRWE7O0FDNURiO0VpQ1ZJO0VBQ0E7O0FBR0Y7RUFFRTtFQUNBOzs7QUNiTjtFQUNFO0VBQ0EsZW5Dd3pCa0M7RW1DdHpCbEMsa0JuQ0tTO0VNU1A7O0FJMENBO0V5QjVESjtJQVFJOzs7O0FBSUo7RUFDRTtFQUNBO0U3QklFOzs7QThCZEo7RUFDRTtFQUNBO0VBQ0EsZXBDdzlCa0M7RW9DdjlCbEM7RTlCVUU7OztBOEJMSjtFQUVFOzs7QUFJRjtFQUNFLGExQ0VpQjs7O0EwQ01uQjtFQUNFOztBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFVRjtFQy9DQSxPRGdEcUg7RW5CM0NuSCxrQm1CMkN1QjtFQzlDekIsY0Q4Q3FFOztBQzVDckU7RUFDRTs7QUFHRjtFQUNFOzs7QURzQ0Y7RUMvQ0EsT0RnRHFIO0VuQjNDbkgsa0JtQjJDdUI7RUM5Q3pCLGNEOENxRTs7QUM1Q3JFO0VBQ0U7O0FBR0Y7RUFDRTs7O0FEc0NGO0VDL0NBLE9EZ0RxSDtFbkIzQ25ILGtCbUIyQ3VCO0VDOUN6QixjRDhDcUU7O0FDNUNyRTtFQUNFOztBQUdGO0VBQ0U7OztBRHNDRjtFQy9DQSxPRGdEcUg7RW5CM0NuSCxrQm1CMkN1QjtFQzlDekIsY0Q4Q3FFOztBQzVDckU7RUFDRTs7QUFHRjtFQUNFOzs7QURzQ0Y7RUMvQ0EsT0RnRHFIO0VuQjNDbkgsa0JtQjJDdUI7RUM5Q3pCLGNEOENxRTs7QUM1Q3JFO0VBQ0U7O0FBR0Y7RUFDRTs7O0FEc0NGO0VDL0NBLE9EZ0RxSDtFbkIzQ25ILGtCbUIyQ3VCO0VDOUN6QixjRDhDcUU7O0FDNUNyRTtFQUNFOztBQUdGO0VBQ0U7OztBRHNDRjtFQy9DQSxPRGdEcUg7RW5CM0NuSCxrQm1CMkN1QjtFQzlDekIsY0Q4Q3FFOztBQzVDckU7RUFDRTs7QUFHRjtFQUNFOzs7QURzQ0Y7RUMvQ0EsT0RnRHFIO0VuQjNDbkgsa0JtQjJDdUI7RUM5Q3pCLGNEOENxRTs7QUM1Q3JFO0VBQ0U7O0FBR0Y7RUFDRTs7O0FDUkY7RUFDRTtJQUFPOztFQUNQO0lBQUs7OztBQUlUO0VBQ0U7RUFDQSxRdENpK0JrQztFc0NoK0JsQztFQUNBO0V2Q3dLSTtFdUN0S0osa0J0Q0xTO0VNU1A7OztBZ0NDSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsTzdDZk87RTZDZ0JQO0VBQ0E7RUFDQSxrQnRDczlCa0M7RWVqK0I5QixZdUJZSjs7QXZCUkk7RXVCRE47SXZCRVE7Ozs7QXVCVVI7RXJCWUU7RXFCVkE7OztBQUlBO0VBQ0U7O0FBR0U7RUFKSjtJQUtNOzs7O0FDMUNSO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTs7O0FDRkY7RUFDRTtFQUNBO0VBR0E7RUFDQTtFbENRRTs7O0FrQ0VKO0VBQ0U7RUFDQSxPeENSUztFd0NTVDs7QXZDUEE7RXVDV0U7RUFDQSxPeENkTztFd0NlUDtFQUNBLGtCL0NkTzs7QStDaUJUO0VBQ0UsT3hDbEJPO0V3Q21CUCxrQnhDMUJPOzs7QXdDbUNYO0VBQ0U7RUFDQTtFQUNBO0VBR0Esa0IvQ3pDTztFK0MwQ1A7O0FBRUE7RWxDMUJFO0VBQ0E7O0FrQzZCRjtFbENoQkU7RUFDQTs7QWtDbUJGO0VBRUUsT3hDbERPO0V3Q21EUDtFQUNBLGtCL0N4REs7O0ErQzREUDtFQUNFO0VBQ0EsTy9DOURLO0UrQytETCxrQnhDa0wwQjtFd0NqTDFCLGN4Q2lMMEI7O0F3QzlLNUI7RUFDRTs7QUFFQTtFQUNFO0VBQ0Esa0J4QzJKd0I7OztBd0M3STFCO0VBQ0U7O0FBR0U7RWxDMUJKO0VBWkE7O0FrQzJDSTtFbEMzQ0o7RUFZQTs7QWtDb0NJO0VBQ0U7O0FBR0Y7RUFDRSxrQnhDMEhvQjtFd0N6SHBCOztBQUVBO0VBQ0U7RUFDQSxtQnhDcUhrQjs7O0FVaEwxQjtFOEJtQ0E7SUFDRTs7RUFHRTtJbEMxQko7SUFaQTs7RWtDMkNJO0lsQzNDSjtJQVlBOztFa0NvQ0k7SUFDRTs7RUFHRjtJQUNFLGtCeEMwSG9CO0l3Q3pIcEI7O0VBRUE7SUFDRTtJQUNBLG1CeENxSGtCOzs7QVVoTDFCO0U4Qm1DQTtJQUNFOztFQUdFO0lsQzFCSjtJQVpBOztFa0MyQ0k7SWxDM0NKO0lBWUE7O0VrQ29DSTtJQUNFOztFQUdGO0lBQ0Usa0J4QzBIb0I7SXdDekhwQjs7RUFFQTtJQUNFO0lBQ0EsbUJ4Q3FIa0I7OztBVWhMMUI7RThCbUNBO0lBQ0U7O0VBR0U7SWxDMUJKO0lBWkE7O0VrQzJDSTtJbEMzQ0o7SUFZQTs7RWtDb0NJO0lBQ0U7O0VBR0Y7SUFDRSxrQnhDMEhvQjtJd0N6SHBCOztFQUVBO0lBQ0U7SUFDQSxtQnhDcUhrQjs7O0FVaEwxQjtFOEJtQ0E7SUFDRTs7RUFHRTtJbEMxQko7SUFaQTs7RWtDMkNJO0lsQzNDSjtJQVlBOztFa0NvQ0k7SUFDRTs7RUFHRjtJQUNFLGtCeEMwSG9CO0l3Q3pIcEI7O0VBRUE7SUFDRTtJQUNBLG1CeENxSGtCOzs7QXdDdkc5QjtFbENuSEk7O0FrQ3NIRjtFQUNFOztBQUVBO0VBQ0U7OztBQ3pJSjtFQUNFLE9Eb0pzRTtFQ25KdEUsa0JEbUp1Qzs7QXZDeEl6QztFd0NQTSxPRCtJa0U7RUM5SWxFOztBQUdGO0VBQ0UsT2hETEM7RWdETUQsa0JEeUlrRTtFQ3hJbEUsY0R3SWtFOzs7QUNySnhFO0VBQ0UsT0RvSnNFO0VDbkp0RSxrQkRtSnVDOztBdkN4SXpDO0V3Q1BNLE9EK0lrRTtFQzlJbEU7O0FBR0Y7RUFDRSxPaERMQztFZ0RNRCxrQkR5SWtFO0VDeElsRSxjRHdJa0U7OztBQ3JKeEU7RUFDRSxPRG9Kc0U7RUNuSnRFLGtCRG1KdUM7O0F2Q3hJekM7RXdDUE0sT0QrSWtFO0VDOUlsRTs7QUFHRjtFQUNFLE9oRExDO0VnRE1ELGtCRHlJa0U7RUN4SWxFLGNEd0lrRTs7O0FDckp4RTtFQUNFLE9Eb0pzRTtFQ25KdEUsa0JEbUp1Qzs7QXZDeEl6QztFd0NQTSxPRCtJa0U7RUM5SWxFOztBQUdGO0VBQ0UsT2hETEM7RWdETUQsa0JEeUlrRTtFQ3hJbEUsY0R3SWtFOzs7QUNySnhFO0VBQ0UsT0RvSnNFO0VDbkp0RSxrQkRtSnVDOztBdkN4SXpDO0V3Q1BNLE9EK0lrRTtFQzlJbEU7O0FBR0Y7RUFDRSxPaERMQztFZ0RNRCxrQkR5SWtFO0VDeElsRSxjRHdJa0U7OztBQ3JKeEU7RUFDRSxPRG9Kc0U7RUNuSnRFLGtCRG1KdUM7O0F2Q3hJekM7RXdDUE0sT0QrSWtFO0VDOUlsRTs7QUFHRjtFQUNFLE9oRExDO0VnRE1ELGtCRHlJa0U7RUN4SWxFLGNEd0lrRTs7O0FDckp4RTtFQUNFLE9Eb0pzRTtFQ25KdEUsa0JEbUp1Qzs7QXZDeEl6QztFd0NQTSxPRCtJa0U7RUM5SWxFOztBQUdGO0VBQ0UsT2hETEM7RWdETUQsa0JEeUlrRTtFQ3hJbEUsY0R3SWtFOzs7QUNySnhFO0VBQ0UsT0RvSnNFO0VDbkp0RSxrQkRtSnVDOztBdkN4SXpDO0V3Q1BNLE9EK0lrRTtFQzlJbEU7O0FBR0Y7RUFDRSxPaERMQztFZ0RNRCxrQkR5SWtFO0VDeElsRSxjRHdJa0U7OztBRXhKMUU7RUFDRTtFM0M0TU07RTJDMU1OLGFoRG1CaUI7RWdEbEJqQjtFQUNBLE8xQ1lTO0UwQ1hULGExQ3dsQ2tDO0UwQ3ZsQ2xDOztBM0M2SUU7RTJDcEpKO0kzQ2tOVSxXQVhROzs7QUUzTGhCO0V5Q0RFLE8xQ01PO0UwQ0xQOztBekNJRjtFeUNDSTs7O0FBV047RUFDRTtFQUNBO0VBQ0E7OztBQU1GO0VBQ0U7OztBQ3RDRjtFQUdFLFkzQzA0QmtDO0UyQ3o0QmxDLFczQ3k0QmtDO0VEenRCOUI7RTRDN0tKLGtCM0MyNEJrQztFMkMxNEJsQztFQUNBO0VBQ0EsWTNDNDRCa0M7RTJDMzRCbEM7RXJDT0U7O0FxQ0pGO0VBQ0UsZTNDKzNCZ0M7O0EyQzUzQmxDO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsTzNDdkJTO0UyQ3dCVCxrQjNDbzNCa0M7RTJDbjNCbEM7RUFDQTtFckNaRTtFQUNBOzs7QXFDZUo7RUFDRSxTM0NrMkJrQzs7O0E0Q3g0QnBDO0VBRUU7O0FBRUE7RUFDRTtFQUNBOzs7QUFLSjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFM1QzJwQmtDO0U0QzFwQmxDO0VBQ0E7RUFDQTtFQUNBO0VBR0E7OztBQU9GO0VBQ0U7RUFDQTtFQUNBLFE1Q2c1QmtDO0U0Qzk0QmxDOztBQUdBO0U3QjNCSSxZNkI0QkY7RUFDQSxXNUNzNkJnQzs7QWUvN0I5QjtFNkJ1Qko7STdCdEJNOzs7QTZCMEJOO0VBQ0UsVzVDbzZCZ0M7O0E0Q2g2QmxDO0VBQ0UsVzVDaTZCZ0M7OztBNEM3NUJwQztFQUNFO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOztBQUdGO0FBQUE7RUFFRTs7QUFHRjtFQUNFOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUlGO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTs7O0FBTU47RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0Esa0JuRHpHTztFbUQwR1A7RUFDQTtFdENsR0U7RXNDc0dGOzs7QUFJRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFM1QytpQmtDO0U0QzlpQmxDO0VBQ0E7RUFDQSxrQjVDbEhTOztBNENxSFQ7RUFBUzs7QUFDVDtFQUFTLFM1Qzh6QnlCOzs7QTRDenpCcEM7RUFDRTtFQUNBO0VBQ0E7RUFDQSxTNUM0ekJrQztFNEMzekJsQztFdEN0SEU7RUFDQTs7QXNDd0hGO0VBQ0UsUzVDdXpCZ0M7RTRDcnpCaEM7OztBQUtKO0VBQ0U7RUFDQSxhbER0SWlCOzs7QWtEMkluQjtFQUNFO0VBR0E7RUFDQSxTNUN5d0JrQzs7O0E0Q3J3QnBDO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V0Q3pJRTtFQUNBOztBc0M4SUY7RUFDRTs7O0FBS0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QWxDdklFO0VrQzZJRjtJQUNFLFc1Q3N3QmdDO0k0Q3J3QmhDOzs7RUFHRjtJQUNFOztFQUVBO0lBQ0U7OztFQUlKO0lBQ0U7O0VBRUE7SUFDRTtJQUNBOzs7RUFRSjtJQUFZLFc1Qzh1QnNCOzs7QVVyNUJoQztFa0MyS0Y7QUFBQTtJQUVFLFc1Q3N1QmdDOzs7QVVuNUJoQztFa0NrTEY7SUFBWSxXNUNndUJzQjs7O0E2Qzc4QnBDO0VBQ0U7RUFDQSxTN0MrcUJrQztFNkM5cUJsQztFQUNBLFE3QzQxQmtDO0U4Q2gyQmxDLGFyRCtEd0I7RXFEN0R4QjtFQUNBLGFwRGlCbUI7RW9EaEJuQixhcERtQmlCO0VvRGxCakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9DcUtJO0U4Q3pLSjtFQUNBOztBQUVBO0VBQVMsUzdDZzFCeUI7O0E2QzkwQmxDO0VBQ0U7RUFDQTtFQUNBLE83Q2cxQmdDO0U2Qy8wQmhDLFE3Q2cxQmdDOztBNkM5MEJoQztFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFLTjtFQUNFOztBQUVBO0VBQ0U7O0FBRUE7RUFDRTtFQUNBO0VBQ0Esa0I3Q3ZCSzs7O0E2QzRCWDtFQUNFOztBQUVBO0VBQ0U7RUFDQSxPN0NrekJnQztFNkNqekJoQyxRN0NnekJnQzs7QTZDOXlCaEM7RUFDRTtFQUNBO0VBQ0Esb0I3Q3ZDSzs7O0E2QzRDWDtFQUNFOztBQUVBO0VBQ0U7O0FBRUE7RUFDRTtFQUNBO0VBQ0EscUI3Q3JESzs7O0E2QzBEWDtFQUNFOztBQUVBO0VBQ0U7RUFDQSxPN0NveEJnQztFNkNueEJoQyxRN0NreEJnQzs7QTZDaHhCaEM7RUFDRTtFQUNBO0VBQ0EsbUI3Q3JFSzs7O0E2QzBGWDtFQUNFLFc3Qzh1QmtDO0U2Qzd1QmxDO0VBQ0EsT3BEckdPO0VvRHNHUDtFQUNBLGtCN0MvRlM7RU1DUDs7O0F5Q2xCSjtFQUNFO0VBQ0E7RUFDQTtFQUNBLFMvQzZxQmtDO0UrQzVxQmxDO0VBQ0EsVy9DODJCa0M7RThDbjNCbEMsYXJEK0R3QjtFcUQ3RHhCO0VBQ0EsYXBEaUJtQjtFb0RoQm5CLGFwRG1CaUI7RW9EbEJqQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0NxS0k7RWdEeEtKO0VBQ0Esa0J0REpPO0VzREtQO0VBQ0E7RXpDR0U7O0F5Q0NGO0VBQ0U7RUFDQTtFQUNBLE8vQzgyQmdDO0UrQzcyQmhDLFEvQzgyQmdDO0UrQzcyQmhDOztBQUVBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS047RUFDRSxlL0MrMUJrQzs7QStDNzFCbEM7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQSxrQi9DMDFCOEI7O0ErQ3YxQmhDO0VBQ0UsUS9DMEx3QjtFK0N6THhCO0VBQ0Esa0J0RDNDRzs7O0FzRGdEVDtFQUNFLGEvQzIwQmtDOztBK0N6MEJsQztFQUNFO0VBQ0EsTy9DdTBCZ0M7RStDdDBCaEMsUS9DcTBCZ0M7RStDcDBCaEM7O0FBRUE7RUFDRTtFQUNBO0VBQ0Esb0IvQ20wQjhCOztBK0NoMEJoQztFQUNFLE0vQ21Ld0I7RStDbEt4QjtFQUNBLG9CdERsRUc7OztBc0R1RVQ7RUFDRSxZL0NvekJrQzs7QStDbHpCbEM7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQSxxQi9DK3lCOEI7O0ErQzV5QmhDO0VBQ0UsSy9DK0l3QjtFK0M5SXhCO0VBQ0EscUJ0RHRGRzs7QXNEMkZQO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxPL0MyeEJnQztFK0MxeEJoQztFQUNBO0VBQ0E7OztBQUlKO0VBQ0UsYy9Db3hCa0M7O0ErQ2x4QmxDO0VBQ0U7RUFDQSxPL0NneEJnQztFK0Mvd0JoQyxRL0M4d0JnQztFK0M3d0JoQzs7QUFFQTtFQUNFO0VBQ0E7RUFDQSxtQi9DNHdCOEI7O0ErQ3p3QmhDO0VBQ0UsTy9DNEd3QjtFK0MzR3hCO0VBQ0EsbUJ0RHpIRzs7O0FzRCtJVDtFQUNFO0VBQ0E7RWhEMEJJO0VnRHZCSixrQi9DOHRCa0M7RStDN3RCbEM7RXpDbklFO0VBQ0E7O0F5Q3FJRjtFQUNFOzs7QUFJSjtFQUNFO0VBQ0EsTy9DeEpTOzs7QWdESFg7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FDdkJBO0VBQ0U7RUFDQTtFQUNBOzs7QUR3Qko7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpDbEJJLFlpQ21CSjs7QWpDZkk7RWlDUU47SWpDUFE7Ozs7QWlDaUJSO0FBQUE7QUFBQTtFQUdFOzs7QUFHRjtBQUFBO0VBRUU7OztBQUdGO0FBQUE7RUFFRTs7O0FBU0E7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFakM1REUsWWlDNkRGOztBakN6REU7RWlDcURKO0FBQUE7SWpDcERNOzs7O0FpQ2lFUjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFF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QUF3Qjs7O0FBQXhCO0VBQXdCOzs7QUFBeEI7RUFBd0I7OztBQUF4QjtFQUF3Qjs7O0FBQXhCO0VBQXdCOzs7QUFBeEI7RUFBd0I7OztBQUF4QjtFQUF3Qjs7O0FBQXhCO0VBQXdCOzs7QTdDaUQxQjtFNkNqREU7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7QTdDaUQxQjtFNkNqREU7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7QTdDaUQxQjtFNkNqREU7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7QTdDaUQxQjtFNkNqREU7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7RUFBeEI7SUFBd0I7OztFQUF4QjtJQUF3Qjs7O0VBQXhCO0lBQXdCOzs7QUFVOUI7RUFFSTtJQUFxQjs7O0VBQXJCO0lBQXFCOzs7RUFBckI7SUFBcUI7OztFQUFyQjtJQUFxQjs7O0VBQXJCO0lBQXFCOzs7RUFBckI7SUFBcUI7OztFQUFyQjtJQUFxQjs7O0VBQXJCO0lBQXFCOzs7RUFBckI7SUFBcUI7OztBQ3JCekI7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQVNBO0VBQ0U7OztB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QUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBUUY7RUFBd0I7OztBQUN4QjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQXdCOzs7QUFDeEI7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7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SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7QXhEVEY7RXdEbERJO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQVFGO0lBQXdCOzs7RUFDeEI7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUF3Qjs7O0VBQ3hCO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBd0I7OztFQUN4QjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQXdCOzs7RUFDeEI7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUF3Qjs7O0VBQ3hCO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBTU47SUFBbUI7OztFQUNuQjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztBeERURjtFd0RsREk7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBZkY7SUFBZ0M7OztFQUNoQztBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQWdDOzs7RUFDaEM7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUFnQzs7O0VBQ2hDO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBUUY7SUFBd0I7OztFQUN4QjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQWZGO0lBQXdCOzs7RUFDeEI7QUFBQTtJQUVFOzs7RUFFRjtBQUFBO0lBRUU7OztFQUVGO0FBQUE7SUFFRTs7O0VBRUY7QUFBQTtJQUVFOzs7RUFmRjtJQUF3Qjs7O0VBQ3hCO0FBQUE7SUFFRTs7O0VBRUY7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QW1CbENiO0VBR0U7RUFDQSxrQkF6QytJO0VBNkMvSSxjQTdDeUw7O0FBK0N6TDtFQUtJOzs7QWlHbERKO0VqR0RGO0VGQUUsa0JqQnNFVztFbUJwRWIsY25Cb0VhOztBQ2hFYjtFa0JBRTtFRk5BLGtCRUQyRDtFQVMzRCxjQVRxRzs7QUFZdkc7RUFFRTtFRmJBLGtCRUQyRDtFQWdCM0QsY0FoQnFHO0VBcUJuRzs7QUFLSjtFQUVFO0VBQ0Esa0JuQjBDVztFbUJ6Q1gsY25CeUNXOztBbUJsQ2I7RUFHRTtFQUNBLGtCQXpDK0k7RUE2Qy9JLGNBN0N5TDs7QUErQ3pMO0VBS0k7OztBaUczQ0o7RWpHa0RGLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FpR2xGSjtFakdrREYsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QWlHbEZKO0VqR2tERixPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBaUdsRko7RWpHa0RGLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FpR2xGSjtFakdrREYsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QWlHbEZKO0VqR2tERixPbkJZYTtFbUJYYixjbkJXYTs7QUNoRWI7RWtCd0RFLE9BTGdEO0VBTWhELGtCbkJPVztFbUJOWCxjbkJNVzs7QW1CSGI7RUFFRTs7QUFHRjtFQUVFLE9uQkpXO0VtQktYOztBQUdGO0VBR0U7RUFDQSxrQm5CWlc7RW1CYVgsY25CYlc7O0FtQmVYO0VBS0k7OztBaUdsRko7RWpHa0RGLE9uQllhO0VtQlhiLGNuQldhOztBQ2hFYjtFa0J3REUsT0FMZ0Q7RUFNaEQsa0JuQk9XO0VtQk5YLGNuQk1XOztBbUJIYjtFQUVFOztBQUdGO0VBRUUsT25CSlc7RW1CS1g7O0FBR0Y7RUFHRTtFQUNBLGtCbkJaVztFbUJhWCxjbkJiVzs7QW1CZVg7RUFLSTs7O0FpR2xGSjtFakdrREYsT25CWWE7RW1CWGIsY25CV2E7O0FDaEViO0VrQndERSxPQUxnRDtFQU1oRCxrQm5CT1c7RW1CTlgsY25CTVc7O0FtQkhiO0VBRUU7O0FBR0Y7RUFFRSxPbkJKVztFbUJLWDs7QUFHRjtFQUdFO0VBQ0Esa0JuQlpXO0VtQmFYLGNuQmJXOztBbUJlWDtFQUtJOzs7QWlHekVSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQzNCUTtBQUFBO0VBQ0k7OztBQ0xoQjtFQXVCSTtFQUNBO0VBQ0E7O0FBeEJBO0VBQ0k7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBbUJKO0VBQ0k7O0FBR0E7RUFDSTs7QUFFSjtFQUNJOzs7QUFLUjtFQUNJOzs7QUMxQ1I7QUFBQTtBQUFBO0FBQUE7RUFJSTs7O0FDSko7RUFDSSxhOUhnQ1c7RThIL0JYO0VBQ0Esa0IvSDBCWTtFK0h4Qlo7RUFDQTtFQUNBO0VBQ0E7O0FBSUk7QUFBQTtFQUNJOztBQUlSO0VBakJKO0lBa0JRO0lBQ0E7OztBQUVKO0VBckJKO0lBc0JRO0lBQ0E7OztBQUdKO0VBMUJKO0lBMkJRO0lBQ0E7SUFDQTs7O0FBRUo7RUEvQko7SUFnQ1E7SUFDQTs7OztBQU1KO0VBQ0ksTy9IL0JDO0UrSGdDRDs7QUFFQTtFQUNJOztBQUdSO0VBQ0k7O0FBQ0E7RUFGSjtJQUdROzs7QUFRUjtFQUNJOztBQUNBO0VBRko7SUFHUTs7O0FBR1I7RUFDSTtFQUNBOztBQUVBO0FBQUE7RUFFSTs7QUFDQTtBQUFBO0VBQ0k7RUFDQTs7QUFXUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7O0FBSVo7RUFDSTs7O0FDN0ZKO0VBQ0k7OztBQVFKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7QUFBQTtBQUFBO0VBQ0k7O0FBRUo7QUFBQTtBQUFBO0VBQ0k7O0FBRUo7QUFBQTtBQUFBO0VBQ0k7QUE0REE7QUFBQTtBQUFBOztBQTNEQTtBQUFBO0FBQUE7RUFDSTtFQUNBOztBQUVKO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFDSTtFQUNBOztBQUVKO0FBQUE7QUFBQTtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0FBQUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7QUFBQTtBQUFBO0VBQ0k7RUFDQTs7QUFFSjtBQUFBO0FBQUE7RUFDSSxPaElsQkQ7O0FnSW9CSDtBQUFBO0FBQUE7RUFDSTs7QUFHSjtFQXJCSjtBQUFBO0FBQUE7SUFzQlE7SUFDQTs7RUFFQTtBQUFBO0FBQUE7SUFDSTtJQUNBOzs7QUFHUjtFQTlCSjtBQUFBO0FBQUE7SUErQlE7O0VBRUE7QUFBQTtBQUFBO0lBQ0k7SUFDQTs7O0FBR1I7RUF0Q0o7QUFBQTtBQUFBO0lBdUNROztFQUVBO0FBQUE7QUFBQTtJQUNJO0lBQ0E7OztBQUdSO0VBOUNKO0FBQUE7QUFBQTtJQStDUTtJQUNBOzs7QUFNUjtFQUNJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQUVJOztFQUVKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQUVJOzs7QUFHUjtFQUNJO0FBQUE7QUFBQTtJQUNJOztFQUVKO0FBQUE7QUFBQTtJQUNJOzs7O0FBS2hCO0FBRUk7RUFDSTtBQUFBO0FBQUE7SUFHSTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTtJQUNBOztFQUNBO0lBQ0k7SUFDQTs7O0FBSVo7QUFBQTtFQUVJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDM0lBO0FBQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0FBQUE7QUFBQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdSO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7QUFDQTtBQUVJO0VBQ0k7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7QUFDSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU1VO0VBQ0Y7RUFDQTtFQUNBO0VBQ0E7OztBQ3ZGSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7QUFNSTtBQUFBO0FBQUE7O0FBTEE7RUFDSTtFQUNBO0VBQ0E7O0FBS0o7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBR1I7RUFDSTtJQUNJOzs7QUFJUjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7O0FBR1I7QUFBQTtBQUFBO0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCbEl6RFc7RWtJMERYO0VBQ0E7RUFDQTtFQUVBOztBQVNBO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQzVGSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQ2RKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOzs7QUFJSjtFQUNJO0lBQ0k7O0VBQ0E7SUFDSTs7RUFHUjtJQUNJO0lBQ0E7OztBQUdSO0VBRVE7SUFDSTs7RUFHUjtJQUNJO0lBQ0E7Ozs7QUFJWjtFQUNJOzs7QUNsQ0k7RUFGSjtBQUFBO0lBR1E7SUFDQTs7OztBQUtaO0VBTUk7RUFDQTtFQUNBO0VBRUE7O0FBVEE7RUFESjtJQUVRO0lBQ0E7SUFDQTs7O0FBUUo7RUFDSTtFQUVBOztBQUVKO0VBQ0k7RUFDQTs7QUFHQTtFQURKO0lBRVE7OztBQUdSO0VBQ0k7O0FBQ0E7RUFGSjtJQUdROzs7QUFHUjtFQUNJOztBQUNBO0VBRko7SUFHUTs7O0FBR1I7QUFBQTtFQUVJLGFwSWpCTztFb0lrQlA7RUFDQTtFQUNBO0VBQ0E7O0FBS0E7RUFYSjtBQUFBO0lBWVE7OztBQUtKO0FBQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFYSjtBQUFBO0lBWVE7OztBQUVKO0VBZEo7QUFBQTtJQWVROzs7QUFFSjtFQWpCSjtBQUFBO0lBa0JROzs7QUFHUjtBQUFBO0FBQUE7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtBQUNoQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBZVk7RUFGSjtBQUFBO0lBR1E7OztBQUVKO0VBTEo7QUFBQTtJQU1ROzs7QUFLSjtFQUZKO0FBQUE7SUFHUTs7O0FBRUo7RUFMSjtBQUFBO0lBTVE7OztBQUlaO0VBM0lKO0lBNElROzs7O0FBR1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUN6SkE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBLGFySTRCVztFcUkzQlg7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQSxPdElpQlE7RXNJaEJSOztBQUdKO0VBQ0ksT3RJZU87RXNJZFA7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBLE90SUtHOztBc0lGWDtFQUVJO0VBQ0E7RUFFQTs7QUFRQTtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBSVI7RUFDSSxPdEkxQlE7OztBc0k2QmhCO0FBRUk7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7O0FBS0E7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUlaO0VBQ0k7OztBQUdSO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHUjtBQUVJO0VBQ0k7RUFDQTs7O0FDekdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOzs7QUNSTjtFQUNFOztBQUVGO0VBQ0U7OztBQ0pBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdSO0VBQ0k7O0FBR0k7RUFDSTs7QUFHUjtFQUNJOztBQUVJO0VBQ0k7OztBQU1aO0VBQ0k7OztBQUtKO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7OztBQzdDQTtFQUNJO0VBQ0E7OztBQUlaO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOzs7QUNaSjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7RUFDQTs7O0FBR1I7RUFDSTtFQUNBLGExSWlCVzs7O0EwSWZmO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOzs7QUFLUjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7O0FBSVI7RUFDSTtJQUNJO0lBQ0EsYTFJbEJPOzs7RTBJb0JYO0lBQ0k7OztFQUlKO0lBQ0k7SUFDQTtJQUNBOztFQUNBO0lBQ0k7SUFDQTtJQUNBOzs7QUFJWjtFQUVRO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOzs7RUFHUjtBQUFBO0lBRUk7SUFDQTs7O0VBRUo7SUFDSTtJQUNBOzs7QUNyRko7RUFDSTs7O0FHRlI7QUFBQTtBQUFBO0FBR0E7RUFDSTs7O0FBRUo7QUFBQTtBQUFBO0FBS0k7RUFDSTs7O0FBSVI7QUFBQTtBQUFBO0FBS1E7RUFDSTs7O0FBSVo7RUFDSTs7O0FBR0Q7RUFDSTs7O0FBS0g7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FoSjFCUjtBQUFBOztBQUFBO0FBQUE7QUFBQTs7O0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUEiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogXG5UaGVtZSBOYW1lOiBCb290c3RyYXAgNCBTYXNzXG5EZXNjcmlwdGlvbjogQm9vdHN0cmFwIDQgd2l0aCBTYXNzXG4qL1xuXG4vLyBpbXBvcnQgZmlsZXNcbi8vQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiaW1wb3J0XCI7XG5AaW1wb3J0IFwiYmFzZVwiO1xuQGltcG9ydCBcImxheW91dFwiO1xuQGltcG9ydCBcImltcG9ydFwiOyAgIC8vIGNvbXBvbmVudHNcbkBpbXBvcnQgXCJzdGF0ZVwiO1xuXG5cbi8qIEdFTkVSQUwgU1RZTEVTXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxuXG5ib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG59XG5cblxuLyogQ09MT1JTIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXG5cbmEge1xuICAgIGNvbG9yOiAkYWNjZW50LXNoYWRlO1xufVxuXG4uYmctaW52ZXJzZSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktc2hhZGUgIWltcG9ydGFudDtcbn1cblxuLnNpdGUtZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYWNjZW50LXNoYWRlICFpbXBvcnRhbnQ7XG59XG5cbi5tZW51LS1tYWluIGxpIGEge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1zaGFkZTtcbn1cblxuLm1lbnUtLWFjY291bnQgbGkgYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LXNoYWRlO1xufVxuXG4uc2l0ZS1uYW1lLXNsb2dhbiBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jYXJkLWdyb3VwIGltZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmNhcmQtZ3JvdXAgLmZpZWxkLS10eXBlLWltYWdlIHtcbiAgICBtYXJnaW46IDBcbn1cblxuLnNsaWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLnNsaWNrPmRpdiB7XG4gICAgbWFyZ2luOiAwIDE1cHg7XG59XG4qL1xuIiwiLyogU1RBTkRBUkQgQk9PVFNUUkFQIFZBUklBQkxFUyAqL1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxNjAwcHhcbikgIWRlZmF1bHQ7XG4vLyBSZWFzc2lnbiBjb2xvciB2YXJzIHRvIHNlbWFudGljIGNvbG9yIHNjaGVtZVxuXG4kd2hpdGU6ICAjRkVGRUZFO1xuJHJlZDogI0U1MzkzNTsgICAgICAvLyBhbHNvIHVzZWQgZm9yIHJlZCBsaW5lIGFjY2VudHMgLyBoZWFkZXIgdW5kZXJsaW5lXG4keWVsbG93OiAjZmZjMTA3O1xuJGdyZWVuOiAjMjhhNzQ1O1xuJGxpZ2h0LWdyZWVuOiAgI0FERTNCMjtcbiRjeWFuOiAjMTdhMmI4O1xuJGJsdWU6ICMyQTYyOTY7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiAoIFxuICAgIHByaW1hcnk6ICMyQTYyOTYsICAgLy8gbWVkaXVtIGJsdWUgLyBoZWFkZXIgYmFja2dyb3VuZCBcbiAgICBzZWNvbmRhcnk6ICMyMTM5NEUsIC8vIGRhcmsgYmx1ZSAgIC8gaGVhZGVyIGZhZGUgXG4gICAgc3VjY2VzczogJGdyZWVuLCBcbiAgICBpbmZvOiAkY3lhbiwgXG4gICAgd2FybmluZzogJHllbGxvdywgXG4gICAgZGFuZ2VyOiAkcmVkLCBcbiAgICBsaWdodDogJGdyYXktMTAwLCBcbiAgICBkYXJrOiAkZ3JheS04MDBcbik7XG4vLyBjb2xvcnNcbiRwcmltYXJ5LXNoYWRlOiAjMkE2Mjk2O1xuJHByaW1hcnktbGlnaHQ6IGxpZ2h0ZW4oJHByaW1hcnktc2hhZGUsIDM3JSk7XG4kcHJpbWFyeS1kYXJrOiBkYXJrZW4oJHByaW1hcnktc2hhZGUsIDEyJSk7XG4kYWNjZW50LXNoYWRlOiAjMjEzOTRFO1xuJGFjY2VudC1saWdodDogbGlnaHRlbigkYWNjZW50LXNoYWRlLCAzNyUpO1xuJGFjY2VudC1kYXJrOiBkYXJrZW4oJGFjY2VudC1zaGFkZSwgMTIlKTtcbiRicmFuZC1wcmltYXJ5OiAjMkE2Mjk2O1xuLy8kYnJhbmQtc3VjY2VzczogJGdyZWVuO1xuLy8kYnJhbmQtaW5mbzogJHRlYWw7XG4vLyRicmFuZC13YXJuaW5nOiAkb3JhbmdlO1xuLy8kYnJhbmQtZGFuZ2VyOiAkcmVkO1xuJGJyYW5kLWludmVyc2U6ICRwcmltYXJ5LXNoYWRlO1xuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cbi8vJGJvZHktYmc6ICR3aGl0ZTtcbi8vJGJvZHktY29sb3I6ICRncmF5LWRhcms7XG4kaW52ZXJzZS1iZzogJHByaW1hcnktc2hhZGU7XG4vLyRpbnZlcnNlLWNvbG9yOiAkZ3JheS1saWdodGVyO1xuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAkYmx1ZTtcbiRsaW5rLWRlY29yYXRpb246IG5vbmU7XG4kbGluay1ob3Zlci1jb2xvcjogIzMwOUI5QztcblxuLy8gQ29tbWVudHNcbiRjb21tZW50LXNwYWNlci14OiAxLjI1ZW07XG4kY29tbWVudC1zcGFjZXIteTogMS4yNWVtO1xuLy8gUmVzcG9uc2l2ZSBmb250IHNpemVzXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZTtcblxuXG4vKiBDVVNUT00gVkFSSUFCTEVTICovXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuLy8kZm9udC1mYW1pbHktZmFuY3k6ICAgICAgIFwiU3F1YWRhIE9uZVwiLCBcIlBUIFNhbnMgTmFycm93XCIsIGN1cnNpdmU7XG4vLyRmb250LWZhbWlseS1oZWFkaW5nczogICAgXCJSYW1tZXR0byBPbmVcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuJHBhZ2UtdGl0bGUtY29sb3I6IGRpbWdyYXk7XG4kZm9vdGVyLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlOyBcbiRicmFuZC1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4kbmF2YmFyLWRlZmF1bHQtYWN0aXZlLWNvbG9yOiBkYXJrZW4oJGdyYXktMTAwLCAxMiUpO1xuXG4kYm9yZGVyLWNvbG9yOiBncmF5O1xuXG4vKiBUb3BpY3MgKi9cbiRsYW5kOiAjQzlDNzE5O1xuJGFpcjogIzRDOEJDNjtcbiR3YXRlcjogIzMwOUI5QztcbiRpY2U6ICNCTEVGRkw7XG4kZWFydGg6ICMwQzQ3MDg7XG4kZ2xvYmFsOiAjRDM2Q0JBO1xuJGFwcGxpZWQ6IFwiIzhENTZETFwiO1xuXG4kY2xpbWF0ZTogJGFpcjtcblxuLyogQXNzZXRzICovXG4kaGVhZGVyLWJnOiAgJy4uL2ltZy9oZWFkZXJncmFkaWVudC5qcGcnO1xuJGhlYWRlci1pbWc6ICcuLi9pbWcvZWFydGhibGFja19vcGFjaXR5X3NtX2Nyb3AucG5nJztcbiRmb290ZXItaW1nOiAnLi4vaW1nL2Zvb3RlcmJhY2suanBnJztcbiIsIi8qIFRZUE9HUkFQSFkgKi9cblxuLyogR29vZ2xlIEZvbnRzICovXG5cbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9U3F1YWRhK09uZScpO1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1QVCtTYW5zK05hcnJvdycpO1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1SdXNzbytPbmUmZGlzcGxheT1zd2FwJyk7XG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU9wZW4rU2FucytDb25kZW5zZWQ6MzAwJmRpc3BsYXk9c3dhcCcpO1xuXG4kZm9udC1sYXRvOiAnTGF0bycsIEFyaWFsLCBWZXJkYW5hLCBzYW5zLXNlcmlmO1xuJGZvbnQtcmFsZXdheTogJ1JhbGV3YXknLCBBcmlhbCwgVmVyZGFuYSwgc2Fucy1zZXJpZjtcbiRmb250LXRhaG9tYTogVGFob21hLCBBcmlhbCwgVmVyZGFuYSwgc2Fucy1zZXJpZjtcblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG4kZm9udC1mYW1pbHktYmFzZTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4kZm9udC1zaXplLWJhc2U6IDFyZW07IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogMS4yNXJlbTtcbiRmb250LXNpemUtc206IC44NzVyZW07XG4kZm9udC1zaXplLXhzOiAuNzVyZW07XG4kZm9udC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZm9udC13ZWlnaHQtYm9sZDogYm9sZDtcbiRmb250LXdlaWdodC1iYXNlOiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNTtcbiRmb250LXNpemUtaDE6IDIuNXJlbTtcbiRmb250LXNpemUtaDI6IDJyZW07XG4kZm9udC1zaXplLWgzOiAxLjc1cmVtO1xuJGZvbnQtc2l6ZS1oNDogMS41cmVtO1xuJGZvbnQtc2l6ZS1oNTogMS4yNXJlbTtcbiRmb250LXNpemUtaDY6IDFyZW07XG5cbiRmb250LXN0YW5kYXJkOiAgXCJTcXVhZGEgT25lXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZm9udC1uYXJyb3c6ICBcIlBUIFNhbnMgTmFycm93XCIsIFwiU3F1YWRhIE9uZVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4kZm9udC10aXRsZTogIFwiUnVzc28gT25lXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZm9udC1zdWJ0aXRsZTogXCJBcHBsZSBTeW1ib2xzXCIsIFwiT3BlbiBTYW5zIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXG4vLyBDS0VkaXRvciBTdHlsZXNcbi5yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG4iLCIvKiBJTVBPUlRTICovXG5cbkBpbXBvcnQgXCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwXCI7XG5AaW1wb3J0IFwiYmFycmlvXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbkBpbXBvcnQgXCJjb21wb25lbnRzL3RheG9ub21pZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ZlYXR1cmVkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy90b29sYmFyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy90b3BpY3MtbWVudVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbGFiLWJsb2NrXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9sYWItbGFuZGluZ1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvb2ZmaWNlLWJsb2NrXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9vZmZpY2UtbGFuZGluZ1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvc2xpY2tcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhcmFncmFwaHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2V2ZW50c1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcmVhZG1vcmVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2Nrc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdG9waWNzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9taXNzaW9uc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaGlnaGxpZ2h0c1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvb2ZmY2FudmFzXCI7XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCB2NC42LjEgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4vLyBGdXR1cmUtcHJvb2YgcnVsZTogaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IDpmb2N1cy12aXNpYmxlLCBzdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZVxuLy8gb24gZWxlbWVudHMgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IHJlY2VpdmUgZm9jdXMgYnV0IHdvdWxkbid0IG5vcm1hbGx5IHNob3cgYSB2aXNpYmxlXG4vLyBmb2N1cyBvdXRsaW5lLiBJbiBnZW5lcmFsLCB0aGlzIHdvdWxkIG1lYW4gdGhhdCB0aGUgb3V0bGluZSBpcyBvbmx5IGFwcGxpZWQgaWYgdGhlXG4vLyBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgZWxlbWVudCByZWNlaXZpbmcgcHJvZ3JhbW1hdGljIGZvY3VzIHdhcyBhIGtleWJvYXJkIGludGVyYWN0aW9uLFxuLy8gb3IgdGhlIGJyb3dzZXIgaGFzIHNvbWVob3cgZGV0ZXJtaW5lZCB0aGF0IHRoZSB1c2VyIGlzIHByaW1hcmlseSBhIGtleWJvYXJkIHVzZXIgYW5kL29yXG4vLyB3YW50cyBmb2N1cyBvdXRsaW5lcyB0byBhbHdheXMgYmUgcHJlc2VudGVkLlxuLy9cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvOmZvY3VzLXZpc2libGVcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gNS4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG59XG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDgwJSk7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDc1JSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy9cbi8vIExpbmtzXG4vL1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8vIERpc2FibGUgYXV0by1oaWRpbmcgc2Nyb2xsYmFyIGluIElFICYgbGVnYWN5IEVkZ2UgdG8gYXZvaWQgb3ZlcmxhcCxcbiAgLy8gbWFraW5nIGl0IGltcG9zc2libGUgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgY29udGVudFxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2ZyB7XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBTVkcgb3ZlcmZsb3cgYnVnIGluIElFMTAvMTEgaXMgc3RpbGwgcmVxdWlyZWQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI2ODc4XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtdGgtZm9udC13ZWlnaHQ7IC8vIDFcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRsYWJlbC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cbkBpZiAkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zIHtcbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIGZvbnQgc2l6ZXNcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL3Y4LngvTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtZm9udC1zaXplLXVuaXQgIT0gcmVtIGFuZCAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xufVxuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgZm9udCBzaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1kaXNhYmxlLWNsYXNzIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgJixcbiAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udCBzaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiBkaXZpZGUoJGZzLCAkZnMgKiAwICsgMSk7XG4gICAgfVxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xuICAgICAgJGZzOiBkaXZpZGUoJGZzLCBkaXZpZGUoJGZzICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHQgZm9udCBzaXplXG4gICAgJHJmcy1zdGF0aWM6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JGZzfXB4KTtcblxuICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgZm9udCBzaXplIGlzIGJpZ2dlciB0aGFuIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgIEBpZiAkZnMgPD0gJHJmcy1iYXNlLWZvbnQtc2l6ZSBvciBub3QgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgZm9udC1zaXplOiAjeyRyZnMtc3RhdGljfSN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gZm9udCBzaXplIGZvciAkZnNcbiAgICAgICRmcy1taW46ICRyZnMtYmFzZS1mb250LXNpemUgKyBkaXZpZGUoJGZzIC0gJHJmcy1iYXNlLWZvbnQtc2l6ZSwgJHJmcy1mYWN0b3IpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICRmcyBhbmQgdGhlIG1pbmltdW0gZm9udCBzaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCRmcy1taW4sICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7ZGl2aWRlKCRmcy1kaWZmICogMTAwLCAkcmZzLWJyZWFrcG9pbnQpfSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xuXG4gICAgICAvLyBCcmVha3BvaW50IGZvcm1hdHRpbmdcbiAgICAgICRtcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAje2RpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtcmVtLXZhbHVlKX0jeyRyZnMtYnJlYWtwb2ludC11bml0fSk7XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtZGlzYWJsZS1jbGFzcyB7XG4gICAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSgkbXEtdmFsdWUpIHtcbiAgICAgICAgQGluY2x1ZGUgX3Jmcy1lbmFibGUtY2xhc3Mge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGlucyB1c2UgUkZTIHRvIHJlc2NhbGUgdGhlIGZvbnQgc2l6ZVxuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogLjUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBzdWJ0cmFjdCgkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNCkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgIGVzY2FwZS1zdmcoJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yKSByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSBuby1yZXBlYXQgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogYWRkKDFlbSAqIC43NSwgKDIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKiAuNzUpICsgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PScwIDAgMTIgMTInPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ6ICAgICAgNzV2aCAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcbiR1c2VyLXNlbGVjdHM6IGFsbCwgYXV0bywgbm9uZSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyICogLjU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCgpIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tL2Nzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gICAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbWctcmV0aW5hKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbiIsIi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGtiZC1ib3gtc2hhZG93KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDEwMCUpO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgKiAuNTtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyICogLjU7XG59XG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgICBtYXgtd2lkdGg6IGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIFRleHR1YWwgZm9ybSBjb250cm9sc1xuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgJi5mb3JtLWNvbnRyb2wge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgLy8gUmVtb3ZlIHNlbGVjdCBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRpbnB1dC1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgLy8gU3VwcHJlc3MgdGhlIG5lc3RlZCBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLCBhcyBpdCBsb29rcyBiYWQgYW5kIGNhbm5vdCBiZSBtYWRlIHRvXG4gICAgLy8gbWF0Y2ggdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIG5hdGl2ZSB3aWRnZXQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIH1cbn1cblxuLy8gTWFrZSBmaWxlIGlucHV0cyBiZXR0ZXIgbWF0Y2ggdGV4dCBpbnB1dHMgYnkgZm9yY2luZyB0aGVtIHRvIG5ldyBsaW5lcy5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuLy9cbi8vIExhYmVsc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG59XG5cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmW3NpemVdLFxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIEZvcm0gZ3JpZFxuLy9cbi8vIFNwZWNpYWwgcmVwbGFjZW1lbnQgZm9yIG91ciBncmlkIHN5c3RlbSdzIGAucm93YCBmb3IgdGlnaHRlciBmb3JtIGxheW91dHMuXG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuXG4gID4gLmNvbCxcbiAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgZm9yIHdvcmthcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcblxuICAvLyBVbmRvIC5mb3JtLWNoZWNrLWlucHV0IGRlZmF1bHRzIGFuZCBhZGQgc29tZSBgbWFyZ2luLXJpZ2h0YC5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZm9ybS1jb250cm9sLWZvY3VzKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMxNTU3XG4gICAgLy8gQWxpZ24gdG9vbHRpcCB0byBmb3JtIGVsZW1lbnRzXG4gICAgLmZvcm0tcm93ID4gLmNvbCA+ICYsXG4gICAgLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0gPiAmIHtcbiAgICAgIGxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXIgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LXBhZGRpbmcteCAqIDQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LXBhZGRpbmcteCAqIDIgY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsICRjdXN0b20tc2VsZWN0LWJnIGVzY2FwZS1zdmcoJGljb24pICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24gLyAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemUgbm8tcmVwZWF0O1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkYnRuLWZvbnQtc2l6ZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogaWYoJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucywgcG9pbnRlciwgbnVsbCk7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tc3BhY2VyIDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1sZWZ0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1yaWdodCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGxlZnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiBQb3BwZXIgaXMgZW5hYmxlZCwgcmVzZXQgdGhlIGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSwgdHJ1ZSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15LCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBuYXYtZGl2aWRlcigpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BsZWZ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gLmZvcm0tY29udHJvbDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICA+IC5jdXN0b20tZmlsZTpudGgtbGFzdC1jaGlsZChuICsgMykgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZFxuLy9cbi8vIFdoaWxlIGl0IHJlcXVpcmVzIG9uZSBleHRyYSBsYXllciBvZiBIVE1MIGZvciBlYWNoLCBkZWRpY2F0ZWQgcHJlcGVuZCBhbmRcbi8vIGFwcGVuZCBlbGVtZW50cyBhbGxvdyB1cyB0byAxKSBiZSBsZXNzIGNsZXZlciwgMikgc2ltcGxpZnkgb3VyIHNlbGVjdG9ycywgYW5kXG4vLyAzKSBzdXBwb3J0IEhUTUw1IGZvcm0gdmFsaWRhdGlvbi5cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHsgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7IG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuYnRuLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIGNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtY3Vyc29yO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41O1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgYm9yZGVyOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvciBzb2xpZCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41O1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6IDUwJSAvICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplfSBuby1yZXBlYXQ7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIGNoZWNrYm94ZXMuXG5cbi5jdXN0b20tY2hlY2tib3gge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhZGlvc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciByYWRpb3MuXG5cbi5jdXN0b20tcmFkaW8ge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzd2l0Y2hlc1xuLy9cbi8vIFR3ZWFrIGEgZmV3IHRoaW5ncyBmb3Igc3dpdGNoZXNcblxuLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtd2lkdGg7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiBhZGQoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41LCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAqIC41OyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgKiAuNTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC1sb3dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyAvLyBhcmJpdHJhcnk/XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBDb250ZW50c1xuLy9cbi8vIE5hdmJhclxuLy8gTmF2YmFyIGJyYW5kXG4vLyBOYXZiYXIgbmF2XG4vLyBOYXZiYXIgdGV4dFxuLy8gTmF2YmFyIGRpdmlkZXJcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXkgJG5hdmJhci1wYWRkaW5nLXg7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAuY29udGFpbmVyLFxuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItYnJhbmQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgaW1hZ2Ugc2l6ZSBidWcgaW4gSUVcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yODg1NVxuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15ICogLjU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBmbGV4LXNocmluazogMDsgLy8gRm9yIElFOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5Mzk2XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG4uY2FyZC1kZWNrIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogLSRjYXJkLWRlY2stbWFyZ2luO1xuXG4gICAgLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuXG4gID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIH1cblxuICAgID4gLmNhcmQtaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYnJlYWRjcnVtYi1mb250LXNpemUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xuICAgIGJveC1zaGFkb3c6ICRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAvLyBPcGluaW9uYXRlZDogcmVtb3ZlIHRoZSBcImhhbmRcIiBjdXJzb3Igc2V0IHByZXZpb3VzbHkgZm9yIC5wYWdlLWxpbmtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJGxpbmUtaGVpZ2h0LWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYmFkZ2UtdHJhbnNpdGlvbik7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4iLCJAbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRiYWRnZS1mb2N1cy13aWR0aCByZ2JhKCRiZywgLjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nICogLjUpO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gICAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBsaW5lLWhlaWdodDogMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwcm9ncmVzcy1mb250LXNpemUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmcgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAtOSksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgNikpO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5hLmNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIudG9hc3Qge1xuICAvLyBQcmV2ZW50cyBmcm9tIHNocmlua2luZyBpbiBJRTExLCB3aGVuIGluIGEgZmxleCBjb250YWluZXJcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgzNDFcbiAgZmxleC1iYXNpczogJHRvYXN0LW1heC13aWR0aDtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvYXN0LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkdG9hc3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHRvYXN0LXBhZGRpbmcteDtcbiAgfVxuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteSAkdG9hc3QtcGFkZGluZy14O1xuICBjb2xvcjogJHRvYXN0LWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhzdWJ0cmFjdCgkdG9hc3QtYm9yZGVyLXJhZGl1cywgJHRvYXN0LWJvcmRlci13aWR0aCkpO1xufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXg7IC8vIGFwcGx5IHRvIGJvdGggdmVydGljYWwgYW5kIGhvcml6b250YWxcbn1cbiIsIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi5tb2RhbC1vcGVuIHtcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDsgLy8gUmVzZXQgaGVpZ2h0IHRvIDAgZXhjZXB0IG9uIElFXG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmcgLSAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuICogLjU7XG4gIGJvcmRlci10b3A6ICRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46ICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gKiAuNTtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1tZDtcbiAgICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogJG1vZGFsLWxnO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHsgbWF4LXdpZHRoOiAkbW9kYWwteGw7IH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXJpZ2h0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgdG9wOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWxlZnQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1sZWZ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgbWFyZ2luOiAwICRwb3BvdmVyLWJvcmRlci1yYWRpdXM7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgYm90dG9tOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGxlZnQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICB0b3A6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1sZWZ0O1xuICB9XG59XG5cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogJHBvcG92ZXItaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItaGVhZGVyLWJnLCA1JSk7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWJvZHktcGFkZGluZy15ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xuICBjb2xvcjogJHBvcG92ZXItYm9keS1jb2xvcjtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kOiA1MCUgLyAxMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmcpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBSb3RhdGluZyBib3JkZXJcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogJHNwaW5uZXItdmVydGljYWwtYWxpZ247XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ib3JkZXI7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG4gIGJvcmRlci13aWR0aDogJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtO1xufVxuXG4vL1xuLy8gR3Jvd2luZyBjaXJjbGVcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogJHNwaW5uZXItdmVydGljYWwtYWxpZ247XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cblxuQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxuLmFsaWduLXRvcCAgICAgICAgIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4uYWxpZ24tbWlkZGxlICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLXZhcmlhbnRgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctZ3JhZGllbnQtdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC41LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgICAuZCN7JGluZml4fS0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgLmQtcHJpbnQtI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBlYWNoICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbyBpbiAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zIHtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXg6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDEpO1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teTogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMik7XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtI3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teH1ieSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXl9IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoZGl2aWRlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15LCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teCkpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHNyLW9ubHkoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlKCkge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLnNoYWRvdy1zbSB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXNtICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3cgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LWxnIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbGcgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1ub25lIHsgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gV2lkdGggYW5kIGhlaWdodFxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAod2lkdGg6IHcsIGhlaWdodDogaCkge1xuICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLm1oLTEwMCB7IG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4vLyBWaWV3cG9ydCBhZGRpdGlvbmFsIGhlbHBlcnNcblxuLm1pbi12dy0xMDAgeyBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi5taW4tdmgtMTAwIHsgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuXG4udnctMTAwIHsgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi52aC0xMDAgeyBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICAuI3skYWJicmV2fSN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXRvcDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9YiN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiBcIiN7JHNpemV9XCIgIT0gXCIwXCIge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIERlcHJlY2F0ZWQsIGJ1dCBhdm9pZHMgaXNzdWVzIHdpdGggZmxleCBjb250YWluZXJzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBVc2VkIGluc3RlYWQgb2YgYG92ZXJmbG93LXdyYXBgIGZvciBJRSAmIEVkZ2UgTGVnYWN5XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9tYWluLmNzcy9ibG9iL21hc3Rlci9zcmMvX3ByaW50LmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIFNwZWNpZnkgYSBzaXplIGFuZCBtaW4td2lkdGggdG8gbWFrZSBwcmludGluZyBjbG9zZXIgYWNyb3NzIGJyb3dzZXJzLlxuICAgIC8vIFdlIGRvbid0IHNldCBtYXJnaW4gaGVyZSBiZWNhdXNlIGl0IGJyZWFrcyBgc2l6ZWAgaW4gQ2hyb21lLiBXZSBhbHNvXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cbiAgICBAcGFnZSB7XG4gICAgICBzaXplOiAkcHJpbnQtcGFnZS1zaXplO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMzAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWRhcmsge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBTdHlsZXMgZm9yIEJvb3RzdHJhcCBCYXJyaW8gYWZmaXggZWZmZWN0LlxuICovXG5cbi5hZmZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAzNTtcbiAgbGVmdDogMDtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIFZpc3VhbCBzdHlsZXMgZm9yIGNvbW1lbnRzIGluIEJhcnJpby5cbiAqL1xuXG4uYWxlcnQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiA5NyU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG4udG9hc3Qtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogOTk5OTtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIEJvb3RzdHJhcCBCYXJyaW8gc3BlY2lmaWMgc3R5bGluZyBmb3IgdGhlIEJvb2sgbW9kdWxlLlxuICovXG5cbi5ib29rLW5hdmlnYXRpb24gLm1lbnUge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xufVxuXG4uYm9vay1uYXZpZ2F0aW9uIC5ib29rLXBhZ2VyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBtYXJnaW46IDA7XG59IiwiLyoqXG4gKiBAZmlsZVxuICogU3R5bGluZyBmb3IgdGhlIEJvb2sgbW9kdWxlLlxuICovXG5cbi5ib29rLW5hdmlnYXRpb24gLm1lbnUge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDFlbTtcbn1cbi5ib29rLW5hdmlnYXRpb24gLmJvb2stcGFnZXIge1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiAwLjVlbSAwO1xufVxuLmJvb2stcGFnZXJfX2l0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi5ib29rLXBhZ2VyX19pdGVtLS1wcmV2aW91cyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8qIExUUiAqL1xuICB3aWR0aDogNDUlO1xufVxuW2Rpcj1cInJ0bFwiXSAuYm9vay1wYWdlcl9faXRlbS0tcHJldmlvdXMge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmJvb2stcGFnZXJfX2l0ZW0tLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDglO1xufVxuLmJvb2stcGFnZXJfX2l0ZW0tLW5leHQge1xuICBmbG9hdDogcmlnaHQ7IC8qIExUUiAqL1xuICB0ZXh0LWFsaWduOiByaWdodDsgLyogTFRSICovXG4gIHdpZHRoOiA0NSU7XG59XG5bZGlyPVwicnRsXCJdIC5ib29rLXBhZ2VyX19pdGVtLS1uZXh0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBTdHlsZXMgZm9yIEJvb3RzdHJhcCBCYXJyaW8ncyBicmVhZGNydW1icy5cbiAqL1xuI2Jsb2NrLWJyZWFkY3J1bWJzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5icmVhZGNydW1iIHtcbiAgICBmb250LXNpemU6IDAuOTI5ZW0kZm9udC1zaXplLXNtO1xufVxuXG4ucmVnaW9uLWJyZWFkY3J1bWIge1xuICAgIHBhZGRpbmc6IDAgMTVweCAwLjI1ZW07XG4gICAgd2lkdGg6IDEwMCU7XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBWaXN1YWwgc3R5bGVzIGZvciBjb21tZW50cyBpbiBCYXJ0aWsuXG4gKi9cblxuXG4vKiBUaGlzIGlzIHJlcXVpcmVkIHRvIHdpbiBvdmVyIHNwZWNpZmljaXR5IG9mICNjb250ZW50IGgyICovXG5cbiNjb250ZW50IC5jb21tZW50LXdyYXBwZXIgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuI2NvbnRlbnQgLmNvbW1lbnQtd3JhcHBlciBoMi5jb21tZW50LWZvcm1fX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi5maWVsZC1ub2RlLS1jb21tZW50IHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG59XG5cbi5jb21tZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY29tbWVudC1zcGFjZXIteTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xufVxuXG5bZGlyPVwicnRsXCJdIC5jb21tZW50IHtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbn1cblxuLmNvbW1lbnRfX21ldGEge1xuICAgIHBhZGRpbmc6IDAgMzBweCAwIDA7XG4gICAgLyogTFRSICovXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG59XG5cbltkaXI9XCJydGxcIl0gLmNvbW1lbnRfX21ldGEge1xuICAgIHBhZGRpbmc6IDAgMCAwIDMwcHg7XG59XG5cbi5jb21tZW50X19hdHRyaWJ1dGlvbiBpbWcge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG5cblxuLyogVGhpcyBpcyByZXF1aXJlZCB0byB3aW4gb3ZlciBzcGVjaWZpY2l0eSBvZiAuZmllbGQtLXR5cGUtaW1hZ2UgaW1nICovXG5cbi5jb21tZW50IC5maWVsZC0tbmFtZS11c2VyLXBpY3R1cmUgaW1nIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5jb21tZW50X19hdXRob3IgLnVzZXJuYW1lIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uY29tbWVudF9fYXV0aG9yIHtcbiAgICBtYXJnaW46IDRweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5jb21tZW50X190aW1lLFxuLmNvbW1lbnRfX3Blcm1hbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIGNvbG9yOiAjNjg2OTZiO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHBhZGRpbmc6IDAgMC41ZW0gMCAwO1xuICAgIC8qIExUUiAqL1xufVxuXG5bZGlyPVwicnRsXCJdIC5jb21tZW50X190aW1lLFxuLmNvbW1lbnRfX3Blcm1hbGluayB7XG4gICAgcGFkZGluZzogMCAwIDAgMC41ZW07XG59XG5cbi5jb21tZW50X19wZXJtYWxpbmsge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uY29tbWVudF9fY29udGVudDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTAwJTtcbiAgICAvKiBMVFIgKi9cbiAgICB0b3A6ICRjb21tZW50LXNwYWNlci15O1xuICAgIGJvcmRlci10b3A6ICRjb21tZW50LXNwYWNlci15IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogJGNvbW1lbnQtc3BhY2VyLXggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAvKiBMVFIgKi9cbiAgICBib3JkZXItYm90dG9tOiAkY29tbWVudC1zcGFjZXIteSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAuY29tbWVudF9fY29udGVudDpiZWZvcmUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiAkY29tbWVudC1zcGFjZXIteCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xufVxuXG4uY29tbWVudF9fY29udGVudDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIC8qIExUUiAqL1xuICAgIHRvcDogJGNvbW1lbnQtc3BhY2VyLXk7XG4gICAgYm9yZGVyLXRvcDogJGNvbW1lbnQtc3BhY2VyLXkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAkY29tbWVudC1zcGFjZXIteCBzb2xpZCAkd2hpdGU7XG4gICAgLyogTFRSICovXG4gICAgYm9yZGVyLWJvdHRvbTogJGNvbW1lbnQtc3BhY2VyLXkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgIC8qIExUUiAqL1xufVxuXG5bZGlyPVwicnRsXCJdIC5jb21tZW50X19jb250ZW50OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBib3JkZXItbGVmdDogJGNvbW1lbnQtc3BhY2VyLXggc29saWQgJHdoaXRlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLmNvbW1lbnRfX2NvbnRlbnQgaDMge1xuICAgIG1hcmdpbi10b3A6IDAuOTRlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjQ1ZW07XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xufVxuXG4uY29tbWVudF9fY29udGVudCBuYXYge1xuICAgIHBhZGRpbmctdG9wOiAxcHg7XG59XG5cbi5pbmRlbnRlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgLyogTFRSICovXG59XG5cbltkaXI9XCJydGxcIl0gLmluZGVudGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5jb21tZW50IC5saW5rcyB7XG4gICAgcGFkZGluZzogMCAwIDAuMjVlbSAwO1xufVxuXG4uY29tbWVudCAubGlua3MtaW5saW5lIHNwYW4ge1xuICAgIHBhZGRpbmc6IDAgMC41ZW0gMCAwO1xuICAgIC8qIExUUiAqL1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xufVxuXG5bZGlyPVwicnRsXCJdIC5jb21tZW50IC5saW5rcy1pbmxpbmUgc3BhbiB7XG4gICAgcGFkZGluZzogMCAwIDAgMC41ZW07XG59XG5cbi5jb21tZW50LS11bnB1Ymxpc2hlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgLyogTFRSICovXG4gICAgcGFkZGluZzogNXB4IDJweCA1cHggNXB4O1xuICAgIC8qIExUUiAqL1xuICAgIGJhY2tncm91bmQ6ICRhY2NlbnQtbGlnaHQ7XG59XG5cbltkaXI9XCJydGxcIl0gLmNvbW1lbnQtLXVucHVibGlzaGVkIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nOiA1cHggNXB4IDVweCAycHg7XG59XG5cblxuLyoqXG4gKiBAdG9kbzogdW5wdWJsaXNoZWQgbm9kZXMgaGF2ZSBjbGFzcyAubm9kZS0tdW5wdWJsaXNoZWQuXG4gKiBjaGFuZ2UgdGhpcyB0byAuY29tbWVudC0tdW5wdWJsaXNoZWQuXG4gKi9cblxuLnVucHVibGlzaGVkIC5jb21tZW50LXRleHQgLmNvbW1lbnQtYXJyb3cge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGFjY2VudC1saWdodDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYWNjZW50LWxpZ2h0O1xufVxuXG4udW5wdWJsaXNoZWQge1xuICAgIHBhZGRpbmc6ICRjb21tZW50LXNwYWNlci15ICRjb21tZW50LXNwYWNlci14IDA7XG59XG5cbi5jb21tZW50LWZvb3RlciB7XG4gICAgZGlzcGxheTogdGFibGUtcm93O1xufVxuXG4uY29tbWVudC0tdW5wdWJsaXNoZWQgLmNvbW1lbnRfX3RleHQ6YWZ0ZXIsXG4ubm9kZS0tdW5wdWJsaXNoZWQgLmNvbW1lbnRfX3RleHQ6YWZ0ZXIge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGFjY2VudC1saWdodDtcbiAgICAvKiBMVFIgKi9cbn1cblxuW2Rpcj1cInJ0bFwiXSAuY29tbWVudC0tdW5wdWJsaXNoZWQgLmNvbW1lbnRfX2NvbnRlbnQ6YWZ0ZXIsXG5bZGlyPVwicnRsXCJdIC5ub2RlLS11bnB1Ymxpc2hlZCAuY29tbWVudF9fY29udGVudDphZnRlciB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRhY2NlbnQtbGlnaHQ7XG59IiwiLyoqXG4gKiBAZmlsZVxuICogQ29udGV4dHVhbCBsaW5rcyBzdHlsZXMgZm9yIEJvb3RzdHJhcCBCYXJyaW8uXG4gKi9cblxuLmNvbnRleHR1YWwtbGlua3MgYSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIDAgMDtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIENvbGxhcHNpYmxlIGRldGFpbHMuXG4gKlxuICogQHNlZSBjb2xsYXBzZS5qc1xuICogQHNlZSBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vY3NzLWJhY2tncm91bmQtaW1hZ2UtaGFja3MvXG4gKi9cblxuZGV0YWlscyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG59XG5cbmRldGFpbHM+LmRldGFpbHMtd3JhcHBlciB7XG4gICAgcGFkZGluZzogMC41ZW0gMS41ZW07XG59XG5cblxuLyogQHRvZG8gUmVncmVzc2lvbjogVGhlIHN1bW1hcnkgb2YgdW5jb2xsYXBzaWJsZSBkZXRhaWxzIGFyZSBubyBsb25nZXJcbiAgICAgdmVydGljYWxseSBhbGlnbmVkIHdpdGggdGhlIC5kZXRhaWxzLXdyYXBwZXIgaW4gYnJvd3NlcnMgd2l0aG91dCBuYXRpdmVcbiAgICAgZGV0YWlscyBzdXBwb3J0LiAqL1xuXG5zdW1tYXJ5IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogMC4yZW0gMC41ZW07XG59IiwiLyoqXG4gKiBAZmlsZVxuICogVmlzdWFsIHN0eWxlcyBmb3IgQmFydGlrJ3MgZHJvcGJ1dHRvbiBjb21wb25lbnQuXG4gKi9cblxuLmpzIC5kcm9wYnV0dG9uLXdyYXBwZXIgLmRyb3BidXR0b24td2lkZ2V0IHtcbiAgLyogVGhpcyBpcyByZXF1aXJlZCB0byB3aW4gb3ZlciBzcGVjaWZpdHkgb2YgLmpzIHRkIC5kcm9wYnV0dG9uLXdpZGdldCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uanMgLmRyb3BidXR0b24td2lkZ2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogI2U0ZTRlNCAjZDJkMmQyICNiNGI0YjQgI2QyZDJkMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZjNmM2YzLCAjZThlOGU4KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2YzZjNmMywgI2U4ZThlOCk7XG4gIGNvbG9yOiAjM2EzYTNhO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwLjEyNWVtIDA7XG4gIGJvcmRlci1yYWRpdXM6IDFlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5qcyAuZHJvcGJ1dHRvbi13aWRnZXQ6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNlNGU0ZTQgI2QyZDJkMiAjYjRiNGI0ICNkMmQyZDI7XG59XG4uanMgLmRyb3BidXR0b24td2lkZ2V0IC5idXR0b24ge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4zMmVtIDFlbTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbn1cbi5qcyAuZHJvcGJ1dHRvbi1tdWx0aXBsZSAuZHJvcGJ1dHRvbi13aWRnZXQgLmRyb3BidXR0b24tYWN0aW9uIGEge1xuICBtYXJnaW4tcmlnaHQ6IDA7IC8qIExUUiAqL1xufVxuW2Rpcj1cInJ0bFwiXS5qcyAuZHJvcGJ1dHRvbi1tdWx0aXBsZSAuZHJvcGJ1dHRvbi13aWRnZXQgLmRyb3BidXR0b24tYWN0aW9uIGEge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5qcyAuZHJvcGJ1dHRvbiAuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjY2M7XG59XG4uanMgLmRyb3BidXR0b24tdG9nZ2xlIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2U4ZThlOCwgI2QyZDJkMik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlOGU4ZTgsICNkMmQyZDIpO1xufVxuLmpzIC5kcm9wYnV0dG9uLXRvZ2dsZSAuZHJvcGJ1dHRvbi1hcnJvdzpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG59XG4uanMgLmRyb3BidXR0b24gYSB7XG4gIGNvbG9yOiAjM2EzYTNhO1xuICBib3JkZXItYm90dG9tOiAwIG5vbmU7XG59XG4uanMgLmRyb3BidXR0b24gLmRyb3BidXR0b24tYWN0aW9uOmhvdmVyLFxuLmpzIC5kcm9wYnV0dG9uIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZGVkZWRlO1xuICBib3JkZXItYm90dG9tOiAwIG5vbmU7XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBHZW5lcmFsIHN0eWxlcyBmb3IgZHJvcGJ1dHRvbnMuXG4gKi9cblxuLmpzIC5kcm9wYnV0dG9uLXdpZGdldCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcbn1cblxuLmpzIC5kcm9wYnV0dG9uLXdpZGdldDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYjhiOGI4O1xufVxuXG4uZHJvcGJ1dHRvbiAuZHJvcGJ1dHRvbi1hY3Rpb24+KiB7XG4gICAgcGFkZGluZzogMC4xZW0gMC41ZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmRyb3BidXR0b24gLnNlY29uZGFyeS1hY3Rpb24ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZThlOGU4O1xufVxuXG4uZHJvcGJ1dHRvbi1tdWx0aXBsZSAuZHJvcGJ1dHRvbiB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U4ZThlODtcbiAgICAvKiBMVFIgKi9cbn1cblxuW2Rpcj1cInJ0bFwiXSAuZHJvcGJ1dHRvbi1tdWx0aXBsZSAuZHJvcGJ1dHRvbiB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZThlOGU4O1xuICAgIGJvcmRlci1yaWdodDogMCBub25lO1xufVxuXG4uZHJvcGJ1dHRvbi1tdWx0aXBsZSAuZHJvcGJ1dHRvbiAuZHJvcGJ1dHRvbi1hY3Rpb24+KiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gICAgLyogTFRSICovXG59XG5cbltkaXI9XCJydGxcIl0gLmRyb3BidXR0b24tbXVsdGlwbGUgLmRyb3BidXR0b24gLmRyb3BidXR0b24tYWN0aW9uPioge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uanMgdGQgLmRyb3BidXR0b24tbXVsdGlwbGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uanMgdGQgLmRyb3BidXR0b24td3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogMmVtO1xufVxuXG4uanMgLmRyb3BidXR0b24td3JhcHBlcixcbi5qcyAuZHJvcGJ1dHRvbi13aWRnZXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmpzIHRkIC5kcm9wYnV0dG9uLXdpZGdldCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufSIsIi8qKlxuICogQGZpbGVcbiAqIEZlZWQgaWNvbiBzdHlsZXMgZm9yIEJvb3RzdHJhcCBCYXJyaW8uXG4gKi9cblxuLmZlZWQtaWNvbiB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogJHNwYWNlciAwIDAgMDtcbn0iLCIvKipcbiAqIEBmaWxlXG4gKiBWaXN1YWwgc3R5bGVzIGZvciBCb290c3RyYXAgQmFycmlvJ3MgZmllbGQgY29tcG9uZW50cy5cbiAqL1xuXG4uZmllbGQtLXR5cGUtZW50aXR5LXJlZmVyZW5jZSB7XG4gICAgbWFyZ2luOiAwIDAgKCRzcGFjZXIgKiAxLjIpO1xuXG4gICAgZGl2LmZpZWxkX19sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG59XG5cbi5maWVsZC0tdHlwZS1lbnRpdHktcmVmZXJlbmNlIC5maWVsZF9fbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkc3BhY2VyICogLjMpO1xuICAgIC8qIExUUiAqL1xufVxuXG5bZGlyPVwicnRsXCJdIC5maWVsZC0tdHlwZS1lbnRpdHktcmVmZXJlbmNlIC5maWVsZF9fbGFiZWwge1xuICAgIHBhZGRpbmctbGVmdDogKCRzcGFjZXIgKiAuMyk7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmZpZWxkLS10eXBlLWVudGl0eS1yZWZlcmVuY2UgdWwubGlua3Mge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5maWVsZC0tdHlwZS1lbnRpdHktcmVmZXJlbmNlIHVsLmxpbmtzIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvKiBMVFIgKi9cbiAgICBwYWRkaW5nOiAwICRzcGFjZXIgMCAwO1xuICAgIC8qIExUUiAqL1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbltkaXI9XCJydGxcIl0gLmZpZWxkLS10eXBlLWVudGl0eS1yZWZlcmVuY2UgdWwubGlua3MgbGkge1xuICAgIHBhZGRpbmc6IDAgMCAwICRzcGFjZXI7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA1NjBweCkge1xuICAgIC5ub2RlIC5maWVsZC0tdHlwZS1pbWFnZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAvKiBMVFIgKi9cbiAgICAgICAgbWFyZ2luOiAwICRzcGFjZXIgMCAwO1xuICAgICAgICAvKiBMVFIgKi9cbiAgICB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubm9kZSAuZmllbGQtLXR5cGUtaW1hZ2Uge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgJHNwYWNlcjtcbiAgICB9XG4gICAgLm5vZGUgLmZpZWxkLS10eXBlLWltYWdlKy5maWVsZC0tdHlwZS1pbWFnZSB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cblxuLmZpZWxkLS10eXBlLWltYWdlIGltZyxcbi5maWVsZC0tbmFtZS1maWVsZC11c2VyLXBpY3R1cmUgaW1nIHtcbiAgICBtYXJnaW46IDAgMCAkc3BhY2VyO1xufVxuXG4uZmllbGQtLXR5cGUtaW1hZ2UgYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLmZpZWxkLS1uYW1lLWZpZWxkLXRhZ3Mge1xuICAgIG1hcmdpbjogMCAwICgkc3BhY2VyICogMS4yKTtcbn1cblxuLmZpZWxkLS1uYW1lLWZpZWxkLXRhZ3MgLmZpZWxkX19sYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgIC8qIExUUiAqL1xufVxuXG5bZGlyPVwicnRsXCJdIC5maWVsZC0tbmFtZS1maWVsZC10YWdzIC5maWVsZF9fbGFiZWwge1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5maWVsZC0tbmFtZS1maWVsZC10YWdzIC5maWVsZF9fbGFiZWwsXG4uZmllbGQtLW5hbWUtZmllbGQtdGFncyB1bC5saW5rcyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xufVxuXG4ubm9kZS0tdmlldy1tb2RlLXRlYXNlciAuZmllbGQtLW5hbWUtZmllbGQtdGFncyAuZmllbGRfX2xhYmVsLFxuLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRhZ3MgdWwubGlua3Mge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbn1cblxuLmZpZWxkLS1uYW1lLWZpZWxkLXRhZ3MgdWwubGlua3Mge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uZmllbGQtLW5hbWUtZmllbGQtdGFncyB1bC5saW5rcyBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLyogTFRSICovXG4gICAgcGFkZGluZzogMCAkc3BhY2VyIDAgMDtcbiAgICAvKiBMVFIgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5maWVsZC0tbmFtZS1maWVsZC10YWdzIHVsLmxpbmtzIGxpIHtcbiAgICBwYWRkaW5nOiAwIDAgMCAkc3BhY2VyO1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLmZpZWxkLS1sYWJlbC1pbmxpbmUgLmZpZWxkX19sYWJlbCxcbi5maWVsZC0tbGFiZWwtaW5saW5lIC5maWVsZF9faXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrXG59XG4uZmllbGQtLW5hbWUtZmllbGQtbGFicy12aWV3LXJlZmVyZW5jZSxcbi5maWVsZC0tbmFtZS1maWVsZC12aWV3LXJlZi1hdHRhY2htZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjRENEQ0RDO1xufVxuIiwiLyoqXG4gKiBAZmlsZVxuICogRGVmYXVsdCBzdHlsZSBmb3IgZmlsZSBtb2R1bGUuXG4gKi9cblxuXG4vKiBGaWxlIGljb25zLiovXG5cbi5maWxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkc3BhY2VyICogMS41KTtcbiAgICAvKiBMVFIgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgLyogTFRSICovXG59XG5cbltkaXI9XCJydGxcIl0gLmZpbGUge1xuICAgIHBhZGRpbmctbGVmdDogaW5oZXJpdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJHNwYWNlciAqIDEuNSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xufVxuXG4uZmlsZS0tZ2VuZXJhbCxcbi5maWxlLS1hcHBsaWNhdGlvbi1vY3RldC1zdHJlYW0ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvYXBwbGljYXRpb24tb2N0ZXQtc3RyZWFtLnBuZyk7XG59XG5cbi5maWxlLS1wYWNrYWdlLXgtZ2VuZXJpYyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9wYWNrYWdlLXgtZ2VuZXJpYy5wbmcpO1xufVxuXG4uZmlsZS0teC1vZmZpY2Utc3ByZWFkc2hlZXQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMveC1vZmZpY2Utc3ByZWFkc2hlZXQucG5nKTtcbn1cblxuLmZpbGUtLXgtb2ZmaWNlLWRvY3VtZW50IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL3gtb2ZmaWNlLWRvY3VtZW50LnBuZyk7XG59XG5cbi5maWxlLS14LW9mZmljZS1wcmVzZW50YXRpb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMveC1vZmZpY2UtcHJlc2VudGF0aW9uLnBuZyk7XG59XG5cbi5maWxlLS10ZXh0LXgtc2NyaXB0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL3RleHQteC1zY3JpcHQucG5nKTtcbn1cblxuLmZpbGUtLXRleHQtaHRtbCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy90ZXh0LWh0bWwucG5nKTtcbn1cblxuLmZpbGUtLXRleHQtcGxhaW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvdGV4dC1wbGFpbi5wbmcpO1xufVxuXG4uZmlsZS0tYXBwbGljYXRpb24tcGRmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL2FwcGxpY2F0aW9uLXBkZi5wbmcpO1xufVxuXG4uZmlsZS0tYXBwbGljYXRpb24teC1leGVjdXRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL2FwcGxpY2F0aW9uLXgtZXhlY3V0YWJsZS5wbmcpO1xufVxuXG4uZmlsZS0tYXVkaW8ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvYXVkaW8teC1nZW5lcmljLnBuZyk7XG59XG5cbi5maWxlLS12aWRlbyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy92aWRlby14LWdlbmVyaWMucG5nKTtcbn1cblxuLmZpbGUtLXRleHQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvdGV4dC14LWdlbmVyaWMucG5nKTtcbn1cblxuLmZpbGUtLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb25zL2ltYWdlLXgtZ2VuZXJpYy5wbmcpO1xufVxuIiwiLyoqXG4gKiBAZmlsZVxuICogVmlzdWFsIHN0eWxlcyBmb3IgQm9vdHN0cmFwIEJhcnJpbydzIGZvcm0gY29tcG9uZW50cy5cbiAqL1xuXG4uZm9ybS1yZXF1aXJlZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltZy9yZXF1aXJlZC5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAoJGlucHV0LWhlaWdodCAvIDIpICgkaW5wdXQtaGVpZ2h0IC8gMik7XG4gICAgd2lkdGg6ICgkaW5wdXQtaGVpZ2h0IC8gMik7XG4gICAgaGVpZ2h0OiAoJGlucHV0LWhlaWdodCAvIDIpO1xuICAgIG1hcmdpbjogMCAwLjNlbTtcbn1cblxuZm9ybSAuZmlsdGVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuZm9ybSAuZm9ybS10eXBlLXRleHRhcmVhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tIEhlYWRlciAtLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8vYm9keS50b29sYmFyLXRyYXktb3BlbiB7XG5ib2R5IHtcbiAgICAjbmF2YmFyLXRvcCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBkaXYucm93IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMDtcbiAgICAgICAgfVxuICAgICAgICAjYmxvY2stdG9wdG9vbGJveCwgLnJlZ2lvbi1zZWNvbmRhcnktbWVudSwgZGl2LnJvdyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4uY29sLTgge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIGksIC5mYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI3cHg7XG4gICAgICAgIH1cbiAgICAgICAgYS5pbmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogc2lsdmVyO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4uY2VudGVyZWQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuLyogUHJpbWFyeSBIZWFkZXIgKi9cbmhlYWRlciNoZWFkZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaGVhZGVyLWltZyksIGxpbmVhci1ncmFkaWVudCh0aGVtZS1jb2xvcihcInNlY29uZGFyeVwiKSwgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpIDE1JSwgdGhlbWUtY29sb3IoXCJzZWNvbmRhcnlcIikgOTUlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNSUgdG9wLCBsZWZ0IHRvcDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHRvcCBtaWRkbGUsIGNvbnRhaW47XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAmLmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLyogTW9iaWxlIE5hdiBCYXJzIC8gSGFtYnVyZ2VyICovXG4gICAgYnV0dG9uLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwIDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIGkuZmEtYmFycyB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIGg0LnN1YnRpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXN1YnRpdGxlO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMDYzcHgpICBhbmQgKG1pbi13aWR0aDo3NjlweCl7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA4MDFweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDk5cHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgbGVmdDogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgICNDb2xsYXBzaW5nTmF2YmFyIHtcbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUkVHSU9OIEhFQURFUiBCUkFORDogIHN0aWNreSBCb290c3RyYXAtc3R5bGUgaGVhZGVyXG4gICAgLnJlZ2lvbi1oZWFkZXItYnJhbmQge1xuICAgICAgICAuY29sLTEsIC5jb2wtMiwgLmNvbC0zLCAuY29sLTQsIC5jb2wtNSwgLmNvbC02LFxuICAgICAgICAuY29sLTcsIC5jb2wtOCwgLmNvbC05LCAuY29sLTEwLCAuY29sLTExLCAuY29sLTEyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIGxlZnQ6IC0xLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgIGxlZnQ6IC0xcmVtO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgIGxlZnQ6IDNyZW07XG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDU4MHB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGltZyNzaXRlLWxvZ28ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTEwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMDYzcHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTkycHggKSB7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogMC4yNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgYSwgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC10aXRsZTtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuLy8gICAgICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiAycHggMnB4ICMwMDAwMDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgYW5kIChtaW4td2lkdGg6IDQwMXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4zM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MDBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMzNyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3Bhbi5icmFuZGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNpdGUtbmFtZS1zbG9nYW4ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXN1YnRpdGxlO1xuLy8gICAgICAgICAgICBmb250LXN0cmV0Y2g6IHVsdHJhLWNvbmRlbnNlZDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjMzcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMC41cmVtO1xuLy8gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCAjMDAwMDAwO1xuXG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4vLyAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4vLyAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuLy8gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbi8vICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbi8vICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2Jsb2NrLXRvcG1lbnUsXG4gICAgLnJlZ2lvbi1wcmltYXJ5LW1lbnUge1xuICAgICAgICAvLyBTcGVjaWZpYyBtZW51IGJsb2NrIGZvciB0aGUgdG9wIGhlYWRlciBvbiBFYXJ0aCBTY2llbmNlXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJlZDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIGxpIGEge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hcnJvdztcbi8vICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMDYzcHgpIHtcbi8vICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIGxpLm5hdi1pdGVtIGEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzA5QjlDO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwgbGkuZHJvcGRvd24taXRlbSBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICB1bCBsaS5kcm9wZG93bi1pdGVtIGEuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKlxuICogTUVESUEgUVVFUklFU1xuICovXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICNoZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgfVxuICAgIC5uYXZiYXJDdGwge1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcblxuICAgICAgICB1bC5uYXZiYXItbmF2IHtcbiAgICAgICAgICAgIGEge1xuLy8gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAjcHJpbWFyeS1tYWluLW1lbnUtc20tYmxvY2sge1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cbiAgICAuY29sLTEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBuYXYuYmctcHJpbWFyeSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBzcGFuLnRvcC1tYWluLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDMzLjllbSkge1xuICAgIC5uYXZiYXItdG9nZ2xlYWJsZS14cyAubmF2YmFyLW5hdiAubmF2LWl0ZW0rLm5hdi1pdGVtLFxuICAgIC5uYXZiYXItdG9nZ2xlYWJsZS14cy5jb2xsYXBzZS5pbiAubmF2YmFyLW5hdiAubmF2LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOWVtKSB7XG4gICAgLm5hdmJhci10b2dnbGVhYmxlLXNtIC5uYXZiYXItbmF2IC5uYXYtaXRlbSsubmF2LWl0ZW0sXG4gICAgLm5hdmJhci10b2dnbGVhYmxlLXhzLmNvbGxhcHNlLmluIC5uYXZiYXItbmF2IC5uYXYtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBTdHlsZXMgZm9yIHRoZSBoZWxwIGJsb2NrLlxuICovXG5cbi5ibG9jay1oZWxwIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBwYWRkaW5nOiAwICgkc3BhY2VyICogMS41KTtcbiAgICBtYXJnaW4tYm90dG9tOiAoJHNwYWNlciAqIDIpO1xufSIsIi8qKlxuICogQGZpbGVcbiAqIFZpc3VhbCBzdHlsZXMgZm9yIGljb25zLlxuICovXG5cbi5pY29uLWhlbHAge1xuICAgIGJhY2tncm91bmQ6IHVybCgvLi4vLi4vaW1nL2hlbHAucG5nKSAwIDUwJSBuby1yZXBlYXQ7XG4gICAgLyogTFRSICovXG4gICAgcGFkZGluZzogMXB4IDAgMXB4ICgkc3BhY2VyICogMS41KTtcbiAgICAvKiBMVFIgKi9cbn1cblxuW2Rpcj1cInJ0bFwiXSAuaWNvbi1oZWxwIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbiAgICBwYWRkaW5nOiAxcHggKCRzcGFjZXIgKiAxLjUpIDFweCAwO1xufVxuXG4uZmVlZC1pY29uIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLy4uLy4uL2ltZy9mZWVkLnN2Zykgbm8tcmVwZWF0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRmb250LXNpemUtYmFzZTtcbiAgICBoZWlnaHQ6ICRmb250LXNpemUtYmFzZTtcbn1cblxuaS5mYS1zZWFyY2gge1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIFN0eWxlcyBmb3IgQm9vdHN0cmFwIEJhcnJpbydzIGltYWdlIGJ1dHRvbnMuXG4gKi9cblxuLmltYWdlLWJ1dHRvbi5pcy1kaXNhYmxlZDpob3Zlcixcbi5pbWFnZS1idXR0b24uaXMtZGlzYWJsZWQ6YWN0aXZlLFxuLmltYWdlLWJ1dHRvbi5pcy1kaXNhYmxlZDpmb2N1cyxcbi5pbWFnZS1idXR0b24uaXMtZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBCYXNpYyBzdHlsaW5nIGZvciBjb21tZW50IG1vZHVsZS5cbiAqL1xuXG5cbi8qKlxuICogSW5kZW50IHRocmVhZGVkIGNvbW1lbnRzLlxuICovXG5cbi5pbmRlbnRlZCB7XG4gICAgbWFyZ2luLWxlZnQ6ICgkc3BhY2VyICogMS41KTtcbiAgICAvKiBMVFIgKi9cbn1cblxuW2Rpcj1cInJ0bFwiXSAuaW5kZW50ZWQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogKCRzcGFjZXIgKiAxLjUpO1xufSIsIi8qKlxuICogQGZpbGVcbiAqIFZpc3VhbCBzdHlsZXMgZm9yIEJvb3RzdHJhcCBCYXJyaW8ncyBpdGVtIGxpc3QuXG4gKi9cblxuLml0ZW0tbGlzdCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLyogTFRSICovXG59XG5cbltkaXI9XCJydGxcIl0gLml0ZW0tbGlzdCB1bCB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLml0ZW0tbGlzdCB1bCBsaSB7XG4gICAgLyogVGhpcyBpcyBuZWVkZWQgdG8gcmVzZXQgc3R5bGVzIGluIGl0ZW0tbGlzdC50aGVtZS5jc3MgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXggMCAwO1xuICAgIC8qIExUUiAqL1xufVxuXG5bZGlyPVwicnRsXCJdIC5pdGVtLWxpc3QgdWwgbGkge1xuICAgIC8qIFRoaXMgaXMgbmVlZGVkIHRvIHJlc2V0IFtkaXI9XCJydGxcIl0gc3R5bGVzIGluIGl0ZW0tbGlzdC50aGVtZS5jc3MgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgMCAwICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xufVxuXG4uaXRlbS1saXN0IC5pdGVtLWxpc3RfX2NvbW1hLWxpc3QsXG4uaXRlbS1saXN0IC5pdGVtLWxpc3RfX2NvbW1hLWxpc3QgbGksXG5bZGlyPVwicnRsXCJdIC5pdGVtLWxpc3QgLml0ZW0tbGlzdF9fY29tbWEtbGlzdCxcbltkaXI9XCJydGxcIl0gLml0ZW0tbGlzdCAuaXRlbS1saXN0X19jb21tYS1saXN0IGxpIHtcbiAgICBwYWRkaW5nOiAwO1xufSIsIi8qKlxuICogQGZpbGVcbiAqIExpc3QgZ3JvdXAuXG4gKiBBIGxpc3Qgb2YgbGlua3MsIGdyb3VwZWQgdG9nZXRoZXIuXG4gKi9cbi5saXN0LWdyb3VwX19saW5rIHtcbiAgICBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgMCAwO1xufVxuXG4ubGlzdC1ncm91cF9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbjogMCAwICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15O1xufVxuIiwiLyoqXG4gKiBAZmlsZVxuICogVmlzdWFsIHN0eWxlcyBmb3IgQm9vdHN0cmFwIEJhcnJpbydzIG5vZGUgY29tcG9uZW50LlxuICovXG5cbi5ub2RlX19jb250ZW50IHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xufVxuXG5cbi8qIFZpZXcgbW9kZSB0ZWFzZXIgc3R5bGVzLiAqL1xuXG4ubm9kZS0tdmlldy1tb2RlLXRlYXNlciB7XG4vLyAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlcjtcbn1cblxuLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgaDIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDAuNWVtO1xufVxuXG4ubm9kZS0tdmlldy1tb2RlLXRlYXNlci5ub2RlLS1zdGlja3kge1xuICAgIGJhY2tncm91bmQ6ICNmOWY5Zjk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAyNCk7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgcGFkZGluZzogMCAkc3BhY2VyICRzcGFjZXI7XG59XG5cbi5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ub2RlX19jb250ZW50IHtcbiAgICBjbGVhcjogbm9uZTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5cblxuLyogTm9kZSBtZXRhZGF0YSBzdHlsZXMuICovXG5cbi5ub2RlX19tZXRhIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbn1cblxuLm5vZGVfX21ldGEgLmZpZWxkLS1uYW1lLWZpZWxkLXVzZXItcGljdHVyZSBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8qIExUUiAqL1xuICAgIG1hcmdpbjogMXB4ICRzcGFjZXIgMCAwO1xuICAgIC8qIExUUiAqL1xufVxuXG5bZGlyPVwicnRsXCJdIC5ub2RlX19tZXRhIC5maWVsZC0tbmFtZS1maWVsZC11c2VyLXBpY3R1cmUgaW1nIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRzcGFjZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG5cbi8qIE5vZGUgbGlua3Mgc3R5bGVzLiAqL1xuXG4ubm9kZV9fbGlua3Mge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIC8qIExUUiAqL1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xufVxuXG5bZGlyPVwicnRsXCJdIC5ub2RlX19saW5rcyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuXG4vKiBVbnB1Ymxpc2hlZCBub2RlIHN0eWxlcy4gKi9cblxuLm5vZGUtLXVucHVibGlzaGVkIHtcbiAgICBwYWRkaW5nOiAkc3BhY2VyICRzcGFjZXIgMDtcbn1cblxuLm5vZGUtLXVucHVibGlzaGVkIC5jb21tZW50LXRleHQgLmNvbW1lbnQtYXJyb3cge1xuICAgIGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICNmZmY0ZjQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICNmZmY0ZjQ7XG59XG4iLCIubm9kZS1wcmV2aWV3LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICNkMWU4ZjU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2QxZThmNSwgI2QzZThmNCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNkMWU4ZjUsICNkM2U4ZjQpO1xuICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjMzMzMpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDQ5OTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4ubm9kZS1wcmV2aWV3LWJhY2tsaW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQxOWZmMTtcbiAgYmFja2dyb3VuZDogdXJsKC9jb3JlL21pc2MvaWNvbnMvMDAwMDAwL2NoZXZyb24tbGVmdC5zdmcpIGxlZnQgbm8tcmVwZWF0LCAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICM0MTlmZjEsICMxMDc2ZDUpO1xuICBiYWNrZ3JvdW5kOiB1cmwoL2NvcmUvbWlzYy9pY29ucy8wMDAwMDAvY2hldnJvbi1sZWZ0LnN2ZykgbGVmdCBuby1yZXBlYXQsIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM0MTlmZjEsICMxMDc2ZDUpOyAvKiBMVFIgKi9cbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNDhjODtcbiAgYm9yZGVyLXJhZGl1czogLjRlbTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC40KTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNHB4IDFlbSA0cHggMC42ZW07IC8qIExUUiAqL1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbltkaXI9XCJydGxcIl0gLm5vZGUtcHJldmlldy1iYWNrbGluayB7XG4gIGJhY2tncm91bmQ6IHVybCgvY29yZS9taXNjL2ljb25zLzAwMDAwMC9jaGV2cm9uLXJpZ2h0LnN2ZykgcmlnaHQgbm8tcmVwZWF0LCAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICM0MTlmZjEsICMxMDc2ZDUpO1xuICBiYWNrZ3JvdW5kOiB1cmwoL2NvcmUvbWlzYy9pY29ucy8wMDAwMDAvY2hldnJvbi1yaWdodC5zdmcpIHJpZ2h0IG5vLXJlcGVhdCwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzQxOWZmMSwgIzEwNzZkNSk7XG4gIHBhZGRpbmc6IDRweCAwLjZlbSA0cHggMWVtO1xuICBmbG9hdDogcmlnaHQ7XG59XG4ubm9kZS1wcmV2aWV3LWJhY2tsaW5rOmZvY3VzLFxuLm5vZGUtcHJldmlldy1iYWNrbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MTljZjE7XG4gIGJhY2tncm91bmQ6IHVybCgvY29yZS9taXNjL2ljb25zLzAwMDAwMC9jaGV2cm9uLWxlZnQuc3ZnKSBsZWZ0IG5vLXJlcGVhdCwgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjNTlhYmYzLCAjMmE5MGVmKTtcbiAgYmFja2dyb3VuZDogdXJsKC9jb3JlL21pc2MvaWNvbnMvMDAwMDAwL2NoZXZyb24tbGVmdC5zdmcpIGxlZnQgbm8tcmVwZWF0LCBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNTlhYmYzLCAjMmE5MGVmKTsgLyogTFRSICovXG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDQ4Yzg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG59XG5bZGlyPVwicnRsXCJdIC5ub2RlLXByZXZpZXctYmFja2xpbms6Zm9jdXMsXG5bZGlyPVwicnRsXCJdIC5ub2RlLXByZXZpZXctYmFja2xpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoL2NvcmUvbWlzYy9pY29ucy8wMDAwMDAvY2hldnJvbi1yaWdodC5zdmcpIHJpZ2h0IG5vLXJlcGVhdCwgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjNTlhYmYzLCAjMmE5MGVmKTtcbiAgYmFja2dyb3VuZDogdXJsKC9jb3JlL21pc2MvaWNvbnMvMDAwMDAwL2NoZXZyb24tcmlnaHQuc3ZnKSByaWdodCBuby1yZXBlYXQsIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM1OWFiZjMsICMyYTkwZWYpO1xufVxuLm5vZGUtcHJldmlldy1iYWNrbGluazphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGU2OWJlO1xuICBiYWNrZ3JvdW5kOiB1cmwoL2NvcmUvbWlzYy9pY29ucy8wMDAwMDAvY2hldnJvbi1sZWZ0LnN2ZykgbGVmdCBuby1yZXBlYXQsIC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzBlNjliZSwgIzJhOTNlZik7XG4gIGJhY2tncm91bmQ6IHVybCgvY29yZS9taXNjL2ljb25zLzAwMDAwMC9jaGV2cm9uLWxlZnQuc3ZnKSBsZWZ0IG5vLXJlcGVhdCwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzBlNjliZSwgIzJhOTNlZik7IC8qIExUUiAqL1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDA0OGM4O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAuMjUpO1xufVxuW2Rpcj1cInJ0bFwiXSAubm9kZS1wcmV2aWV3LWJhY2tsaW5rOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHVybCgvY29yZS9taXNjL2ljb25zLzAwMDAwMC9jaGV2cm9uLXJpZ2h0LnN2ZykgcmlnaHQgbm8tcmVwZWF0LCAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwZTY5YmUsICMyYTkzZWYpO1xuICBiYWNrZ3JvdW5kOiB1cmwoL2NvcmUvbWlzYy9pY29ucy8wMDAwMDAvY2hldnJvbi1yaWdodC5zdmcpIHJpZ2h0IG5vLXJlcGVhdCwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzBlNjliZSwgIzJhOTNlZik7XG59XG4ubm9kZS1wcmV2aWV3LWJhY2tsaW5rOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDEwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIFN0eWxlcyBmb3IgQm9vdHN0cmFwIEJhcnJpbyBwYWdlLlxuICovXG4ucmVzcG9uc2l2ZS12aWRlbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbmRpdi5maWVsZC0tbmFtZS1maWVsZC1zYW5kYm94ZWQteW91dHViZS12aWRlbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA2MCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIFRoZSB2aXN1YWwgc3R5bGVzIGZvciBCb290c3RyYXAgQmFycmlvJ3Mgc2VhcmNoIGZvcm0ocykuXG4gKi9cbi5zZWFyY2gtYmxvY2stZm9ybSxcbi5yZWdpb24tc2VhcmNoLWFyZWEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgfVxufVxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogIDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IGRpbWdyYXk7XG59XG5idXR0b24ubmF2YmFyLXRvZ2dsZXIge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgZm9udC1zaXplOiAyNHB4O1xufVxuI3NlYXJjaC1ibG9jay1mb3JtIHtcbiAgICBwYWRkaW5nOiAwIDA7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGZsb2F0OiByaWdodDtcblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHJpZ2h0OiA0cmVtO1xuICAgICAgICBoZWlnaHQ6IDQycHg7XG5cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTA2MHB4KXtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMTJweCA2cHggMTJweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMDU5cHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZzogNnB4IDAgNnB4IDEycHg7XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggNHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGlucHV0LmZvcm0tc2VhcmNoIHtcbiAgICAgICAgcmlnaHQ6IDNyZW07XG4gICAgfVxuICAgIGlucHV0LmZvcm0tc2VhcmNoLCBpbnB1dC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAyLjI1cmVtO1xuICAgIH1cblxufVxuI25hdmJhci10b3Age1xuICAgIC5zZWFyY2gtYmxvY2stZm9ybSB7XG4gICAgICAgIGJ1dHRvbiwgaSB7XG4gICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNzZWFyY2gtYmxvY2stZm9ybSxcbiN0b3Atc2VhcmNoLWJveCB7ICAgICAgIC8vIHNlYXJjaCBidXR0b25cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyOiAwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuZmEtc2VhcmNoIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG59XG4vKiBTZWFyY2ggUmVzdWx0cyBQYWdlICovXG5ib2R5LnBhdGgtc2VhcmNoIHtcbiAgICAjY29udGVudF9zZWN0aW9uIGZvcm0uc2VhcmNoLWZvcm0ge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTIuNSU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgI2VkaXQtc3VibWl0IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgZmllbGRzZXQge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwO1xuICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGl2LmZvcm0tZ3JvdXAsIFxuICAgIGZpZWxkc2V0LmZvcm0tdHlwZS1zZWFyY2gsXG4gICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG59XG5cbi5oZWFkLXNlYXJjaCB7XG4gICAgcGFkZGluZzogMCAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuZGl2LnNlYXJjaGFibGUge1xuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDFlbTtcbiAgICAgICAgei1pbmRleDogMTAwMDA7XG4gICAgfVxufVxuI3NlYXJjaC1ibG9jay1mb3JtIHtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbmF2LnRvcG1lbnViYXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrO1xuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBWaXN1YWwgc3R5bGVzIGZvciB0aGUgU2hvcnRjdXQgYWN0aW9uIGxpbmsgaW4gQm9vdHN0cmFwIEJhcnJpby5cbiAqL1xuXG4uc2hvcnRjdXQtd3JhcHBlciB7XG4gIG1hcmdpbjogMi4yZW0gMCAxLjFlbSAwOyAvKiBTYW1lIGFzIHVzdWFsIC5wYWdlLXRpdGxlIG1hcmdpbi4gKi9cbn1cbi5zaG9ydGN1dC13cmFwcGVyIC5wYWdlLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7IC8qIExUUiAqL1xuICBtYXJnaW46IDA7XG59XG5bZGlyPVwicnRsXCJdIC5zaG9ydGN1dC13cmFwcGVyIC5wYWdlLXRpdGxlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLnNob3J0Y3V0LWFjdGlvbiB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTsgLyogTFRSICovXG4gIHBhZGRpbmctdG9wOiAwLjM1ZW07XG59XG5bZGlyPVwicnRsXCJdIC5zaG9ydGN1dC1hY3Rpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbn1cbi5zaG9ydGN1dC1hY3Rpb246aG92ZXIsXG4uc2hvcnRjdXQtYWN0aW9uOmFjdGl2ZSxcbi5zaG9ydGN1dC1hY3Rpb246Zm9jdXMge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tIFNpZGViYXIgLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNpZGViYXIge1xuICAgIGRpdi5jb250ZXh0dWFsIHtcbiAgICAgICAgei1pbmRleDogMTAwMDA7XG4gICAgfVxuICAgIHBhZGRpbmc6IDFyZW0gMC41cmVtIDAuNXJlbSAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3YXRlcjtcblxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIG5hdi50aXRsZS10ZXN0IHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2sge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuLy8gICAgICAgIHBhZGRpbmc6ICRzcGFjZXIgJHNwYWNlcjtcbiAgICAgICAgbWFyZ2luOiAwIDAgJHNwYWNlcjtcbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtO1xuICAgICAgICB9XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgKCRzcGFjZXIgKiAuNSk7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgJGJvcmRlci13aWR0aCAwICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OztcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgICB9XG4gICAgdWwubWVudSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICAgIH1cbiAgICBuYXYgdWwubmF2LFxuICAgIG5hdiB1bC5tZW51IHtcbiAgICAgICAgbWFyZ2luOiAwIDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogODY4cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTsgXG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogODY3cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMC4zM3JlbSAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIGxpLm5hdi1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGEge1xuLy8gICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICAgICAgICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gICAgICAgICAgICAtbW96LWh5cGhlbnM6IGF1dG87XG4gICAgICAgICAgICBoeXBoZW5zOiBhdXRvO1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5tZW51LWl0ZW0tLWFjdGl2ZS10cmFpbCxcbiAgICAgICAgJi5pcy1hY3RpdmUsXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYS5pcy1hY3RpdmUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktNDAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgfVxuICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRuYXZiYXItZGVmYXVsdC1hY3RpdmUtY29sb3I7XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cbiAgICAuc2lkZS1uYXYge1xuICAgICAgICBsaS5hY3RpdmUgYSwgYS5pcy1hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpZGViYXItZmlyc3Qge1xuICAgIC5zaWRlLW5hdiB7XG4gICAgICAgIHRvcDogMXJlbTsgIC8vIGZvciBzdGlja3kgcG9zaXRpb25pbmdcbiAgICAgICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5OyAvKiBTYWZhcmkgKi9cbiAgICAgICAgLy9ib3JkZXI6IDJweCBzb2xpZCBkaW1ncmF5O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG5cbiAgICAgICAgbmF2LmJsb2NrLW1lbnUsXG4gICAgICAgIC5zaWRlYmFyLW1lbnUge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4IDEwcHggMHB4IDVweDtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubmF2YmFyLW5hdixcbiAgICAgICAgICAgIC5saXN0LWdyb3VwIHtcbiAgICAgICAgICAgICAgICAubmF2LWl0ZW0sXG4gICAgICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6dmlzaXRlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuaXMtYWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjp2aXNpdGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5ib2R5LnRvb2xiYXItZml4ZWQsIFxuYm9keS51c2VyLWxvZ2dlZC1pbiB7XG4gICAgLnNpZGViYXItZmlyc3Qge1xuICAgICAgICAuc2lkZS1uYXYge1xuICAgICAgICAgICAgdG9wOiA2cmVtOyAgLy8gc3RpY2t5IHBvc2l0aW9uaW5nIHcvIGFkbWluIHRvb2xiYXIgaXMgZGlmZmVyZW50XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBGb290ZXIgU3R5bGluZy5cbiAqL1xuXG5mb290ZXIuc2l0ZS1mb290ZXIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC10YWhvbWE7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIH1cbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvcmRlci10b3A6IDNyZW0gc29saWQgdGhlbWUtY29sb3IoXCJzZWNvbmRhcnlcIik7XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCB0aGVtZS1jb2xvcihcInNlY29uZGFyeVwiKTtcbiAgICB9XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZvb3Rlci1pbWcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICAgIH1cblxuICAgIC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMCAkc3BhY2VyO1xuICAgIH1cbiAgICAubmF2LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgI2xhc3RVcGRhdGUge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG4gICAgI2Zvb3Rlci1yZXF1aXJlbWVudHMge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmVkO1xuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtdGFob21hO1xuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtdGFob21hO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSBhbmQgKG1pbi13aWR0aDogNTgwcHgpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTUlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDU3OXB4KSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zaXRlLWZvb3Rlcl9fYm90dG9tIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcblxuICAgICAgICAucmVnaW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnJlZ2lvbi1mb290ZXItYm90dG9tIHtcbiAgICAgICAgICAgIG5hdi5ibG9jay1tZW51IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgICAgICBsaTphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIHwgXCI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxpOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5mZWF0dXJlZC1ib3R0b20ge1xuICAgIGJhY2tncm91bmQ6IHRoZW1lLWNvbG9yKFwic2Vjb25kYXJ5XCIpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBhc2lkZSB7XG4gICAgICAgIHdpZHRoOiBpbmhlcml0O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAwO1xuICAgIH1cbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAubWVudS0tcXVpY2stbGlua3Mge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDQwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDM5OXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsaTphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBTdHlsZXMgZm9yIHRoZSBza2lwIGxpbmsuXG4gKi9cblxuLnNraXAtbGluayB7XG4gICAgbGVmdDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHotaW5kZXg6IDUwO1xuICAgIGJhY2tncm91bmQ6ICRncmF5LTcwMDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxnO1xuICAgIHBhZGRpbmc6IDFweCAkc3BhY2VyIDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGJvcmRlci1yYWRpdXMtbGcgJGJvcmRlci1yYWRpdXMtbGc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBvdXRsaW5lOiAwO1xufVxuXG4uc2tpcC1saW5rLnZpc3VhbGx5LWhpZGRlbi5mb2N1c2FibGU6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2hpdGU7XG59IiwiLyoqXG4gKiBAZmlsZVxuICogU3R5bGVzIGZvciBCb290c3RyYXAgQmFycmlvJ3MgdGFibGVzLlxuICovXG5cbi5zdGlja3ktaGVhZGVyIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbn1cblxuLnN0aWNreS1oZWFkZXIgdGgge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG59IiwiLyoqXG4gKiBAZmlsZVxuICogVmlzdWFsIHN0eWxlcyBmb3IgdGFibGUgZHJhZy5cbiAqL1xuXG50ci5kcmFnIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmYwO1xufVxuXG50ci5kcmFnLXByZXZpb3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkO1xufVxuXG5ib2R5IGRpdi50YWJsZWRyYWctY2hhbmdlZC13YXJuaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRzcGFjZXIgLyAyKTtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIFRhYmxlIHNlbGVjdCBiZWhhdmlvci5cbiAqXG4gKiBAc2VlIHRhYmxlc2VsZWN0LmpzXG4gKi9cblxudHIuc2VsZWN0ZWQgdGQge1xuICBiYWNrZ3JvdW5kOiAjZmZjO1xufVxudGQuY2hlY2tib3gsXG50aC5jaGVja2JveCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbltkaXI9XCJydGxcIl0gdGQuY2hlY2tib3gsXG5bZGlyPVwicnRsXCJdIHRoLmNoZWNrYm94IHtcbiAgLyogVGhpcyBpcyByZXF1aXJlZCB0byB3aW4gb3ZlciBzcGVjaWZpY2l0eSBvZiBbZGlyPVwicnRsXCJdIHRkICovXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIFRhYmxlIHNvcnQgaW5kaWNhdG9yLlxuICovXG5cbnRoLmlzLWFjdGl2ZSBpbWcge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbn1cblxudGQuaXMtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0zMDA7XG59IiwiLyoqXG4gKiBAZmlsZVxuICogVGFibGVzb3J0IGluZGljYXRvciBzdHlsZXMuXG4gKi9cblxuLnRhYmxlc29ydCB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbjogMXB4IDAgMCA1cHg7XG59XG4udGFibGVzb3J0LS1hc2Mge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2NvcmUvbWlzYy9pY29ucy9mZmZmZmYvdHdpc3RpZS1kb3duLnN2Zyk7XG59XG4udGFibGVzb3J0LS1kZXNjIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9jb3JlL21pc2MvaWNvbnMvZmZmZmZmL3R3aXN0aWUtdXAuc3ZnKTtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIFRoZW1lIHN0eWxpbmcgZm9yIHRhYnMuXG4gKi9cblxubmF2LnRhYnMge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBWaXN1YWwgc3R5bGVzIGZvciBhIHJlc2l6YWJsZSB0ZXh0YXJlYS5cbiAqL1xuXG4uZm9ybS10ZXh0YXJlYS13cmFwcGVyIHRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBWaXN1YWwgc3R5bGVzIGZvciBCYXJ0aWsncyB1aS13aWRnZXQgY29tcG9uZW50LlxuICovIiwiLyoqXG4gKiBAZmlsZVxuICogU3R5bGVzIGZvciBCYXJ0aWsncyBtb2RhbCB3aW5kb3dzXG4gKi9cblxuLnVpLXdpZGdldC1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgb3BhY2l0eTogMC43O1xufVxuXG4udWktZGlhbG9nIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udWktZGlhbG9nIGlucHV0LFxuLnVpLWRpYWxvZyBzZWxlY3QsXG4udWktZGlhbG9nIHRleHRhcmVhIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbn1cblxuLnVpLWRpYWxvZyAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2YzZjNmMywgI2U4ZThlOCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2YzZjNmMywgI2U4ZThlOCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZTRlNDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjRiNGI0O1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZDJkMmQyO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2QyZDJkMjtcbiAgICBjb2xvcjogIzNhM2EzYTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMC4yNTBlbSAxLjA2M2VtO1xuICAgIGJvcmRlci1yYWRpdXM6IDFlbTtcbn0iLCIvKipcbiAqIEBmaWxlXG4gKiBUaGVtZSBzdHlsaW5nIGZvciB1c2VyIG1vZHVsZS5cbiAqL1xuXG5cbi8qIFZpc3VhbCBzdHlsaW5nIGZvciB0aGUgUGFzc3dvcmQgc3RyZW5ndGggaW5kaWNhdG9yICovXG5cbi5wYXNzd29yZC1zdHJlbmd0aF9fbWV0ZXIge1xuICAgIG1hcmdpbi10b3A6IDAuNWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTIwMDtcbn1cblxuLnBhc3N3b3JkLXN0cmVuZ3RoX19pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIDAuNXMgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC41cyBlYXNlLW91dDtcbn1cblxuLnBhc3N3b3JkLXN0cmVuZ3RoX19pbmRpY2F0b3IuaXMtd2VhayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJkYW5nZXJcIik7XG59XG5cbi5wYXNzd29yZC1zdHJlbmd0aF9faW5kaWNhdG9yLmlzLWZhaXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lLWNvbG9yKFwid2FybmluZ1wiKTtcbn1cblxuLnBhc3N3b3JkLXN0cmVuZ3RoX19pbmRpY2F0b3IuaXMtZ29vZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWUtY29sb3IoXCJpbmZvXCIpO1xufVxuXG4ucGFzc3dvcmQtc3RyZW5ndGhfX2luZGljYXRvci5pcy1zdHJvbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKTtcbn1cblxuLnBhc3N3b3JkLWNvbmZpcm0sXG4ucGFzc3dvcmQtZmllbGQsXG4ucGFzc3dvcmQtc3RyZW5ndGgsXG4ucGFzc3dvcmQtY29uZmlybS1tYXRjaCB7XG4gICAgd2lkdGg6IDU1JTtcbn1cblxuLnBhc3N3b3JkLXN1Z2dlc3Rpb25zIHtcbiAgICBwYWRkaW5nOiAwLjJlbSAwLjVlbTtcbiAgICBtYXJnaW46IDAuN2VtIDA7XG4gICAgbWF4LXdpZHRoOiAzNC43ZW07XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG59XG5cbi5wYXNzd29yZC1zdWdnZXN0aW9ucyB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNvbmZpcm0tcGFyZW50LFxuLnBhc3N3b3JkLXBhcmVudCB7XG4gICAgY2xlYXI6IGxlZnQ7XG4gICAgLyogTFRSICovXG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogMzNlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5bZGlyPVwicnRsXCJdIC5jb25maXJtLXBhcmVudCxcbltkaXI9XCJydGxcIl0gLnBhc3N3b3JkLXBhcmVudCB7XG4gICAgY2xlYXI6IHJpZ2h0O1xufVxuXG5cbi8qIFN0eWxpbmcgZm9yIHRoZSBzdGF0dXMgaW5kaWNhdG9yIG9mIHRoZSBwYXNzd29yZHMgbWF0Y2ggdGVzdC4gICovXG5cbi5wYXNzd29yZC1jb25maXJtIC5vayB7XG4gICAgY29sb3I6IHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnBhc3N3b3JkLWNvbmZpcm0gLmVycm9yIHtcbiAgICBjb2xvcjogdGhlbWUtY29sb3IoXCJkYW5nZXJcIik7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuLyogTG9naW4gcGFnZSBzdHlwZSAqL1xuXG4ucGFnZS11c2VyLWxvZ2luIG1haW4gLnJlZ2lvbi1jb250ZW50LFxuLnBhZ2UtdXNlci1wYXNzd29yZCBtYWluIC5yZWdpb24tY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiAkc3BhY2VyICRzcGFjZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGc7XG59IiwiLyoqXG4gKiBAZmlsZVxuICogVmVydGljYWwgdGFicyBjb21wb25lbnQuXG4gKi9cblxuLyogVmVydGljYWwgVGFicyBSZXNldCAqL1xuLnZlcnRpY2FsLXRhYnNfX21lbnUge1xuICBtYXJnaW46IC0xcHggMCAtMXB4OyAvKiBMVFIgKi9cbiAgcGFkZGluZzogMDtcbn1cbltkaXI9XCJydGxcIl0gLnZlcnRpY2FsLXRhYnNfX21lbnUge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICAvKiBUaGlzIGlzIHJlcXVpcmVkIHRvIHdpbiBzcGVjaWZpY2l0eSBvdmVyIFtkaXI9XCJydGxcIl0gLnJlZ2lvbi1jb250ZW50IHVsICovXG4gIHBhZGRpbmc6IDA7XG59XG4iLCIvKipcbiAqIEBmaWxlXG4gKiBWZXJ0aWNhbCBUYWJzLlxuICovXG5cbi52ZXJ0aWNhbC10YWJzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgLyogTFRSICovXG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAudmVydGljYWwtdGFicyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnZlcnRpY2FsLXRhYnNfX21lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAvKiBMVFIgKi9cbiAgICB3aWR0aDogMTVlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgLyogTFRSICovXG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAudmVydGljYWwtdGFic19fbWVudSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTVlbTtcbn1cblxuLnZlcnRpY2FsLXRhYnNfX3BhbmUge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDA7XG59XG5cbi52ZXJ0aWNhbC10YWJzX19wYW5lPnN1bW1hcnkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyogTGF5b3V0IG9mIGVhY2ggdGFiLiAqL1xuXG4udmVydGljYWwtdGFic19fbWVudS1pdGVtIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6ICNlZWU7XG59XG5cbi52ZXJ0aWNhbC10YWJzX19tZW51LWl0ZW0gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC41ZW0gMC42ZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4udmVydGljYWwtdGFic19fbWVudS1pdGVtIGE6Zm9jdXMgLnZlcnRpY2FsLXRhYnNfX21lbnUtaXRlbS10aXRsZSxcbi52ZXJ0aWNhbC10YWJzX19tZW51LWl0ZW0gYTphY3RpdmUgLnZlcnRpY2FsLXRhYnNfX21lbnUtaXRlbS10aXRsZSxcbi52ZXJ0aWNhbC10YWJzX19tZW51LWl0ZW0gYTpob3ZlciAudmVydGljYWwtdGFic19fbWVudS1pdGVtLXRpdGxlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnZlcnRpY2FsLXRhYnNfX21lbnUtaXRlbSBhOmhvdmVyIHtcbiAgICBvdXRsaW5lOiAkYm9yZGVyLXdpZHRoIGRvdHRlZDtcbn1cblxuLnZlcnRpY2FsLXRhYnNfX21lbnUtaXRlbS5pcy1zZWxlY3RlZCB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIC8qIExUUiAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAudmVydGljYWwtdGFic19fbWVudS1pdGVtLmlzLXNlbGVjdGVkIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6ICRib3JkZXItd2lkdGg7XG59XG5cbi52ZXJ0aWNhbC10YWJzX19tZW51LWl0ZW0uaXMtc2VsZWN0ZWQgLnZlcnRpY2FsLXRhYnNfX21lbnUtaXRlbS10aXRsZSB7XG4gICAgY29sb3I6ICRibGFjaztcbn1cblxuLnZlcnRpY2FsLXRhYnNfX21lbnUtaXRlbS1zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59IiwiLyoqXG4gKiBAZmlsZVxuICogU3R5bGluZyBmb3IgVmlld3MgaW4gQmFydGlrLlxuICovXG5cblxuLyogVGFiIHN0eWxlcyAqL1xuXG4udmlld3MtZGlzcGxheXMgLnRhYnMgLm9wZW4+YSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgJGJvcmRlci1yYWRpdXMtbGcgMCAwO1xufVxuXG4udmlld3MtZGlzcGxheXMgLnRhYnMgLm9wZW4+YTpob3Zlcixcbi52aWV3cy1kaXNwbGF5cyAudGFicyAub3Blbj5hOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG59XG5cbi52aWV3cy1kaXNwbGF5cyAuc2Vjb25kYXJ5IC5mb3JtLXN1Ym1pdCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xufVxuXG5cbi8qIFRhYnMgYWN0aW9uIGxpc3Qgc3R5bGVzICovXG5cbi52aWV3cy1kaXNwbGF5cyAudGFicyAuYWN0aW9uLWxpc3Qge1xuICAgIHBhZGRpbmc6IDA7XG59XG5cblxuLyogQ29udGV4dHVhbCBmaWx0ZXIgb3B0aW9ucyBzdHlsZXMgKi9cblxuLnZpZXdzLWZpbHRlcmFibGUtb3B0aW9ucyAuZmlsdGVyYWJsZS1vcHRpb246bnRoLW9mLXR5cGUoZXZlbikgLmZvcm0tdHlwZS1jaGVja2JveCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RjlGOTtcbn1cblxuXG4vKiBWaWV3cyBhY3Rpb24gZHJvcGJ1dHRvbiBzdHlsZXMgKi9cblxuLnZpZXdzLXVpLWRpc3BsYXktdGFiLWFjdGlvbnMgLmRyb3BidXR0b24gLmZvcm0tc3VibWl0IHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG59XG5cbi52aWV3cy11aS1kaXNwbGF5LXRhYi1hY3Rpb25zIC5kcm9wYnV0dG9uIC5mb3JtLXN1Ym1pdDpob3Zlcixcbi52aWV3cy11aS1kaXNwbGF5LXRhYi1hY3Rpb25zIC5kcm9wYnV0dG9uIC5mb3JtLXN1Ym1pdDpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xufVxuXG4vKiBHZW5lcmljIFZpZXdzIEZpZWxkcyAqL1xuXG5kaXYudmlldy1oZWFkZXIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbn1cbmRpdi52aWV3cy12aWV3LWdyaWQuaG9yaXpvbnRhbCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG4ubm9kZS0tdmlldy1tb2RlLXRlYXNlciB7XG4gICAgLmZpZWxkLS1uYW1lLW5vZGUtdGl0bGUge1xuICAgICAgICBjbGVhcjpib3RoO1xuICAgIH1cbiAgICAuZmllbGQtLW5hbWUtbm9kZS1saW5rIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgfVxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG59XG4udmlldy1jb250ZW50IC5maWVsZC0tbmFtZS1ub2RlLXRpdGxlIGgyIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG59XG4udmlld3Mtcm93IHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLyogREFUQSAqL1xuXG4uYmxvY2stdmlld3MgLnZpZXctZGF0YS1wcm9kdWN0cy1ieS1sYWIge1xuICAgIC52aWV3LWNvbnRlbnQgPiBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLnZpZXctY29udGVudCAucm93IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjRTZFNkU2O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxufVxuLnZpZXctZGF0YS1wcm9kdWN0cy1ieS1sYWIge1xuICAgIC52aWV3cy12aWV3LWdyaWQgLnJvdyA+IGRpdiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCA4cHggI0VCRjNGQTtcbiAgICB9XG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLXRlYXNlci1zdW1tYXJ5LXBsYWluIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC52aWV3cy1lbGVtZW50LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMDtcbiAgICAgICAgZGl2LnZpZXcge1xuICAgICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogTUlYSU5TICovXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cbkBlYWNoICRjb2xvcixcbiR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAuYnRuLSN7JGNvbG9yfSBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICAgIH1cbn1cblxuQGVhY2ggJGNvbG9yLFxuJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC5idG4tb3V0bGluZS0jeyRjb2xvcn0gYSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgICB9XG59XG5cbi5iZy1zZWNvbmRhcnkgeyAvLyBib290c3RyYXAgb3ZlcnJpZGUgZm9yIG5hdmJhci10b3Bcbi8vICAgIGJhY2tncm91bmQ6IHNpbHZlciAhaW1wb3J0YW50O1xufVxuXG4uaGVhZGVyLWdyYWRpZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc2Vjb25kYXJ5LCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KCRzZWNvbmRhcnksICRwcmltYXJ5LCAkc2Vjb25kYXJ5KTtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgkc2Vjb25kYXJ5LCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCRzZWNvbmRhcnksICRwcmltYXJ5LCAkc2Vjb25kYXJ5KTtcbn1cblxucHJlIHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG59XG4iLCIuZmllbGQtLW5hbWUtZmllbGQtbGFib3JhdG9yaWVzLFxuLmZpZWxkLS1uYW1lLWZpZWxkLW1pc3Npb25zIHtcbiAgICAuZmllbGRfX2l0ZW0ge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCIsIFwiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiZGl2LmZlYXR1cmVkLXRvcCB7XG4gICAgYXNpZGUuZmVhdHVyZWQtdG9wX19pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAjYmxvY2stZmVhdHVyZWRpbWFnZWJhbm5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBkaXYuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMDtcbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4vLyAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgYW5kIChtaW4td2lkdGg6IDk5M3B4KSB7XG4vLyAgICAgICAgbWF4LWhlaWdodDogMjcwcHg7XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5MnB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbi8vICAgICAgICBtYXgtaGVpZ2h0OiAyMjBweDtcbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbi8vICAgICAgICBtYXgtaGVpZ2h0OiAxNTBweDtcbiAgICB9XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5yZWdpb24tZmVhdHVyZWQtdG9wIHtcbiAgICBkaXYge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICAgICNibG9jay1mZWF0dXJlZGltYWdlYmFubmVyIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIHA6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4jYmxvY2staG9tZXBhZ2ViYW5uZXIge1xuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwibmF2I3Rvb2xiYXItYmFyLFxuLnRvb2xiYXIgLnRvb2xiYXItdHJheSxcbiN0b29sYmFyLWFkbWluaXN0cmF0aW9uLFxuI3Rvb2xiYXItYWRtaW5pc3RyYXRpb24tdHJheSB7XG4gICAgei1pbmRleDogNTAwMDAwO1xufVxuIiwiZGl2LnRvcGljYWwtbWVudSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LW5hcnJvdztcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1zaGFkZTtcblxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3RvcGljc0dyYWRpZW50LmpwZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgbWF4LWhlaWdodDogMTIwcHg7XG5cbiAgICAudmlld3MtZmllbGQtZmllbGQtdG9waWMtdGVhc2VyLWltYWdlLFxuICAgIC52aWV3cy1maWVsZC1maWVsZC1ob3Zlci10b3BpYy1pY29uIHtcbiAgICAgICAgLmZpZWxkLWNvbnRlbnQuaW5hY3RpdmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4vLyAgICAgICAgbWFyZ2luLXRvcDogLTEuNXJlbTtcbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIH1cbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIH1cbn1cblxuLnJlZ2lvbi10b3BpY2FsLW1lbnUge1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogI0RDRENEQztcbiAgICAgICAgfVxuICAgIH1cbiAgICAudmlld3MtZmllbGQtbmFtZSB7XG4gICAgICAgIG1hcmdpbjogMCAwO1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgfVxuICAgIC52aWV3cy1lbGVtZW50LWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnZpZXdzLXJvdyB7XG4gICAgICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAudmlld3MtZmllbGQgdmlld3MtZmllbGQtZmllbGQtaG92ZXItdG9waWMtaWNvbixcbiAgICAgICAgLnZpZXdzLWZpZWxkLWZpZWxkLXRvcGljLXRlYXNlci1pbWFnZSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbi8vICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAudmlld3MtZmllbGQtZmllbGQtdG9waWMtdGVhc2VyLWltYWdlIHtcbi8vICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMi41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAudmlld3MtZmllbGQtZmllbGQtdG9waWMtdGVhc2VyLWltYWdlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC52aWV3cy1maWVsZC1uYW1lIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC52aWV3cy1maWVsZC1maWVsZC10b3BpYy10ZWFzZXItaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgXG4gICAgfVxufVxuIiwiLmJsb2NrLXZpZXdzIHtcbiAgICAudmlld3MtZWxlbWVudC1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgfVxufVxuXG4uYmxvY2stdmlld3MtYmxvY2tvcmdhbml6YXRpb25hbC11bml0cy1ibG9jay0xLFxuLmJsb2NrLXZpZXdzLWJsb2NrbGFib3JhdG9yaWVzLWJsb2NrLTEsXG4uZmllbGQtLXR5cGUtdmlld3NyZWZlcmVuY2Uge1xuXG4gICAgaDIsXG4gICAgLnZpZXdzcmVmZXJlbmNlLS12aWV3LXRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgfVxuICAgIC5maWVsZC0tdHlwZS1pbWFnZSB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7ICAgIC8vIGludGVyZmVyaW5nIHdpdGggY2xpY2thYmxlIGltYWdlIGxpbmtzXG4gICAgfVxuICAgIC50YXhvbm9teS10ZXJtLS10eXBlLWxhYnMgLmJzLXJlZ2lvbi0tbWFpbiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyAgICAvLyB0byBhbGxvdyBjbGlja2FibGUgaW1hZ2UgbGlua3NcbiAgICB9XG4gICAgLnZpZXctY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgaDUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgY29sb3I6IHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgfVxuICAgICAgICBkaXYubm8tZGl2LCBkaXYudGF4b25vbXktdGVybSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBkaXYubm8tZGl2IHsgICAgLy8gY2xhc3MgdG8gb3ZlcnJpZGUgZGVmYXVsdHNcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiA0cHggc29saWQgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIH0gICBcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaXYuY29sLXNtLTEyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwJTsgXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAycmVtO1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDYycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogNDJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA1NTBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjI1cmVtO1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNTQ5cHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvKlxuICAgICAgICAgKiBDcmVhdGl2ZSB1c2Ugb2YgbnRoLWNoaWxkIGZvciBzdHlsaW5nIFxuICAgICAgICAgKi9cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIGRpdi5uby1kaXY6bnRoLWNoaWxkKDEpLFxuICAgICAgICAgICAgZGl2Lm5vLWRpdjpudGgtY2hpbGQoMTApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGl2Lm5vLWRpdjpudGgtY2hpbGQoNCksXG4gICAgICAgICAgICBkaXYubm8tZGl2Om50aC1jaGlsZCgxMykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICBkaXYubm8tZGl2IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLWxhYi1pY29uLWltYWdlIHtcbiAgICAgICAgICAgICAgICBmbG9hdDpub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLyogU2VwYXJhdGUgcGFnZSBkaXNwbGF5ICovXG4jdmlld3MtYm9vdHN0cmFwLW9yZ2FuaXphdGlvbmFsLXVuaXRzLXBhZ2UtMSB7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgZGl2LnZpZXdzLWZpZWxkLFxuICAgICAgICBkaXYuZmllbGQtY29udGVudCxcbiAgICAgICAgZGl2LnJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIH1cbiAgICAgICAgZGl2LmNvbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAudmlld3MtZmllbGQtZmllbGQtZnVsbC1uYW1lLFxuICAgIC52aWV3cy1maWVsZC1maWVsZC1mdWxsLW5hbWUgaDMge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA4cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA4cHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDI0cHg7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hcnJvdyAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL29wYWNpdHloZWFkZXIucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyBcbiAgICB9XG59XG4iLCIudmlldy1vcmdhbml6YXRpb25hbC11bml0cyB7XG4gICAgZGl2LnRheG9ub215LXRlcm0tLXR5cGUtbGFicyxcbiAgICBkaXYudGF4b25vbXktdGVybS0tdHlwZS1vZmZpY2VzLWFuZC1jZW50ZXJzIHtcbiAgICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLWZ1bGwtbmFtZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtbmFycm93ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IC0wLjVyZW07XG4gICAgICAgICAgICBsZWZ0OiAtMC41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9vcGFjaXR5aGVhZGVyLnBuZycpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBoMiwgaDMge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hcnJvdyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvb3BhY2l0eWhlYWRlci5wbmcnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucm91bmRlZCBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgfVxuICAgIGgyLCAuZmllbGQtLW5hbWUtZmllbGQtZnVsbC1uYW1lIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hcnJvdyAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9vcGFjaXR5aGVhZGVyLnBuZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYXJyb3cgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWZ1bGwtbmFtZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYXJyb3cgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvb3BhY2l0eWhlYWRlci5wbmcnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxufVxuLy99XG4vKiBJJ20gYXNzdW1pbmcgYWxsIHRheG9ub215IHBhZ2VzIHcvIG9uZS1zaWRlYmFyIExheW91dCBCdWlsZGVyIERpc3BsYXkgPSBMYWJzICovXG4vKiBUaGlzIGlzIHBhdGVudGx5IGZhbHNlLCBiZWNhdXNlIHRvcGljcyBhcmUgYWxzbyBwcm9uZSB0byBvbmUtc2lkZWJhcnkgdGF4LiBsYXlvdXRzICovXG5ib2R5LmxheW91dC1vbmUtc2lkZWJhci5wYXRoLXRheG9ub215IHtcbiAgICBoMS50aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLnZvY2FidWxhcnktbGFicyB7XG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWZ1bGwtbmFtZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYXJyb3cgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xuLy8gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vICAgICAgICB0b3A6IC0wLjVyZW07XG4vLyAgICAgICAgbGVmdDogLTAuNXJlbTtcbi8vICAgICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwIDAuMjVyZW0gMC41cmVtIDAuMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL29wYWNpdHloZWFkZXIucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICAuZmllbGQtLW5hbWUtZGVzY3JpcHRpb24geyBcbi8qICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgd2lkdGg6IDExMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiAtMTAlO1xuICAgICAgICAgICAgei1pbmRleDogMTAwMDAwMDtcbiAgICAgICAgfVxuKi8gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IGRvdHRlZCBibGFjaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIH1cbn1cbiIsIi5ibG9jay12aWV3cy1ibG9ja29mZmljZXMtYW5kLWNlbnRlcnMtYmxvY2stMSB7XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbn1cbi50YXhvbm9teS10ZXJtLS10eXBlLW9mZmljZXMtYW5kLWNlbnRlcnMudGF4b25vbXktdGVybS0tdmlldy1tb2RlLXRlYXNlci1ibG9jayB7XG4gICAgLmZpZWxkLS1uYW1lLXRheG9ub215LXRlcm0tdGl0bGUge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtbmFycm93ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0wLjVyZW07XG4gICAgICAgIGxlZnQ6IC0wLjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL29wYWNpdHloZWFkZXIucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbn1cblxuLnZpZXctb2ZmaWNlcy1hbmQtY2VudGVycyB7XG4gICAgLnZpZXdzLXJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgIH1cbiAgICAvKlxuICAgICAqIENyZWF0aXZlIHVzZSBvZiBudGgtY2hpbGQgZm9yIHN0eWxpbmcgXG4gICAgICovXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLnZpZXdzLXJvdzpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwJTtcbiAgICAgICAgfSAgIFxuICAgICAgICAudmlld3Mtcm93Om50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwJTtcbiAgICAgICAgfSAgIFxuICAgICAgICAudmlld3Mtcm93IHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICB9ICAgXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLnZpZXdzLXJvdyB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfSAgIFxuICAgIC5maWVsZC0tbmFtZS10YXhvbm9teS10ZXJtLXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH0gICBcbn1cbi8qXG4gKiBIb21lIFBhZ2UgUmliYm9uIE1lbnVcbiAqL1xuLm1lbnUtLWhvbWUtcGFnZS1yaWJib24tbWVudSB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0yM3B4O1xuICAgIG1hcmdpbi1yaWdodDogLTIzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZWVuO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3JpYmJvbkdyYWRpZW50MS5qcGcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuXG4gICAgZm9udC1mYW1pbHk6IFwiU3F1YWRhIE9uZVwiLCBcIlBUIFNhbnMgTmFycm93XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgICBcbi8vICAgIGJvcmRlci10b3A6IDFyZW0gc29saWQgIzVDNkM3Qjtcbi8vICAgIG91dGxpbmUtc3R5bGU6IHNvbGlkOyBcbi8vICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcmVkO1xuLy8gICAgYm9yZGVyLXRvcDogMXJlbSBzb2xpZCAjNUM2QzdCO1xuLy8gICAgb3V0bGluZS1ib3R0b206IDFyZW0gdGhlbWUtY29sb3IoJ3NlY29uZGFyeScpO1xuLy8gICAgb3V0bGluZS10b3A6IDRweCAkcHJpbWFyeS1zaGFkZTtcblxuICAgIHVsLCBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIGEge1xuICAgICAgICBtYXJnaW46IDFyZW0gYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogdGhlbWUtY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cbi8vICAgICY6YmVmb3JlIHtcbi8vICAgICAgICBjb250ZW50OiAnJzsgICAgLy8gbmVlZGVkIHRvIHJlbmRlciA6YmVmb3JlIGRpcmVjdGl2ZXNcbi8vICAgICAgICBoZWlnaHQ6IDFyZW07XG4vLyAgICAgICAgd2lkdGg6IDEwMCU7XG4vLyAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRwcmltYXJ5LXNoYWRlLCAjNUM2QzdCKTtcbi8vICAgIH1cbn1cbiIsIi52b2NhYnVsYXJ5LW9mZmljZXMtYW5kLWNlbnRlcnMge1xuICAgIC5maWVsZC0tbmFtZS1maWVsZC1mdWxsLW5hbWUge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtbmFycm93ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0wLjVyZW07XG4gICAgICAgIGxlZnQ6IC0wLjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL29wYWNpdHloZWFkZXIucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH0gICBcbn1cbiIsIi5zbGljayB7XG4gICAgYnV0dG9uLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAtMi41cmVtO1xuICAgIH1cbiAgICBidXR0b24uc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAtMi41cmVtO1xuICAgIH1cbiAgICAuc2xpZGVfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luOiA1cHggMHB4IDVweCAwcHg7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuc2xpZGVfX2NhcHRpb24ge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMjQwcHg7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMjIwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5zbGlkZV9fY2FwdGlvbiB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxufVxuLnZpZXctdXBjb21pbmctZXZlbnRzIHtcbiAgICBtYXJnaW46IDAgMTVweDtcbn1cbiIsImJvZHkucGF0aC1mcm9udHBhZ2Uge1xuICAgIGRpdi5maWVsZC0tbmFtZS1maWVsZC1wYXJhZ3JhcGhzLFxuICAgIGRpdi5wYXJhZ3JhcGgtLXR5cGUtLWN1c3RvbS1wYXJhZ3JhcGgtY29udGVudC1ibG9jayB7XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDE2MDBweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogIC0yM3B4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMjNweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jY29udGVudC1jYXRlZ29yaWVzIHtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9za2lubnllYXJ0aDIuZ2lmJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAgNC4xNjY2NjclO1xuLy8gICAgcGFkZGluZy10b3A6IDU2LjY2NjY3JTsgIC8vIChpbWctaGVpZ2h0L2ltZy13aWR0aCkqMTAwID0gZm9yY2UgZGl2IHRvIGJnLWluZyBoZWlnaHRcbiAgICBwYWRkaW5nLXRvcDogMzEuODIzJTtcblxuICAgIGRpdi5idWJibGVzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgICAgIHRvcDogLTgwMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogOC4zMzMzJTtcbiAgICB9XG4gICAgZGl2LnJvdyB7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgZGl2LnJvdzpudGgtY2hpbGQoMSkge1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBkaXYucm93Om50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRvcDogLTNyZW07XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAgICAgICAgICAgdG9wOiAtMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBkaXYucm93Om50aC1jaGlsZCgzKSB7XG4gICAgICAgIHRvcDogLTZyZW07XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAgICAgICAgICAgdG9wOiAtNHJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzcGFuLmNvbC1tZC0yLFxuICAgIHNwYW4uY29sLTIge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtbmFycm93O1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMDAwMDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG5cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTE0MHB4KSB7XG4vLyAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTEzOXB4KSBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMDc5cHgpIHtcbi8vICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvYnViYmxlLnBuZycpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTE0MHB4KSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExMzlweCkgYW5kIChtaW4td2lkdGg6IDEwODBweCkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMDc5cHgpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGE6aG92ZXIsIGE6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiBhcXVhO1xuICAgICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNC4xNjY2NjclO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2FucyBOYXJyb3dcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47ICAgICAvLyBqUXVlcnkgd2lsbCBhbmltYXRlIHZpc2liaWxpdHlcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2J1YmJsZS5wbmcnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcblxuLy8gICAgICAgICAgICBtYXJnaW46IDFyZW0gNC4xNjY2NyU7ICAvLyAxLzIgb2YgY29sLTEgKDEvMjQpXG4vLyAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0LjE2NjY3JTtcblxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMS43NXJlbTtcbi8qICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDEuMjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42cmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxcmVtOyAgIC8vIGZvcmNlIHR3by1saW5lIG5hbWVzIHRvIGRpc3BsYXkgYXMgb25lXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4qLyAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsaTpudGgtY2hpbGQoMSksIFxuICAgICAgICBsaTpudGgtY2hpbGQoNikge1xuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSB7XG4gICAgICAgICAgICAgICAgdG9wOiA0cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTA3OXB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGk6bnRoLWNoaWxkKDIpLCBcbiAgICAgICAgbGk6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDEwODBweCkge1xuICAgICAgICAgICAgICAgIHRvcDogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTA3OXB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDByZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4vKlxuI2VhcnRoLWhvcml6b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IDQwNHB4O1xuICAgIHotaW5kZXg6IDEwMDtcbn1cbiovXG4iLCIvKiBTbGljayBTbGlkZXIgZm9yIEV2ZW50cyovXG5kaXYuYmxvY2stdmlld3MtYmxvY2t1cGNvbWluZy1ldmVudHMtYmxvY2stMiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvcGVvcGxlb3BhY2l0eS5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LW5hcnJvdztcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IDFyZW07XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1zaGFkZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5zbGlkZV9fY2FwdGlvbiB7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50LXNoYWRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICBmb250LXNpemU6IDEuMzNyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAzJTtcbiAgICAgICAgbGVmdDogLTEuNSU7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGFjY2VudC1zaGFkZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBkaXYuc2xpY2sgLmdyaWQge1xuLy8gICAgLm1lZGlhLS1zbGljayB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgICB0byByaWdodCwgXG4gICAgICAgICAgICByZ2JhKDI1NSwwLDAsMCksXG4gICAgICAgICAgICByZ2JhKDI1NSwwLDAsMCkgMyUsXG4gICAgICAgICAgICAkYWNjZW50LXNoYWRlIDMlLCBcbiAgICAgICAgICAgICRhY2NlbnQtc2hhZGUgOTclLFxuICAgICAgICAgICAgcmdiYSgyNTUsMCwwLDApIDk3JVxuICAgICAgICApO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwNCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDExMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiAtMiU7XG4vLyAgICAgICAgICAgIHBhZGRpbmc6IDMlIDMlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zbGljay1hcnJvdzpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktc2hhZGU7XG4gICAgfVxufVxuLyogSG9tZSBQYWdlIFZpZXcgRGlzcGxheXMgZm9yIEV2ZW50cyAqL1xuLnZpZXctdXBjb21pbmctZXZlbnRzIHtcbiAgICAuZmllbGQtLXR5cGUtZGF0ZXRpbWUge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgc2lsdmVyO1xuICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuMjVyZW07XG4gICAgfVxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwO1xuICAgIH1cbn1cbi52b2NhYnVsYXJ5LWxhYnMgZGl2LmNvbnRlbnQgZGl2LnZpZXctdXBjb21pbmctZXZlbnRzIHtcbiAgICBkaXYudmlld3Mtdmlldy1ncmlkIC5yb3cge1xuICAgICAgICBkaXYuY29sIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgZGl2Lm5vZGUtLXR5cGUtYXJ0aWNsZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0U2RTZFNjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH0gIFxuICAgICAgICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXBvc3QtZGF0ZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGl2LnZpZXctZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG4udmlldy11cGNvbWluZy1ldmVudHMgLnZpZXctY29udGVudCAuZ3JpZCAucm93IGRpdi5jb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICBkaXYubm9kZS0tdmlldy1tb2RlLXRlYXNlciB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNFNkU2RTY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICB9XG59XG4vKiBFdmVudHMgVmlldyBCbG9ja3MgKi9cbiN2aWV3cy1ib290c3RyYXAtdXBjb21pbmctZXZlbnRzLXBhZ2UtMSB7XG4gICAgZGl2LmNvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC4zMzNyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzMzcmVtO1xuICAgIH1cbn1cbiIsImRpdi5maWVsZC0tbmFtZS1ub2RlLWxpbmsge1xuICAgIGEge1xuICAgICAgICBjb2xvcjogY29yYWw7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyYXk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICB9XG4gICAgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZmY1NzFhO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRTZFNkU2OztcbiAgICB9XG59XG4iLCIjYmxvY2stZWFydGgtc2NpZW5jZS1jb250ZW50IHtcbiAgLml0ZW0tbGlzdC0tYmxhenkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5ncmlkX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwcHg7XG4gIH1cbn1cbiIsIi5ibG9jay1maWVsZC1ibG9ja3RheG9ub215LXRlcm10b3BpY3NuYW1lIHtcbiAgICAuZmllbGQtLW5hbWUtbmFtZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYXJyb3cgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTAuNXJlbTtcbiAgICAgICAgbGVmdDogLTAuNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwLjc1cmVtIDAuNXJlbSAwLjVyZW0gMC41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9vcGFjaXR5aGVhZGVyLnBuZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG4uZmllbGQtLW5hbWUtZmllbGQtdG9waWNzLmZpZWxkLS10eXBlLWVudGl0eS1yZWZlcmVuY2Uge1xuICAgIGZsb2F0OiByaWdodDtcblxuICAgIC5maWVsZF9fbGFiZWwge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiOiBcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmllbGRfX2l0ZW1zIC5maWVsZF9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiLCBcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi52aWV3cy1maWVsZC1maWVsZC10b3BpY3MgZGl2LmZpZWxkLWNvbnRlbnQge1xuICAgIGEge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4vLyAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgfVxufVxuLnZvY2FidWxhcnktdG9waWNzIHtcbiAgICAuZmllbGQtLXR5cGUtZGF0ZXRpbWUge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgc2lsdmVyO1xuICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuMjVyZW07XG4gICAgfVxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwO1xuICAgIH1cbn1cbiIsIi5ub2RlLS10eXBlLXNwYWNlLW1pc3Npb24ubm9kZS0tdmlldy1tb2RlLXRlYXNlciB7XG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQ4MHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5maWVsZC0tbmFtZS1maWVsZC1sYXVuY2gtZGF0ZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG5cbiAgICAuZmllbGRfX2xhYmVsOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiOiBcIjtcbiAgICB9XG59XG4iLCIubm9kZS0tdHlwZS1oaWdobGlnaHRzIHtcbiAgICBoMiwgLmZpZWxkLS1uYW1lLW5vZGUtdGl0bGUsIGRpdi5pdGVtLWxpc3Qge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH0gICBcbiAgICAuZmllbGQtLW5hbWUtbm9kZS10aXRsZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLW1vbnRoLXllYXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG59XG4jYmxvY2stZWFydGgtc2NpZW5jZS1jb250ZW50IC5maWVsZC0tbmFtZS1maWVsZC1zdW1tYXJ5IHAge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtbmFycm93Oztcbn1cbi5wYXRoLWhpZ2hsaWdodHMgLm5vZGUtLXR5cGUtaGlnaGxpZ2h0cy5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIHtcbiAgICBtYXgtd2lkdGg6IDIyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIGRpdi5maWVsZC0tbmFtZS1ub2RlLXRpdGxlIHtcbiAgICAgICAgaGVpZ2h0OiAxMTJweDtcbiAgICAgICAgbWF4LWhlaWdodDogMTEycHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi52aWV3LXNjaWVuY2UtaGlnaGxpZ2h0cyB7XG4gICAgdGltZSB7XG4gICAgICAgIGNvbG9yOiBUb21hdG87XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAuZmllbGQtLW5hbWUtbm9kZS10aXRsZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLW1vbnRoLXllYXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLnZpZXdzLWZpZWxkLWZpZWxkLXByaW1hcnktY2F0ZWdvcnkgZGl2IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA1MjlweCkge1xuICAgICNibG9jay1lYXJ0aC1zY2llbmNlLWNvbnRlbnQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1bW1hcnkgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hcnJvdzs7XG4gICAgfVxuICAgIC5wYXRoLWhpZ2hsaWdodHMgLm5vZGUtLXR5cGUtaGlnaGxpZ2h0cy5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICB9XG4vLyAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAubm9kZS0tdHlwZS1oaWdobGlnaHRzIGRpdi5maWVsZC0tbmFtZS1ub2RlLXRpdGxlIHtcbiAgICAgICAgaGVpZ2h0OiAxMTJweDtcbiAgICAgICAgbWF4LWhlaWdodDogMTEycHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAudmlldy1zY2llbmNlLWhpZ2hsaWdodHMge1xuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIge1xuICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnZpZXctc2NpZW5jZS1oaWdobGlnaHRzIC5yb3csXG4gICAgLm5vZGUtLXR5cGUtaGlnaGxpZ2h0cyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgfVxuICAgIC52aWV3LXNjaWVuY2UtaGlnaGxpZ2h0cyAucm93ID4gZGl2IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbn1cbiIsInNlY3Rpb24ucmVnaW9uLW9mZmNhbnZhcyB7XG4gICAgbGkubmF2LWl0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG4iLCJodG1sLCBib2R5IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbi8vICAgIGZvbnQtZmFtaWx5OiBcIlNxdWFkYSBPbmVcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXN0YW5kYXJkO1xufVxuYm9keSB7XG4gICAgbWF4LXdpZHRoOiAxNjAwcHg7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuI3BhZ2Utd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIFxuICAgICNwYWdlIHtcbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA5MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuI21haW4td3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgcGFkZGluZzogMCAwLjVyZW0gMCAwO1xuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4vLyAgICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2FucyBOYXJyb3dcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtbmFycm93O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICB9XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWgxO1xufVxuXG5oMS50aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LW5hcnJvdyAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL29wYWNpdHloZWFkZXIucG5nJyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuaDIge1xuICAgIG1hcmdpbi10b3A6IC41cmVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbi8vICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaDI7XG4vLyAgICBmb250LXNpemU6IDI4cHg7XG4vLyAgICBiYWNrZ3JvdW5kOiAjRUFGNEY2O1xuLy8gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvb3BhY2l0eWhlYWRlci5wbmcnKTtcbi8vICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbi8vICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4vLyAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbi8vICAgICAgICBtYXJnaW4tbGVmdDogMjUlO1xuLy8gICAgICAgIG1hcmdpbi1yaWdodDogMjUlO1xuICAgIH1cbn1cblxuaDMge1xuICBmb250LXNpemU6ICRmb250LXNpemUtaDM7XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWg0O1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTtcbn1cblxuaDYge1xuICBmb250LXNpemU6ICRmb250LXNpemUtaDY7XG59XG5cbnByZSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuICAgIG1hcmdpbjogMC41ZW0gMS41ZW07XG59XG5cbmFzaWRlLCBtYWluLCBmaWdjYXB0aW9uLCBmaWd1cmUsIG5hdiwgc2VjdGlvbiB7XG4gICAgZGlzcGxheTogc3RhdGljO1xufVxuXG5hIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbn1cbmE6aG92ZXIge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xufVxuaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbmRpdi5icmFuZCBoMSBhIHtcbi8vICAgIGZvbnQtZmFtaWx5OiAgJGJyYW5kLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC10aXRsZTtcbn1cbnVsLm1lbnUge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxMHB4O1xuICAgIGxpIHtcbiAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxufVxuLmNlbnRlcmVkIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi52aWV3LXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi52aWV3cy1maWVsZC1maWVsZC1pbWFnZSB7XG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4uYmxhenkge1xuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgLnZpZXdzLWZpZWxkLWZpZWxkLWltYWdlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG59XG4udmlldy1sYWJzIHtcbiAgICAuaXRlbS1saXN0LS1ibGF6eSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLmdyaWQtLTUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEyMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3V0cmVhY2gtYWNjb3JkaW9uIHtcbiAgICAuY2FyZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIG1haW4gcGFnZSBpbWFnZVxuLnBhdGgtZnJvbnRwYWdlIHtcblxuICAgICNtYWluLXdyYXBwZXIge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMTA0MDg7XG4gICAgICAgIHBhZGRpbmc6IDBweDtcblxuICAgICAgICBtYWluLmNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuXG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKlxuICogR2VuZXJpYyBQYWdlIENvbnRhaW5lclxuICovXG4jcGFnZS1jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xufVxuLypcbiAqIE1haW4gcGFnZSBjb250ZW50IHNldHRpbmdzXG4gKi9cbiNwYWdlLXdyYXBwZXIge1xuICAgIC8qXG4gICAgICogTWF4IHdpZHRoIG9uIG1haW4gcGFnZSBjb250ZW50LlxuICAgICAqL1xuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgICAgICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICB9XG59XG4jdG9vbGJhci1iYXIge1xuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgICAgICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxufVxuLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAwcHggIWltcG9ydGFudDsgIC8vIGltcG9ydGFudCBpbiBvcmRlciB0byBvdmVycmlkZSBCb290c3RyYXAgY29tcGxldGVseVxuICBtYXJnaW4tcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xufVxuXG4uZmVhdHVyZWQtYm90dG9tIHtcbi8vICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uY29udGFpbmVyIHtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgIWltcG9ydGFudDsgLy8gYm9vdHN0cmFwIG92ZXJyaWRlXG4gICAgfVxufVxuI21haW4ge1xuICAgIG1haW4uY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDIwcHg7XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbSAwLjVyZW0gMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuYm9keS5wYXRoLWZyb250cGFnZSB7XG4gICAgI2Jsb2NrLWVhcnRoLXNjaWVuY2UtcGFnZS10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuYXNpZGUub2ZmY2FudmFzIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAwMDAwMDAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA0MDQwOyAgLy8gZGFyayBncmF5XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuLy8gICAgdHJhbnNpdGlvbjogMS41cztcblxuICAgIG5hdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOztcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zaG93aXQge1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2NyU7IFxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAxcmVtO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRENEQ0RDO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB1bC5zbGlua3ktbWVudSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG4vKlxuICogVmlld3MgZGVmYXVsdCBzdHlsaW5nXG4gKi9cbi52aWV3cy12aWV3LWdyaWQge1xuICAgIGRpdi52aWV3cy1yb3cgPiBkaXYge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgICYuY29scy0zIC52aWV3cy1yb3cgPiBkaXYge1xuICAgICAgICBtYXgtd2lkdGg6IDMzLjAlICFpbXBvcnRhbnQ7ICAgIC8vIG92ZXJyaWRlIGJhZCBkZWZhdWx0IGdyaWQgc3R5bGluZ1xuICAgIH1cbiAgICAmLmNvbHMtNCAudmlld3Mtcm93ID4gZGl2IHtcbiAgICAgICAgbWF4LXdpZHRoOiAyNCU7XG4gICAgfVxufVxuIiwiLypcbiAqIFN0YW5kYXJkIGxpbmsgY29sb3Igb24gaG92ZXJcbiAqL1xuYTpob3ZlciB7XG4gICAgY29sb3I6IGRhcmtlbiggJGFjY2VudC1zaGFkZSwgMTAlKTtcbn1cbi8qXG4gKiBTZXQgYW4gYWN0aXZlIG1lbnUgZm9udCBjb2xvciwgZXhjZXB0IG9uIGhvbWUgcGFnZS5cbiAqL1xuYm9keTpub3QoLnBhdGgtZnJvbnRwYWdlKSB7IC8vIGJ1Z2ZpeCB0byBleGNsdWRlIGZyb250IHBhZ2VcbiAgI21haW4td3JhcHBlciBtYWluIHtcbiAgICAuYWN0aXZlLCAuaXMtYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1hY3RpdmUtY29sb3IgIWltcG9ydGFudDtcbiAgICB9ICAgXG4gIH1cbn1cbi8qXG4gKiAgU2V0IGFuIGFjdGl2ZSBtZW51IGNvbG9yIHdoZW4gYWN0aXZlLiBcbiAqL1xuI2hlYWRlciB7XG4gICAgdWwubmF2YmFyLW5hdiB7XG4gICAgICAgIGxpLmFjdGl2ZSwgYS5pcy1hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHBpbms7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubm8tcGFkZGluZyB7XG4gICAgcGFkZGluZzogMCAwICFpbXBvcnRhbnQ7XG59XG5mb290ZXIuc2l0ZS1mb290ZXIge1xuICAgYTpob3ZlciB7XG4gICAgICAgY29sb3I6IGRhcmtlbigkd2hpdGUsIDEwJSk7XG4gICB9XG59XG4vLyBTaXplLXJlbGF0ZWQgc3RhdGVzXG4uc20taGlkZSB7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4uc20tb25seSB7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iXX0= */
