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

body.bootstrap-dark {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #d3d3d3;
  text-align: left;
  background-color: #191d21; }

.bootstrap-dark :root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

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

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

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

.bootstrap-dark body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #d3d3d3;
  text-align: left;
  background-color: #191d21; }

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

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

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

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

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

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

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

.bootstrap-dark ol ol,
.bootstrap-dark ul ul,
.bootstrap-dark ol ul,
.bootstrap-dark ul ol {
  margin-bottom: 0; }

.bootstrap-dark dt {
  font-weight: 700; }

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

.bootstrap-dark blockquote {
  margin: 0 0 1rem; }

.bootstrap-dark b,
.bootstrap-dark strong {
  font-weight: bolder; }

.bootstrap-dark small {
  font-size: 80%; }

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

.bootstrap-dark sub {
  bottom: -.25em; }

.bootstrap-dark sup {
  top: -.5em; }

.bootstrap-dark a {
  color: #adadad;
  text-decoration: none;
  background-color: transparent; }
  .bootstrap-dark a:hover {
    color: #878787;
    text-decoration: underline; }

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

.bootstrap-dark pre,
.bootstrap-dark code,
.bootstrap-dark kbd,
.bootstrap-dark samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em; }

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

.bootstrap-dark figure {
  margin: 0 0 1rem; }

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

.bootstrap-dark svg {
  overflow: hidden;
  vertical-align: middle; }

.bootstrap-dark table {
  border-collapse: collapse; }

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

.bootstrap-dark th {
  text-align: inherit; }

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

.bootstrap-dark button {
  border-radius: 0; }

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

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

.bootstrap-dark button,
.bootstrap-dark input {
  overflow: visible; }

.bootstrap-dark button,
.bootstrap-dark select {
  text-transform: none; }

.bootstrap-dark [role="button"] {
  cursor: pointer; }

.bootstrap-dark select {
  word-wrap: normal; }

.bootstrap-dark button,
.bootstrap-dark [type="button"],
.bootstrap-dark [type="reset"],
.bootstrap-dark [type="submit"] {
  -webkit-appearance: button; }

.bootstrap-dark button:not(:disabled),
.bootstrap-dark [type="button"]:not(:disabled),
.bootstrap-dark [type="reset"]:not(:disabled),
.bootstrap-dark [type="submit"]:not(:disabled) {
  cursor: pointer; }

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

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

.bootstrap-dark textarea {
  overflow: auto;
  resize: vertical; }

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

.bootstrap-dark legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal; }

.bootstrap-dark progress {
  vertical-align: baseline; }

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

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

.bootstrap-dark [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

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

.bootstrap-dark output {
  display: inline-block; }

.bootstrap-dark summary {
  display: list-item;
  cursor: pointer; }

.bootstrap-dark template {
  display: none; }

.bootstrap-dark [hidden] {
  display: none !important; }

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

.bootstrap-dark h1, .bootstrap-dark .h1 {
  font-size: 2.5rem; }

.bootstrap-dark h2, .bootstrap-dark .h2 {
  font-size: 2rem; }

.bootstrap-dark h3, .bootstrap-dark .h3 {
  font-size: 1.75rem; }

.bootstrap-dark h4, .bootstrap-dark .h4 {
  font-size: 1.5rem; }

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

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

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

.bootstrap-dark .display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2; }

.bootstrap-dark .display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2; }

.bootstrap-dark .display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2; }

.bootstrap-dark .display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2; }

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

.bootstrap-dark small,
.bootstrap-dark .small {
  font-size: 80%;
  font-weight: 400; }

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

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

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

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

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

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

.bootstrap-dark .blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d; }
  .bootstrap-dark .blockquote-footer::before {
    content: "\2014\00A0"; }

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

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

.bootstrap-dark .figure {
  display: inline-block; }

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

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

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

.bootstrap-dark kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem; }
  .bootstrap-dark kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: 700; }

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

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

.bootstrap-dark .container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  @media (min-width: 576px) {
    .bootstrap-dark .container {
      max-width: 540px; } }
  @media (min-width: 768px) {
    .bootstrap-dark .container {
      max-width: 720px; } }
  @media (min-width: 992px) {
    .bootstrap-dark .container {
      max-width: 960px; } }
  @media (min-width: 1200px) {
    .bootstrap-dark .container {
      max-width: 1140px; } }

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

@media (min-width: 576px) {
  .bootstrap-dark .container, .bootstrap-dark .container-sm {
    max-width: 540px; } }

@media (min-width: 768px) {
  .bootstrap-dark .container, .bootstrap-dark .container-sm, .bootstrap-dark .container-md {
    max-width: 720px; } }

@media (min-width: 992px) {
  .bootstrap-dark .container, .bootstrap-dark .container-sm, .bootstrap-dark .container-md, .bootstrap-dark .container-lg {
    max-width: 960px; } }

@media (min-width: 1200px) {
  .bootstrap-dark .container, .bootstrap-dark .container-sm, .bootstrap-dark .container-md, .bootstrap-dark .container-lg, .bootstrap-dark .container-xl {
    max-width: 1140px; } }

.bootstrap-dark .row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px; }

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

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

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

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

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

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

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

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

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

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

.bootstrap-dark .col-1 {
  flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.bootstrap-dark .col-2 {
  flex: 0 0 16.66667%;
  max-width: 16.66667%; }

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

.bootstrap-dark .col-4 {
  flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.bootstrap-dark .col-5 {
  flex: 0 0 41.66667%;
  max-width: 41.66667%; }

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

.bootstrap-dark .col-7 {
  flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.bootstrap-dark .col-8 {
  flex: 0 0 66.66667%;
  max-width: 66.66667%; }

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

.bootstrap-dark .col-10 {
  flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.bootstrap-dark .col-11 {
  flex: 0 0 91.66667%;
  max-width: 91.66667%; }

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

.bootstrap-dark .order-first {
  order: -1; }

.bootstrap-dark .order-last {
  order: 13; }

.bootstrap-dark .order-0 {
  order: 0; }

.bootstrap-dark .order-1 {
  order: 1; }

.bootstrap-dark .order-2 {
  order: 2; }

.bootstrap-dark .order-3 {
  order: 3; }

.bootstrap-dark .order-4 {
  order: 4; }

.bootstrap-dark .order-5 {
  order: 5; }

.bootstrap-dark .order-6 {
  order: 6; }

.bootstrap-dark .order-7 {
  order: 7; }

.bootstrap-dark .order-8 {
  order: 8; }

.bootstrap-dark .order-9 {
  order: 9; }

.bootstrap-dark .order-10 {
  order: 10; }

.bootstrap-dark .order-11 {
  order: 11; }

.bootstrap-dark .order-12 {
  order: 12; }

.bootstrap-dark .offset-1 {
  margin-left: 8.33333%; }

.bootstrap-dark .offset-2 {
  margin-left: 16.66667%; }

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

.bootstrap-dark .offset-4 {
  margin-left: 33.33333%; }

.bootstrap-dark .offset-5 {
  margin-left: 41.66667%; }

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

.bootstrap-dark .offset-7 {
  margin-left: 58.33333%; }

.bootstrap-dark .offset-8 {
  margin-left: 66.66667%; }

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

.bootstrap-dark .offset-10 {
  margin-left: 83.33333%; }

.bootstrap-dark .offset-11 {
  margin-left: 91.66667%; }

@media (min-width: 576px) {
  .bootstrap-dark .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%; }
  .bootstrap-dark .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .bootstrap-dark .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .bootstrap-dark .row-cols-sm-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bootstrap-dark .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .bootstrap-dark .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .bootstrap-dark .row-cols-sm-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bootstrap-dark .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .bootstrap-dark .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .bootstrap-dark .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bootstrap-dark .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .bootstrap-dark .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bootstrap-dark .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .bootstrap-dark .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .bootstrap-dark .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .bootstrap-dark .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .bootstrap-dark .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .bootstrap-dark .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .bootstrap-dark .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .bootstrap-dark .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .bootstrap-dark .order-sm-first {
    order: -1; }
  .bootstrap-dark .order-sm-last {
    order: 13; }
  .bootstrap-dark .order-sm-0 {
    order: 0; }
  .bootstrap-dark .order-sm-1 {
    order: 1; }
  .bootstrap-dark .order-sm-2 {
    order: 2; }
  .bootstrap-dark .order-sm-3 {
    order: 3; }
  .bootstrap-dark .order-sm-4 {
    order: 4; }
  .bootstrap-dark .order-sm-5 {
    order: 5; }
  .bootstrap-dark .order-sm-6 {
    order: 6; }
  .bootstrap-dark .order-sm-7 {
    order: 7; }
  .bootstrap-dark .order-sm-8 {
    order: 8; }
  .bootstrap-dark .order-sm-9 {
    order: 9; }
  .bootstrap-dark .order-sm-10 {
    order: 10; }
  .bootstrap-dark .order-sm-11 {
    order: 11; }
  .bootstrap-dark .order-sm-12 {
    order: 12; }
  .bootstrap-dark .offset-sm-0 {
    margin-left: 0; }
  .bootstrap-dark .offset-sm-1 {
    margin-left: 8.33333%; }
  .bootstrap-dark .offset-sm-2 {
    margin-left: 16.66667%; }
  .bootstrap-dark .offset-sm-3 {
    margin-left: 25%; }
  .bootstrap-dark .offset-sm-4 {
    margin-left: 33.33333%; }
  .bootstrap-dark .offset-sm-5 {
    margin-left: 41.66667%; }
  .bootstrap-dark .offset-sm-6 {
    margin-left: 50%; }
  .bootstrap-dark .offset-sm-7 {
    margin-left: 58.33333%; }
  .bootstrap-dark .offset-sm-8 {
    margin-left: 66.66667%; }
  .bootstrap-dark .offset-sm-9 {
    margin-left: 75%; }
  .bootstrap-dark .offset-sm-10 {
    margin-left: 83.33333%; }
  .bootstrap-dark .offset-sm-11 {
    margin-left: 91.66667%; } }

@media (min-width: 768px) {
  .bootstrap-dark .col-md {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%; }
  .bootstrap-dark .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .bootstrap-dark .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .bootstrap-dark .row-cols-md-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bootstrap-dark .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .bootstrap-dark .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .bootstrap-dark .row-cols-md-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bootstrap-dark .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .bootstrap-dark .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .bootstrap-dark .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bootstrap-dark .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .bootstrap-dark .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bootstrap-dark .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .bootstrap-dark .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .bootstrap-dark .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .bootstrap-dark .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .bootstrap-dark .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .bootstrap-dark .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .bootstrap-dark .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .bootstrap-dark .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .bootstrap-dark .order-md-first {
    order: -1; }
  .bootstrap-dark .order-md-last {
    order: 13; }
  .bootstrap-dark .order-md-0 {
    order: 0; }
  .bootstrap-dark .order-md-1 {
    order: 1; }
  .bootstrap-dark .order-md-2 {
    order: 2; }
  .bootstrap-dark .order-md-3 {
    order: 3; }
  .bootstrap-dark .order-md-4 {
    order: 4; }
  .bootstrap-dark .order-md-5 {
    order: 5; }
  .bootstrap-dark .order-md-6 {
    order: 6; }
  .bootstrap-dark .order-md-7 {
    order: 7; }
  .bootstrap-dark .order-md-8 {
    order: 8; }
  .bootstrap-dark .order-md-9 {
    order: 9; }
  .bootstrap-dark .order-md-10 {
    order: 10; }
  .bootstrap-dark .order-md-11 {
    order: 11; }
  .bootstrap-dark .order-md-12 {
    order: 12; }
  .bootstrap-dark .offset-md-0 {
    margin-left: 0; }
  .bootstrap-dark .offset-md-1 {
    margin-left: 8.33333%; }
  .bootstrap-dark .offset-md-2 {
    margin-left: 16.66667%; }
  .bootstrap-dark .offset-md-3 {
    margin-left: 25%; }
  .bootstrap-dark .offset-md-4 {
    margin-left: 33.33333%; }
  .bootstrap-dark .offset-md-5 {
    margin-left: 41.66667%; }
  .bootstrap-dark .offset-md-6 {
    margin-left: 50%; }
  .bootstrap-dark .offset-md-7 {
    margin-left: 58.33333%; }
  .bootstrap-dark .offset-md-8 {
    margin-left: 66.66667%; }
  .bootstrap-dark .offset-md-9 {
    margin-left: 75%; }
  .bootstrap-dark .offset-md-10 {
    margin-left: 83.33333%; }
  .bootstrap-dark .offset-md-11 {
    margin-left: 91.66667%; } }

@media (min-width: 992px) {
  .bootstrap-dark .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%; }
  .bootstrap-dark .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .bootstrap-dark .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .bootstrap-dark .row-cols-lg-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bootstrap-dark .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .bootstrap-dark .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .bootstrap-dark .row-cols-lg-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bootstrap-dark .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .bootstrap-dark .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .bootstrap-dark .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bootstrap-dark .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .bootstrap-dark .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bootstrap-dark .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .bootstrap-dark .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .bootstrap-dark .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .bootstrap-dark .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .bootstrap-dark .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .bootstrap-dark .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .bootstrap-dark .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .bootstrap-dark .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .bootstrap-dark .order-lg-first {
    order: -1; }
  .bootstrap-dark .order-lg-last {
    order: 13; }
  .bootstrap-dark .order-lg-0 {
    order: 0; }
  .bootstrap-dark .order-lg-1 {
    order: 1; }
  .bootstrap-dark .order-lg-2 {
    order: 2; }
  .bootstrap-dark .order-lg-3 {
    order: 3; }
  .bootstrap-dark .order-lg-4 {
    order: 4; }
  .bootstrap-dark .order-lg-5 {
    order: 5; }
  .bootstrap-dark .order-lg-6 {
    order: 6; }
  .bootstrap-dark .order-lg-7 {
    order: 7; }
  .bootstrap-dark .order-lg-8 {
    order: 8; }
  .bootstrap-dark .order-lg-9 {
    order: 9; }
  .bootstrap-dark .order-lg-10 {
    order: 10; }
  .bootstrap-dark .order-lg-11 {
    order: 11; }
  .bootstrap-dark .order-lg-12 {
    order: 12; }
  .bootstrap-dark .offset-lg-0 {
    margin-left: 0; }
  .bootstrap-dark .offset-lg-1 {
    margin-left: 8.33333%; }
  .bootstrap-dark .offset-lg-2 {
    margin-left: 16.66667%; }
  .bootstrap-dark .offset-lg-3 {
    margin-left: 25%; }
  .bootstrap-dark .offset-lg-4 {
    margin-left: 33.33333%; }
  .bootstrap-dark .offset-lg-5 {
    margin-left: 41.66667%; }
  .bootstrap-dark .offset-lg-6 {
    margin-left: 50%; }
  .bootstrap-dark .offset-lg-7 {
    margin-left: 58.33333%; }
  .bootstrap-dark .offset-lg-8 {
    margin-left: 66.66667%; }
  .bootstrap-dark .offset-lg-9 {
    margin-left: 75%; }
  .bootstrap-dark .offset-lg-10 {
    margin-left: 83.33333%; }
  .bootstrap-dark .offset-lg-11 {
    margin-left: 91.66667%; } }

@media (min-width: 1200px) {
  .bootstrap-dark .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%; }
  .bootstrap-dark .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .bootstrap-dark .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .bootstrap-dark .row-cols-xl-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bootstrap-dark .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .bootstrap-dark .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .bootstrap-dark .row-cols-xl-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bootstrap-dark .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .bootstrap-dark .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .bootstrap-dark .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bootstrap-dark .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .bootstrap-dark .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bootstrap-dark .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .bootstrap-dark .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .bootstrap-dark .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .bootstrap-dark .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .bootstrap-dark .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .bootstrap-dark .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .bootstrap-dark .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .bootstrap-dark .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .bootstrap-dark .order-xl-first {
    order: -1; }
  .bootstrap-dark .order-xl-last {
    order: 13; }
  .bootstrap-dark .order-xl-0 {
    order: 0; }
  .bootstrap-dark .order-xl-1 {
    order: 1; }
  .bootstrap-dark .order-xl-2 {
    order: 2; }
  .bootstrap-dark .order-xl-3 {
    order: 3; }
  .bootstrap-dark .order-xl-4 {
    order: 4; }
  .bootstrap-dark .order-xl-5 {
    order: 5; }
  .bootstrap-dark .order-xl-6 {
    order: 6; }
  .bootstrap-dark .order-xl-7 {
    order: 7; }
  .bootstrap-dark .order-xl-8 {
    order: 8; }
  .bootstrap-dark .order-xl-9 {
    order: 9; }
  .bootstrap-dark .order-xl-10 {
    order: 10; }
  .bootstrap-dark .order-xl-11 {
    order: 11; }
  .bootstrap-dark .order-xl-12 {
    order: 12; }
  .bootstrap-dark .offset-xl-0 {
    margin-left: 0; }
  .bootstrap-dark .offset-xl-1 {
    margin-left: 8.33333%; }
  .bootstrap-dark .offset-xl-2 {
    margin-left: 16.66667%; }
  .bootstrap-dark .offset-xl-3 {
    margin-left: 25%; }
  .bootstrap-dark .offset-xl-4 {
    margin-left: 33.33333%; }
  .bootstrap-dark .offset-xl-5 {
    margin-left: 41.66667%; }
  .bootstrap-dark .offset-xl-6 {
    margin-left: 50%; }
  .bootstrap-dark .offset-xl-7 {
    margin-left: 58.33333%; }
  .bootstrap-dark .offset-xl-8 {
    margin-left: 66.66667%; }
  .bootstrap-dark .offset-xl-9 {
    margin-left: 75%; }
  .bootstrap-dark .offset-xl-10 {
    margin-left: 83.33333%; }
  .bootstrap-dark .offset-xl-11 {
    margin-left: 91.66667%; } }

.bootstrap-dark .table {
  width: 100%;
  margin-bottom: 1rem;
  color: #d3d3d3; }
  .bootstrap-dark .table th,
  .bootstrap-dark .table td {
    padding: 0.75rem;
    vertical-align: top;
    border-top: 1px solid #343a40; }
  .bootstrap-dark .table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #343a40; }
  .bootstrap-dark .table tbody + tbody {
    border-top: 2px solid #343a40; }

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

.bootstrap-dark .table-bordered {
  border: 1px solid #343a40; }
  .bootstrap-dark .table-bordered th,
  .bootstrap-dark .table-bordered td {
    border: 1px solid #343a40; }
  .bootstrap-dark .table-bordered thead th,
  .bootstrap-dark .table-bordered thead td {
    border-bottom-width: 2px; }

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

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

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

.bootstrap-dark .table-primary,
.bootstrap-dark .table-primary > th,
.bootstrap-dark .table-primary > td {
  background-color: #b8daff; }

.bootstrap-dark .table-primary th,
.bootstrap-dark .table-primary td,
.bootstrap-dark .table-primary thead th,
.bootstrap-dark .table-primary tbody + tbody {
  border-color: #7abaff; }

.bootstrap-dark .table-hover .table-primary:hover {
  background-color: #9fcdff; }
  .bootstrap-dark .table-hover .table-primary:hover > td,
  .bootstrap-dark .table-hover .table-primary:hover > th {
    background-color: #9fcdff; }

.bootstrap-dark .table-secondary,
.bootstrap-dark .table-secondary > th,
.bootstrap-dark .table-secondary > td {
  background-color: #d6d8db; }

.bootstrap-dark .table-secondary th,
.bootstrap-dark .table-secondary td,
.bootstrap-dark .table-secondary thead th,
.bootstrap-dark .table-secondary tbody + tbody {
  border-color: #b3b7bb; }

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

.bootstrap-dark .table-success,
.bootstrap-dark .table-success > th,
.bootstrap-dark .table-success > td {
  background-color: #c3e6cb; }

.bootstrap-dark .table-success th,
.bootstrap-dark .table-success td,
.bootstrap-dark .table-success thead th,
.bootstrap-dark .table-success tbody + tbody {
  border-color: #8fd19e; }

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

.bootstrap-dark .table-info,
.bootstrap-dark .table-info > th,
.bootstrap-dark .table-info > td {
  background-color: #bee5eb; }

.bootstrap-dark .table-info th,
.bootstrap-dark .table-info td,
.bootstrap-dark .table-info thead th,
.bootstrap-dark .table-info tbody + tbody {
  border-color: #86cfda; }

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

.bootstrap-dark .table-warning,
.bootstrap-dark .table-warning > th,
.bootstrap-dark .table-warning > td {
  background-color: #ffeeba; }

.bootstrap-dark .table-warning th,
.bootstrap-dark .table-warning td,
.bootstrap-dark .table-warning thead th,
.bootstrap-dark .table-warning tbody + tbody {
  border-color: #ffdf7e; }

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

.bootstrap-dark .table-danger,
.bootstrap-dark .table-danger > th,
.bootstrap-dark .table-danger > td {
  background-color: #f5c6cb; }

.bootstrap-dark .table-danger th,
.bootstrap-dark .table-danger td,
.bootstrap-dark .table-danger thead th,
.bootstrap-dark .table-danger tbody + tbody {
  border-color: #ed969e; }

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

.bootstrap-dark .table-light,
.bootstrap-dark .table-light > th,
.bootstrap-dark .table-light > td {
  background-color: #fdfdfe; }

.bootstrap-dark .table-light th,
.bootstrap-dark .table-light td,
.bootstrap-dark .table-light thead th,
.bootstrap-dark .table-light tbody + tbody {
  border-color: #fbfcfc; }

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

.bootstrap-dark .table-dark,
.bootstrap-dark .table-dark > th,
.bootstrap-dark .table-dark > td {
  background-color: #c6c8ca; }

.bootstrap-dark .table-dark th,
.bootstrap-dark .table-dark td,
.bootstrap-dark .table-dark thead th,
.bootstrap-dark .table-dark tbody + tbody {
  border-color: #95999c; }

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

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

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

.bootstrap-dark .table .thead-dark th {
  color: #dee2e6;
  background-color: #343a40;
  border-color: #454d55; }

.bootstrap-dark .table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #343a40; }

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

@media (max-width: 575.98px) {
  .bootstrap-dark .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .bootstrap-dark .table-responsive-sm > .table-bordered {
      border: 0; } }

@media (max-width: 767.98px) {
  .bootstrap-dark .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .bootstrap-dark .table-responsive-md > .table-bordered {
      border: 0; } }

@media (max-width: 991.98px) {
  .bootstrap-dark .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .bootstrap-dark .table-responsive-lg > .table-bordered {
      border: 0; } }

@media (max-width: 1199.98px) {
  .bootstrap-dark .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .bootstrap-dark .table-responsive-xl > .table-bordered {
      border: 0; } }

.bootstrap-dark .table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }
  .bootstrap-dark .table-responsive > .table-bordered {
    border: 0; }

.bootstrap-dark .table-primary,
.bootstrap-dark .table-primary > th,
.bootstrap-dark .table-primary > td {
  color: #212529; }

.bootstrap-dark .table-hover .table-primary:hover {
  color: #212529; }
  .bootstrap-dark .table-hover .table-primary:hover > td,
  .bootstrap-dark .table-hover .table-primary:hover > th {
    color: #212529; }

.bootstrap-dark .table-secondary,
.bootstrap-dark .table-secondary > th,
.bootstrap-dark .table-secondary > td {
  color: #212529; }

.bootstrap-dark .table-hover .table-secondary:hover {
  color: #212529; }
  .bootstrap-dark .table-hover .table-secondary:hover > td,
  .bootstrap-dark .table-hover .table-secondary:hover > th {
    color: #212529; }

.bootstrap-dark .table-success,
.bootstrap-dark .table-success > th,
.bootstrap-dark .table-success > td {
  color: #212529; }

.bootstrap-dark .table-hover .table-success:hover {
  color: #212529; }
  .bootstrap-dark .table-hover .table-success:hover > td,
  .bootstrap-dark .table-hover .table-success:hover > th {
    color: #212529; }

.bootstrap-dark .table-info,
.bootstrap-dark .table-info > th,
.bootstrap-dark .table-info > td {
  color: #212529; }

.bootstrap-dark .table-hover .table-info:hover {
  color: #212529; }
  .bootstrap-dark .table-hover .table-info:hover > td,
  .bootstrap-dark .table-hover .table-info:hover > th {
    color: #212529; }

.bootstrap-dark .table-warning,
.bootstrap-dark .table-warning > th,
.bootstrap-dark .table-warning > td {
  color: #212529; }

.bootstrap-dark .table-hover .table-warning:hover {
  color: #212529; }
  .bootstrap-dark .table-hover .table-warning:hover > td,
  .bootstrap-dark .table-hover .table-warning:hover > th {
    color: #212529; }

.bootstrap-dark .table-danger,
.bootstrap-dark .table-danger > th,
.bootstrap-dark .table-danger > td {
  color: #212529; }

.bootstrap-dark .table-hover .table-danger:hover {
  color: #212529; }
  .bootstrap-dark .table-hover .table-danger:hover > td,
  .bootstrap-dark .table-hover .table-danger:hover > th {
    color: #212529; }

.bootstrap-dark .table-light,
.bootstrap-dark .table-light > th,
.bootstrap-dark .table-light > td {
  color: #212529; }

.bootstrap-dark .table-hover .table-light:hover {
  color: #212529; }
  .bootstrap-dark .table-hover .table-light:hover > td,
  .bootstrap-dark .table-hover .table-light:hover > th {
    color: #212529; }

.bootstrap-dark .table-dark,
.bootstrap-dark .table-dark > th,
.bootstrap-dark .table-dark > td {
  color: #212529; }

.bootstrap-dark .table-hover .table-dark:hover {
  color: #212529; }
  .bootstrap-dark .table-hover .table-dark:hover > td,
  .bootstrap-dark .table-hover .table-dark:hover > th {
    color: #212529; }

.bootstrap-dark .table-active,
.bootstrap-dark .table-active > th,
.bootstrap-dark .table-active > td {
  color: #ced4da; }

.bootstrap-dark .table-hover .table-active:hover {
  color: #ced4da; }
  .bootstrap-dark .table-hover .table-active:hover > td,
  .bootstrap-dark .table-hover .table-active:hover > th {
    color: #ced4da; }

.bootstrap-dark .table-dark {
  color: #dee2e6; }

.bootstrap-dark .form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #dee2e6;
  background-color: #000;
  background-clip: padding-box;
  border: 1px solid #6c757d;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .bootstrap-dark .form-control {
      transition: none; } }
  .bootstrap-dark .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .bootstrap-dark .form-control:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #dee2e6; }
  .bootstrap-dark .form-control:focus {
    color: #dee2e6;
    background-color: #191d21;
    border-color: #b3d7ff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .bootstrap-dark .form-control::-webkit-input-placeholder {
    color: #6c757d;
    opacity: 1; }
  .bootstrap-dark .form-control::-moz-placeholder {
    color: #6c757d;
    opacity: 1; }
  .bootstrap-dark .form-control::-ms-input-placeholder {
    color: #6c757d;
    opacity: 1; }
  .bootstrap-dark .form-control::placeholder {
    color: #6c757d;
    opacity: 1; }
  .bootstrap-dark .form-control:disabled, .bootstrap-dark .form-control[readonly] {
    background-color: #343a40;
    opacity: 1; }

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

.bootstrap-dark select.form-control:focus::-ms-value {
  color: #dee2e6;
  background-color: #000; }

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

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

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

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

.bootstrap-dark .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; }
  .bootstrap-dark .form-control-plaintext.form-control-sm, .bootstrap-dark .form-control-plaintext.form-control-lg {
    padding-right: 0;
    padding-left: 0; }

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

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

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

.bootstrap-dark textarea.form-control {
  height: auto; }

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

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

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

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

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

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

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

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

.bootstrap-dark .valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #ced4da;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem; }

.bootstrap-dark .is-valid ~ .valid-feedback,
.bootstrap-dark .is-valid ~ .valid-tooltip {
  display: block; }

.bootstrap-dark .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem);
  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); }
  .bootstrap-dark .form-control.is-valid:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.bootstrap-dark 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); }

.bootstrap-dark .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem);
  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") no-repeat right 0.75rem center/8px 10px, 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") #000 no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .bootstrap-dark .custom-select.is-valid:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.bootstrap-dark .form-check-input.is-valid ~ .form-check-label {
  color: #28a745; }

.bootstrap-dark .form-check-input.is-valid ~ .valid-feedback,
.bootstrap-dark .form-check-input.is-valid ~ .valid-tooltip {
  display: block; }

.bootstrap-dark .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745; }
  .bootstrap-dark .custom-control-input.is-valid ~ .custom-control-label::before {
    border-color: #28a745; }

.bootstrap-dark .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57; }

.bootstrap-dark .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.bootstrap-dark .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745; }

.bootstrap-dark .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745; }

.bootstrap-dark .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); }

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

.bootstrap-dark .invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #ced4da;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem; }

.bootstrap-dark .is-invalid ~ .invalid-feedback,
.bootstrap-dark .is-invalid ~ .invalid-tooltip {
  display: block; }

.bootstrap-dark .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' 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='%23dc3545' 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); }
  .bootstrap-dark .form-control.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.bootstrap-dark 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); }

.bootstrap-dark .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc(0.75em + 2.3125rem);
  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") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' 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='%23dc3545' stroke='none'/%3e%3c/svg%3e") #000 no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .bootstrap-dark .custom-select.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.bootstrap-dark .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545; }

.bootstrap-dark .form-check-input.is-invalid ~ .invalid-feedback,
.bootstrap-dark .form-check-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.bootstrap-dark .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545; }
  .bootstrap-dark .custom-control-input.is-invalid ~ .custom-control-label::before {
    border-color: #dc3545; }

.bootstrap-dark .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d; }

.bootstrap-dark .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.bootstrap-dark .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545; }

.bootstrap-dark .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545; }

.bootstrap-dark .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

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

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

.bootstrap-dark .was-validated .valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #ced4da;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem; }

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

.bootstrap-dark .was-validated .form-control:valid, .bootstrap-dark .was-validated .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem);
  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); }
  .bootstrap-dark .was-validated .form-control:valid:focus, .bootstrap-dark .was-validated .form-control.is-valid:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.bootstrap-dark .was-validated textarea.form-control:valid, .bootstrap-dark .was-validated 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); }

.bootstrap-dark .was-validated .custom-select:valid, .bootstrap-dark .was-validated .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem);
  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") no-repeat right 0.75rem center/8px 10px, 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") #000 no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .bootstrap-dark .was-validated .custom-select:valid:focus, .bootstrap-dark .was-validated .custom-select.is-valid:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.bootstrap-dark .was-validated .form-check-input:valid ~ .form-check-label, .bootstrap-dark .was-validated .form-check-input.is-valid ~ .form-check-label {
  color: #28a745; }

.bootstrap-dark .was-validated .form-check-input:valid ~ .valid-feedback,
.bootstrap-dark .was-validated .form-check-input:valid ~ .valid-tooltip, .bootstrap-dark .was-validated .form-check-input.is-valid ~ .valid-feedback,
.bootstrap-dark .was-validated .form-check-input.is-valid ~ .valid-tooltip {
  display: block; }

.bootstrap-dark .was-validated .custom-control-input:valid ~ .custom-control-label, .bootstrap-dark .was-validated .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745; }
  .bootstrap-dark .was-validated .custom-control-input:valid ~ .custom-control-label::before, .bootstrap-dark .was-validated .custom-control-input.is-valid ~ .custom-control-label::before {
    border-color: #28a745; }

.bootstrap-dark .was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .bootstrap-dark .was-validated .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57; }

.bootstrap-dark .was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .bootstrap-dark .was-validated .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.bootstrap-dark .was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .bootstrap-dark .was-validated .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745; }

.bootstrap-dark .was-validated .custom-file-input:valid ~ .custom-file-label, .bootstrap-dark .was-validated .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745; }

.bootstrap-dark .was-validated .custom-file-input:valid:focus ~ .custom-file-label, .bootstrap-dark .was-validated .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); }

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

.bootstrap-dark .was-validated .invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545; }

.bootstrap-dark .was-validated .invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #ced4da;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem; }

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

.bootstrap-dark .was-validated .form-control:invalid, .bootstrap-dark .was-validated .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' 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='%23dc3545' 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); }
  .bootstrap-dark .was-validated .form-control:invalid:focus, .bootstrap-dark .was-validated .form-control.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.bootstrap-dark .was-validated textarea.form-control:invalid, .bootstrap-dark .was-validated 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); }

.bootstrap-dark .was-validated .custom-select:invalid, .bootstrap-dark .was-validated .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc(0.75em + 2.3125rem);
  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") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' 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='%23dc3545' stroke='none'/%3e%3c/svg%3e") #000 no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .bootstrap-dark .was-validated .custom-select:invalid:focus, .bootstrap-dark .was-validated .custom-select.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.bootstrap-dark .was-validated .form-check-input:invalid ~ .form-check-label, .bootstrap-dark .was-validated .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545; }

.bootstrap-dark .was-validated .form-check-input:invalid ~ .invalid-feedback,
.bootstrap-dark .was-validated .form-check-input:invalid ~ .invalid-tooltip, .bootstrap-dark .was-validated .form-check-input.is-invalid ~ .invalid-feedback,
.bootstrap-dark .was-validated .form-check-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.bootstrap-dark .was-validated .custom-control-input:invalid ~ .custom-control-label, .bootstrap-dark .was-validated .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545; }
  .bootstrap-dark .was-validated .custom-control-input:invalid ~ .custom-control-label::before, .bootstrap-dark .was-validated .custom-control-input.is-invalid ~ .custom-control-label::before {
    border-color: #dc3545; }

.bootstrap-dark .was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .bootstrap-dark .was-validated .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d; }

.bootstrap-dark .was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .bootstrap-dark .was-validated .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.bootstrap-dark .was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .bootstrap-dark .was-validated .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545; }

.bootstrap-dark .was-validated .custom-file-input:invalid ~ .custom-file-label, .bootstrap-dark .was-validated .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545; }

.bootstrap-dark .was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .bootstrap-dark .was-validated .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

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

.bootstrap-dark .btn {
  display: inline-block;
  font-weight: 400;
  color: #d3d3d3;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          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) {
    .bootstrap-dark .btn {
      transition: none; } }
  .bootstrap-dark .btn:hover {
    color: #d3d3d3;
    text-decoration: none; }
  .bootstrap-dark .btn:focus, .bootstrap-dark .btn.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .bootstrap-dark .btn.disabled, .bootstrap-dark .btn:disabled {
    opacity: 0.65; }
  .bootstrap-dark .btn:not(:disabled):not(.disabled) {
    cursor: pointer; }

.bootstrap-dark a.btn.disabled,
.bootstrap-dark fieldset:disabled a.btn {
  pointer-events: none; }

.bootstrap-dark .btn-primary {
  color: #ced4da;
  background-color: #007bff;
  border-color: #007bff; }
  .bootstrap-dark .btn-primary:hover {
    color: #ced4da;
    background-color: #0069d9;
    border-color: #0062cc; }
  .bootstrap-dark .btn-primary:focus, .bootstrap-dark .btn-primary.focus {
    color: #ced4da;
    background-color: #0069d9;
    border-color: #0062cc;
    box-shadow: 0 0 0 0.2rem rgba(31, 136, 249, 0.5); }
  .bootstrap-dark .btn-primary.disabled, .bootstrap-dark .btn-primary:disabled {
    color: #ced4da;
    background-color: #007bff;
    border-color: #007bff; }
  .bootstrap-dark .btn-primary:not(:disabled):not(.disabled):active, .bootstrap-dark .btn-primary:not(:disabled):not(.disabled).active,
  .show > .bootstrap-dark .btn-primary.dropdown-toggle {
    color: #ced4da;
    background-color: #0062cc;
    border-color: #005cbf; }
    .bootstrap-dark .btn-primary:not(:disabled):not(.disabled):active:focus, .bootstrap-dark .btn-primary:not(:disabled):not(.disabled).active:focus,
    .show > .bootstrap-dark .btn-primary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(31, 136, 249, 0.5); }

.bootstrap-dark .btn-secondary {
  color: #ced4da;
  background-color: #6c757d;
  border-color: #6c757d; }
  .bootstrap-dark .btn-secondary:hover {
    color: #ced4da;
    background-color: #5a6268;
    border-color: #545b62; }
  .bootstrap-dark .btn-secondary:focus, .bootstrap-dark .btn-secondary.focus {
    color: #ced4da;
    background-color: #5a6268;
    border-color: #545b62;
    box-shadow: 0 0 0 0.2rem rgba(123, 131, 139, 0.5); }
  .bootstrap-dark .btn-secondary.disabled, .bootstrap-dark .btn-secondary:disabled {
    color: #ced4da;
    background-color: #6c757d;
    border-color: #6c757d; }
  .bootstrap-dark .btn-secondary:not(:disabled):not(.disabled):active, .bootstrap-dark .btn-secondary:not(:disabled):not(.disabled).active,
  .show > .bootstrap-dark .btn-secondary.dropdown-toggle {
    color: #ced4da;
    background-color: #545b62;
    border-color: #4e555b; }
    .bootstrap-dark .btn-secondary:not(:disabled):not(.disabled):active:focus, .bootstrap-dark .btn-secondary:not(:disabled):not(.disabled).active:focus,
    .show > .bootstrap-dark .btn-secondary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(123, 131, 139, 0.5); }

.bootstrap-dark .btn-success {
  color: #ced4da;
  background-color: #28a745;
  border-color: #28a745; }
  .bootstrap-dark .btn-success:hover {
    color: #ced4da;
    background-color: #218838;
    border-color: #1e7e34; }
  .bootstrap-dark .btn-success:focus, .bootstrap-dark .btn-success.focus {
    color: #ced4da;
    background-color: #218838;
    border-color: #1e7e34;
    box-shadow: 0 0 0 0.2rem rgba(65, 174, 91, 0.5); }
  .bootstrap-dark .btn-success.disabled, .bootstrap-dark .btn-success:disabled {
    color: #ced4da;
    background-color: #28a745;
    border-color: #28a745; }
  .bootstrap-dark .btn-success:not(:disabled):not(.disabled):active, .bootstrap-dark .btn-success:not(:disabled):not(.disabled).active,
  .show > .bootstrap-dark .btn-success.dropdown-toggle {
    color: #ced4da;
    background-color: #1e7e34;
    border-color: #1c7430; }
    .bootstrap-dark .btn-success:not(:disabled):not(.disabled):active:focus, .bootstrap-dark .btn-success:not(:disabled):not(.disabled).active:focus,
    .show > .bootstrap-dark .btn-success.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(65, 174, 91, 0.5); }

.bootstrap-dark .btn-info {
  color: #ced4da;
  background-color: #17a2b8;
  border-color: #17a2b8; }
  .bootstrap-dark .btn-info:hover {
    color: #ced4da;
    background-color: #138496;
    border-color: #117a8b; }
  .bootstrap-dark .btn-info:focus, .bootstrap-dark .btn-info.focus {
    color: #ced4da;
    background-color: #138496;
    border-color: #117a8b;
    box-shadow: 0 0 0 0.2rem rgba(50, 170, 189, 0.5); }
  .bootstrap-dark .btn-info.disabled, .bootstrap-dark .btn-info:disabled {
    color: #ced4da;
    background-color: #17a2b8;
    border-color: #17a2b8; }
  .bootstrap-dark .btn-info:not(:disabled):not(.disabled):active, .bootstrap-dark .btn-info:not(:disabled):not(.disabled).active,
  .show > .bootstrap-dark .btn-info.dropdown-toggle {
    color: #ced4da;
    background-color: #117a8b;
    border-color: #10707f; }
    .bootstrap-dark .btn-info:not(:disabled):not(.disabled):active:focus, .bootstrap-dark .btn-info:not(:disabled):not(.disabled).active:focus,
    .show > .bootstrap-dark .btn-info.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(50, 170, 189, 0.5); }

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

.bootstrap-dark .btn-danger {
  color: #ced4da;
  background-color: #dc3545;
  border-color: #dc3545; }
  .bootstrap-dark .btn-danger:hover {
    color: #ced4da;
    background-color: #c82333;
    border-color: #bd2130; }
  .bootstrap-dark .btn-danger:focus, .bootstrap-dark .btn-danger.focus {
    color: #ced4da;
    background-color: #c82333;
    border-color: #bd2130;
    box-shadow: 0 0 0 0.2rem rgba(218, 77, 91, 0.5); }
  .bootstrap-dark .btn-danger.disabled, .bootstrap-dark .btn-danger:disabled {
    color: #ced4da;
    background-color: #dc3545;
    border-color: #dc3545; }
  .bootstrap-dark .btn-danger:not(:disabled):not(.disabled):active, .bootstrap-dark .btn-danger:not(:disabled):not(.disabled).active,
  .show > .bootstrap-dark .btn-danger.dropdown-toggle {
    color: #ced4da;
    background-color: #bd2130;
    border-color: #b21f2d; }
    .bootstrap-dark .btn-danger:not(:disabled):not(.disabled):active:focus, .bootstrap-dark .btn-danger:not(:disabled):not(.disabled).active:focus,
    .show > .bootstrap-dark .btn-danger.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(218, 77, 91, 0.5); }

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

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

.bootstrap-dark .btn-outline-primary {
  color: #007bff;
  border-color: #007bff; }
  .bootstrap-dark .btn-outline-primary:hover {
    color: #ced4da;
    background-color: #007bff;
    border-color: #007bff; }
  .bootstrap-dark .btn-outline-primary:focus, .bootstrap-dark .btn-outline-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }
  .bootstrap-dark .btn-outline-primary.disabled, .bootstrap-dark .btn-outline-primary:disabled {
    color: #007bff;
    background-color: transparent; }
  .bootstrap-dark .btn-outline-primary:not(:disabled):not(.disabled):active, .bootstrap-dark .btn-outline-primary:not(:disabled):not(.disabled).active,
  .show > .bootstrap-dark .btn-outline-primary.dropdown-toggle {
    color: #ced4da;
    background-color: #007bff;
    border-color: #007bff; }
    .bootstrap-dark .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .bootstrap-dark .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
    .show > .bootstrap-dark .btn-outline-primary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.bootstrap-dark .btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d; }
  .bootstrap-dark .btn-outline-secondary:hover {
    color: #ced4da;
    background-color: #6c757d;
    border-color: #6c757d; }
  .bootstrap-dark .btn-outline-secondary:focus, .bootstrap-dark .btn-outline-secondary.focus {
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }
  .bootstrap-dark .btn-outline-secondary.disabled, .bootstrap-dark .btn-outline-secondary:disabled {
    color: #6c757d;
    background-color: transparent; }
  .bootstrap-dark .btn-outline-secondary:not(:disabled):not(.disabled):active, .bootstrap-dark .btn-outline-secondary:not(:disabled):not(.disabled).active,
  .show > .bootstrap-dark .btn-outline-secondary.dropdown-toggle {
    color: #ced4da;
    background-color: #6c757d;
    border-color: #6c757d; }
    .bootstrap-dark .btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .bootstrap-dark .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
    .show > .bootstrap-dark .btn-outline-secondary.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

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

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

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

.bootstrap-dark .btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545; }
  .bootstrap-dark .btn-outline-danger:hover {
    color: #ced4da;
    background-color: #dc3545;
    border-color: #dc3545; }
  .bootstrap-dark .btn-outline-danger:focus, .bootstrap-dark .btn-outline-danger.focus {
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }
  .bootstrap-dark .btn-outline-danger.disabled, .bootstrap-dark .btn-outline-danger:disabled {
    color: #dc3545;
    background-color: transparent; }
  .bootstrap-dark .btn-outline-danger:not(:disabled):not(.disabled):active, .bootstrap-dark .btn-outline-danger:not(:disabled):not(.disabled).active,
  .show > .bootstrap-dark .btn-outline-danger.dropdown-toggle {
    color: #ced4da;
    background-color: #dc3545;
    border-color: #dc3545; }
    .bootstrap-dark .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .bootstrap-dark .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
    .show > .bootstrap-dark .btn-outline-danger.dropdown-toggle:focus {
      box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

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

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

.bootstrap-dark .btn-link {
  font-weight: 400;
  color: #adadad;
  text-decoration: none; }
  .bootstrap-dark .btn-link:hover {
    color: #878787;
    text-decoration: underline; }
  .bootstrap-dark .btn-link:focus, .bootstrap-dark .btn-link.focus {
    text-decoration: underline; }
  .bootstrap-dark .btn-link:disabled, .bootstrap-dark .btn-link.disabled {
    color: #6c757d;
    pointer-events: none; }

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

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

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

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

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

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

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

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

.bootstrap-dark .dropdown-toggle {
  white-space: nowrap; }
  .bootstrap-dark .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; }
  .bootstrap-dark .dropdown-toggle:empty::after {
    margin-left: 0; }

.bootstrap-dark .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: #d3d3d3;
  text-align: left;
  list-style: none;
  background-color: #000;
  background-clip: padding-box;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 0.25rem; }

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

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

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

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

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

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

.bootstrap-dark .dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem; }

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

.bootstrap-dark .dropup .dropdown-toggle:empty::after {
  margin-left: 0; }

.bootstrap-dark .dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem; }

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

.bootstrap-dark .dropright .dropdown-toggle:empty::after {
  margin-left: 0; }

.bootstrap-dark .dropright .dropdown-toggle::after {
  vertical-align: 0; }

.bootstrap-dark .dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem; }

.bootstrap-dark .dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: ""; }

.bootstrap-dark .dropleft .dropdown-toggle::after {
  display: none; }

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

.bootstrap-dark .dropleft .dropdown-toggle:empty::after {
  margin-left: 0; }

.bootstrap-dark .dropleft .dropdown-toggle::before {
  vertical-align: 0; }

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

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

.bootstrap-dark .dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #f8f9fa;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0; }
  .bootstrap-dark .dropdown-item:hover, .bootstrap-dark .dropdown-item:focus {
    color: white;
    text-decoration: none;
    background-color: #212529; }
  .bootstrap-dark .dropdown-item.active, .bootstrap-dark .dropdown-item:active {
    color: #000;
    text-decoration: none;
    background-color: #3395ff; }
  .bootstrap-dark .dropdown-item.disabled, .bootstrap-dark .dropdown-item:disabled {
    color: #ced4da;
    pointer-events: none;
    background-color: transparent; }

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

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

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

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

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

.bootstrap-dark .btn-group > .btn:not(:first-child),
.bootstrap-dark .btn-group > .btn-group:not(:first-child) {
  margin-left: -1px; }

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

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

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

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

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

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

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

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

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

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

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

.bootstrap-dark .input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #dee2e6;
  text-align: center;
  white-space: nowrap;
  background-color: #343a40;
  border: 1px solid #6c757d;
  border-radius: 0.25rem; }
  .bootstrap-dark .input-group-text input[type="radio"],
  .bootstrap-dark .input-group-text input[type="checkbox"] {
    margin-top: 0; }

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

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

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

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

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

.bootstrap-dark .input-group > .input-group-prepend > .btn,
.bootstrap-dark .input-group > .input-group-prepend > .input-group-text,
.bootstrap-dark .input-group > .input-group-append:not(:last-child) > .btn,
.bootstrap-dark .input-group > .input-group-append:not(:last-child) > .input-group-text,
.bootstrap-dark .input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.bootstrap-dark .input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

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

.bootstrap-dark .input-group > .input-group-append > .custom-select {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.bootstrap-dark .input-group > .input-group-prepend > .custom-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.bootstrap-dark .custom-control {
  position: relative;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem; }

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

.bootstrap-dark .custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0; }
  .bootstrap-dark .custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #007bff;
    background-color: #007bff; }
  .bootstrap-dark .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .bootstrap-dark .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #80bdff; }
  .bootstrap-dark .custom-control-input:not(:disabled):active ~ .custom-control-label::before {
    color: #fff;
    background-color: #b3d7ff;
    border-color: #b3d7ff; }
  .bootstrap-dark .custom-control-input[disabled] ~ .custom-control-label, .bootstrap-dark .custom-control-input:disabled ~ .custom-control-label {
    color: #6c757d; }
    .bootstrap-dark .custom-control-input[disabled] ~ .custom-control-label::before, .bootstrap-dark .custom-control-input:disabled ~ .custom-control-label::before {
      background-color: #e9ecef; }

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

.bootstrap-dark .custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem; }

.bootstrap-dark .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='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e"); }

.bootstrap-dark .custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff; }

.bootstrap-dark .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='%23fff' d='M0 2h4'/%3e%3c/svg%3e"); }

.bootstrap-dark .custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.bootstrap-dark .custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.bootstrap-dark .custom-radio .custom-control-label::before {
  border-radius: 50%; }

.bootstrap-dark .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='%23fff'/%3e%3c/svg%3e"); }

.bootstrap-dark .custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.bootstrap-dark .custom-switch {
  padding-left: 2.25rem; }
  .bootstrap-dark .custom-switch .custom-control-label::before {
    left: -2.25rem;
    width: 1.75rem;
    pointer-events: all;
    border-radius: 0.5rem; }
  .bootstrap-dark .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) {
      .bootstrap-dark .custom-switch .custom-control-label::after {
        transition: none; } }
  .bootstrap-dark .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
    background-color: #fff;
    transform: translateX(0.75rem); }
  .bootstrap-dark .custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(0, 123, 255, 0.5); }

.bootstrap-dark .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: 400;
  line-height: 1.5;
  color: #dee2e6;
  vertical-align: middle;
  background: #000 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") no-repeat right 0.75rem center/8px 10px;
  border: 1px solid #6c757d;
  border-radius: 0.25rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .bootstrap-dark .custom-select:focus {
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .bootstrap-dark .custom-select:focus::-ms-value {
      color: #dee2e6;
      background-color: #000; }
  .bootstrap-dark .custom-select[multiple], .bootstrap-dark .custom-select[size]:not([size="1"]) {
    height: auto;
    padding-right: 0.75rem;
    background-image: none; }
  .bootstrap-dark .custom-select:disabled {
    color: #ced4da;
    background-color: #343a40; }
  .bootstrap-dark .custom-select::-ms-expand {
    display: none; }
  .bootstrap-dark .custom-select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #dee2e6; }

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

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

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

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

.bootstrap-dark .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;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem; }
  .bootstrap-dark .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; }

.bootstrap-dark .custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .bootstrap-dark .custom-range:focus {
    outline: none; }
    .bootstrap-dark .custom-range:focus::-webkit-slider-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .bootstrap-dark .custom-range:focus::-moz-range-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
    .bootstrap-dark .custom-range:focus::-ms-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .bootstrap-dark .custom-range::-moz-focus-outer {
    border: 0; }
  .bootstrap-dark .custom-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    -webkit-appearance: none;
            appearance: none; }
    @media (prefers-reduced-motion: reduce) {
      .bootstrap-dark .custom-range::-webkit-slider-thumb {
        -webkit-transition: none;
        transition: none; } }
    .bootstrap-dark .custom-range::-webkit-slider-thumb:active {
      background-color: #b3d7ff; }
  .bootstrap-dark .custom-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem; }
  .bootstrap-dark .custom-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    -moz-appearance: none;
         appearance: none; }
    @media (prefers-reduced-motion: reduce) {
      .bootstrap-dark .custom-range::-moz-range-thumb {
        -moz-transition: none;
        transition: none; } }
    .bootstrap-dark .custom-range::-moz-range-thumb:active {
      background-color: #b3d7ff; }
  .bootstrap-dark .custom-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem; }
  .bootstrap-dark .custom-range::-ms-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: 0;
    margin-right: 0.2rem;
    margin-left: 0.2rem;
    background-color: #007bff;
    border: 0;
    border-radius: 1rem;
    -ms-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    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) {
      .bootstrap-dark .custom-range::-ms-thumb {
        -ms-transition: none;
        transition: none; } }
    .bootstrap-dark .custom-range::-ms-thumb:active {
      background-color: #b3d7ff; }
  .bootstrap-dark .custom-range::-ms-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    border-width: 0.5rem; }
  .bootstrap-dark .custom-range::-ms-fill-lower {
    background-color: #dee2e6;
    border-radius: 1rem; }
  .bootstrap-dark .custom-range::-ms-fill-upper {
    margin-right: 15px;
    background-color: #dee2e6;
    border-radius: 1rem; }
  .bootstrap-dark .custom-range:disabled::-webkit-slider-thumb {
    background-color: #adb5bd; }
  .bootstrap-dark .custom-range:disabled::-webkit-slider-runnable-track {
    cursor: default; }
  .bootstrap-dark .custom-range:disabled::-moz-range-thumb {
    background-color: #adb5bd; }
  .bootstrap-dark .custom-range:disabled::-moz-range-track {
    cursor: default; }
  .bootstrap-dark .custom-range:disabled::-ms-thumb {
    background-color: #adb5bd; }

.bootstrap-dark .custom-control-label::before,
.bootstrap-dark .custom-file-label,
.bootstrap-dark .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) {
    .bootstrap-dark .custom-control-label::before,
    .bootstrap-dark .custom-file-label,
    .bootstrap-dark .custom-select {
      transition: none; } }

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

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

.bootstrap-dark .nav-tabs {
  border-bottom: 1px solid rgba(255, 255, 255, 0.125); }
  .bootstrap-dark .nav-tabs .nav-item {
    margin-bottom: -1px; }
  .bootstrap-dark .nav-tabs .nav-link {
    border: 1px solid transparent;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
    .bootstrap-dark .nav-tabs .nav-link:hover, .bootstrap-dark .nav-tabs .nav-link:focus {
      border-color: #495057 #495057 rgba(255, 255, 255, 0.125); }
    .bootstrap-dark .nav-tabs .nav-link.disabled {
      color: #6c757d;
      background-color: transparent;
      border-color: transparent; }
  .bootstrap-dark .nav-tabs .nav-link.active,
  .bootstrap-dark .nav-tabs .nav-item.show .nav-link {
    color: #f8f9fa;
    background-color: #191d21;
    border-color: #495057 #495057 #191d21; }
  .bootstrap-dark .nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

.bootstrap-dark .nav-pills .nav-link {
  border-radius: 0.25rem; }

.bootstrap-dark .nav-pills .nav-link.active,
.bootstrap-dark .nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff; }

.bootstrap-dark .nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center; }

.bootstrap-dark .nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center; }

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

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

.bootstrap-dark .navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem; }
  .bootstrap-dark .navbar .container,
  .bootstrap-dark .navbar .container-fluid, .bootstrap-dark .navbar .container-sm, .bootstrap-dark .navbar .container-md, .bootstrap-dark .navbar .container-lg, .bootstrap-dark .navbar .container-xl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between; }

.bootstrap-dark .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; }
  .bootstrap-dark .navbar-brand:hover, .bootstrap-dark .navbar-brand:focus {
    text-decoration: none; }

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

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

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

.bootstrap-dark .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; }
  .bootstrap-dark .navbar-toggler:hover, .bootstrap-dark .navbar-toggler:focus {
    text-decoration: none; }

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

@media (max-width: 575.98px) {
  .bootstrap-dark .navbar-expand-sm > .container,
  .bootstrap-dark .navbar-expand-sm > .container-fluid, .bootstrap-dark .navbar-expand-sm > .container-sm, .bootstrap-dark .navbar-expand-sm > .container-md, .bootstrap-dark .navbar-expand-sm > .container-lg, .bootstrap-dark .navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 576px) {
  .bootstrap-dark .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .bootstrap-dark .navbar-expand-sm .navbar-nav {
      flex-direction: row; }
      .bootstrap-dark .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute; }
      .bootstrap-dark .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .bootstrap-dark .navbar-expand-sm > .container,
    .bootstrap-dark .navbar-expand-sm > .container-fluid, .bootstrap-dark .navbar-expand-sm > .container-sm, .bootstrap-dark .navbar-expand-sm > .container-md, .bootstrap-dark .navbar-expand-sm > .container-lg, .bootstrap-dark .navbar-expand-sm > .container-xl {
      flex-wrap: nowrap; }
    .bootstrap-dark .navbar-expand-sm .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .bootstrap-dark .navbar-expand-sm .navbar-toggler {
      display: none; } }

@media (max-width: 767.98px) {
  .bootstrap-dark .navbar-expand-md > .container,
  .bootstrap-dark .navbar-expand-md > .container-fluid, .bootstrap-dark .navbar-expand-md > .container-sm, .bootstrap-dark .navbar-expand-md > .container-md, .bootstrap-dark .navbar-expand-md > .container-lg, .bootstrap-dark .navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 768px) {
  .bootstrap-dark .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .bootstrap-dark .navbar-expand-md .navbar-nav {
      flex-direction: row; }
      .bootstrap-dark .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute; }
      .bootstrap-dark .navbar-expand-md .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .bootstrap-dark .navbar-expand-md > .container,
    .bootstrap-dark .navbar-expand-md > .container-fluid, .bootstrap-dark .navbar-expand-md > .container-sm, .bootstrap-dark .navbar-expand-md > .container-md, .bootstrap-dark .navbar-expand-md > .container-lg, .bootstrap-dark .navbar-expand-md > .container-xl {
      flex-wrap: nowrap; }
    .bootstrap-dark .navbar-expand-md .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .bootstrap-dark .navbar-expand-md .navbar-toggler {
      display: none; } }

@media (max-width: 991.98px) {
  .bootstrap-dark .navbar-expand-lg > .container,
  .bootstrap-dark .navbar-expand-lg > .container-fluid, .bootstrap-dark .navbar-expand-lg > .container-sm, .bootstrap-dark .navbar-expand-lg > .container-md, .bootstrap-dark .navbar-expand-lg > .container-lg, .bootstrap-dark .navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 992px) {
  .bootstrap-dark .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .bootstrap-dark .navbar-expand-lg .navbar-nav {
      flex-direction: row; }
      .bootstrap-dark .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute; }
      .bootstrap-dark .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .bootstrap-dark .navbar-expand-lg > .container,
    .bootstrap-dark .navbar-expand-lg > .container-fluid, .bootstrap-dark .navbar-expand-lg > .container-sm, .bootstrap-dark .navbar-expand-lg > .container-md, .bootstrap-dark .navbar-expand-lg > .container-lg, .bootstrap-dark .navbar-expand-lg > .container-xl {
      flex-wrap: nowrap; }
    .bootstrap-dark .navbar-expand-lg .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .bootstrap-dark .navbar-expand-lg .navbar-toggler {
      display: none; } }

@media (max-width: 1199.98px) {
  .bootstrap-dark .navbar-expand-xl > .container,
  .bootstrap-dark .navbar-expand-xl > .container-fluid, .bootstrap-dark .navbar-expand-xl > .container-sm, .bootstrap-dark .navbar-expand-xl > .container-md, .bootstrap-dark .navbar-expand-xl > .container-lg, .bootstrap-dark .navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 1200px) {
  .bootstrap-dark .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .bootstrap-dark .navbar-expand-xl .navbar-nav {
      flex-direction: row; }
      .bootstrap-dark .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute; }
      .bootstrap-dark .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .bootstrap-dark .navbar-expand-xl > .container,
    .bootstrap-dark .navbar-expand-xl > .container-fluid, .bootstrap-dark .navbar-expand-xl > .container-sm, .bootstrap-dark .navbar-expand-xl > .container-md, .bootstrap-dark .navbar-expand-xl > .container-lg, .bootstrap-dark .navbar-expand-xl > .container-xl {
      flex-wrap: nowrap; }
    .bootstrap-dark .navbar-expand-xl .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .bootstrap-dark .navbar-expand-xl .navbar-toggler {
      display: none; } }

.bootstrap-dark .navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start; }
  .bootstrap-dark .navbar-expand > .container,
  .bootstrap-dark .navbar-expand > .container-fluid, .bootstrap-dark .navbar-expand > .container-sm, .bootstrap-dark .navbar-expand > .container-md, .bootstrap-dark .navbar-expand > .container-lg, .bootstrap-dark .navbar-expand > .container-xl {
    padding-right: 0;
    padding-left: 0; }
  .bootstrap-dark .navbar-expand .navbar-nav {
    flex-direction: row; }
    .bootstrap-dark .navbar-expand .navbar-nav .dropdown-menu {
      position: absolute; }
    .bootstrap-dark .navbar-expand .navbar-nav .nav-link {
      padding-right: 0.5rem;
      padding-left: 0.5rem; }
  .bootstrap-dark .navbar-expand > .container,
  .bootstrap-dark .navbar-expand > .container-fluid, .bootstrap-dark .navbar-expand > .container-sm, .bootstrap-dark .navbar-expand > .container-md, .bootstrap-dark .navbar-expand > .container-lg, .bootstrap-dark .navbar-expand > .container-xl {
    flex-wrap: nowrap; }
  .bootstrap-dark .navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto; }
  .bootstrap-dark .navbar-expand .navbar-toggler {
    display: none; }

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

.bootstrap-dark .navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5); }
  .bootstrap-dark .navbar-light .navbar-nav .nav-link:hover, .bootstrap-dark .navbar-light .navbar-nav .nav-link:focus {
    color: rgba(0, 0, 0, 0.7); }
  .bootstrap-dark .navbar-light .navbar-nav .nav-link.disabled {
    color: rgba(0, 0, 0, 0.3); }

.bootstrap-dark .navbar-light .navbar-nav .show > .nav-link,
.bootstrap-dark .navbar-light .navbar-nav .active > .nav-link,
.bootstrap-dark .navbar-light .navbar-nav .nav-link.show,
.bootstrap-dark .navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9); }

.bootstrap-dark .navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1); }

.bootstrap-dark .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"); }

.bootstrap-dark .navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5); }
  .bootstrap-dark .navbar-light .navbar-text a {
    color: rgba(0, 0, 0, 0.9); }
    .bootstrap-dark .navbar-light .navbar-text a:hover, .bootstrap-dark .navbar-light .navbar-text a:focus {
      color: rgba(0, 0, 0, 0.9); }

.bootstrap-dark .navbar-dark .navbar-brand, .bootstrap-dark .navbar-themed .navbar-brand {
  color: #fff; }
  .bootstrap-dark .navbar-dark .navbar-brand:hover, .bootstrap-dark .navbar-themed .navbar-brand:hover, .bootstrap-dark .navbar-dark .navbar-brand:focus, .bootstrap-dark .navbar-themed .navbar-brand:focus {
    color: #fff; }

.bootstrap-dark .navbar-dark .navbar-nav .nav-link, .bootstrap-dark .navbar-themed .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5); }
  .bootstrap-dark .navbar-dark .navbar-nav .nav-link:hover, .bootstrap-dark .navbar-themed .navbar-nav .nav-link:hover, .bootstrap-dark .navbar-dark .navbar-nav .nav-link:focus, .bootstrap-dark .navbar-themed .navbar-nav .nav-link:focus {
    color: rgba(255, 255, 255, 0.75); }
  .bootstrap-dark .navbar-dark .navbar-nav .nav-link.disabled, .bootstrap-dark .navbar-themed .navbar-nav .nav-link.disabled {
    color: rgba(255, 255, 255, 0.25); }

.bootstrap-dark .navbar-dark .navbar-nav .show > .nav-link, .bootstrap-dark .navbar-themed .navbar-nav .show > .nav-link,
.bootstrap-dark .navbar-dark .navbar-nav .active > .nav-link,
.bootstrap-dark .navbar-themed .navbar-nav .active > .nav-link,
.bootstrap-dark .navbar-dark .navbar-nav .nav-link.show,
.bootstrap-dark .navbar-themed .navbar-nav .nav-link.show,
.bootstrap-dark .navbar-dark .navbar-nav .nav-link.active,
.bootstrap-dark .navbar-themed .navbar-nav .nav-link.active {
  color: #fff; }

.bootstrap-dark .navbar-dark .navbar-toggler, .bootstrap-dark .navbar-themed .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1); }

.bootstrap-dark .navbar-dark .navbar-toggler-icon, .bootstrap-dark .navbar-themed .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%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }

.bootstrap-dark .navbar-dark .navbar-text, .bootstrap-dark .navbar-themed .navbar-text {
  color: rgba(255, 255, 255, 0.5); }
  .bootstrap-dark .navbar-dark .navbar-text a, .bootstrap-dark .navbar-themed .navbar-text a {
    color: #fff; }
    .bootstrap-dark .navbar-dark .navbar-text a:hover, .bootstrap-dark .navbar-themed .navbar-text a:hover, .bootstrap-dark .navbar-dark .navbar-text a:focus, .bootstrap-dark .navbar-themed .navbar-text a:focus {
      color: #fff; }

.bootstrap-dark .card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #212529;
  background-clip: border-box;
  border: 1px solid rgba(255, 255, 255, 0.125);
  border-radius: 0.25rem; }
  .bootstrap-dark .card > hr {
    margin-right: 0;
    margin-left: 0; }
  .bootstrap-dark .card > .list-group {
    border-top: inherit;
    border-bottom: inherit; }
    .bootstrap-dark .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); }
    .bootstrap-dark .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); }

.bootstrap-dark .card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
  color: #e9ecef; }

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

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

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

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

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

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

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

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

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

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

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

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

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

.bootstrap-dark .card-deck .card {
  margin-bottom: 15px; }

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

.bootstrap-dark .card-group > .card {
  margin-bottom: 15px; }

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

.bootstrap-dark .card-columns .card {
  margin-bottom: 0.75rem; }

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

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

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

.bootstrap-dark .breadcrumb-item {
  display: flex; }
  .bootstrap-dark .breadcrumb-item + .breadcrumb-item {
    padding-left: 0.5rem; }
    .bootstrap-dark .breadcrumb-item + .breadcrumb-item::before {
      display: inline-block;
      padding-right: 0.5rem;
      color: #ced4da;
      content: "/"; }
  .bootstrap-dark .breadcrumb-item + .breadcrumb-item:hover::before {
    text-decoration: underline; }
  .bootstrap-dark .breadcrumb-item + .breadcrumb-item:hover::before {
    text-decoration: none; }
  .bootstrap-dark .breadcrumb-item.active {
    color: #ced4da; }

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

.bootstrap-dark .page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #adadad;
  background-color: #000;
  border: 1px solid #495057; }
  .bootstrap-dark .page-link:hover {
    z-index: 2;
    color: #878787;
    text-decoration: none;
    background-color: #343a40;
    border-color: #495057; }
  .bootstrap-dark .page-link:focus {
    z-index: 3;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

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

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

.bootstrap-dark .page-item.active .page-link {
  z-index: 3;
  color: #000;
  background-color: #3395ff;
  border-color: #3395ff; }

.bootstrap-dark .page-item.disabled .page-link {
  color: #ced4da;
  pointer-events: none;
  cursor: auto;
  background-color: #000;
  border-color: #495057; }

.bootstrap-dark .pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5; }

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

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

.bootstrap-dark .pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5; }

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

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

.bootstrap-dark .badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  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) {
    .bootstrap-dark .badge {
      transition: none; } }
  a.bootstrap-dark .badge:hover, a.bootstrap-dark .badge:focus {
    text-decoration: none; }
  .bootstrap-dark .badge:empty {
    display: none; }

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

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

.bootstrap-dark .badge-primary {
  color: #ced4da;
  background-color: #007bff; }
  a.bootstrap-dark .badge-primary:hover, a.bootstrap-dark .badge-primary:focus {
    color: #ced4da;
    background-color: #0062cc; }
  a.bootstrap-dark .badge-primary:focus, a.bootstrap-dark .badge-primary.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.bootstrap-dark .badge-secondary {
  color: #ced4da;
  background-color: #6c757d; }
  a.bootstrap-dark .badge-secondary:hover, a.bootstrap-dark .badge-secondary:focus {
    color: #ced4da;
    background-color: #545b62; }
  a.bootstrap-dark .badge-secondary:focus, a.bootstrap-dark .badge-secondary.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

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

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

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

.bootstrap-dark .badge-danger {
  color: #ced4da;
  background-color: #dc3545; }
  a.bootstrap-dark .badge-danger:hover, a.bootstrap-dark .badge-danger:focus {
    color: #ced4da;
    background-color: #bd2130; }
  a.bootstrap-dark .badge-danger:focus, a.bootstrap-dark .badge-danger.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

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

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

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

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

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

.bootstrap-dark .alert-heading {
  color: inherit; }

.bootstrap-dark .alert-link {
  font-weight: 700; }

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

.bootstrap-dark .alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff; }
  .bootstrap-dark .alert-primary hr {
    border-top-color: #9fcdff; }
  .bootstrap-dark .alert-primary .alert-link {
    color: #002752; }

.bootstrap-dark .alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db; }
  .bootstrap-dark .alert-secondary hr {
    border-top-color: #c8cbcf; }
  .bootstrap-dark .alert-secondary .alert-link {
    color: #202326; }

.bootstrap-dark .alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb; }
  .bootstrap-dark .alert-success hr {
    border-top-color: #b1dfbb; }
  .bootstrap-dark .alert-success .alert-link {
    color: #0b2e13; }

.bootstrap-dark .alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb; }
  .bootstrap-dark .alert-info hr {
    border-top-color: #abdde5; }
  .bootstrap-dark .alert-info .alert-link {
    color: #062c33; }

.bootstrap-dark .alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba; }
  .bootstrap-dark .alert-warning hr {
    border-top-color: #ffe8a1; }
  .bootstrap-dark .alert-warning .alert-link {
    color: #533f03; }

.bootstrap-dark .alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb; }
  .bootstrap-dark .alert-danger hr {
    border-top-color: #f1b0b7; }
  .bootstrap-dark .alert-danger .alert-link {
    color: #491217; }

.bootstrap-dark .alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe; }
  .bootstrap-dark .alert-light hr {
    border-top-color: #ececf6; }
  .bootstrap-dark .alert-light .alert-link {
    color: #686868; }

.bootstrap-dark .alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca; }
  .bootstrap-dark .alert-dark hr {
    border-top-color: #b9bbbe; }
  .bootstrap-dark .alert-dark .alert-link {
    color: #040505; }

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

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

.bootstrap-dark .progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem; }

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

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

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

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

.bootstrap-dark .media-body {
  flex: 1; }

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

.bootstrap-dark .list-group-item-action {
  width: 100%;
  color: #dee2e6;
  text-align: inherit; }
  .bootstrap-dark .list-group-item-action:hover, .bootstrap-dark .list-group-item-action:focus {
    z-index: 1;
    color: #dee2e6;
    text-decoration: none;
    background-color: #212529; }
  .bootstrap-dark .list-group-item-action:active {
    color: #d3d3d3;
    background-color: #343a40; }

.bootstrap-dark .list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: rgba(25, 29, 33, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.125); }
  .bootstrap-dark .list-group-item:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit; }
  .bootstrap-dark .list-group-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit; }
  .bootstrap-dark .list-group-item.disabled, .bootstrap-dark .list-group-item:disabled {
    color: #ced4da;
    pointer-events: none;
    background-color: rgba(25, 29, 33, 0.05); }
  .bootstrap-dark .list-group-item.active {
    z-index: 2;
    color: #000;
    background-color: #3395ff;
    border-color: #3395ff; }
  .bootstrap-dark .list-group-item + .bootstrap-dark .list-group-item {
    border-top-width: 0; }
    .bootstrap-dark .list-group-item + .bootstrap-dark .list-group-item.active {
      margin-top: -1px;
      border-top-width: 1px; }

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

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

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

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

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

.bootstrap-dark .list-group-flush {
  border-radius: 0; }
  .bootstrap-dark .list-group-flush > .list-group-item {
    border-width: 0 0 1px; }
    .bootstrap-dark .list-group-flush > .list-group-item:last-child {
      border-bottom-width: 0; }

.bootstrap-dark .list-group-item-primary {
  color: #004085;
  background-color: #b8daff; }
  .bootstrap-dark .list-group-item-primary.list-group-item-action:hover, .bootstrap-dark .list-group-item-primary.list-group-item-action:focus {
    color: #004085;
    background-color: #9fcdff; }
  .bootstrap-dark .list-group-item-primary.list-group-item-action.active {
    color: #fff;
    background-color: #004085;
    border-color: #004085; }

.bootstrap-dark .list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db; }
  .bootstrap-dark .list-group-item-secondary.list-group-item-action:hover, .bootstrap-dark .list-group-item-secondary.list-group-item-action:focus {
    color: #383d41;
    background-color: #c8cbcf; }
  .bootstrap-dark .list-group-item-secondary.list-group-item-action.active {
    color: #fff;
    background-color: #383d41;
    border-color: #383d41; }

.bootstrap-dark .list-group-item-success {
  color: #155724;
  background-color: #c3e6cb; }
  .bootstrap-dark .list-group-item-success.list-group-item-action:hover, .bootstrap-dark .list-group-item-success.list-group-item-action:focus {
    color: #155724;
    background-color: #b1dfbb; }
  .bootstrap-dark .list-group-item-success.list-group-item-action.active {
    color: #fff;
    background-color: #155724;
    border-color: #155724; }

.bootstrap-dark .list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb; }
  .bootstrap-dark .list-group-item-info.list-group-item-action:hover, .bootstrap-dark .list-group-item-info.list-group-item-action:focus {
    color: #0c5460;
    background-color: #abdde5; }
  .bootstrap-dark .list-group-item-info.list-group-item-action.active {
    color: #fff;
    background-color: #0c5460;
    border-color: #0c5460; }

.bootstrap-dark .list-group-item-warning {
  color: #856404;
  background-color: #ffeeba; }
  .bootstrap-dark .list-group-item-warning.list-group-item-action:hover, .bootstrap-dark .list-group-item-warning.list-group-item-action:focus {
    color: #856404;
    background-color: #ffe8a1; }
  .bootstrap-dark .list-group-item-warning.list-group-item-action.active {
    color: #fff;
    background-color: #856404;
    border-color: #856404; }

.bootstrap-dark .list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb; }
  .bootstrap-dark .list-group-item-danger.list-group-item-action:hover, .bootstrap-dark .list-group-item-danger.list-group-item-action:focus {
    color: #721c24;
    background-color: #f1b0b7; }
  .bootstrap-dark .list-group-item-danger.list-group-item-action.active {
    color: #fff;
    background-color: #721c24;
    border-color: #721c24; }

.bootstrap-dark .list-group-item-light {
  color: #818182;
  background-color: #fdfdfe; }
  .bootstrap-dark .list-group-item-light.list-group-item-action:hover, .bootstrap-dark .list-group-item-light.list-group-item-action:focus {
    color: #818182;
    background-color: #ececf6; }
  .bootstrap-dark .list-group-item-light.list-group-item-action.active {
    color: #fff;
    background-color: #818182;
    border-color: #818182; }

.bootstrap-dark .list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca; }
  .bootstrap-dark .list-group-item-dark.list-group-item-action:hover, .bootstrap-dark .list-group-item-dark.list-group-item-action:focus {
    color: #1b1e21;
    background-color: #b9bbbe; }
  .bootstrap-dark .list-group-item-dark.list-group-item-action.active {
    color: #fff;
    background-color: #1b1e21;
    border-color: #1b1e21; }

.bootstrap-dark .close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-shadow: 0 1px 0 #000;
  opacity: .5; }
  .bootstrap-dark .close:hover {
    color: #fff;
    text-decoration: none; }
  .bootstrap-dark .close:not(:disabled):not(.disabled):hover, .bootstrap-dark .close:not(:disabled):not(.disabled):focus {
    opacity: .75; }

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

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

.bootstrap-dark .toast {
  max-width: 350px;
  overflow: hidden;
  font-size: 0.875rem;
  background-color: rgba(0, 0, 0, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  opacity: 0;
  border-radius: 0.25rem; }
  .bootstrap-dark .toast:not(:last-child) {
    margin-bottom: 0.75rem; }
  .bootstrap-dark .toast.showing {
    opacity: 1; }
  .bootstrap-dark .toast.show {
    display: block;
    opacity: 1; }
  .bootstrap-dark .toast.hide {
    display: none; }

.bootstrap-dark .toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #ced4da;
  background-color: rgba(0, 0, 0, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05); }

.bootstrap-dark .toast-body {
  padding: 0.75rem; }

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .bootstrap-dark .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto; }
  .bootstrap-dark .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem); }
    .bootstrap-dark .modal-dialog-scrollable .modal-content {
      max-height: calc(100vh - 3.5rem); }
  .bootstrap-dark .modal-dialog-centered {
    min-height: calc(100% - 3.5rem); }
    .bootstrap-dark .modal-dialog-centered::before {
      height: calc(100vh - 3.5rem);
      height: -webkit-min-content;
      height: -moz-min-content;
      height: min-content; }
  .bootstrap-dark .modal-sm {
    max-width: 300px; } }

@media (min-width: 992px) {
  .bootstrap-dark .modal-lg,
  .bootstrap-dark .modal-xl {
    max-width: 800px; } }

@media (min-width: 1200px) {
  .bootstrap-dark .modal-xl {
    max-width: 1140px; } }

.bootstrap-dark .tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  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; }
  .bootstrap-dark .tooltip.show {
    opacity: 0.9; }
  .bootstrap-dark .tooltip .arrow {
    position: absolute;
    display: block;
    width: 0.8rem;
    height: 0.4rem; }
    .bootstrap-dark .tooltip .arrow::before {
      position: absolute;
      content: "";
      border-color: transparent;
      border-style: solid; }

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

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

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

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

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

.bootstrap-dark .popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  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: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem; }
  .bootstrap-dark .popover .arrow {
    position: absolute;
    display: block;
    width: 1rem;
    height: 0.5rem;
    margin: 0 0.3rem; }
    .bootstrap-dark .popover .arrow::before, .bootstrap-dark .popover .arrow::after {
      position: absolute;
      display: block;
      content: "";
      border-color: transparent;
      border-style: solid; }

.bootstrap-dark .bs-popover-top, .bootstrap-dark .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem; }
  .bootstrap-dark .bs-popover-top > .arrow, .bootstrap-dark .bs-popover-auto[x-placement^="top"] > .arrow {
    bottom: calc(-0.5rem - 1px); }
    .bootstrap-dark .bs-popover-top > .arrow::before, .bootstrap-dark .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); }
    .bootstrap-dark .bs-popover-top > .arrow::after, .bootstrap-dark .bs-popover-auto[x-placement^="top"] > .arrow::after {
      bottom: 1px;
      border-width: 0.5rem 0.5rem 0;
      border-top-color: #fff; }

.bootstrap-dark .bs-popover-right, .bootstrap-dark .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem; }
  .bootstrap-dark .bs-popover-right > .arrow, .bootstrap-dark .bs-popover-auto[x-placement^="right"] > .arrow {
    left: calc(-0.5rem - 1px);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0; }
    .bootstrap-dark .bs-popover-right > .arrow::before, .bootstrap-dark .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); }
    .bootstrap-dark .bs-popover-right > .arrow::after, .bootstrap-dark .bs-popover-auto[x-placement^="right"] > .arrow::after {
      left: 1px;
      border-width: 0.5rem 0.5rem 0.5rem 0;
      border-right-color: #fff; }

.bootstrap-dark .bs-popover-bottom, .bootstrap-dark .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem; }
  .bootstrap-dark .bs-popover-bottom > .arrow, .bootstrap-dark .bs-popover-auto[x-placement^="bottom"] > .arrow {
    top: calc(-0.5rem - 1px); }
    .bootstrap-dark .bs-popover-bottom > .arrow::before, .bootstrap-dark .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); }
    .bootstrap-dark .bs-popover-bottom > .arrow::after, .bootstrap-dark .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
      top: 1px;
      border-width: 0 0.5rem 0.5rem 0.5rem;
      border-bottom-color: #fff; }
  .bootstrap-dark .bs-popover-bottom .popover-header::before, .bootstrap-dark .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 #f7f7f7; }

.bootstrap-dark .bs-popover-left, .bootstrap-dark .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem; }
  .bootstrap-dark .bs-popover-left > .arrow, .bootstrap-dark .bs-popover-auto[x-placement^="left"] > .arrow {
    right: calc(-0.5rem - 1px);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0; }
    .bootstrap-dark .bs-popover-left > .arrow::before, .bootstrap-dark .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); }
    .bootstrap-dark .bs-popover-left > .arrow::after, .bootstrap-dark .bs-popover-auto[x-placement^="left"] > .arrow::after {
      right: 1px;
      border-width: 0.5rem 0 0.5rem 0.5rem;
      border-left-color: #fff; }

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

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

.bootstrap-dark .carousel {
  position: relative; }

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

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

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

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

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

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

.bootstrap-dark .carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none; }

.bootstrap-dark .carousel-fade .carousel-item.active,
.bootstrap-dark .carousel-fade .carousel-item-next.carousel-item-left,
.bootstrap-dark .carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1; }

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

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

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

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

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

.bootstrap-dark .carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' 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"); }

.bootstrap-dark .carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' 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"); }

.bootstrap-dark .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; }
  .bootstrap-dark .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: #fff;
    background-clip: padding-box;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    opacity: .5;
    transition: opacity 0.6s ease; }
    @media (prefers-reduced-motion: reduce) {
      .bootstrap-dark .carousel-indicators li {
        transition: none; } }
  .bootstrap-dark .carousel-indicators .active {
    opacity: 1; }

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

@-webkit-keyframes spinner-border {
  to {
    transform: rotate(360deg); } }

@keyframes spinner-border {
  to {
    transform: rotate(360deg); } }

.bootstrap-dark .spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: spinner-border .75s linear infinite;
          animation: spinner-border .75s linear infinite; }

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

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0); }
  50% {
    opacity: 1;
    transform: none; } }

@keyframes spinner-grow {
  0% {
    transform: scale(0); }
  50% {
    opacity: 1;
    transform: none; } }

.bootstrap-dark .spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: spinner-grow .75s linear infinite;
          animation: spinner-grow .75s linear infinite; }

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

.bootstrap-dark .align-baseline {
  vertical-align: baseline !important; }

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

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

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

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

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

.bootstrap-dark .bg-primary {
  background-color: #007bff !important; }

.bootstrap-dark a.bg-primary:hover, .bootstrap-dark a.bg-primary:focus,
.bootstrap-dark button.bg-primary:hover,
.bootstrap-dark button.bg-primary:focus {
  background-color: #0062cc !important; }

.bootstrap-dark .bg-secondary {
  background-color: #6c757d !important; }

.bootstrap-dark a.bg-secondary:hover, .bootstrap-dark a.bg-secondary:focus,
.bootstrap-dark button.bg-secondary:hover,
.bootstrap-dark button.bg-secondary:focus {
  background-color: #545b62 !important; }

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

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

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

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

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

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

.bootstrap-dark .bg-danger {
  background-color: #dc3545 !important; }

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

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

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

.bootstrap-dark .bg-dark, .bootstrap-dark .navbar-themed {
  background-color: #343a40 !important; }

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

.bootstrap-dark .bg-white {
  background-color: #fff !important; }

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

.bootstrap-dark .border {
  border: 1px solid #343a40 !important; }

.bootstrap-dark .border-top {
  border-top: 1px solid #343a40 !important; }

.bootstrap-dark .border-right {
  border-right: 1px solid #343a40 !important; }

.bootstrap-dark .border-bottom {
  border-bottom: 1px solid #343a40 !important; }

.bootstrap-dark .border-left {
  border-left: 1px solid #343a40 !important; }

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

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

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

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

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

.bootstrap-dark .border-primary {
  border-color: #007bff !important; }

.bootstrap-dark .border-secondary {
  border-color: #6c757d !important; }

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

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

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

.bootstrap-dark .border-danger {
  border-color: #dc3545 !important; }

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

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

.bootstrap-dark .border-white {
  border-color: #fff !important; }

.bootstrap-dark .border-green {
  border-color: #3d3d3d !important;
  background-color: #454545 !important; }

.bootstrap-dark .border-blue {
  border-color: #090082 !important;
  background-color: #160075 !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .bootstrap-dark .d-sm-none {
    display: none !important; }
  .bootstrap-dark .d-sm-inline {
    display: inline !important; }
  .bootstrap-dark .d-sm-inline-block {
    display: inline-block !important; }
  .bootstrap-dark .d-sm-block {
    display: block !important; }
  .bootstrap-dark .d-sm-table {
    display: table !important; }
  .bootstrap-dark .d-sm-table-row {
    display: table-row !important; }
  .bootstrap-dark .d-sm-table-cell {
    display: table-cell !important; }
  .bootstrap-dark .d-sm-flex {
    display: flex !important; }
  .bootstrap-dark .d-sm-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 768px) {
  .bootstrap-dark .d-md-none {
    display: none !important; }
  .bootstrap-dark .d-md-inline {
    display: inline !important; }
  .bootstrap-dark .d-md-inline-block {
    display: inline-block !important; }
  .bootstrap-dark .d-md-block {
    display: block !important; }
  .bootstrap-dark .d-md-table {
    display: table !important; }
  .bootstrap-dark .d-md-table-row {
    display: table-row !important; }
  .bootstrap-dark .d-md-table-cell {
    display: table-cell !important; }
  .bootstrap-dark .d-md-flex {
    display: flex !important; }
  .bootstrap-dark .d-md-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 992px) {
  .bootstrap-dark .d-lg-none {
    display: none !important; }
  .bootstrap-dark .d-lg-inline {
    display: inline !important; }
  .bootstrap-dark .d-lg-inline-block {
    display: inline-block !important; }
  .bootstrap-dark .d-lg-block {
    display: block !important; }
  .bootstrap-dark .d-lg-table {
    display: table !important; }
  .bootstrap-dark .d-lg-table-row {
    display: table-row !important; }
  .bootstrap-dark .d-lg-table-cell {
    display: table-cell !important; }
  .bootstrap-dark .d-lg-flex {
    display: flex !important; }
  .bootstrap-dark .d-lg-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 1200px) {
  .bootstrap-dark .d-xl-none {
    display: none !important; }
  .bootstrap-dark .d-xl-inline {
    display: inline !important; }
  .bootstrap-dark .d-xl-inline-block {
    display: inline-block !important; }
  .bootstrap-dark .d-xl-block {
    display: block !important; }
  .bootstrap-dark .d-xl-table {
    display: table !important; }
  .bootstrap-dark .d-xl-table-row {
    display: table-row !important; }
  .bootstrap-dark .d-xl-table-cell {
    display: table-cell !important; }
  .bootstrap-dark .d-xl-flex {
    display: flex !important; }
  .bootstrap-dark .d-xl-inline-flex {
    display: inline-flex !important; } }

@media print {
  .bootstrap-dark .d-print-none {
    display: none !important; }
  .bootstrap-dark .d-print-inline {
    display: inline !important; }
  .bootstrap-dark .d-print-inline-block {
    display: inline-block !important; }
  .bootstrap-dark .d-print-block {
    display: block !important; }
  .bootstrap-dark .d-print-table {
    display: table !important; }
  .bootstrap-dark .d-print-table-row {
    display: table-row !important; }
  .bootstrap-dark .d-print-table-cell {
    display: table-cell !important; }
  .bootstrap-dark .d-print-flex {
    display: flex !important; }
  .bootstrap-dark .d-print-inline-flex {
    display: inline-flex !important; } }

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

.bootstrap-dark .embed-responsive-21by9::before {
  padding-top: 42.85714%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .bootstrap-dark .flex-sm-row {
    flex-direction: row !important; }
  .bootstrap-dark .flex-sm-column {
    flex-direction: column !important; }
  .bootstrap-dark .flex-sm-row-reverse {
    flex-direction: row-reverse !important; }
  .bootstrap-dark .flex-sm-column-reverse {
    flex-direction: column-reverse !important; }
  .bootstrap-dark .flex-sm-wrap {
    flex-wrap: wrap !important; }
  .bootstrap-dark .flex-sm-nowrap {
    flex-wrap: nowrap !important; }
  .bootstrap-dark .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .bootstrap-dark .flex-sm-fill {
    flex: 1 1 auto !important; }
  .bootstrap-dark .flex-sm-grow-0 {
    flex-grow: 0 !important; }
  .bootstrap-dark .flex-sm-grow-1 {
    flex-grow: 1 !important; }
  .bootstrap-dark .flex-sm-shrink-0 {
    flex-shrink: 0 !important; }
  .bootstrap-dark .flex-sm-shrink-1 {
    flex-shrink: 1 !important; }
  .bootstrap-dark .justify-content-sm-start {
    justify-content: flex-start !important; }
  .bootstrap-dark .justify-content-sm-end {
    justify-content: flex-end !important; }
  .bootstrap-dark .justify-content-sm-center {
    justify-content: center !important; }
  .bootstrap-dark .justify-content-sm-between {
    justify-content: space-between !important; }
  .bootstrap-dark .justify-content-sm-around {
    justify-content: space-around !important; }
  .bootstrap-dark .align-items-sm-start {
    align-items: flex-start !important; }
  .bootstrap-dark .align-items-sm-end {
    align-items: flex-end !important; }
  .bootstrap-dark .align-items-sm-center {
    align-items: center !important; }
  .bootstrap-dark .align-items-sm-baseline {
    align-items: baseline !important; }
  .bootstrap-dark .align-items-sm-stretch {
    align-items: stretch !important; }
  .bootstrap-dark .align-content-sm-start {
    align-content: flex-start !important; }
  .bootstrap-dark .align-content-sm-end {
    align-content: flex-end !important; }
  .bootstrap-dark .align-content-sm-center {
    align-content: center !important; }
  .bootstrap-dark .align-content-sm-between {
    align-content: space-between !important; }
  .bootstrap-dark .align-content-sm-around {
    align-content: space-around !important; }
  .bootstrap-dark .align-content-sm-stretch {
    align-content: stretch !important; }
  .bootstrap-dark .align-self-sm-auto {
    align-self: auto !important; }
  .bootstrap-dark .align-self-sm-start {
    align-self: flex-start !important; }
  .bootstrap-dark .align-self-sm-end {
    align-self: flex-end !important; }
  .bootstrap-dark .align-self-sm-center {
    align-self: center !important; }
  .bootstrap-dark .align-self-sm-baseline {
    align-self: baseline !important; }
  .bootstrap-dark .align-self-sm-stretch {
    align-self: stretch !important; } }

@media (min-width: 768px) {
  .bootstrap-dark .flex-md-row {
    flex-direction: row !important; }
  .bootstrap-dark .flex-md-column {
    flex-direction: column !important; }
  .bootstrap-dark .flex-md-row-reverse {
    flex-direction: row-reverse !important; }
  .bootstrap-dark .flex-md-column-reverse {
    flex-direction: column-reverse !important; }
  .bootstrap-dark .flex-md-wrap {
    flex-wrap: wrap !important; }
  .bootstrap-dark .flex-md-nowrap {
    flex-wrap: nowrap !important; }
  .bootstrap-dark .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .bootstrap-dark .flex-md-fill {
    flex: 1 1 auto !important; }
  .bootstrap-dark .flex-md-grow-0 {
    flex-grow: 0 !important; }
  .bootstrap-dark .flex-md-grow-1 {
    flex-grow: 1 !important; }
  .bootstrap-dark .flex-md-shrink-0 {
    flex-shrink: 0 !important; }
  .bootstrap-dark .flex-md-shrink-1 {
    flex-shrink: 1 !important; }
  .bootstrap-dark .justify-content-md-start {
    justify-content: flex-start !important; }
  .bootstrap-dark .justify-content-md-end {
    justify-content: flex-end !important; }
  .bootstrap-dark .justify-content-md-center {
    justify-content: center !important; }
  .bootstrap-dark .justify-content-md-between {
    justify-content: space-between !important; }
  .bootstrap-dark .justify-content-md-around {
    justify-content: space-around !important; }
  .bootstrap-dark .align-items-md-start {
    align-items: flex-start !important; }
  .bootstrap-dark .align-items-md-end {
    align-items: flex-end !important; }
  .bootstrap-dark .align-items-md-center {
    align-items: center !important; }
  .bootstrap-dark .align-items-md-baseline {
    align-items: baseline !important; }
  .bootstrap-dark .align-items-md-stretch {
    align-items: stretch !important; }
  .bootstrap-dark .align-content-md-start {
    align-content: flex-start !important; }
  .bootstrap-dark .align-content-md-end {
    align-content: flex-end !important; }
  .bootstrap-dark .align-content-md-center {
    align-content: center !important; }
  .bootstrap-dark .align-content-md-between {
    align-content: space-between !important; }
  .bootstrap-dark .align-content-md-around {
    align-content: space-around !important; }
  .bootstrap-dark .align-content-md-stretch {
    align-content: stretch !important; }
  .bootstrap-dark .align-self-md-auto {
    align-self: auto !important; }
  .bootstrap-dark .align-self-md-start {
    align-self: flex-start !important; }
  .bootstrap-dark .align-self-md-end {
    align-self: flex-end !important; }
  .bootstrap-dark .align-self-md-center {
    align-self: center !important; }
  .bootstrap-dark .align-self-md-baseline {
    align-self: baseline !important; }
  .bootstrap-dark .align-self-md-stretch {
    align-self: stretch !important; } }

@media (min-width: 992px) {
  .bootstrap-dark .flex-lg-row {
    flex-direction: row !important; }
  .bootstrap-dark .flex-lg-column {
    flex-direction: column !important; }
  .bootstrap-dark .flex-lg-row-reverse {
    flex-direction: row-reverse !important; }
  .bootstrap-dark .flex-lg-column-reverse {
    flex-direction: column-reverse !important; }
  .bootstrap-dark .flex-lg-wrap {
    flex-wrap: wrap !important; }
  .bootstrap-dark .flex-lg-nowrap {
    flex-wrap: nowrap !important; }
  .bootstrap-dark .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .bootstrap-dark .flex-lg-fill {
    flex: 1 1 auto !important; }
  .bootstrap-dark .flex-lg-grow-0 {
    flex-grow: 0 !important; }
  .bootstrap-dark .flex-lg-grow-1 {
    flex-grow: 1 !important; }
  .bootstrap-dark .flex-lg-shrink-0 {
    flex-shrink: 0 !important; }
  .bootstrap-dark .flex-lg-shrink-1 {
    flex-shrink: 1 !important; }
  .bootstrap-dark .justify-content-lg-start {
    justify-content: flex-start !important; }
  .bootstrap-dark .justify-content-lg-end {
    justify-content: flex-end !important; }
  .bootstrap-dark .justify-content-lg-center {
    justify-content: center !important; }
  .bootstrap-dark .justify-content-lg-between {
    justify-content: space-between !important; }
  .bootstrap-dark .justify-content-lg-around {
    justify-content: space-around !important; }
  .bootstrap-dark .align-items-lg-start {
    align-items: flex-start !important; }
  .bootstrap-dark .align-items-lg-end {
    align-items: flex-end !important; }
  .bootstrap-dark .align-items-lg-center {
    align-items: center !important; }
  .bootstrap-dark .align-items-lg-baseline {
    align-items: baseline !important; }
  .bootstrap-dark .align-items-lg-stretch {
    align-items: stretch !important; }
  .bootstrap-dark .align-content-lg-start {
    align-content: flex-start !important; }
  .bootstrap-dark .align-content-lg-end {
    align-content: flex-end !important; }
  .bootstrap-dark .align-content-lg-center {
    align-content: center !important; }
  .bootstrap-dark .align-content-lg-between {
    align-content: space-between !important; }
  .bootstrap-dark .align-content-lg-around {
    align-content: space-around !important; }
  .bootstrap-dark .align-content-lg-stretch {
    align-content: stretch !important; }
  .bootstrap-dark .align-self-lg-auto {
    align-self: auto !important; }
  .bootstrap-dark .align-self-lg-start {
    align-self: flex-start !important; }
  .bootstrap-dark .align-self-lg-end {
    align-self: flex-end !important; }
  .bootstrap-dark .align-self-lg-center {
    align-self: center !important; }
  .bootstrap-dark .align-self-lg-baseline {
    align-self: baseline !important; }
  .bootstrap-dark .align-self-lg-stretch {
    align-self: stretch !important; } }

@media (min-width: 1200px) {
  .bootstrap-dark .flex-xl-row {
    flex-direction: row !important; }
  .bootstrap-dark .flex-xl-column {
    flex-direction: column !important; }
  .bootstrap-dark .flex-xl-row-reverse {
    flex-direction: row-reverse !important; }
  .bootstrap-dark .flex-xl-column-reverse {
    flex-direction: column-reverse !important; }
  .bootstrap-dark .flex-xl-wrap {
    flex-wrap: wrap !important; }
  .bootstrap-dark .flex-xl-nowrap {
    flex-wrap: nowrap !important; }
  .bootstrap-dark .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .bootstrap-dark .flex-xl-fill {
    flex: 1 1 auto !important; }
  .bootstrap-dark .flex-xl-grow-0 {
    flex-grow: 0 !important; }
  .bootstrap-dark .flex-xl-grow-1 {
    flex-grow: 1 !important; }
  .bootstrap-dark .flex-xl-shrink-0 {
    flex-shrink: 0 !important; }
  .bootstrap-dark .flex-xl-shrink-1 {
    flex-shrink: 1 !important; }
  .bootstrap-dark .justify-content-xl-start {
    justify-content: flex-start !important; }
  .bootstrap-dark .justify-content-xl-end {
    justify-content: flex-end !important; }
  .bootstrap-dark .justify-content-xl-center {
    justify-content: center !important; }
  .bootstrap-dark .justify-content-xl-between {
    justify-content: space-between !important; }
  .bootstrap-dark .justify-content-xl-around {
    justify-content: space-around !important; }
  .bootstrap-dark .align-items-xl-start {
    align-items: flex-start !important; }
  .bootstrap-dark .align-items-xl-end {
    align-items: flex-end !important; }
  .bootstrap-dark .align-items-xl-center {
    align-items: center !important; }
  .bootstrap-dark .align-items-xl-baseline {
    align-items: baseline !important; }
  .bootstrap-dark .align-items-xl-stretch {
    align-items: stretch !important; }
  .bootstrap-dark .align-content-xl-start {
    align-content: flex-start !important; }
  .bootstrap-dark .align-content-xl-end {
    align-content: flex-end !important; }
  .bootstrap-dark .align-content-xl-center {
    align-content: center !important; }
  .bootstrap-dark .align-content-xl-between {
    align-content: space-between !important; }
  .bootstrap-dark .align-content-xl-around {
    align-content: space-around !important; }
  .bootstrap-dark .align-content-xl-stretch {
    align-content: stretch !important; }
  .bootstrap-dark .align-self-xl-auto {
    align-self: auto !important; }
  .bootstrap-dark .align-self-xl-start {
    align-self: flex-start !important; }
  .bootstrap-dark .align-self-xl-end {
    align-self: flex-end !important; }
  .bootstrap-dark .align-self-xl-center {
    align-self: center !important; }
  .bootstrap-dark .align-self-xl-baseline {
    align-self: baseline !important; }
  .bootstrap-dark .align-self-xl-stretch {
    align-self: stretch !important; } }

.bootstrap-dark .float-left {
  float: left !important; }

.bootstrap-dark .float-right {
  float: right !important; }

.bootstrap-dark .float-none {
  float: none !important; }

@media (min-width: 576px) {
  .bootstrap-dark .float-sm-left {
    float: left !important; }
  .bootstrap-dark .float-sm-right {
    float: right !important; }
  .bootstrap-dark .float-sm-none {
    float: none !important; } }

@media (min-width: 768px) {
  .bootstrap-dark .float-md-left {
    float: left !important; }
  .bootstrap-dark .float-md-right {
    float: right !important; }
  .bootstrap-dark .float-md-none {
    float: none !important; } }

@media (min-width: 992px) {
  .bootstrap-dark .float-lg-left {
    float: left !important; }
  .bootstrap-dark .float-lg-right {
    float: right !important; }
  .bootstrap-dark .float-lg-none {
    float: none !important; } }

@media (min-width: 1200px) {
  .bootstrap-dark .float-xl-left {
    float: left !important; }
  .bootstrap-dark .float-xl-right {
    float: right !important; }
  .bootstrap-dark .float-xl-none {
    float: none !important; } }

.bootstrap-dark .user-select-all {
  -webkit-user-select: all !important;
     -moz-user-select: all !important;
      -ms-user-select: all !important;
          user-select: all !important; }

.bootstrap-dark .user-select-auto {
  -webkit-user-select: auto !important;
     -moz-user-select: auto !important;
      -ms-user-select: auto !important;
          user-select: auto !important; }

.bootstrap-dark .user-select-none {
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
      -ms-user-select: none !important;
          user-select: none !important; }

.bootstrap-dark .overflow-auto {
  overflow: auto !important; }

.bootstrap-dark .overflow-hidden {
  overflow: hidden !important; }

.bootstrap-dark .position-static {
  position: static !important; }

.bootstrap-dark .position-relative {
  position: relative !important; }

.bootstrap-dark .position-absolute {
  position: absolute !important; }

.bootstrap-dark .position-fixed {
  position: fixed !important; }

.bootstrap-dark .position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important; }

.bootstrap-dark .fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030; }

.bootstrap-dark .fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030; }

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .bootstrap-dark .sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020; } }

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

.bootstrap-dark .sr-only-focusable:active, .bootstrap-dark .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

.bootstrap-dark .shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; }

.bootstrap-dark .shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; }

.bootstrap-dark .shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; }

.bootstrap-dark .shadow-none {
  box-shadow: none !important; }

.bootstrap-dark .w-25 {
  width: 25% !important; }

.bootstrap-dark .w-50 {
  width: 50% !important; }

.bootstrap-dark .w-75 {
  width: 75% !important; }

.bootstrap-dark .w-100 {
  width: 100% !important; }

.bootstrap-dark .w-auto {
  width: auto !important; }

.bootstrap-dark .h-25 {
  height: 25% !important; }

.bootstrap-dark .h-50 {
  height: 50% !important; }

.bootstrap-dark .h-75 {
  height: 75% !important; }

.bootstrap-dark .h-100 {
  height: 100% !important; }

.bootstrap-dark .h-auto {
  height: auto !important; }

.bootstrap-dark .mw-100 {
  max-width: 100% !important; }

.bootstrap-dark .mh-100 {
  max-height: 100% !important; }

.bootstrap-dark .min-vw-100 {
  min-width: 100vw !important; }

.bootstrap-dark .min-vh-100 {
  min-height: 100vh !important; }

.bootstrap-dark .vw-100 {
  width: 100vw !important; }

.bootstrap-dark .vh-100 {
  height: 100vh !important; }

.bootstrap-dark .m-0 {
  margin: 0 !important; }

.bootstrap-dark .mt-0,
.bootstrap-dark .my-0 {
  margin-top: 0 !important; }

.bootstrap-dark .mr-0,
.bootstrap-dark .mx-0 {
  margin-right: 0 !important; }

.bootstrap-dark .mb-0,
.bootstrap-dark .my-0 {
  margin-bottom: 0 !important; }

.bootstrap-dark .ml-0,
.bootstrap-dark .mx-0 {
  margin-left: 0 !important; }

.bootstrap-dark .m-1 {
  margin: 0.25rem !important; }

.bootstrap-dark .mt-1,
.bootstrap-dark .my-1 {
  margin-top: 0.25rem !important; }

.bootstrap-dark .mr-1,
.bootstrap-dark .mx-1 {
  margin-right: 0.25rem !important; }

.bootstrap-dark .mb-1,
.bootstrap-dark .my-1 {
  margin-bottom: 0.25rem !important; }

.bootstrap-dark .ml-1,
.bootstrap-dark .mx-1 {
  margin-left: 0.25rem !important; }

.bootstrap-dark .m-2 {
  margin: 0.5rem !important; }

.bootstrap-dark .mt-2,
.bootstrap-dark .my-2 {
  margin-top: 0.5rem !important; }

.bootstrap-dark .mr-2,
.bootstrap-dark .mx-2 {
  margin-right: 0.5rem !important; }

.bootstrap-dark .mb-2,
.bootstrap-dark .my-2 {
  margin-bottom: 0.5rem !important; }

.bootstrap-dark .ml-2,
.bootstrap-dark .mx-2 {
  margin-left: 0.5rem !important; }

.bootstrap-dark .m-3 {
  margin: 1rem !important; }

.bootstrap-dark .mt-3,
.bootstrap-dark .my-3 {
  margin-top: 1rem !important; }

.bootstrap-dark .mr-3,
.bootstrap-dark .mx-3 {
  margin-right: 1rem !important; }

.bootstrap-dark .mb-3,
.bootstrap-dark .my-3 {
  margin-bottom: 1rem !important; }

.bootstrap-dark .ml-3,
.bootstrap-dark .mx-3 {
  margin-left: 1rem !important; }

.bootstrap-dark .m-4 {
  margin: 1.5rem !important; }

.bootstrap-dark .mt-4,
.bootstrap-dark .my-4 {
  margin-top: 1.5rem !important; }

.bootstrap-dark .mr-4,
.bootstrap-dark .mx-4 {
  margin-right: 1.5rem !important; }

.bootstrap-dark .mb-4,
.bootstrap-dark .my-4 {
  margin-bottom: 1.5rem !important; }

.bootstrap-dark .ml-4,
.bootstrap-dark .mx-4 {
  margin-left: 1.5rem !important; }

.bootstrap-dark .m-5 {
  margin: 3rem !important; }

.bootstrap-dark .mt-5,
.bootstrap-dark .my-5 {
  margin-top: 3rem !important; }

.bootstrap-dark .mr-5,
.bootstrap-dark .mx-5 {
  margin-right: 3rem !important; }

.bootstrap-dark .mb-5,
.bootstrap-dark .my-5 {
  margin-bottom: 3rem !important; }

.bootstrap-dark .ml-5,
.bootstrap-dark .mx-5 {
  margin-left: 3rem !important; }

.bootstrap-dark .p-0 {
  padding: 0 !important; }

.bootstrap-dark .pt-0,
.bootstrap-dark .py-0 {
  padding-top: 0 !important; }

.bootstrap-dark .pr-0,
.bootstrap-dark .px-0 {
  padding-right: 0 !important; }

.bootstrap-dark .pb-0,
.bootstrap-dark .py-0 {
  padding-bottom: 0 !important; }

.bootstrap-dark .pl-0,
.bootstrap-dark .px-0 {
  padding-left: 0 !important; }

.bootstrap-dark .p-1 {
  padding: 0.25rem !important; }

.bootstrap-dark .pt-1,
.bootstrap-dark .py-1 {
  padding-top: 0.25rem !important; }

.bootstrap-dark .pr-1,
.bootstrap-dark .px-1 {
  padding-right: 0.25rem !important; }

.bootstrap-dark .pb-1,
.bootstrap-dark .py-1 {
  padding-bottom: 0.25rem !important; }

.bootstrap-dark .pl-1,
.bootstrap-dark .px-1 {
  padding-left: 0.25rem !important; }

.bootstrap-dark .p-2 {
  padding: 0.5rem !important; }

.bootstrap-dark .pt-2,
.bootstrap-dark .py-2 {
  padding-top: 0.5rem !important; }

.bootstrap-dark .pr-2,
.bootstrap-dark .px-2 {
  padding-right: 0.5rem !important; }

.bootstrap-dark .pb-2,
.bootstrap-dark .py-2 {
  padding-bottom: 0.5rem !important; }

.bootstrap-dark .pl-2,
.bootstrap-dark .px-2 {
  padding-left: 0.5rem !important; }

.bootstrap-dark .p-3 {
  padding: 1rem !important; }

.bootstrap-dark .pt-3,
.bootstrap-dark .py-3 {
  padding-top: 1rem !important; }

.bootstrap-dark .pr-3,
.bootstrap-dark .px-3 {
  padding-right: 1rem !important; }

.bootstrap-dark .pb-3,
.bootstrap-dark .py-3 {
  padding-bottom: 1rem !important; }

.bootstrap-dark .pl-3,
.bootstrap-dark .px-3 {
  padding-left: 1rem !important; }

.bootstrap-dark .p-4 {
  padding: 1.5rem !important; }

.bootstrap-dark .pt-4,
.bootstrap-dark .py-4 {
  padding-top: 1.5rem !important; }

.bootstrap-dark .pr-4,
.bootstrap-dark .px-4 {
  padding-right: 1.5rem !important; }

.bootstrap-dark .pb-4,
.bootstrap-dark .py-4 {
  padding-bottom: 1.5rem !important; }

.bootstrap-dark .pl-4,
.bootstrap-dark .px-4 {
  padding-left: 1.5rem !important; }

.bootstrap-dark .p-5 {
  padding: 3rem !important; }

.bootstrap-dark .pt-5,
.bootstrap-dark .py-5 {
  padding-top: 3rem !important; }

.bootstrap-dark .pr-5,
.bootstrap-dark .px-5 {
  padding-right: 3rem !important; }

.bootstrap-dark .pb-5,
.bootstrap-dark .py-5 {
  padding-bottom: 3rem !important; }

.bootstrap-dark .pl-5,
.bootstrap-dark .px-5 {
  padding-left: 3rem !important; }

.bootstrap-dark .m-n1 {
  margin: -0.25rem !important; }

.bootstrap-dark .mt-n1,
.bootstrap-dark .my-n1 {
  margin-top: -0.25rem !important; }

.bootstrap-dark .mr-n1,
.bootstrap-dark .mx-n1 {
  margin-right: -0.25rem !important; }

.bootstrap-dark .mb-n1,
.bootstrap-dark .my-n1 {
  margin-bottom: -0.25rem !important; }

.bootstrap-dark .ml-n1,
.bootstrap-dark .mx-n1 {
  margin-left: -0.25rem !important; }

.bootstrap-dark .m-n2 {
  margin: -0.5rem !important; }

.bootstrap-dark .mt-n2,
.bootstrap-dark .my-n2 {
  margin-top: -0.5rem !important; }

.bootstrap-dark .mr-n2,
.bootstrap-dark .mx-n2 {
  margin-right: -0.5rem !important; }

.bootstrap-dark .mb-n2,
.bootstrap-dark .my-n2 {
  margin-bottom: -0.5rem !important; }

.bootstrap-dark .ml-n2,
.bootstrap-dark .mx-n2 {
  margin-left: -0.5rem !important; }

.bootstrap-dark .m-n3 {
  margin: -1rem !important; }

.bootstrap-dark .mt-n3,
.bootstrap-dark .my-n3 {
  margin-top: -1rem !important; }

.bootstrap-dark .mr-n3,
.bootstrap-dark .mx-n3 {
  margin-right: -1rem !important; }

.bootstrap-dark .mb-n3,
.bootstrap-dark .my-n3 {
  margin-bottom: -1rem !important; }

.bootstrap-dark .ml-n3,
.bootstrap-dark .mx-n3 {
  margin-left: -1rem !important; }

.bootstrap-dark .m-n4 {
  margin: -1.5rem !important; }

.bootstrap-dark .mt-n4,
.bootstrap-dark .my-n4 {
  margin-top: -1.5rem !important; }

.bootstrap-dark .mr-n4,
.bootstrap-dark .mx-n4 {
  margin-right: -1.5rem !important; }

.bootstrap-dark .mb-n4,
.bootstrap-dark .my-n4 {
  margin-bottom: -1.5rem !important; }

.bootstrap-dark .ml-n4,
.bootstrap-dark .mx-n4 {
  margin-left: -1.5rem !important; }

.bootstrap-dark .m-n5 {
  margin: -3rem !important; }

.bootstrap-dark .mt-n5,
.bootstrap-dark .my-n5 {
  margin-top: -3rem !important; }

.bootstrap-dark .mr-n5,
.bootstrap-dark .mx-n5 {
  margin-right: -3rem !important; }

.bootstrap-dark .mb-n5,
.bootstrap-dark .my-n5 {
  margin-bottom: -3rem !important; }

.bootstrap-dark .ml-n5,
.bootstrap-dark .mx-n5 {
  margin-left: -3rem !important; }

.bootstrap-dark .m-auto {
  margin: auto !important; }

.bootstrap-dark .mt-auto,
.bootstrap-dark .my-auto {
  margin-top: auto !important; }

.bootstrap-dark .mr-auto,
.bootstrap-dark .mx-auto {
  margin-right: auto !important; }

.bootstrap-dark .mb-auto,
.bootstrap-dark .my-auto {
  margin-bottom: auto !important; }

.bootstrap-dark .ml-auto,
.bootstrap-dark .mx-auto {
  margin-left: auto !important; }

@media (min-width: 576px) {
  .bootstrap-dark .m-sm-0 {
    margin: 0 !important; }
  .bootstrap-dark .mt-sm-0,
  .bootstrap-dark .my-sm-0 {
    margin-top: 0 !important; }
  .bootstrap-dark .mr-sm-0,
  .bootstrap-dark .mx-sm-0 {
    margin-right: 0 !important; }
  .bootstrap-dark .mb-sm-0,
  .bootstrap-dark .my-sm-0 {
    margin-bottom: 0 !important; }
  .bootstrap-dark .ml-sm-0,
  .bootstrap-dark .mx-sm-0 {
    margin-left: 0 !important; }
  .bootstrap-dark .m-sm-1 {
    margin: 0.25rem !important; }
  .bootstrap-dark .mt-sm-1,
  .bootstrap-dark .my-sm-1 {
    margin-top: 0.25rem !important; }
  .bootstrap-dark .mr-sm-1,
  .bootstrap-dark .mx-sm-1 {
    margin-right: 0.25rem !important; }
  .bootstrap-dark .mb-sm-1,
  .bootstrap-dark .my-sm-1 {
    margin-bottom: 0.25rem !important; }
  .bootstrap-dark .ml-sm-1,
  .bootstrap-dark .mx-sm-1 {
    margin-left: 0.25rem !important; }
  .bootstrap-dark .m-sm-2 {
    margin: 0.5rem !important; }
  .bootstrap-dark .mt-sm-2,
  .bootstrap-dark .my-sm-2 {
    margin-top: 0.5rem !important; }
  .bootstrap-dark .mr-sm-2,
  .bootstrap-dark .mx-sm-2 {
    margin-right: 0.5rem !important; }
  .bootstrap-dark .mb-sm-2,
  .bootstrap-dark .my-sm-2 {
    margin-bottom: 0.5rem !important; }
  .bootstrap-dark .ml-sm-2,
  .bootstrap-dark .mx-sm-2 {
    margin-left: 0.5rem !important; }
  .bootstrap-dark .m-sm-3 {
    margin: 1rem !important; }
  .bootstrap-dark .mt-sm-3,
  .bootstrap-dark .my-sm-3 {
    margin-top: 1rem !important; }
  .bootstrap-dark .mr-sm-3,
  .bootstrap-dark .mx-sm-3 {
    margin-right: 1rem !important; }
  .bootstrap-dark .mb-sm-3,
  .bootstrap-dark .my-sm-3 {
    margin-bottom: 1rem !important; }
  .bootstrap-dark .ml-sm-3,
  .bootstrap-dark .mx-sm-3 {
    margin-left: 1rem !important; }
  .bootstrap-dark .m-sm-4 {
    margin: 1.5rem !important; }
  .bootstrap-dark .mt-sm-4,
  .bootstrap-dark .my-sm-4 {
    margin-top: 1.5rem !important; }
  .bootstrap-dark .mr-sm-4,
  .bootstrap-dark .mx-sm-4 {
    margin-right: 1.5rem !important; }
  .bootstrap-dark .mb-sm-4,
  .bootstrap-dark .my-sm-4 {
    margin-bottom: 1.5rem !important; }
  .bootstrap-dark .ml-sm-4,
  .bootstrap-dark .mx-sm-4 {
    margin-left: 1.5rem !important; }
  .bootstrap-dark .m-sm-5 {
    margin: 3rem !important; }
  .bootstrap-dark .mt-sm-5,
  .bootstrap-dark .my-sm-5 {
    margin-top: 3rem !important; }
  .bootstrap-dark .mr-sm-5,
  .bootstrap-dark .mx-sm-5 {
    margin-right: 3rem !important; }
  .bootstrap-dark .mb-sm-5,
  .bootstrap-dark .my-sm-5 {
    margin-bottom: 3rem !important; }
  .bootstrap-dark .ml-sm-5,
  .bootstrap-dark .mx-sm-5 {
    margin-left: 3rem !important; }
  .bootstrap-dark .p-sm-0 {
    padding: 0 !important; }
  .bootstrap-dark .pt-sm-0,
  .bootstrap-dark .py-sm-0 {
    padding-top: 0 !important; }
  .bootstrap-dark .pr-sm-0,
  .bootstrap-dark .px-sm-0 {
    padding-right: 0 !important; }
  .bootstrap-dark .pb-sm-0,
  .bootstrap-dark .py-sm-0 {
    padding-bottom: 0 !important; }
  .bootstrap-dark .pl-sm-0,
  .bootstrap-dark .px-sm-0 {
    padding-left: 0 !important; }
  .bootstrap-dark .p-sm-1 {
    padding: 0.25rem !important; }
  .bootstrap-dark .pt-sm-1,
  .bootstrap-dark .py-sm-1 {
    padding-top: 0.25rem !important; }
  .bootstrap-dark .pr-sm-1,
  .bootstrap-dark .px-sm-1 {
    padding-right: 0.25rem !important; }
  .bootstrap-dark .pb-sm-1,
  .bootstrap-dark .py-sm-1 {
    padding-bottom: 0.25rem !important; }
  .bootstrap-dark .pl-sm-1,
  .bootstrap-dark .px-sm-1 {
    padding-left: 0.25rem !important; }
  .bootstrap-dark .p-sm-2 {
    padding: 0.5rem !important; }
  .bootstrap-dark .pt-sm-2,
  .bootstrap-dark .py-sm-2 {
    padding-top: 0.5rem !important; }
  .bootstrap-dark .pr-sm-2,
  .bootstrap-dark .px-sm-2 {
    padding-right: 0.5rem !important; }
  .bootstrap-dark .pb-sm-2,
  .bootstrap-dark .py-sm-2 {
    padding-bottom: 0.5rem !important; }
  .bootstrap-dark .pl-sm-2,
  .bootstrap-dark .px-sm-2 {
    padding-left: 0.5rem !important; }
  .bootstrap-dark .p-sm-3 {
    padding: 1rem !important; }
  .bootstrap-dark .pt-sm-3,
  .bootstrap-dark .py-sm-3 {
    padding-top: 1rem !important; }
  .bootstrap-dark .pr-sm-3,
  .bootstrap-dark .px-sm-3 {
    padding-right: 1rem !important; }
  .bootstrap-dark .pb-sm-3,
  .bootstrap-dark .py-sm-3 {
    padding-bottom: 1rem !important; }
  .bootstrap-dark .pl-sm-3,
  .bootstrap-dark .px-sm-3 {
    padding-left: 1rem !important; }
  .bootstrap-dark .p-sm-4 {
    padding: 1.5rem !important; }
  .bootstrap-dark .pt-sm-4,
  .bootstrap-dark .py-sm-4 {
    padding-top: 1.5rem !important; }
  .bootstrap-dark .pr-sm-4,
  .bootstrap-dark .px-sm-4 {
    padding-right: 1.5rem !important; }
  .bootstrap-dark .pb-sm-4,
  .bootstrap-dark .py-sm-4 {
    padding-bottom: 1.5rem !important; }
  .bootstrap-dark .pl-sm-4,
  .bootstrap-dark .px-sm-4 {
    padding-left: 1.5rem !important; }
  .bootstrap-dark .p-sm-5 {
    padding: 3rem !important; }
  .bootstrap-dark .pt-sm-5,
  .bootstrap-dark .py-sm-5 {
    padding-top: 3rem !important; }
  .bootstrap-dark .pr-sm-5,
  .bootstrap-dark .px-sm-5 {
    padding-right: 3rem !important; }
  .bootstrap-dark .pb-sm-5,
  .bootstrap-dark .py-sm-5 {
    padding-bottom: 3rem !important; }
  .bootstrap-dark .pl-sm-5,
  .bootstrap-dark .px-sm-5 {
    padding-left: 3rem !important; }
  .bootstrap-dark .m-sm-n1 {
    margin: -0.25rem !important; }
  .bootstrap-dark .mt-sm-n1,
  .bootstrap-dark .my-sm-n1 {
    margin-top: -0.25rem !important; }
  .bootstrap-dark .mr-sm-n1,
  .bootstrap-dark .mx-sm-n1 {
    margin-right: -0.25rem !important; }
  .bootstrap-dark .mb-sm-n1,
  .bootstrap-dark .my-sm-n1 {
    margin-bottom: -0.25rem !important; }
  .bootstrap-dark .ml-sm-n1,
  .bootstrap-dark .mx-sm-n1 {
    margin-left: -0.25rem !important; }
  .bootstrap-dark .m-sm-n2 {
    margin: -0.5rem !important; }
  .bootstrap-dark .mt-sm-n2,
  .bootstrap-dark .my-sm-n2 {
    margin-top: -0.5rem !important; }
  .bootstrap-dark .mr-sm-n2,
  .bootstrap-dark .mx-sm-n2 {
    margin-right: -0.5rem !important; }
  .bootstrap-dark .mb-sm-n2,
  .bootstrap-dark .my-sm-n2 {
    margin-bottom: -0.5rem !important; }
  .bootstrap-dark .ml-sm-n2,
  .bootstrap-dark .mx-sm-n2 {
    margin-left: -0.5rem !important; }
  .bootstrap-dark .m-sm-n3 {
    margin: -1rem !important; }
  .bootstrap-dark .mt-sm-n3,
  .bootstrap-dark .my-sm-n3 {
    margin-top: -1rem !important; }
  .bootstrap-dark .mr-sm-n3,
  .bootstrap-dark .mx-sm-n3 {
    margin-right: -1rem !important; }
  .bootstrap-dark .mb-sm-n3,
  .bootstrap-dark .my-sm-n3 {
    margin-bottom: -1rem !important; }
  .bootstrap-dark .ml-sm-n3,
  .bootstrap-dark .mx-sm-n3 {
    margin-left: -1rem !important; }
  .bootstrap-dark .m-sm-n4 {
    margin: -1.5rem !important; }
  .bootstrap-dark .mt-sm-n4,
  .bootstrap-dark .my-sm-n4 {
    margin-top: -1.5rem !important; }
  .bootstrap-dark .mr-sm-n4,
  .bootstrap-dark .mx-sm-n4 {
    margin-right: -1.5rem !important; }
  .bootstrap-dark .mb-sm-n4,
  .bootstrap-dark .my-sm-n4 {
    margin-bottom: -1.5rem !important; }
  .bootstrap-dark .ml-sm-n4,
  .bootstrap-dark .mx-sm-n4 {
    margin-left: -1.5rem !important; }
  .bootstrap-dark .m-sm-n5 {
    margin: -3rem !important; }
  .bootstrap-dark .mt-sm-n5,
  .bootstrap-dark .my-sm-n5 {
    margin-top: -3rem !important; }
  .bootstrap-dark .mr-sm-n5,
  .bootstrap-dark .mx-sm-n5 {
    margin-right: -3rem !important; }
  .bootstrap-dark .mb-sm-n5,
  .bootstrap-dark .my-sm-n5 {
    margin-bottom: -3rem !important; }
  .bootstrap-dark .ml-sm-n5,
  .bootstrap-dark .mx-sm-n5 {
    margin-left: -3rem !important; }
  .bootstrap-dark .m-sm-auto {
    margin: auto !important; }
  .bootstrap-dark .mt-sm-auto,
  .bootstrap-dark .my-sm-auto {
    margin-top: auto !important; }
  .bootstrap-dark .mr-sm-auto,
  .bootstrap-dark .mx-sm-auto {
    margin-right: auto !important; }
  .bootstrap-dark .mb-sm-auto,
  .bootstrap-dark .my-sm-auto {
    margin-bottom: auto !important; }
  .bootstrap-dark .ml-sm-auto,
  .bootstrap-dark .mx-sm-auto {
    margin-left: auto !important; } }

@media (min-width: 768px) {
  .bootstrap-dark .m-md-0 {
    margin: 0 !important; }
  .bootstrap-dark .mt-md-0,
  .bootstrap-dark .my-md-0 {
    margin-top: 0 !important; }
  .bootstrap-dark .mr-md-0,
  .bootstrap-dark .mx-md-0 {
    margin-right: 0 !important; }
  .bootstrap-dark .mb-md-0,
  .bootstrap-dark .my-md-0 {
    margin-bottom: 0 !important; }
  .bootstrap-dark .ml-md-0,
  .bootstrap-dark .mx-md-0 {
    margin-left: 0 !important; }
  .bootstrap-dark .m-md-1 {
    margin: 0.25rem !important; }
  .bootstrap-dark .mt-md-1,
  .bootstrap-dark .my-md-1 {
    margin-top: 0.25rem !important; }
  .bootstrap-dark .mr-md-1,
  .bootstrap-dark .mx-md-1 {
    margin-right: 0.25rem !important; }
  .bootstrap-dark .mb-md-1,
  .bootstrap-dark .my-md-1 {
    margin-bottom: 0.25rem !important; }
  .bootstrap-dark .ml-md-1,
  .bootstrap-dark .mx-md-1 {
    margin-left: 0.25rem !important; }
  .bootstrap-dark .m-md-2 {
    margin: 0.5rem !important; }
  .bootstrap-dark .mt-md-2,
  .bootstrap-dark .my-md-2 {
    margin-top: 0.5rem !important; }
  .bootstrap-dark .mr-md-2,
  .bootstrap-dark .mx-md-2 {
    margin-right: 0.5rem !important; }
  .bootstrap-dark .mb-md-2,
  .bootstrap-dark .my-md-2 {
    margin-bottom: 0.5rem !important; }
  .bootstrap-dark .ml-md-2,
  .bootstrap-dark .mx-md-2 {
    margin-left: 0.5rem !important; }
  .bootstrap-dark .m-md-3 {
    margin: 1rem !important; }
  .bootstrap-dark .mt-md-3,
  .bootstrap-dark .my-md-3 {
    margin-top: 1rem !important; }
  .bootstrap-dark .mr-md-3,
  .bootstrap-dark .mx-md-3 {
    margin-right: 1rem !important; }
  .bootstrap-dark .mb-md-3,
  .bootstrap-dark .my-md-3 {
    margin-bottom: 1rem !important; }
  .bootstrap-dark .ml-md-3,
  .bootstrap-dark .mx-md-3 {
    margin-left: 1rem !important; }
  .bootstrap-dark .m-md-4 {
    margin: 1.5rem !important; }
  .bootstrap-dark .mt-md-4,
  .bootstrap-dark .my-md-4 {
    margin-top: 1.5rem !important; }
  .bootstrap-dark .mr-md-4,
  .bootstrap-dark .mx-md-4 {
    margin-right: 1.5rem !important; }
  .bootstrap-dark .mb-md-4,
  .bootstrap-dark .my-md-4 {
    margin-bottom: 1.5rem !important; }
  .bootstrap-dark .ml-md-4,
  .bootstrap-dark .mx-md-4 {
    margin-left: 1.5rem !important; }
  .bootstrap-dark .m-md-5 {
    margin: 3rem !important; }
  .bootstrap-dark .mt-md-5,
  .bootstrap-dark .my-md-5 {
    margin-top: 3rem !important; }
  .bootstrap-dark .mr-md-5,
  .bootstrap-dark .mx-md-5 {
    margin-right: 3rem !important; }
  .bootstrap-dark .mb-md-5,
  .bootstrap-dark .my-md-5 {
    margin-bottom: 3rem !important; }
  .bootstrap-dark .ml-md-5,
  .bootstrap-dark .mx-md-5 {
    margin-left: 3rem !important; }
  .bootstrap-dark .p-md-0 {
    padding: 0 !important; }
  .bootstrap-dark .pt-md-0,
  .bootstrap-dark .py-md-0 {
    padding-top: 0 !important; }
  .bootstrap-dark .pr-md-0,
  .bootstrap-dark .px-md-0 {
    padding-right: 0 !important; }
  .bootstrap-dark .pb-md-0,
  .bootstrap-dark .py-md-0 {
    padding-bottom: 0 !important; }
  .bootstrap-dark .pl-md-0,
  .bootstrap-dark .px-md-0 {
    padding-left: 0 !important; }
  .bootstrap-dark .p-md-1 {
    padding: 0.25rem !important; }
  .bootstrap-dark .pt-md-1,
  .bootstrap-dark .py-md-1 {
    padding-top: 0.25rem !important; }
  .bootstrap-dark .pr-md-1,
  .bootstrap-dark .px-md-1 {
    padding-right: 0.25rem !important; }
  .bootstrap-dark .pb-md-1,
  .bootstrap-dark .py-md-1 {
    padding-bottom: 0.25rem !important; }
  .bootstrap-dark .pl-md-1,
  .bootstrap-dark .px-md-1 {
    padding-left: 0.25rem !important; }
  .bootstrap-dark .p-md-2 {
    padding: 0.5rem !important; }
  .bootstrap-dark .pt-md-2,
  .bootstrap-dark .py-md-2 {
    padding-top: 0.5rem !important; }
  .bootstrap-dark .pr-md-2,
  .bootstrap-dark .px-md-2 {
    padding-right: 0.5rem !important; }
  .bootstrap-dark .pb-md-2,
  .bootstrap-dark .py-md-2 {
    padding-bottom: 0.5rem !important; }
  .bootstrap-dark .pl-md-2,
  .bootstrap-dark .px-md-2 {
    padding-left: 0.5rem !important; }
  .bootstrap-dark .p-md-3 {
    padding: 1rem !important; }
  .bootstrap-dark .pt-md-3,
  .bootstrap-dark .py-md-3 {
    padding-top: 1rem !important; }
  .bootstrap-dark .pr-md-3,
  .bootstrap-dark .px-md-3 {
    padding-right: 1rem !important; }
  .bootstrap-dark .pb-md-3,
  .bootstrap-dark .py-md-3 {
    padding-bottom: 1rem !important; }
  .bootstrap-dark .pl-md-3,
  .bootstrap-dark .px-md-3 {
    padding-left: 1rem !important; }
  .bootstrap-dark .p-md-4 {
    padding: 1.5rem !important; }
  .bootstrap-dark .pt-md-4,
  .bootstrap-dark .py-md-4 {
    padding-top: 1.5rem !important; }
  .bootstrap-dark .pr-md-4,
  .bootstrap-dark .px-md-4 {
    padding-right: 1.5rem !important; }
  .bootstrap-dark .pb-md-4,
  .bootstrap-dark .py-md-4 {
    padding-bottom: 1.5rem !important; }
  .bootstrap-dark .pl-md-4,
  .bootstrap-dark .px-md-4 {
    padding-left: 1.5rem !important; }
  .bootstrap-dark .p-md-5 {
    padding: 3rem !important; }
  .bootstrap-dark .pt-md-5,
  .bootstrap-dark .py-md-5 {
    padding-top: 3rem !important; }
  .bootstrap-dark .pr-md-5,
  .bootstrap-dark .px-md-5 {
    padding-right: 3rem !important; }
  .bootstrap-dark .pb-md-5,
  .bootstrap-dark .py-md-5 {
    padding-bottom: 3rem !important; }
  .bootstrap-dark .pl-md-5,
  .bootstrap-dark .px-md-5 {
    padding-left: 3rem !important; }
  .bootstrap-dark .m-md-n1 {
    margin: -0.25rem !important; }
  .bootstrap-dark .mt-md-n1,
  .bootstrap-dark .my-md-n1 {
    margin-top: -0.25rem !important; }
  .bootstrap-dark .mr-md-n1,
  .bootstrap-dark .mx-md-n1 {
    margin-right: -0.25rem !important; }
  .bootstrap-dark .mb-md-n1,
  .bootstrap-dark .my-md-n1 {
    margin-bottom: -0.25rem !important; }
  .bootstrap-dark .ml-md-n1,
  .bootstrap-dark .mx-md-n1 {
    margin-left: -0.25rem !important; }
  .bootstrap-dark .m-md-n2 {
    margin: -0.5rem !important; }
  .bootstrap-dark .mt-md-n2,
  .bootstrap-dark .my-md-n2 {
    margin-top: -0.5rem !important; }
  .bootstrap-dark .mr-md-n2,
  .bootstrap-dark .mx-md-n2 {
    margin-right: -0.5rem !important; }
  .bootstrap-dark .mb-md-n2,
  .bootstrap-dark .my-md-n2 {
    margin-bottom: -0.5rem !important; }
  .bootstrap-dark .ml-md-n2,
  .bootstrap-dark .mx-md-n2 {
    margin-left: -0.5rem !important; }
  .bootstrap-dark .m-md-n3 {
    margin: -1rem !important; }
  .bootstrap-dark .mt-md-n3,
  .bootstrap-dark .my-md-n3 {
    margin-top: -1rem !important; }
  .bootstrap-dark .mr-md-n3,
  .bootstrap-dark .mx-md-n3 {
    margin-right: -1rem !important; }
  .bootstrap-dark .mb-md-n3,
  .bootstrap-dark .my-md-n3 {
    margin-bottom: -1rem !important; }
  .bootstrap-dark .ml-md-n3,
  .bootstrap-dark .mx-md-n3 {
    margin-left: -1rem !important; }
  .bootstrap-dark .m-md-n4 {
    margin: -1.5rem !important; }
  .bootstrap-dark .mt-md-n4,
  .bootstrap-dark .my-md-n4 {
    margin-top: -1.5rem !important; }
  .bootstrap-dark .mr-md-n4,
  .bootstrap-dark .mx-md-n4 {
    margin-right: -1.5rem !important; }
  .bootstrap-dark .mb-md-n4,
  .bootstrap-dark .my-md-n4 {
    margin-bottom: -1.5rem !important; }
  .bootstrap-dark .ml-md-n4,
  .bootstrap-dark .mx-md-n4 {
    margin-left: -1.5rem !important; }
  .bootstrap-dark .m-md-n5 {
    margin: -3rem !important; }
  .bootstrap-dark .mt-md-n5,
  .bootstrap-dark .my-md-n5 {
    margin-top: -3rem !important; }
  .bootstrap-dark .mr-md-n5,
  .bootstrap-dark .mx-md-n5 {
    margin-right: -3rem !important; }
  .bootstrap-dark .mb-md-n5,
  .bootstrap-dark .my-md-n5 {
    margin-bottom: -3rem !important; }
  .bootstrap-dark .ml-md-n5,
  .bootstrap-dark .mx-md-n5 {
    margin-left: -3rem !important; }
  .bootstrap-dark .m-md-auto {
    margin: auto !important; }
  .bootstrap-dark .mt-md-auto,
  .bootstrap-dark .my-md-auto {
    margin-top: auto !important; }
  .bootstrap-dark .mr-md-auto,
  .bootstrap-dark .mx-md-auto {
    margin-right: auto !important; }
  .bootstrap-dark .mb-md-auto,
  .bootstrap-dark .my-md-auto {
    margin-bottom: auto !important; }
  .bootstrap-dark .ml-md-auto,
  .bootstrap-dark .mx-md-auto {
    margin-left: auto !important; } }

@media (min-width: 992px) {
  .bootstrap-dark .m-lg-0 {
    margin: 0 !important; }
  .bootstrap-dark .mt-lg-0,
  .bootstrap-dark .my-lg-0 {
    margin-top: 0 !important; }
  .bootstrap-dark .mr-lg-0,
  .bootstrap-dark .mx-lg-0 {
    margin-right: 0 !important; }
  .bootstrap-dark .mb-lg-0,
  .bootstrap-dark .my-lg-0 {
    margin-bottom: 0 !important; }
  .bootstrap-dark .ml-lg-0,
  .bootstrap-dark .mx-lg-0 {
    margin-left: 0 !important; }
  .bootstrap-dark .m-lg-1 {
    margin: 0.25rem !important; }
  .bootstrap-dark .mt-lg-1,
  .bootstrap-dark .my-lg-1 {
    margin-top: 0.25rem !important; }
  .bootstrap-dark .mr-lg-1,
  .bootstrap-dark .mx-lg-1 {
    margin-right: 0.25rem !important; }
  .bootstrap-dark .mb-lg-1,
  .bootstrap-dark .my-lg-1 {
    margin-bottom: 0.25rem !important; }
  .bootstrap-dark .ml-lg-1,
  .bootstrap-dark .mx-lg-1 {
    margin-left: 0.25rem !important; }
  .bootstrap-dark .m-lg-2 {
    margin: 0.5rem !important; }
  .bootstrap-dark .mt-lg-2,
  .bootstrap-dark .my-lg-2 {
    margin-top: 0.5rem !important; }
  .bootstrap-dark .mr-lg-2,
  .bootstrap-dark .mx-lg-2 {
    margin-right: 0.5rem !important; }
  .bootstrap-dark .mb-lg-2,
  .bootstrap-dark .my-lg-2 {
    margin-bottom: 0.5rem !important; }
  .bootstrap-dark .ml-lg-2,
  .bootstrap-dark .mx-lg-2 {
    margin-left: 0.5rem !important; }
  .bootstrap-dark .m-lg-3 {
    margin: 1rem !important; }
  .bootstrap-dark .mt-lg-3,
  .bootstrap-dark .my-lg-3 {
    margin-top: 1rem !important; }
  .bootstrap-dark .mr-lg-3,
  .bootstrap-dark .mx-lg-3 {
    margin-right: 1rem !important; }
  .bootstrap-dark .mb-lg-3,
  .bootstrap-dark .my-lg-3 {
    margin-bottom: 1rem !important; }
  .bootstrap-dark .ml-lg-3,
  .bootstrap-dark .mx-lg-3 {
    margin-left: 1rem !important; }
  .bootstrap-dark .m-lg-4 {
    margin: 1.5rem !important; }
  .bootstrap-dark .mt-lg-4,
  .bootstrap-dark .my-lg-4 {
    margin-top: 1.5rem !important; }
  .bootstrap-dark .mr-lg-4,
  .bootstrap-dark .mx-lg-4 {
    margin-right: 1.5rem !important; }
  .bootstrap-dark .mb-lg-4,
  .bootstrap-dark .my-lg-4 {
    margin-bottom: 1.5rem !important; }
  .bootstrap-dark .ml-lg-4,
  .bootstrap-dark .mx-lg-4 {
    margin-left: 1.5rem !important; }
  .bootstrap-dark .m-lg-5 {
    margin: 3rem !important; }
  .bootstrap-dark .mt-lg-5,
  .bootstrap-dark .my-lg-5 {
    margin-top: 3rem !important; }
  .bootstrap-dark .mr-lg-5,
  .bootstrap-dark .mx-lg-5 {
    margin-right: 3rem !important; }
  .bootstrap-dark .mb-lg-5,
  .bootstrap-dark .my-lg-5 {
    margin-bottom: 3rem !important; }
  .bootstrap-dark .ml-lg-5,
  .bootstrap-dark .mx-lg-5 {
    margin-left: 3rem !important; }
  .bootstrap-dark .p-lg-0 {
    padding: 0 !important; }
  .bootstrap-dark .pt-lg-0,
  .bootstrap-dark .py-lg-0 {
    padding-top: 0 !important; }
  .bootstrap-dark .pr-lg-0,
  .bootstrap-dark .px-lg-0 {
    padding-right: 0 !important; }
  .bootstrap-dark .pb-lg-0,
  .bootstrap-dark .py-lg-0 {
    padding-bottom: 0 !important; }
  .bootstrap-dark .pl-lg-0,
  .bootstrap-dark .px-lg-0 {
    padding-left: 0 !important; }
  .bootstrap-dark .p-lg-1 {
    padding: 0.25rem !important; }
  .bootstrap-dark .pt-lg-1,
  .bootstrap-dark .py-lg-1 {
    padding-top: 0.25rem !important; }
  .bootstrap-dark .pr-lg-1,
  .bootstrap-dark .px-lg-1 {
    padding-right: 0.25rem !important; }
  .bootstrap-dark .pb-lg-1,
  .bootstrap-dark .py-lg-1 {
    padding-bottom: 0.25rem !important; }
  .bootstrap-dark .pl-lg-1,
  .bootstrap-dark .px-lg-1 {
    padding-left: 0.25rem !important; }
  .bootstrap-dark .p-lg-2 {
    padding: 0.5rem !important; }
  .bootstrap-dark .pt-lg-2,
  .bootstrap-dark .py-lg-2 {
    padding-top: 0.5rem !important; }
  .bootstrap-dark .pr-lg-2,
  .bootstrap-dark .px-lg-2 {
    padding-right: 0.5rem !important; }
  .bootstrap-dark .pb-lg-2,
  .bootstrap-dark .py-lg-2 {
    padding-bottom: 0.5rem !important; }
  .bootstrap-dark .pl-lg-2,
  .bootstrap-dark .px-lg-2 {
    padding-left: 0.5rem !important; }
  .bootstrap-dark .p-lg-3 {
    padding: 1rem !important; }
  .bootstrap-dark .pt-lg-3,
  .bootstrap-dark .py-lg-3 {
    padding-top: 1rem !important; }
  .bootstrap-dark .pr-lg-3,
  .bootstrap-dark .px-lg-3 {
    padding-right: 1rem !important; }
  .bootstrap-dark .pb-lg-3,
  .bootstrap-dark .py-lg-3 {
    padding-bottom: 1rem !important; }
  .bootstrap-dark .pl-lg-3,
  .bootstrap-dark .px-lg-3 {
    padding-left: 1rem !important; }
  .bootstrap-dark .p-lg-4 {
    padding: 1.5rem !important; }
  .bootstrap-dark .pt-lg-4,
  .bootstrap-dark .py-lg-4 {
    padding-top: 1.5rem !important; }
  .bootstrap-dark .pr-lg-4,
  .bootstrap-dark .px-lg-4 {
    padding-right: 1.5rem !important; }
  .bootstrap-dark .pb-lg-4,
  .bootstrap-dark .py-lg-4 {
    padding-bottom: 1.5rem !important; }
  .bootstrap-dark .pl-lg-4,
  .bootstrap-dark .px-lg-4 {
    padding-left: 1.5rem !important; }
  .bootstrap-dark .p-lg-5 {
    padding: 3rem !important; }
  .bootstrap-dark .pt-lg-5,
  .bootstrap-dark .py-lg-5 {
    padding-top: 3rem !important; }
  .bootstrap-dark .pr-lg-5,
  .bootstrap-dark .px-lg-5 {
    padding-right: 3rem !important; }
  .bootstrap-dark .pb-lg-5,
  .bootstrap-dark .py-lg-5 {
    padding-bottom: 3rem !important; }
  .bootstrap-dark .pl-lg-5,
  .bootstrap-dark .px-lg-5 {
    padding-left: 3rem !important; }
  .bootstrap-dark .m-lg-n1 {
    margin: -0.25rem !important; }
  .bootstrap-dark .mt-lg-n1,
  .bootstrap-dark .my-lg-n1 {
    margin-top: -0.25rem !important; }
  .bootstrap-dark .mr-lg-n1,
  .bootstrap-dark .mx-lg-n1 {
    margin-right: -0.25rem !important; }
  .bootstrap-dark .mb-lg-n1,
  .bootstrap-dark .my-lg-n1 {
    margin-bottom: -0.25rem !important; }
  .bootstrap-dark .ml-lg-n1,
  .bootstrap-dark .mx-lg-n1 {
    margin-left: -0.25rem !important; }
  .bootstrap-dark .m-lg-n2 {
    margin: -0.5rem !important; }
  .bootstrap-dark .mt-lg-n2,
  .bootstrap-dark .my-lg-n2 {
    margin-top: -0.5rem !important; }
  .bootstrap-dark .mr-lg-n2,
  .bootstrap-dark .mx-lg-n2 {
    margin-right: -0.5rem !important; }
  .bootstrap-dark .mb-lg-n2,
  .bootstrap-dark .my-lg-n2 {
    margin-bottom: -0.5rem !important; }
  .bootstrap-dark .ml-lg-n2,
  .bootstrap-dark .mx-lg-n2 {
    margin-left: -0.5rem !important; }
  .bootstrap-dark .m-lg-n3 {
    margin: -1rem !important; }
  .bootstrap-dark .mt-lg-n3,
  .bootstrap-dark .my-lg-n3 {
    margin-top: -1rem !important; }
  .bootstrap-dark .mr-lg-n3,
  .bootstrap-dark .mx-lg-n3 {
    margin-right: -1rem !important; }
  .bootstrap-dark .mb-lg-n3,
  .bootstrap-dark .my-lg-n3 {
    margin-bottom: -1rem !important; }
  .bootstrap-dark .ml-lg-n3,
  .bootstrap-dark .mx-lg-n3 {
    margin-left: -1rem !important; }
  .bootstrap-dark .m-lg-n4 {
    margin: -1.5rem !important; }
  .bootstrap-dark .mt-lg-n4,
  .bootstrap-dark .my-lg-n4 {
    margin-top: -1.5rem !important; }
  .bootstrap-dark .mr-lg-n4,
  .bootstrap-dark .mx-lg-n4 {
    margin-right: -1.5rem !important; }
  .bootstrap-dark .mb-lg-n4,
  .bootstrap-dark .my-lg-n4 {
    margin-bottom: -1.5rem !important; }
  .bootstrap-dark .ml-lg-n4,
  .bootstrap-dark .mx-lg-n4 {
    margin-left: -1.5rem !important; }
  .bootstrap-dark .m-lg-n5 {
    margin: -3rem !important; }
  .bootstrap-dark .mt-lg-n5,
  .bootstrap-dark .my-lg-n5 {
    margin-top: -3rem !important; }
  .bootstrap-dark .mr-lg-n5,
  .bootstrap-dark .mx-lg-n5 {
    margin-right: -3rem !important; }
  .bootstrap-dark .mb-lg-n5,
  .bootstrap-dark .my-lg-n5 {
    margin-bottom: -3rem !important; }
  .bootstrap-dark .ml-lg-n5,
  .bootstrap-dark .mx-lg-n5 {
    margin-left: -3rem !important; }
  .bootstrap-dark .m-lg-auto {
    margin: auto !important; }
  .bootstrap-dark .mt-lg-auto,
  .bootstrap-dark .my-lg-auto {
    margin-top: auto !important; }
  .bootstrap-dark .mr-lg-auto,
  .bootstrap-dark .mx-lg-auto {
    margin-right: auto !important; }
  .bootstrap-dark .mb-lg-auto,
  .bootstrap-dark .my-lg-auto {
    margin-bottom: auto !important; }
  .bootstrap-dark .ml-lg-auto,
  .bootstrap-dark .mx-lg-auto {
    margin-left: auto !important; } }

@media (min-width: 1200px) {
  .bootstrap-dark .m-xl-0 {
    margin: 0 !important; }
  .bootstrap-dark .mt-xl-0,
  .bootstrap-dark .my-xl-0 {
    margin-top: 0 !important; }
  .bootstrap-dark .mr-xl-0,
  .bootstrap-dark .mx-xl-0 {
    margin-right: 0 !important; }
  .bootstrap-dark .mb-xl-0,
  .bootstrap-dark .my-xl-0 {
    margin-bottom: 0 !important; }
  .bootstrap-dark .ml-xl-0,
  .bootstrap-dark .mx-xl-0 {
    margin-left: 0 !important; }
  .bootstrap-dark .m-xl-1 {
    margin: 0.25rem !important; }
  .bootstrap-dark .mt-xl-1,
  .bootstrap-dark .my-xl-1 {
    margin-top: 0.25rem !important; }
  .bootstrap-dark .mr-xl-1,
  .bootstrap-dark .mx-xl-1 {
    margin-right: 0.25rem !important; }
  .bootstrap-dark .mb-xl-1,
  .bootstrap-dark .my-xl-1 {
    margin-bottom: 0.25rem !important; }
  .bootstrap-dark .ml-xl-1,
  .bootstrap-dark .mx-xl-1 {
    margin-left: 0.25rem !important; }
  .bootstrap-dark .m-xl-2 {
    margin: 0.5rem !important; }
  .bootstrap-dark .mt-xl-2,
  .bootstrap-dark .my-xl-2 {
    margin-top: 0.5rem !important; }
  .bootstrap-dark .mr-xl-2,
  .bootstrap-dark .mx-xl-2 {
    margin-right: 0.5rem !important; }
  .bootstrap-dark .mb-xl-2,
  .bootstrap-dark .my-xl-2 {
    margin-bottom: 0.5rem !important; }
  .bootstrap-dark .ml-xl-2,
  .bootstrap-dark .mx-xl-2 {
    margin-left: 0.5rem !important; }
  .bootstrap-dark .m-xl-3 {
    margin: 1rem !important; }
  .bootstrap-dark .mt-xl-3,
  .bootstrap-dark .my-xl-3 {
    margin-top: 1rem !important; }
  .bootstrap-dark .mr-xl-3,
  .bootstrap-dark .mx-xl-3 {
    margin-right: 1rem !important; }
  .bootstrap-dark .mb-xl-3,
  .bootstrap-dark .my-xl-3 {
    margin-bottom: 1rem !important; }
  .bootstrap-dark .ml-xl-3,
  .bootstrap-dark .mx-xl-3 {
    margin-left: 1rem !important; }
  .bootstrap-dark .m-xl-4 {
    margin: 1.5rem !important; }
  .bootstrap-dark .mt-xl-4,
  .bootstrap-dark .my-xl-4 {
    margin-top: 1.5rem !important; }
  .bootstrap-dark .mr-xl-4,
  .bootstrap-dark .mx-xl-4 {
    margin-right: 1.5rem !important; }
  .bootstrap-dark .mb-xl-4,
  .bootstrap-dark .my-xl-4 {
    margin-bottom: 1.5rem !important; }
  .bootstrap-dark .ml-xl-4,
  .bootstrap-dark .mx-xl-4 {
    margin-left: 1.5rem !important; }
  .bootstrap-dark .m-xl-5 {
    margin: 3rem !important; }
  .bootstrap-dark .mt-xl-5,
  .bootstrap-dark .my-xl-5 {
    margin-top: 3rem !important; }
  .bootstrap-dark .mr-xl-5,
  .bootstrap-dark .mx-xl-5 {
    margin-right: 3rem !important; }
  .bootstrap-dark .mb-xl-5,
  .bootstrap-dark .my-xl-5 {
    margin-bottom: 3rem !important; }
  .bootstrap-dark .ml-xl-5,
  .bootstrap-dark .mx-xl-5 {
    margin-left: 3rem !important; }
  .bootstrap-dark .p-xl-0 {
    padding: 0 !important; }
  .bootstrap-dark .pt-xl-0,
  .bootstrap-dark .py-xl-0 {
    padding-top: 0 !important; }
  .bootstrap-dark .pr-xl-0,
  .bootstrap-dark .px-xl-0 {
    padding-right: 0 !important; }
  .bootstrap-dark .pb-xl-0,
  .bootstrap-dark .py-xl-0 {
    padding-bottom: 0 !important; }
  .bootstrap-dark .pl-xl-0,
  .bootstrap-dark .px-xl-0 {
    padding-left: 0 !important; }
  .bootstrap-dark .p-xl-1 {
    padding: 0.25rem !important; }
  .bootstrap-dark .pt-xl-1,
  .bootstrap-dark .py-xl-1 {
    padding-top: 0.25rem !important; }
  .bootstrap-dark .pr-xl-1,
  .bootstrap-dark .px-xl-1 {
    padding-right: 0.25rem !important; }
  .bootstrap-dark .pb-xl-1,
  .bootstrap-dark .py-xl-1 {
    padding-bottom: 0.25rem !important; }
  .bootstrap-dark .pl-xl-1,
  .bootstrap-dark .px-xl-1 {
    padding-left: 0.25rem !important; }
  .bootstrap-dark .p-xl-2 {
    padding: 0.5rem !important; }
  .bootstrap-dark .pt-xl-2,
  .bootstrap-dark .py-xl-2 {
    padding-top: 0.5rem !important; }
  .bootstrap-dark .pr-xl-2,
  .bootstrap-dark .px-xl-2 {
    padding-right: 0.5rem !important; }
  .bootstrap-dark .pb-xl-2,
  .bootstrap-dark .py-xl-2 {
    padding-bottom: 0.5rem !important; }
  .bootstrap-dark .pl-xl-2,
  .bootstrap-dark .px-xl-2 {
    padding-left: 0.5rem !important; }
  .bootstrap-dark .p-xl-3 {
    padding: 1rem !important; }
  .bootstrap-dark .pt-xl-3,
  .bootstrap-dark .py-xl-3 {
    padding-top: 1rem !important; }
  .bootstrap-dark .pr-xl-3,
  .bootstrap-dark .px-xl-3 {
    padding-right: 1rem !important; }
  .bootstrap-dark .pb-xl-3,
  .bootstrap-dark .py-xl-3 {
    padding-bottom: 1rem !important; }
  .bootstrap-dark .pl-xl-3,
  .bootstrap-dark .px-xl-3 {
    padding-left: 1rem !important; }
  .bootstrap-dark .p-xl-4 {
    padding: 1.5rem !important; }
  .bootstrap-dark .pt-xl-4,
  .bootstrap-dark .py-xl-4 {
    padding-top: 1.5rem !important; }
  .bootstrap-dark .pr-xl-4,
  .bootstrap-dark .px-xl-4 {
    padding-right: 1.5rem !important; }
  .bootstrap-dark .pb-xl-4,
  .bootstrap-dark .py-xl-4 {
    padding-bottom: 1.5rem !important; }
  .bootstrap-dark .pl-xl-4,
  .bootstrap-dark .px-xl-4 {
    padding-left: 1.5rem !important; }
  .bootstrap-dark .p-xl-5 {
    padding: 3rem !important; }
  .bootstrap-dark .pt-xl-5,
  .bootstrap-dark .py-xl-5 {
    padding-top: 3rem !important; }
  .bootstrap-dark .pr-xl-5,
  .bootstrap-dark .px-xl-5 {
    padding-right: 3rem !important; }
  .bootstrap-dark .pb-xl-5,
  .bootstrap-dark .py-xl-5 {
    padding-bottom: 3rem !important; }
  .bootstrap-dark .pl-xl-5,
  .bootstrap-dark .px-xl-5 {
    padding-left: 3rem !important; }
  .bootstrap-dark .m-xl-n1 {
    margin: -0.25rem !important; }
  .bootstrap-dark .mt-xl-n1,
  .bootstrap-dark .my-xl-n1 {
    margin-top: -0.25rem !important; }
  .bootstrap-dark .mr-xl-n1,
  .bootstrap-dark .mx-xl-n1 {
    margin-right: -0.25rem !important; }
  .bootstrap-dark .mb-xl-n1,
  .bootstrap-dark .my-xl-n1 {
    margin-bottom: -0.25rem !important; }
  .bootstrap-dark .ml-xl-n1,
  .bootstrap-dark .mx-xl-n1 {
    margin-left: -0.25rem !important; }
  .bootstrap-dark .m-xl-n2 {
    margin: -0.5rem !important; }
  .bootstrap-dark .mt-xl-n2,
  .bootstrap-dark .my-xl-n2 {
    margin-top: -0.5rem !important; }
  .bootstrap-dark .mr-xl-n2,
  .bootstrap-dark .mx-xl-n2 {
    margin-right: -0.5rem !important; }
  .bootstrap-dark .mb-xl-n2,
  .bootstrap-dark .my-xl-n2 {
    margin-bottom: -0.5rem !important; }
  .bootstrap-dark .ml-xl-n2,
  .bootstrap-dark .mx-xl-n2 {
    margin-left: -0.5rem !important; }
  .bootstrap-dark .m-xl-n3 {
    margin: -1rem !important; }
  .bootstrap-dark .mt-xl-n3,
  .bootstrap-dark .my-xl-n3 {
    margin-top: -1rem !important; }
  .bootstrap-dark .mr-xl-n3,
  .bootstrap-dark .mx-xl-n3 {
    margin-right: -1rem !important; }
  .bootstrap-dark .mb-xl-n3,
  .bootstrap-dark .my-xl-n3 {
    margin-bottom: -1rem !important; }
  .bootstrap-dark .ml-xl-n3,
  .bootstrap-dark .mx-xl-n3 {
    margin-left: -1rem !important; }
  .bootstrap-dark .m-xl-n4 {
    margin: -1.5rem !important; }
  .bootstrap-dark .mt-xl-n4,
  .bootstrap-dark .my-xl-n4 {
    margin-top: -1.5rem !important; }
  .bootstrap-dark .mr-xl-n4,
  .bootstrap-dark .mx-xl-n4 {
    margin-right: -1.5rem !important; }
  .bootstrap-dark .mb-xl-n4,
  .bootstrap-dark .my-xl-n4 {
    margin-bottom: -1.5rem !important; }
  .bootstrap-dark .ml-xl-n4,
  .bootstrap-dark .mx-xl-n4 {
    margin-left: -1.5rem !important; }
  .bootstrap-dark .m-xl-n5 {
    margin: -3rem !important; }
  .bootstrap-dark .mt-xl-n5,
  .bootstrap-dark .my-xl-n5 {
    margin-top: -3rem !important; }
  .bootstrap-dark .mr-xl-n5,
  .bootstrap-dark .mx-xl-n5 {
    margin-right: -3rem !important; }
  .bootstrap-dark .mb-xl-n5,
  .bootstrap-dark .my-xl-n5 {
    margin-bottom: -3rem !important; }
  .bootstrap-dark .ml-xl-n5,
  .bootstrap-dark .mx-xl-n5 {
    margin-left: -3rem !important; }
  .bootstrap-dark .m-xl-auto {
    margin: auto !important; }
  .bootstrap-dark .mt-xl-auto,
  .bootstrap-dark .my-xl-auto {
    margin-top: auto !important; }
  .bootstrap-dark .mr-xl-auto,
  .bootstrap-dark .mx-xl-auto {
    margin-right: auto !important; }
  .bootstrap-dark .mb-xl-auto,
  .bootstrap-dark .my-xl-auto {
    margin-bottom: auto !important; }
  .bootstrap-dark .ml-xl-auto,
  .bootstrap-dark .mx-xl-auto {
    margin-left: auto !important; } }

.bootstrap-dark .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); }

.bootstrap-dark .text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important; }

.bootstrap-dark .text-justify {
  text-align: justify !important; }

.bootstrap-dark .text-oppose {
  box-sizing: border-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between; }

.bootstrap-dark .text-wrap {
  white-space: normal !important; }

.bootstrap-dark .text-nowrap {
  white-space: nowrap !important; }

.bootstrap-dark .text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.bootstrap-dark .text-left {
  text-align: left !important; }

.bootstrap-dark .text-right {
  text-align: right !important; }

.bootstrap-dark .text-center {
  text-align: center !important; }

@media (min-width: 576px) {
  .bootstrap-dark .text-sm-left {
    text-align: left !important; }
  .bootstrap-dark .text-sm-right {
    text-align: right !important; }
  .bootstrap-dark .text-sm-center {
    text-align: center !important; } }

@media (min-width: 768px) {
  .bootstrap-dark .text-md-left {
    text-align: left !important; }
  .bootstrap-dark .text-md-right {
    text-align: right !important; }
  .bootstrap-dark .text-md-center {
    text-align: center !important; } }

@media (min-width: 992px) {
  .bootstrap-dark .text-lg-left {
    text-align: left !important; }
  .bootstrap-dark .text-lg-right {
    text-align: right !important; }
  .bootstrap-dark .text-lg-center {
    text-align: center !important; } }

@media (min-width: 1200px) {
  .bootstrap-dark .text-xl-left {
    text-align: left !important; }
  .bootstrap-dark .text-xl-right {
    text-align: right !important; }
  .bootstrap-dark .text-xl-center {
    text-align: center !important; } }

.bootstrap-dark .text-lowercase {
  text-transform: lowercase !important; }

.bootstrap-dark .text-uppercase {
  text-transform: uppercase !important; }

.bootstrap-dark .text-capitalize {
  text-transform: capitalize !important; }

.bootstrap-dark .font-weight-light {
  font-weight: 300 !important; }

.bootstrap-dark .font-weight-lighter {
  font-weight: lighter !important; }

.bootstrap-dark .font-weight-normal {
  font-weight: 400 !important; }

.bootstrap-dark .font-weight-bold {
  font-weight: 700 !important; }

.bootstrap-dark .font-weight-bolder {
  font-weight: bolder !important; }

.bootstrap-dark .font-italic {
  font-style: italic !important; }

.bootstrap-dark .text-white {
  color: #fff !important; }

.bootstrap-dark .text-primary {
  color: #007bff !important; }

.bootstrap-dark a.text-primary:hover, .bootstrap-dark a.text-primary:focus {
  color: #0056b3 !important; }

.bootstrap-dark .text-secondary {
  color: #6c757d !important; }

.bootstrap-dark a.text-secondary:hover, .bootstrap-dark a.text-secondary:focus {
  color: #494f54 !important; }

.bootstrap-dark .text-success {
  color: #28a745 !important; }

.bootstrap-dark a.text-success:hover, .bootstrap-dark a.text-success:focus {
  color: #19692c !important; }

.bootstrap-dark .text-info {
  color: #17a2b8 !important; }

.bootstrap-dark a.text-info:hover, .bootstrap-dark a.text-info:focus {
  color: #0f6674 !important; }

.bootstrap-dark .text-warning {
  color: #ffc107 !important; }

.bootstrap-dark a.text-warning:hover, .bootstrap-dark a.text-warning:focus {
  color: #ba8b00 !important; }

.bootstrap-dark .text-danger {
  color: #dc3545 !important; }

.bootstrap-dark a.text-danger:hover, .bootstrap-dark a.text-danger:focus {
  color: #a71d2a !important; }

.bootstrap-dark .text-light {
  color: #f8f9fa !important; }

.bootstrap-dark a.text-light:hover, .bootstrap-dark a.text-light:focus {
  color: #cbd3da !important; }

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

.bootstrap-dark a.text-dark:hover, .bootstrap-dark a.text-dark:focus {
  color: #121416 !important; }

.bootstrap-dark .text-body {
  color: #d3d3d3 !important; }

.bootstrap-dark .text-muted {
  color: #6c757d !important; }

.bootstrap-dark .text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important; }

.bootstrap-dark .text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important; }

.bootstrap-dark .text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.bootstrap-dark .text-decoration-none {
  text-decoration: none !important; }

.bootstrap-dark .text-break {
  word-wrap: break-word !important; }

.bootstrap-dark .text-reset {
  color: inherit !important; }

.bootstrap-dark .visible {
  visibility: visible !important; }

.bootstrap-dark .invisible {
  visibility: hidden !important; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvZ2dsZS1ib290c3RyYXAtZGFyay5zY3NzIiwiX2RhcmstdmFyaWFibGVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29kZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCJtaXhpbnMvX2RhcmstdGFibGUtcm93LnNjc3MiLCJfZGFyay10YWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIl9mb3JtLW92ZXJyaWRlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCJfZGFyay1pbnB1dC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2p1bWJvdHJvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19pbnRlcmFjdGlvbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0E7RUFDSSx1QkFBdUI7RUFDdkIsaUJBQWlCO0VBQ2pCLDhCQUE4QjtFQUM5Qiw2Q0NBVyxFQUFBOztBREdmO0VBQ0ksU0FBUztFQUNULGtNRXdRK007RUMzSjdNLGVBdENZO0VIckVkLGdCRWlSNkI7RUZoUjdCLGdCRXFSNkI7RUZwUjdCLGNDb0JpQjtFRG5CakIsZ0JBQWdCO0VBQ2hCLHlCQ2lCaUIsRUFBQTs7QURkckI7RUl2QkksZUFBYztFQUFkLGlCQUFjO0VBQWQsaUJBQWM7RUFBZCxlQUFjO0VBQWQsY0FBYztFQUFkLGlCQUFjO0VBQWQsaUJBQWM7RUFBZCxnQkFBYztFQUFkLGVBQWM7RUFBZCxlQUFjO0VBQWQsYUFBYztFQUFkLGVBQWM7RUFBZCxvQkFBYztFQUlkLGtCQUFj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QUFBOztBRjNSakM7RUdvR00saUJBdENZO0VHdERoQixnQko0UitCO0VJM1IvQixnQkprUitCLEVBQUE7O0FGM1JqQztFR29HTSxpQkF0Q1k7RUdqRGhCLGdCSndSK0I7RUl2Ui9CLGdCSjZRK0IsRUFBQTs7QUYzUmpDO0VHb0dNLGlCQXRDWTtFRzVDaEIsZ0JKb1IrQjtFSW5SL0IsZ0JKd1ErQixFQUFBOztBRjNSakM7RU00QkUsZ0JKbUZXO0VJbEZYLG1CSmtGVztFSWpGWCxTQUFTO0VBQ1QsOENMdkRhLEVBQUE7O0FEd0JmOztFRzZDSSxjQUFXO0VHSGIsZ0JKZ08rQixFQUFBOztBRjFRakM7O0VNK0NFLGNKd1FnQztFSXZRaEMseUJKZ1JtQyxFQUFBOztBRmhVckM7RU92QkUsZUFBZTtFQUNmLGdCQUFnQixFQUFBOztBUHNCbEI7RU92QkUsZUFBZTtFQUNmLGdCQUFnQixFQUFBOztBUHNCbEI7RU1pRUUscUJBQXFCLEVBQUE7RU5qRXZCO0lNb0VJLG9CSjBQK0IsRUFBQTs7QUY5VG5DO0VHNkNJLGNBQVc7RUdtQ2IseUJBQXlCLEVBQUE7O0FOaEYzQjtFTXFGRSxtQkowQlc7RUNYUCxrQkF0Q1ksRUFBQTs7QUg5RGxCO0VNMEZFLGNBQWM7RUg3Q1osY0FBVztFRytDYixjSjFHZ0IsRUFBQTtFRmNsQjtJTStGSSxxQkFBcUIsRUFBQTs7QU4vRnpCO0VRaEJFLGVBQWU7RUFHZixZQUFZLEVBQUE7O0FSYWQ7RVNiRSxnQlBvZ0N3QztFT25nQ3hDLHNCUFJhO0VPU2IseUJQTmdCO0VRUWQsc0JSa09nQztFTXpPbEMsZUFBZTtFQUdmLFlBQVksRUFBQTs7QVJhZDtFU0dFLHFCQUFxQixFQUFBOztBVEh2QjtFU09FLHFCQUEwQjtFQUMxQixjQUFjLEVBQUE7O0FUUmhCO0VHNkNJLGNBQVc7RU1oQ2IsY1AzQmdCLEVBQUE7O0FGY2xCO0VHNkNJLGdCQUFXO0VRckViLGNUb0NlO0VTbkNmLHFCQUFxQixFQUFBO0VBR3JCO0lBQ0UsY0FBYyxFQUFBOztBWG1CbEI7RVdiRSxzQlR3bEN1QztFQzloQ3JDLGdCQUFXO0VReERiLFdUVGE7RVNVYix5QlREZ0I7RVFFZCxxQlJvTytCLEVBQUE7RUYzTm5DO0lXTEksVUFBVTtJUmtEVixlQUFXO0lRaERYLGdCVDhRNkIsRUFBQTs7QUYzUWpDO0VXSUUsY0FBYztFUnlDWixnQkFBVztFUXZDYixjVGpCZ0IsRUFBQTtFRldsQjtJRzZDSSxrQkFBVztJUWxDWCxjQUFjO0lBQ2Qsa0JBQWtCLEVBQUE7O0FYWnRCO0VXa0JFLGlCVCtqQ3VDO0VTOWpDdkMsa0JBQWtCLEVBQUE7O0FYbkJwQjtFWXRCRSxXQUFXO0VBQ1gsbUJBQTBCO0VBQzFCLGtCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIsaUJBQWlCLEVBQUE7RUNtRGY7SWJqQ0o7TVlWTSxnQlZ1TUssRUFBQSxFWS9NUjtFRG1EQztJYmpDSjtNWVZNLGdCVndNSyxFQUFBLEVZaE5SO0VEbURDO0liakNKO01ZVk0sZ0JWeU1LLEVBQUEsRVlqTlI7RURtREM7SWJqQ0o7TVlWTSxpQlYwTU0sRUFBQSxFWWxOVDs7QWRrQkg7RVl0QkUsV0FBVztFQUNYLG1CQUEwQjtFQUMxQixrQkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLGlCQUFpQixFQUFBOztBQ21EZjtFYmpDSjtJY0hRLGdCWmdNRyxFQUFBLEVZL0xKOztBRG1DSDtFYmpDSjtJY0hRLGdCWmlNRyxFQUFBLEVZaE1KOztBRG1DSDtFYmpDSjtJY0hRLGdCWmtNRyxFQUFBLEVZak1KOztBRG1DSDtFYmpDSjtJY0hRLGlCWm1NSSxFQUFBLEVZbE1MOztBZEVQO0VZSkUsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBMEI7RUFDMUIsa0JBQXlCLEVBQUE7O0FaQzNCO0VjZ0NJLGVBQWU7RUFDZixjQUFjLEVBQUE7RWRqQ2xCOztJY3FDTSxnQkFBZ0I7SUFDaEIsZUFBZSxFQUFBOztBZHRDckI7Ozs7OztFZW5CSSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLG1CQUEwQjtFQUMxQixrQkFBeUIsRUFBQTs7QWZnQjdCO0VlT1EsYUFBYTtFQUNiLFlBQVk7RUFDWixZQUFZO0VBQ1osZUFB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WmpCekM7SVlhRSxtQkFBc0M7SUFJdEMsb0JBQXVDLEVBQUE7RVpqQnpDO0lZYUUsbUJBQXNDO0lBSXRDLG9CQUF1QyxFQUFBO0VaakJ6QztJWWFFLGNBQXNDO0lBSXRDLGVBQXVDLEVBQUE7RVpqQnpDO0llaUM4QixTQUFTLEVBQUE7RWZqQ3ZDO0llbUM2QixTYnVLRyxFQUFBO0VGMU1oQztJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsUUFEWixFQUFBO0VmckNwQjtJZXNDZ0MsU0FEWixFQUFBO0VmckNwQjtJZXNDZ0MsU0FEWixFQUFBO0VmckNwQjtJZXNDZ0MsU0FEWixFQUFBO0VmckNwQjtJWTRCRSxjQUE0QixFQUFBO0VaNUI5QjtJWTRCRSxxQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsc0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLGdCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsc0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLGdCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsc0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLGdCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsc0JBQThDLEVBQUEsRUdtQm5DOztBZi9DYjtFZ0J0QkUsV0FBVztFQUNYLG1CZG9JVztFY25JWCxjZm1DbUIsRUFBQTtFRGZyQjs7SWdCZkksZ0Jkd1ZnQztJY3ZWaEMsbUJBQW1CO0lBQ25CLDZCZkhjLEVBQUE7RURnQmxCO0lnQlRJLHNCQUFzQjtJQUN0QixnQ2ZSYyxFQUFBO0VEZ0JsQjtJZ0JKSSw2QmZaYyxFQUFBOztBRGdCbEI7O0VnQlFJLGVka1UrQixFQUFBOztBRjFVbkM7RWdCa0JFLHlCZmxDZ0IsRUFBQTtFRGdCbEI7O0lnQnNCSSx5QmZ0Q2MsRUFBQTtFRGdCbEI7O0lnQjRCTSx3QkFBNEMsRUFBQTs7QWhCNUJsRDs7OztFZ0JzQ0ksU0FBUyxFQUFBOztBaEJ0Q2I7RWdCZ0RJLHFDZDFEVyxFQUFBOztBRlVmO0VnQjRETSxjZjdDZTtFZThDZixzQ2R2RVMsRUFBQTs7QUZVZjs7O0VpQmxCTSx5QkM2RjRELEVBQUE7O0FsQjNFbEU7Ozs7RWlCVlEscUJDcUYwRCxFQUFBOztBbEIzRWxFO0VpQkVRLHlCQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUseUJBUm9DLEVBQUE7O0FqQkU5Qzs7O0VpQmxCTSx5QkM2RjRELEVBQUE7O0FsQjNFbEU7Ozs7RWlCVlEscUJDcUYwRCxFQUFBOztBbEIzRWxFO0VpQkVRLHlCQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUseUJBUm9DLEVBQUE7O0FqQkU5Qzs7O0VpQmxCTSx5QkM2RjRELEVBQUE7O0FsQjNFbEU7Ozs7RWlCVlEscUJDcUYwRCxFQUFBOztBbEIzRWxFO0VpQkVRLHlCQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUseUJBUm9DLEVBQUE7O0FqQkU5Qzs7O0VpQmxCTSx5QkM2RjRELEVBQUE7O0FsQjNFbEU7Ozs7RWlCVlEscUJDcUYwRCxFQUFBOztBbEIzRWxFO0VpQkVRLHlCQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUseUJBUm9DLEVBQUE7O0FqQkU5Qzs7O0VpQmxCTSx5QkM2RjRELEVBQUE7O0FsQjNFbEU7Ozs7RWlCVlEscUJDcUYwRCxFQUFBOztBbEIzRWxFO0VpQkVRLHlCQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUseUJBUm9DLEVBQUE7O0FqQkU5Qzs7O0VpQmxCTSx5QkM2RjRELEVBQUE7O0FsQjNFbEU7Ozs7RWlCVlEscUJDcUYwRCxFQUFBOztBbEIzRWxFO0VpQkVRLHlCQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUseUJBUm9DLEVBQUE7O0FqQkU5Qzs7O0VpQmxCTSx5QkM2RjRELEVBQUE7O0FsQjNFbEU7Ozs7RWlCVlEscUJDcUYwRCxFQUFBOztBbEIzRWxFO0VpQkVRLHlCQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUseUJBUm9DLEVBQUE7O0FqQkU5Qzs7O0VpQmxCTSx5QkM2RjRELEVBQUE7O0FsQjNFbEU7Ozs7RWlCVlEscUJDcUYwRCxFQUFBOztBbEIzRWxFO0VpQkVRLHlCQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUseUJBUm9DLEVBQUE7O0FqQkU5Qzs7O0VpQmxCTSxzQ2ZRUyxFQUFBOztBRlVmO0VpQkVRLHNDQUpzQyxFQUFBO0VqQkU5Qzs7SWlCTVUsc0NBUm9DLEVBQUE7O0FqQkU5QztFZ0J1Rk0sY2Y1R1k7RWU2R1oseUJkcEdZO0VjcUdaLHFCZHFRcUQsRUFBQTs7QUY5VjNEO0VnQitGTSxjZDVHWTtFYzZHWix5QmRsSFk7RWNtSFoscUJmakhZLEVBQUE7O0FEZ0JsQjtFZ0J1R0UsY2Y1SGdCO0VlNkhoQix5QmRwSGdCLEVBQUE7RUZZbEI7OztJZ0I2R0kscUJkaVB1RCxFQUFBO0VGOVYzRDtJZ0JpSEksU0FBUyxFQUFBO0VoQmpIYjtJZ0JzSE0sMkNkMUlTLEVBQUE7RUZvQmY7SWdCNkhRLFdkakpPO0lja0pQLDRDZGxKTyxFQUFBOztBV2tFWDtFYjlDSjtJZ0JpSlEsY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDLEVBQUE7SWhCcEp6QztNZ0J3SlUsU0FBUyxFQUFBLEVBQ1Y7O0FIM0dMO0ViOUNKO0lnQmlKUSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUMsRUFBQTtJaEJwSnpDO01nQndKVSxTQUFTLEVBQUEsRUFDVjs7QUgzR0w7RWI5Q0o7SWdCaUpRLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQyxFQUFBO0loQnBKekM7TWdCd0pVLFNBQVMsRUFBQSxFQUNWOztBSDNHTDtFYjlDSjtJZ0JpSlEsY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDLEVBQUE7SWhCcEp6QztNZ0J3SlUsU0FBUyxFQUFBLEVBQ1Y7O0FoQnpKVDtFZ0JpSlEsY0FBYztFQUNkLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsaUNBQWlDLEVBQUE7RWhCcEp6QztJZ0J3SlUsU0FBUyxFQUFBOztBaEJ4Sm5COzs7RW1CbEJZLGNsQkdNLEVBQUE7O0FEZWxCO0VtQlBnQixjbEJSRSxFQUFBO0VEZWxCOztJbUJIb0IsY2xCWkYsRUFBQTs7QURlbEI7OztFbUJsQlksY2xCR00sRUFBQTs7QURlbEI7RW1CUGdCLGNsQlJFLEVBQUE7RURlbEI7O0ltQkhvQixjbEJaRixFQUFBOztBRGVsQjs7O0VtQmxCWSxjbEJHTSxFQUFBOztBRGVsQjtFbUJQZ0IsY2xCUkUsRUFBQTtFRGVsQjs7SW1CSG9CLGNsQlpGLEVBQUE7O0FEZWxCOzs7RW1CbEJZLGNsQkdNLEVBQUE7O0FEZWxCO0VtQlBnQixjbEJSRSxFQUFBO0VEZWxCOztJbUJIb0IsY2xCWkYsRUFBQTs7QURlbEI7OztFbUJsQlksY2xCR00sRUFBQTs7QURlbEI7RW1CUGdCLGNsQlJFLEVBQUE7RURlbEI7O0ltQkhvQixjbEJaRixFQUFBOztBRGVsQjs7O0VtQmxCWSxjbEJHTSxFQUFBOztBRGVsQjtFbUJQZ0IsY2xCUkUsRUFBQTtFRGVsQjs7SW1CSG9CLGNsQlpGLEVBQUE7O0FEZWxCOzs7RW1CbEJZLGNsQkdNLEVBQUE7O0FEZWxCO0VtQlBnQixjbEJSRSxFQUFBO0VEZWxCOztJbUJIb0IsY2xCWkYsRUFBQTs7QURlbEI7OztFbUJsQlksY2xCR00sRUFBQTs7QURlbEI7RW1CUGdCLGNsQlJFLEVBQUE7RURlbEI7O0ltQkhvQixjbEJaRixFQUFBOztBRGVsQjs7O0VtQmxCWSxjbEJGTSxFQUFBOztBRG9CbEI7RW1CUGdCLGNsQmJFLEVBQUE7RURvQmxCOztJbUJIb0IsY2xCakJGLEVBQUE7O0FEb0JsQjtFb0JmSSxjbkJOYyxFQUFBOztBRHFCbEI7RXFCcEJFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUNIOEc4RDtFRzdHOUQseUJuQjhYa0M7RUN6UTlCLGVBdENZO0VrQjVFaEIsZ0JuQndSK0I7RW1CdlIvQixnQm5CNFIrQjtFbUIzUi9CLGNwQlRnQjtFb0JVaEIsc0JwQkhhO0VvQkliLDRCQUE0QjtFQUM1Qix5QnBCVGdCO0VTU2Qsc0JSa09nQztFb0JwTzlCLHdFcEI0ZTRGLEVBQUE7RW9CeGU1RjtJdEJPTjtNc0JOUSxnQkFBZ0IsRUFBQSxFRHNDdkI7RXJCaENEO0lxQkNJLDZCQUE2QjtJQUM3QixTQUFTLEVBQUE7RXJCRmI7SXFCT0ksa0JBQWtCO0lBQ2xCLDBCcEI3QmMsRUFBQTtFRHFCbEI7SXVCYkksY3RCUmM7SXNCU2QseUJ0QjBCaUI7SXNCekJqQixxQnRCb0ZzRTtJc0JuRnRFLFVBQVU7SUFLUixnRHJCY1csRUFBQTtFRlRqQjtJcUJnQkksY25COUJjO0ltQmdDZCxVQUFVLEVBQUE7RXJCbEJkO0lxQmdCSSxjbkI5QmM7SW1CZ0NkLFVBQVUsRUFBQTtFckJsQmQ7SXFCZ0JJLGNuQjlCYztJbUJnQ2QsVUFBVSxFQUFBO0VyQmxCZDtJcUJnQkksY25COUJjO0ltQmdDZCxVQUFVLEVBQUE7RXJCbEJkO0lxQjRCSSx5QnBCNUNjO0lvQjhDZCxVQUFVLEVBQUE7O0FyQjlCZDs7OztFcUJ1Q0ksd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0IsRUFBQTs7QXJCdkNwQjtFcUJrREksY3BCdkVjO0VvQndFZCxzQnBCakVXLEVBQUE7O0FEY2Y7O0VxQjBERSxjQUFjO0VBQ2QsV0FBVyxFQUFBOztBckIzRGI7RXFCc0VFLGlDSHNCOEQ7RUdyQjlELG9DSHFCOEQ7RUdwQjlELGdCQUFnQjtFbEIzQmQsa0JBQVc7RWtCNkJiLGdCbkJxTStCLEVBQUE7O0FGL1FqQztFcUI4RUUsK0JIYzhEO0VHYjlELGtDSGE4RDtFZlExRCxrQkF0Q1k7RWtCbUJoQixnQm5Ca0krQixFQUFBOztBRm5OakM7RXFCcUZFLGdDSE84RDtFR045RCxtQ0hNOEQ7RWZRMUQsbUJBdENZO0VrQjBCaEIsZ0JuQjRIK0IsRUFBQTs7QUZwTmpDO0VxQmtHRSxjQUFjO0VBQ2QsV0FBVztFQUNYLG1CQUEyQjtFQUMzQixnQkFBZ0I7RWxCRFosZUF0Q1k7RWtCeUNoQixnQm5Cd0srQjtFbUJ2Sy9CLGNuQm5IZ0I7RW1Cb0hoQiw2QkFBNkI7RUFDN0IseUJBQXlCO0VBQ3pCLG1CQUFtQyxFQUFBO0VyQjNHckM7SXFCK0dJLGdCQUFnQjtJQUNoQixlQUFlLEVBQUE7O0FyQmhIbkI7RXFCNkhFLGtDSGpDOEQ7RUdrQzlELHVCbkJ5UGlDO0VDblI3QixtQkF0Q1k7RWtCa0VoQixnQm5Cb0YrQjtFUTdON0IscUJSb08rQixFQUFBOztBRjNObkM7RXFCcUlFLGdDSHpDOEQ7RUcwQzlELG9CbkJzUGdDO0VDeFI1QixrQkF0Q1k7RWtCMEVoQixnQm5CMkUrQjtFUTVON0IscUJSbU8rQixFQUFBOztBRjFObkM7RXFCZ0pJLFlBQVksRUFBQTs7QXJCaEpoQjtFcUJxSkUsWUFBWSxFQUFBOztBckJySmQ7RXFCOEpFLG1CbkIrVTBDLEVBQUE7O0FGN2U1QztFcUJrS0UsY0FBYztFQUNkLG1CbkJnVTRDLEVBQUE7O0FGbmU5QztFcUI0S0UsYUFBYTtFQUNiLGVBQWU7RUFDZixrQkFBMEM7RUFDMUMsaUJBQXlDLEVBQUE7RXJCL0szQzs7SXFCbUxJLGtCQUEwQztJQUMxQyxpQkFBeUMsRUFBQTs7QXJCcEw3QztFcUI4TEUsa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxxQm5CcVM2QyxFQUFBOztBRnJlL0M7RXFCb01FLGtCQUFrQjtFQUNsQixrQm5CaVMyQztFbUJoUzNDLHFCbkIrUjZDLEVBQUE7RUZyZS9DOztJcUIyTUksY25Cek5jLEVBQUE7O0FGY2xCO0VxQmdORSxnQkFBZ0IsRUFBQTs7QXJCaE5sQjtFcUJvTkUsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YscUJuQmtSNEMsRUFBQTtFRnplOUM7SXFCMk5JLGdCQUFnQjtJQUNoQixhQUFhO0lBQ2IsdUJuQjZRNEM7SW1CNVE1QyxjQUFjLEVBQUE7O0FyQjlObEI7RXVCa0JJLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJyQitjMEM7RUN0YjFDLGNBQVc7RW9CdkJYLGNyQk5hLEVBQUE7O0FGaEJqQjtFdUIwQkksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QnJCc3lCcUM7RXFCcnlCckMsaUJBQWlCO0VwQm9FZixtQkF0Q1k7RW9CNUJkLGdCckI2TzZCO0VxQjVPN0IsY3RCdkRjO0VzQndEZCx3Q3JCcEJhO0VRekJiLHNCUmtPZ0MsRUFBQTs7QUZ6TnBDOztFdUIyQ00sY0FBYyxFQUFBOztBdkIzQ3BCO0V1QmlETSxxQnJCakNXO0VxQm9DVCxvQ0x3Q3dEO0VLdkN4RCxpUkx0QjBFO0VLdUIxRSw0QkFBNEI7RUFDNUIsMkRBQTZEO0VBQzdELGdFTG9Dd0QsRUFBQTtFbEI1RmhFO0l1QjREUSxxQnJCNUNTO0lxQjZDVCxnRHJCN0NTLEVBQUE7O0FGaEJqQjtFdUJzRVEsb0NMc0J3RDtFS3JCeEQsa0ZMcUJ3RCxFQUFBOztBbEI1RmhFO0V1QjhFTSxxQnJCOURXO0VxQmlFVCx1Q0xXd0Q7RUtWeEQsdWpCQUE4SixFQUFBO0V2QmxGdEs7SXVCc0ZRLHFCckJ0RVM7SXFCdUVULGdEckJ2RVMsRUFBQTs7QUZoQmpCO0V1QitGUSxjckIvRVMsRUFBQTs7QUZoQmpCOztFdUJvR1EsY0FBYyxFQUFBOztBdkJwR3RCO0V1QjRHUSxjckI1RlMsRUFBQTtFRmhCakI7SXVCK0dVLHFCckIvRk8sRUFBQTs7QUZoQmpCO0V1QnFIVSxxQkFBa0M7RUMxSXhDLHlCRDJJK0MsRUFBQTs7QXZCdEhuRDtFdUI0SFUsZ0RyQjVHTyxFQUFBOztBRmhCakI7RXVCZ0lVLHFCckJoSE8sRUFBQTs7QUZoQmpCO0V1QjBJUSxxQnJCMUhTLEVBQUE7O0FGaEJqQjtFdUIrSVUscUJyQi9ITztFcUJnSVAsZ0RyQmhJTyxFQUFBOztBRmhCakI7RXVCa0JJLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJyQitjMEM7RUN0YjFDLGNBQVc7RW9CdkJYLGNyQlRhLEVBQUE7O0FGYmpCO0V1QjBCSSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCckJzeUJxQztFcUJyeUJyQyxpQkFBaUI7RXBCb0VmLG1CQXRDWTtFb0I1QmQsZ0JyQjZPNkI7RXFCNU83QixjdEJ2RGM7RXNCd0RkLHdDckJ2QmE7RVF0QmIsc0JSa09nQyxFQUFBOztBRnpOcEM7O0V1QjJDTSxjQUFjLEVBQUE7O0F2QjNDcEI7RXVCaURNLHFCckJwQ1c7RXFCdUNULG9DTHdDd0Q7RUt2Q3hELDRVTHRCMEU7RUt1QjFFLDRCQUE0QjtFQUM1QiwyREFBNkQ7RUFDN0QsZ0VMb0N3RCxFQUFBO0VsQjVGaEU7SXVCNERRLHFCckIvQ1M7SXFCZ0RULGdEckJoRFMsRUFBQTs7QUZiakI7RXVCc0VRLG9DTHNCd0Q7RUtyQnhELGtGTHFCd0QsRUFBQTs7QWxCNUZoRTtFdUI4RU0scUJyQmpFVztFcUJvRVQsdUNMV3dEO0VLVnhELGtuQkFBOEosRUFBQTtFdkJsRnRLO0l1QnNGUSxxQnJCekVTO0lxQjBFVCxnRHJCMUVTLEVBQUE7O0FGYmpCO0V1QitGUSxjckJsRlMsRUFBQTs7QUZiakI7O0V1Qm9HUSxjQUFjLEVBQUE7O0F2QnBHdEI7RXVCNEdRLGNyQi9GUyxFQUFBO0VGYmpCO0l1QitHVSxxQnJCbEdPLEVBQUE7O0FGYmpCO0V1QnFIVSxxQkFBa0M7RUMxSXhDLHlCRDJJK0MsRUFBQTs7QXZCdEhuRDtFdUI0SFUsZ0RyQi9HTyxFQUFBOztBRmJqQjtFdUJnSVUscUJyQm5ITyxFQUFBOztBRmJqQjtFdUIwSVEscUJyQjdIUyxFQUFBOztBRmJqQjtFdUIrSVUscUJyQmxJTztFcUJtSVAsZ0RyQm5JTyxFQUFBOztBRmJqQjtFcUJ3UEUsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixtQkFBbUIsRUFBQTtFckIxUHJCO0lxQmdRSSxXQUFXLEVBQUE7RVIvTlg7SWJqQ0o7TXFCc1FNLGFBQWE7TUFDYixtQkFBbUI7TUFDbkIsdUJBQXVCO01BQ3ZCLGdCQUFnQixFQUFBO0lyQnpRdEI7TXFCOFFNLGFBQWE7TUFDYixjQUFjO01BQ2QsbUJBQW1CO01BQ25CLG1CQUFtQjtNQUNuQixnQkFBZ0IsRUFBQTtJckJsUnRCO01xQnVSTSxxQkFBcUI7TUFDckIsV0FBVztNQUNYLHNCQUFzQixFQUFBO0lyQnpSNUI7TXFCOFJNLHFCQUFxQixFQUFBO0lyQjlSM0I7O01xQm1TTSxXQUFXLEVBQUE7SXJCblNqQjtNcUJ5U00sYUFBYTtNQUNiLG1CQUFtQjtNQUNuQix1QkFBdUI7TUFDdkIsV0FBVztNQUNYLGVBQWUsRUFBQTtJckI3U3JCO01xQmdUTSxrQkFBa0I7TUFDbEIsY0FBYztNQUNkLGFBQWE7TUFDYixxQm5Cb0x3QztNbUJuTHhDLGNBQWMsRUFBQTtJckJwVHBCO01xQndUTSxtQkFBbUI7TUFDbkIsdUJBQXVCLEVBQUE7SXJCelQ3QjtNcUI0VE0sZ0JBQWdCLEVBQUEsRUFDakI7O0FyQjdUTDtFdUJrQkksYUFBYTtFQUNiLFdBQVc7RUFDWCxtQnJCK2MwQztFQ3RiMUMsY0FBVztFb0J2QlgsY3JCTmEsRUFBQTs7QUZoQmpCO0V1QjBCSSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCckJzeUJxQztFcUJyeUJyQyxpQkFBaUI7RXBCb0VmLG1CQXRDWTtFb0I1QmQsZ0JyQjZPNkI7RXFCNU83QixjdEJ2RGM7RXNCd0RkLHdDckJwQmE7RVF6QmIsc0JSa09nQyxFQUFBOztBRnpOcEM7OztFdUIyQ00sY0FBYyxFQUFBOztBdkIzQ3BCO0V1QmlETSxxQnJCakNXO0VxQm9DVCxvQ0x3Q3dEO0VLdkN4RCxpUkx0QjBFO0VLdUIxRSw0QkFBNEI7RUFDNUIsMkRBQTZEO0VBQzdELGdFTG9Dd0QsRUFBQTtFbEI1RmhFO0l1QjREUSxxQnJCNUNTO0lxQjZDVCxnRHJCN0NTLEVBQUE7O0FGaEJqQjtFdUJzRVEsb0NMc0J3RDtFS3JCeEQsa0ZMcUJ3RCxFQUFBOztBbEI1RmhFO0V1QjhFTSxxQnJCOURXO0VxQmlFVCx1Q0xXd0Q7RUtWeEQsdWpCQUE4SixFQUFBO0V2QmxGdEs7SXVCc0ZRLHFCckJ0RVM7SXFCdUVULGdEckJ2RVMsRUFBQTs7QUZoQmpCO0V1QitGUSxjckIvRVMsRUFBQTs7QUZoQmpCOzs7RXVCb0dRLGNBQWMsRUFBQTs7QXZCcEd0QjtFdUI0R1EsY3JCNUZTLEVBQUE7RUZoQmpCO0l1QitHVSxxQnJCL0ZPLEVBQUE7O0FGaEJqQjtFdUJxSFUscUJBQWtDO0VDMUl4Qyx5QkQySStDLEVBQUE7O0F2QnRIbkQ7RXVCNEhVLGdEckI1R08sRUFBQTs7QUZoQmpCO0V1QmdJVSxxQnJCaEhPLEVBQUE7O0FGaEJqQjtFdUIwSVEscUJyQjFIUyxFQUFBOztBRmhCakI7RXVCK0lVLHFCckIvSE87RXFCZ0lQLGdEckJoSU8sRUFBQTs7QUZoQmpCOzs7O0V5Qm5CWSxjQUFjLEVBQUE7O0F6Qm1CMUI7RXVCa0JJLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJyQitjMEM7RUN0YjFDLGNBQVc7RW9CdkJYLGNyQlRhLEVBQUE7O0FGYmpCO0V1QjBCSSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCckJzeUJxQztFcUJyeUJyQyxpQkFBaUI7RXBCb0VmLG1CQXRDWTtFb0I1QmQsZ0JyQjZPNkI7RXFCNU83QixjdEJ2RGM7RXNCd0RkLHdDckJ2QmE7RVF0QmIsc0JSa09nQyxFQUFBOztBRnpOcEM7OztFdUIyQ00sY0FBYyxFQUFBOztBdkIzQ3BCO0V1QmlETSxxQnJCcENXO0VxQnVDVCxvQ0x3Q3dEO0VLdkN4RCw0VUx0QjBFO0VLdUIxRSw0QkFBNEI7RUFDNUIsMkRBQTZEO0VBQzdELGdFTG9Dd0QsRUFBQTtFbEI1RmhFO0l1QjREUSxxQnJCL0NTO0lxQmdEVCxnRHJCaERTLEVBQUE7O0FGYmpCO0V1QnNFUSxvQ0xzQndEO0VLckJ4RCxrRkxxQndELEVBQUE7O0FsQjVGaEU7RXVCOEVNLHFCckJqRVc7RXFCb0VULHVDTFd3RDtFS1Z4RCxrbkJBQThKLEVBQUE7RXZCbEZ0SztJdUJzRlEscUJyQnpFUztJcUIwRVQsZ0RyQjFFUyxFQUFBOztBRmJqQjtFdUIrRlEsY3JCbEZTLEVBQUE7O0FGYmpCOzs7RXVCb0dRLGNBQWMsRUFBQTs7QXZCcEd0QjtFdUI0R1EsY3JCL0ZTLEVBQUE7RUZiakI7SXVCK0dVLHFCckJsR08sRUFBQTs7QUZiakI7RXVCcUhVLHFCQUFrQztFQzFJeEMseUJEMkkrQyxFQUFBOztBdkJ0SG5EO0V1QjRIVSxnRHJCL0dPLEVBQUE7O0FGYmpCO0V1QmdJVSxxQnJCbkhPLEVBQUE7O0FGYmpCO0V1QjBJUSxxQnJCN0hTLEVBQUE7O0FGYmpCO0V1QitJVSxxQnJCbElPO0VxQm1JUCxnRHJCbklPLEVBQUE7O0FGYmpCOzs7O0V5Qm5CWSxjQUFjLEVBQUE7O0F6Qm1CMUI7RTBCcEJFLHFCQUFxQjtFQUVyQixnQnhCNFIrQjtFd0IzUi9CLGN6QmdDbUI7RXlCL0JuQixrQkFBa0I7RUFHbEIsc0JBQXNCO0VBQ3RCLHlCQUFpQjtLQUFqQixzQkFBaUI7TUFBakIscUJBQWlCO1VBQWpCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsNkJBQTJDO0VDdUYzQyx5QnpCZ1NrQztFQ3pROUIsZUF0Q1k7RXdCaUJoQixnQnpCZ00rQjtFUXhSN0Isc0JSa09nQztFb0JwTzlCLHFJcEJxYjZJLEVBQUE7RW9CamI3STtJdEJPTjtNc0JOUSxnQkFBZ0IsRUFBQSxFSThCdkI7RTFCeEJEO0kwQkxJLGN6Qm9CaUI7SXlCbkJqQixxQkFBcUIsRUFBQTtFMUJJekI7STBCQ0ksVUFBVTtJQUNWLGdEeEJPYSxFQUFBO0VGVGpCO0kwQlFJLGF4QnNaNkIsRUFBQTtFRjlaakM7STBCYUksZUFBc0QsRUFBQTs7QTFCYjFEOztFMEI2QkUsb0JBQW9CLEVBQUE7O0ExQjdCdEI7RTJCckJFLGMxQkNnQjtFdUJEZCx5QnRCOEJhO0V5QjVCZixxQnpCNEJlLEVBQUE7RUZUakI7STJCZkksYzFCTGM7SXVCRGQseUJHRG9GO0lBU3BGLHFCQVR5SCxFQUFBO0UzQnNCN0g7STJCUkksYzFCWmM7SXVCRGQseUJHRG9GO0lBZ0JwRixxQkFoQnlIO0lBcUJ2SCxnREFBaUYsRUFBQTtFM0JDdkY7STJCTUksYzFCMUJjO0kwQjJCZCx5QnpCRWE7SXlCRGIscUJ6QkNhLEVBQUE7RUZUakI7O0kyQmtCSSxjMUJ0Q2M7STBCdUNkLHlCQXpDdUs7SUE2Q3ZLLHFCQTdDK00sRUFBQTtJM0JzQm5OOztNMkI4QlEsZ0RBQWlGLEVBQUE7O0EzQjlCekY7RTJCckJFLGMxQkNnQjtFdUJEZCx5QnRCT2M7RXlCTGhCLHFCekJLZ0IsRUFBQTtFRmNsQjtJMkJmSSxjMUJMYztJdUJEZCx5QkdEb0Y7SUFTcEYscUJBVHlILEVBQUE7RTNCc0I3SDtJMkJSSSxjMUJaYztJdUJEZCx5QkdEb0Y7SUFnQnBGLHFCQWhCeUg7SUFxQnZILGlEQUFpRixFQUFBO0UzQkN2RjtJMkJNSSxjMUIxQmM7STBCMkJkLHlCekJyQmM7SXlCc0JkLHFCekJ0QmMsRUFBQTtFRmNsQjs7STJCa0JJLGMxQnRDYztJMEJ1Q2QseUJBekN1SztJQTZDdksscUJBN0MrTSxFQUFBO0kzQnNCbk47O00yQjhCUSxpREFBaUYsRUFBQTs7QTNCOUJ6RjtFMkJyQkUsYzFCQ2dCO0V1QkRkLHlCdEJxQ2E7RXlCbkNmLHFCekJtQ2UsRUFBQTtFRmhCakI7STJCZkksYzFCTGM7SXVCRGQseUJHRG9GO0lBU3BGLHFCQVR5SCxFQUFBO0UzQnNCN0g7STJCUkksYzFCWmM7SXVCRGQseUJHRG9GO0lBZ0JwRixxQkFoQnlIO0lBcUJ2SCwrQ0FBaUYsRUFBQTtFM0JDdkY7STJCTUksYzFCMUJjO0kwQjJCZCx5QnpCU2E7SXlCUmIscUJ6QlFhLEVBQUE7RUZoQmpCOztJMkJrQkksYzFCdENjO0kwQnVDZCx5QkF6Q3VLO0lBNkN2SyxxQkE3QytNLEVBQUE7STNCc0JuTjs7TTJCOEJRLCtDQUFpRixFQUFBOztBM0I5QnpGO0UyQnJCRSxjMUJDZ0I7RXVCRGQseUJ0QnVDYTtFeUJyQ2YscUJ6QnFDZSxFQUFBO0VGbEJqQjtJMkJmSSxjMUJMYztJdUJEZCx5QkdEb0Y7SUFTcEYscUJBVHlILEVBQUE7RTNCc0I3SDtJMkJSSSxjMUJaYztJdUJEZCx5QkdEb0Y7SUFnQnBGLHFCQWhCeUg7SUFxQnZILGdEQUFpRixFQUFBO0UzQkN2RjtJMkJNSSxjMUIxQmM7STBCMkJkLHlCekJXYTtJeUJWYixxQnpCVWEsRUFBQTtFRmxCakI7O0kyQmtCSSxjMUJ0Q2M7STBCdUNkLHlCQXpDdUs7SUE2Q3ZLLHFCQTdDK00sRUFBQTtJM0JzQm5OOztNMkI4QlEsZ0RBQWlGLEVBQUE7O0EzQjlCekY7RTJCckJFLGMxQk1nQjtFdUJOZCx5QnRCb0NhO0V5QmxDZixxQnpCa0NlLEVBQUE7RUZmakI7STJCZkksYzFCQWM7SXVCTmQseUJHRG9GO0lBU3BGLHFCQVR5SCxFQUFBO0UzQnNCN0g7STJCUkksYzFCUGM7SXVCTmQseUJHRG9GO0lBZ0JwRixxQkFoQnlIO0lBcUJ2SCxnREFBaUYsRUFBQTtFM0JDdkY7STJCTUksYzFCckJjO0kwQnNCZCx5QnpCUWE7SXlCUGIscUJ6Qk9hLEVBQUE7RUZmakI7O0kyQmtCSSxjMUJqQ2M7STBCa0NkLHlCQXpDdUs7SUE2Q3ZLLHFCQTdDK00sRUFBQTtJM0JzQm5OOztNMkI4QlEsZ0RBQWlGLEVBQUE7O0EzQjlCekY7RTJCckJFLGMxQkNnQjtFdUJEZCx5QnRCa0NhO0V5QmhDZixxQnpCZ0NlLEVBQUE7RUZiakI7STJCZkksYzFCTGM7SXVCRGQseUJHRG9GO0lBU3BGLHFCQVR5SCxFQUFBO0UzQnNCN0g7STJCUkksYzFCWmM7SXVCRGQseUJHRG9GO0lBZ0JwRixxQkFoQnlIO0lBcUJ2SCwrQ0FBaUYsRUFBQTtFM0JDdkY7STJCTUksYzFCMUJjO0kwQjJCZCx5QnpCTWE7SXlCTGIscUJ6QkthLEVBQUE7RUZiakI7O0kyQmtCSSxjMUJ0Q2M7STBCdUNkLHlCQXpDdUs7SUE2Q3ZLLHFCQTdDK00sRUFBQTtJM0JzQm5OOztNMkI4QlEsK0NBQWlGLEVBQUE7O0EzQjlCekY7RTJCckJFLGMxQk1nQjtFdUJOZCx5QnRCRWM7RXlCQWhCLHFCekJBZ0IsRUFBQTtFRm1CbEI7STJCZkksYzFCQWM7SXVCTmQseUJHRG9GO0lBU3BGLHFCQVR5SCxFQUFBO0UzQnNCN0g7STJCUkksYzFCUGM7SXVCTmQseUJHRG9GO0lBZ0JwRixxQkFoQnlIO0lBcUJ2SCxpREFBaUYsRUFBQTtFM0JDdkY7STJCTUksYzFCckJjO0kwQnNCZCx5QnpCMUJjO0l5QjJCZCxxQnpCM0JjLEVBQUE7RUZtQmxCOztJMkJrQkksYzFCakNjO0kwQmtDZCx5QkF6Q3VLO0lBNkN2SyxxQkE3QytNLEVBQUE7STNCc0JuTjs7TTJCOEJRLGlEQUFpRixFQUFBOztBM0I5QnpGO0UyQnJCRSxjMUJDZ0I7RXVCRGQseUJ0QlNjO0V5QlBoQixxQnpCT2dCLEVBQUE7RUZZbEI7STJCZkksYzFCTGM7SXVCRGQseUJHRG9GO0lBU3BGLHFCQVR5SCxFQUFBO0UzQnNCN0g7STJCUkksYzFCWmM7SXVCRGQseUJHRG9GO0lBZ0JwRixxQkFoQnlIO0lBcUJ2SCw4Q0FBaUYsRUFBQTtFM0JDdkY7STJCTUksYzFCMUJjO0kwQjJCZCx5QnpCbkJjO0l5Qm9CZCxxQnpCcEJjLEVBQUE7RUZZbEI7O0kyQmtCSSxjMUJ0Q2M7STBCdUNkLHlCQXpDdUs7SUE2Q3ZLLHFCQTdDK00sRUFBQTtJM0JzQm5OOztNMkI4QlEsOENBQWlGLEVBQUE7O0EzQjlCekY7RTJCcUNFLGN6QjVCZTtFeUI2QmYscUJ6QjdCZSxFQUFBO0VGVGpCO0kyQnlDSSxjMUI3RGM7STBCOERkLHlCekJqQ2E7SXlCa0NiLHFCekJsQ2EsRUFBQTtFRlRqQjtJMkJnREksK0N6QnZDYSxFQUFBO0VGVGpCO0kyQnFESSxjekI1Q2E7SXlCNkNiLDZCQUE2QixFQUFBO0UzQnREakM7O0kyQjRESSxjMUJoRmM7STBCaUZkLHlCekJwRGE7SXlCcURiLHFCekJyRGEsRUFBQTtJRlRqQjs7TTJCcUVRLCtDekI1RFMsRUFBQTs7QUZUakI7RTJCcUNFLGN6Qm5EZ0I7RXlCb0RoQixxQnpCcERnQixFQUFBO0VGY2xCO0kyQnlDSSxjMUI3RGM7STBCOERkLHlCekJ4RGM7SXlCeURkLHFCekJ6RGMsRUFBQTtFRmNsQjtJMkJnREksaUR6QjlEYyxFQUFBO0VGY2xCO0kyQnFESSxjekJuRWM7SXlCb0VkLDZCQUE2QixFQUFBO0UzQnREakM7O0kyQjRESSxjMUJoRmM7STBCaUZkLHlCekIzRWM7SXlCNEVkLHFCekI1RWMsRUFBQTtJRmNsQjs7TTJCcUVRLGlEekJuRlUsRUFBQTs7QUZjbEI7RTJCcUNFLGN6QnJCZTtFeUJzQmYscUJ6QnRCZSxFQUFBO0VGaEJqQjtJMkJ5Q0ksYzFCN0RjO0kwQjhEZCx5QnpCMUJhO0l5QjJCYixxQnpCM0JhLEVBQUE7RUZoQmpCO0kyQmdESSwrQ3pCaENhLEVBQUE7RUZoQmpCO0kyQnFESSxjekJyQ2E7SXlCc0NiLDZCQUE2QixFQUFBO0UzQnREakM7O0kyQjRESSxjMUJoRmM7STBCaUZkLHlCekI3Q2E7SXlCOENiLHFCekI5Q2EsRUFBQTtJRmhCakI7O00yQnFFUSwrQ3pCckRTLEVBQUE7O0FGaEJqQjtFMkJxQ0UsY3pCbkJlO0V5Qm9CZixxQnpCcEJlLEVBQUE7RUZsQmpCO0kyQnlDSSxjMUI3RGM7STBCOERkLHlCekJ4QmE7SXlCeUJiLHFCekJ6QmEsRUFBQTtFRmxCakI7STJCZ0RJLGdEekI5QmEsRUFBQTtFRmxCakI7STJCcURJLGN6Qm5DYTtJeUJvQ2IsNkJBQTZCLEVBQUE7RTNCdERqQzs7STJCNERJLGMxQmhGYztJMEJpRmQseUJ6QjNDYTtJeUI0Q2IscUJ6QjVDYSxFQUFBO0lGbEJqQjs7TTJCcUVRLGdEekJuRFMsRUFBQTs7QUZsQmpCO0UyQnFDRSxjekJ0QmU7RXlCdUJmLHFCekJ2QmUsRUFBQTtFRmZqQjtJMkJ5Q0ksYzFCeERjO0kwQnlEZCx5QnpCM0JhO0l5QjRCYixxQnpCNUJhLEVBQUE7RUZmakI7STJCZ0RJLCtDekJqQ2EsRUFBQTtFRmZqQjtJMkJxREksY3pCdENhO0l5QnVDYiw2QkFBNkIsRUFBQTtFM0J0RGpDOztJMkI0REksYzFCM0VjO0kwQjRFZCx5QnpCOUNhO0l5QitDYixxQnpCL0NhLEVBQUE7SUZmakI7O00yQnFFUSwrQ3pCdERTLEVBQUE7O0FGZmpCO0UyQnFDRSxjekJ4QmU7RXlCeUJmLHFCekJ6QmUsRUFBQTtFRmJqQjtJMkJ5Q0ksYzFCN0RjO0kwQjhEZCx5QnpCN0JhO0l5QjhCYixxQnpCOUJhLEVBQUE7RUZiakI7STJCZ0RJLCtDekJuQ2EsRUFBQTtFRmJqQjtJMkJxREksY3pCeENhO0l5QnlDYiw2QkFBNkIsRUFBQTtFM0J0RGpDOztJMkI0REksYzFCaEZjO0kwQmlGZCx5QnpCaERhO0l5QmlEYixxQnpCakRhLEVBQUE7SUZiakI7O00yQnFFUSwrQ3pCeERTLEVBQUE7O0FGYmpCO0UyQnFDRSxjekJ4RGdCO0V5QnlEaEIscUJ6QnpEZ0IsRUFBQTtFRm1CbEI7STJCeUNJLGMxQnhEYztJMEJ5RGQseUJ6QjdEYztJeUI4RGQscUJ6QjlEYyxFQUFBO0VGbUJsQjtJMkJnREksaUR6Qm5FYyxFQUFBO0VGbUJsQjtJMkJxREksY3pCeEVjO0l5QnlFZCw2QkFBNkIsRUFBQTtFM0J0RGpDOztJMkI0REksYzFCM0VjO0kwQjRFZCx5QnpCaEZjO0l5QmlGZCxxQnpCakZjLEVBQUE7SUZtQmxCOztNMkJxRVEsaUR6QnhGVSxFQUFBOztBRm1CbEI7RTJCcUNFLGN6QmpEZ0I7RXlCa0RoQixxQnpCbERnQixFQUFBO0VGWWxCO0kyQnlDSSxjMUI3RGM7STBCOERkLHlCekJ0RGM7SXlCdURkLHFCekJ2RGMsRUFBQTtFRllsQjtJMkJnREksOEN6QjVEYyxFQUFBO0VGWWxCO0kyQnFESSxjekJqRWM7SXlCa0VkLDZCQUE2QixFQUFBO0UzQnREakM7O0kyQjRESSxjMUJoRmM7STBCaUZkLHlCekJ6RWM7SXlCMEVkLHFCekIxRWMsRUFBQTtJRllsQjs7TTJCcUVRLDhDekJqRlUsRUFBQTs7QUZZbEI7RTBCd0RFLGdCeEJrTitCO0V3QmpOL0IsY3pCckNrRDtFeUJzQ2xELHFCeEJnRzRDLEVBQUE7RUYxSjlDO0kwQjZESSxjekJ2Q2dEO0l5QndDaEQsMEJ4QjhGK0MsRUFBQTtFRjVKbkQ7STBCbUVJLDBCeEJ5RitDLEVBQUE7RUY1Sm5EO0kwQndFSSxjeEJ0RmM7SXdCdUZkLG9CQUFvQixFQUFBOztBMUJ6RXhCO0UyQjZFRSxvQnpCK1NnQztFQ3hSNUIsa0JBdENZO0V3QmlCaEIsZ0J6Qm9JK0I7RVE1TjdCLHFCUm1PK0IsRUFBQTs7QUYxTm5DO0UyQjZFRSx1QnpCMFNpQztFQ25SN0IsbUJBdENZO0V3QmlCaEIsZ0J6QnFJK0I7RVE3TjdCLHFCUm9PK0IsRUFBQTs7QUYzTm5DO0UwQmtHRSxjQUFjO0VBQ2QsV0FBVyxFQUFBO0UxQm5HYjtJMEJ1R0ksa0J4QjRUK0IsRUFBQTs7QUZuYW5DOzs7RTBCZ0hJLFdBQVcsRUFBQTs7QTFCaEhmO0VzQlhNLGdDcEJzUDJDLEVBQUE7RW9CbFAzQztJdEJPTjtNc0JOUSxnQkFBZ0IsRUFBQSxFTWZ2QjtFNUJxQkQ7STRCdkJJLFVBQVUsRUFBQTs7QTVCdUJkO0U0QmpCSSxhQUFhLEVBQUE7O0E1QmlCakI7RTRCWkUsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxnQkFBZ0I7RU5EWiw2QnBCdVB3QyxFQUFBO0VvQm5QeEM7SXRCT047TXNCTlEsZ0JBQWdCLEVBQUEsRU1GdkI7O0E1QlFEOzs7O0U2QnRCRSxrQkFBa0IsRUFBQTs7QTdCc0JwQjtFNkJsQkUsbUJBQW1CLEVBQUE7RTdCa0JyQjtJOEJHTSxxQkFBcUI7SUFDckIsb0I1Qm9PMEM7STRCbk8xQyx1QjVCa08wQztJNEJqTzFDLFdBQVc7SUFoQ2YsdUJBQThCO0lBQzlCLHFDQUE0QztJQUM1QyxnQkFBZ0I7SUFDaEIsb0NBQTJDLEVBQUE7RTlCdUI3QztJOEIrQk0sY0FBYyxFQUFBOztBOUIvQnBCO0U2QlZFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsT0FBTztFQUNQLGEzQjhwQnNDO0UyQjdwQnRDLGFBQWE7RUFDYixXQUFXO0VBQ1gsZ0IzQm91QnVDO0UyQm51QnZDLGlCQUE4QjtFQUM5QixvQkFBNEI7RTFCc0d4QixlQXRDWTtFMEI5RGhCLGM1QmVtQjtFNEJkbkIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixzQjVCakJhO0U0QmtCYiw0QkFBNEI7RUFDNUIsMkM1QjdCYTtFU2VYLHNCUmtPZ0MsRUFBQTs7QUZ6TnBDO0U2QmVNLFdBQVc7RUFDWCxPQUFPLEVBQUE7O0E3QmhCYjtFNkJvQk0sUUFBUTtFQUNSLFVBQVUsRUFBQTs7QWhCWVo7RWJqQ0o7STZCZU0sV0FBVztJQUNYLE9BQU8sRUFBQTtFN0JoQmI7STZCb0JNLFFBQVE7SUFDUixVQUFVLEVBQUEsRUFDWDs7QWhCV0Q7RWJqQ0o7STZCZU0sV0FBVztJQUNYLE9BQU8sRUFBQTtFN0JoQmI7STZCb0JNLFFBQVE7SUFDUixVQUFVLEVBQUEsRUFDWDs7QWhCV0Q7RWJqQ0o7STZCZU0sV0FBVztJQUNYLE9BQU8sRUFBQTtFN0JoQmI7STZCb0JNLFFBQVE7SUFDUixVQUFVLEVBQUEsRUFDWDs7QWhCV0Q7RWJqQ0o7STZCZU0sV0FBVztJQUNYLE9BQU8sRUFBQTtFN0JoQmI7STZCb0JNLFFBQVE7SUFDUixVQUFVLEVBQUEsRUFDWDs7QTdCdEJMO0U2QjhCSSxTQUFTO0VBQ1QsWUFBWTtFQUNaLGFBQWE7RUFDYix1QjNCaXNCdUMsRUFBQTs7QUZsdUIzQztFOEJHTSxxQkFBcUI7RUFDckIsb0I1Qm9PMEM7RTRCbk8xQyx1QjVCa08wQztFNEJqTzFDLFdBQVc7RUF6QmYsYUFBYTtFQUNiLHFDQUE0QztFQUM1QywwQkFBaUM7RUFDakMsb0NBQTJDLEVBQUE7O0E5QmdCN0M7RThCK0JNLGNBQWMsRUFBQTs7QTlCL0JwQjtFNkIyQ0ksTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHFCM0JtckJ1QyxFQUFBOztBRmx1QjNDO0U4QkdNLHFCQUFxQjtFQUNyQixvQjVCb08wQztFNEJuTzFDLHVCNUJrTzBDO0U0QmpPMUMsV0FBVztFQWxCZixtQ0FBMEM7RUFDMUMsZUFBZTtFQUNmLHNDQUE2QztFQUM3Qyx3QkFBK0IsRUFBQTs7QTlCU2pDO0U4QitCTSxjQUFjLEVBQUE7O0E5Qi9CcEI7RTZCcURNLGlCQUFpQixFQUFBOztBN0JyRHZCO0U2QjRESSxNQUFNO0VBQ04sV0FBVztFQUNYLFVBQVU7RUFDVixhQUFhO0VBQ2Isc0IzQmtxQnVDLEVBQUE7O0FGbHVCM0M7RThCR00scUJBQXFCO0VBQ3JCLG9CNUJvTzBDO0U0Qm5PMUMsdUI1QmtPMEM7RTRCak8xQyxXQUFXLEVBQUE7O0E5Qk5qQjtFOEJrQlEsYUFBYSxFQUFBOztBOUJsQnJCO0U4QnNCUSxxQkFBcUI7RUFDckIscUI1QmlOd0M7RTRCaE54Qyx1QjVCK013QztFNEI5TXhDLFdBQVc7RUE5QmpCLG1DQUEwQztFQUMxQyx5QkFBZ0M7RUFDaEMsc0NBQTZDLEVBQUE7O0E5QkcvQztFOEIrQk0sY0FBYyxFQUFBOztBOUIvQnBCO0U2QnNFTSxpQkFBaUIsRUFBQTs7QTdCdEV2QjtFNkJrRkksV0FBVztFQUNYLFlBQVksRUFBQTs7QTdCbkZoQjtFK0J0QkUsU0FBUztFQUNULGdCQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsNkI5QkdnQixFQUFBOztBRGdCbEI7RTZCZ0dFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsdUIzQnNwQndDO0UyQnJwQnhDLFdBQVc7RUFDWCxnQjNCc0srQjtFMkJySy9CLGM1QjVIZ0I7RTRCNkhoQixtQkFBbUI7RUFFbkIsbUJBQW1CO0VBQ25CLDZCQUE2QjtFQUM3QixTQUFTLEVBQUE7RTdCMUdYO0k2QnlISSxZNUJ3QnNEO0k0QnZCdEQscUJBQXFCO0lML0lyQix5QnZCTWMsRUFBQTtFRGVsQjtJNkJnSUksVzVCOUlXO0k0QitJWCxxQkFBcUI7SUx0SnJCLHlCdkJja0QsRUFBQTtFRE90RDtJNkJ1SUksYzVCM0pjO0k0QjRKZCxvQkFBb0I7SUFDcEIsNkJBQTZCLEVBQUE7O0E3QnpJakM7RTZCa0pFLGNBQWMsRUFBQTs7QTdCbEpoQjtFNkJ1SkUsY0FBYztFQUNkLHNCM0JnbUJ3QztFMkIvbEJ4QyxnQkFBZ0I7RTFCckRaLG1CQXRDWTtFMEI2RmhCLGM1Qi9LZ0I7RTRCZ0xoQixtQkFBbUIsRUFBQTs7QTdCNUpyQjtFNkJpS0UsY0FBYztFQUNkLHVCM0JzbEJ3QztFMkJybEJ4QyxjNUIxTGdCLEVBQUE7O0FEdUJsQjs7RWdDdEJFLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsc0JBQXNCLEVBQUE7RWhDb0J4Qjs7SWdDakJJLGtCQUFrQjtJQUNsQixjQUFjLEVBQUE7SWhDZ0JsQjs7TWdDWE0sVUFBVSxFQUFBO0loQ1doQjs7OztNZ0NOTSxVQUFVLEVBQUE7O0FoQ01oQjtFZ0NDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLDJCQUEyQixFQUFBO0VoQ0g3QjtJZ0NNSSxXQUFXLEVBQUE7O0FoQ05mOztFZ0NjSSxpQjlCd002QixFQUFBOztBRnROakM7O0VVT0ksMEJzQmE4QjtFdEJaOUIsNkJzQlk4QixFQUFBOztBaENwQmxDOztFVXFCSSx5QnNCSTZCO0V0Qkg3Qiw0QnNCRzZCLEVBQUE7O0FoQ3pCakM7RWdDMENFLHdCQUFtQztFQUNuQyx1QkFBa0MsRUFBQTtFaEMzQ3BDOzs7SWdDZ0RJLGNBQWMsRUFBQTtFQUdoQjtJQUNFLGVBQWUsRUFBQTs7QWhDcERuQjtFZ0N5REUsdUJBQXNDO0VBQ3RDLHNCQUFxQyxFQUFBOztBaEMxRHZDO0VnQzhERSxzQkFBc0M7RUFDdEMscUJBQXFDLEVBQUE7O0FoQy9EdkM7RWdDb0ZFLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsdUJBQXVCLEVBQUE7RWhDdEZ6Qjs7SWdDMEZJLFdBQVcsRUFBQTtFaEMxRmY7O0lnQytGSSxnQjlCdUg2QixFQUFBO0VGdE5qQzs7SVVjSSw2QnNCdUYrQjtJdEJ0Ri9CLDRCc0JzRitCLEVBQUE7RWhDckduQzs7SVVBSSx5QnNCMEc0QjtJdEJ6RzVCLDBCc0J5RzRCLEVBQUE7O0FoQzFHaEM7O0VnQzhISSxnQkFBZ0IsRUFBQTtFaEM5SHBCOzs7O0lnQ2tJTSxrQkFBa0I7SUFDbEIsc0JBQXNCO0lBQ3RCLG9CQUFvQixFQUFBOztBaENwSTFCO0VpQ3BCRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsV0FBVyxFQUFBO0VqQ2dCYjs7OztJaUNWSSxrQkFBa0I7SUFDbEIsY0FBYztJQUNkLFNBQVM7SUFDVCxZQUFZO0lBQ1osZ0JBQWdCLEVBQUE7SWpDTXBCOzs7Ozs7Ozs7Ozs7TWlDRE0saUIvQnVOMkIsRUFBQTtFRnROakM7OztJaUNPSSxVQUFVLEVBQUE7RWpDUGQ7SWlDWUksVUFBVSxFQUFBO0VqQ1pkOztJVU9JLDBCdUJVbUQ7SXZCVG5ELDZCdUJTbUQsRUFBQTtFakNqQnZEOztJVXFCSSx5QnVCSG1EO0l2QkluRCw0QnVCSm1ELEVBQUE7RWpDbEJ2RDtJaUN3QkksYUFBYTtJQUNiLG1CQUFtQixFQUFBO0lqQ3pCdkI7O01VT0ksMEJ1QnFCNkU7TXZCcEI3RSw2QnVCb0I2RSxFQUFBO0lqQzVCakY7TVVxQkkseUJ1QlFzRTtNdkJQdEUsNEJ1Qk9zRSxFQUFBOztBakM3QjFFOztFaUMwQ0UsYUFBYSxFQUFBO0VqQzFDZjs7SWlDZ0RJLGtCQUFrQjtJQUNsQixVQUFVLEVBQUE7SWpDakRkOztNaUNvRE0sVUFBVSxFQUFBO0VqQ3BEaEI7Ozs7Ozs7O0lpQzRESSxpQi9CMEo2QixFQUFBOztBRnROakM7RWlDZ0V1QixrQi9Cc0pVLEVBQUE7O0FGdE5qQztFaUNpRXNCLGlCL0JxSlcsRUFBQTs7QUZ0TmpDO0VpQzBFRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHlCL0JpU2tDO0UrQmhTbEMsZ0JBQWdCO0U5QnVCWixlQXRDWTtFOEJpQmhCLGdCL0IyTCtCO0UrQjFML0IsZ0IvQitMK0I7RStCOUwvQixjaEN0R2dCO0VnQ3VHaEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QmhDcEdnQjtFZ0NxR2hCLHlCaEN2R2dCO0VTU2Qsc0JSa09nQyxFQUFBO0VGek5wQzs7SWlDMkZJLGFBQWEsRUFBQTs7QWpDM0ZqQjs7RWlDdUdFLGdDZlg4RCxFQUFBOztBbEI1RmhFOzs7Ozs7RWlDZ0hFLG9CL0I0UWdDO0VDeFI1QixrQkF0Q1k7RThCb0RoQixnQi9CaUcrQjtFUTVON0IscUJSbU8rQixFQUFBOztBRjFObkM7O0VpQ3dIRSxrQ2Y1QjhELEVBQUE7O0FsQjVGaEU7Ozs7OztFaUNpSUUsdUIvQnNQaUM7RUNuUjdCLG1CQXRDWTtFOEJxRWhCLGdCL0JpRitCO0VRN043QixxQlJvTytCLEVBQUE7O0FGM05uQzs7RWlDeUlFLHNCQUEwRSxFQUFBOztBakN6STVFOzs7Ozs7RVVPSSwwQnVCbUo0QjtFdkJsSjVCLDZCdUJrSjRCLEVBQUE7O0FqQzFKaEM7Ozs7OztFVXFCSSx5QnVCOEkyQjtFdkI3STNCLDRCdUI2STJCLEVBQUE7O0FqQ25LL0I7RVVxQkkseUJ3QjdDcUM7RXhCOENyQyw0QndCOUNxQyxFQUFBOztBbEN3QnpDO0VVT0ksMEJ3QjFCc0M7RXhCMkJ0Qyw2QndCM0JzQyxFQUFBOztBbENtQjFDO0VtQ2pCRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGtCQUErQztFQUMvQyxvQkFBcUUsRUFBQTs7QW5DY3ZFO0VtQ1ZFLG9CQUFvQjtFQUNwQixrQmpDK2YwQyxFQUFBOztBRnRmNUM7RW1DTEUsa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxXQUFXO0VBQ1gsV2pDMmYwQztFaUMxZjFDLGVBQWtGO0VBQ2xGLFVBQVUsRUFBQTtFbkNBWjtJbUNHSSxXakN2Qlc7SWlDd0JYLHFCakNLYTtJc0I5QmIseUJ0QjhCYSxFQUFBO0VGVGpCO0ltQ2NNLGdEakNMVyxFQUFBO0VGVGpCO0ltQ21CSSxxQmpDNGJzRSxFQUFBO0VGL2MxRTtJbUN1QkksV2pDM0NXO0lpQzRDWCx5QmpDd2Y4RTtJaUN2ZjlFLHFCakN1ZjhFLEVBQUE7RUZoaEJsRjtJbUNpQ00sY2pDL0NZLEVBQUE7SUZjbEI7TW1Db0NRLHlCakN0RFUsRUFBQTs7QUZrQmxCO0VtQytDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBRWhCLG1CQUFtQixFQUFBO0VuQ2xEckI7SW1DdURJLGtCQUFrQjtJQUNsQixZQUErRTtJQUMvRSxhQUErRDtJQUMvRCxjQUFjO0lBQ2QsV2pDOGJ3QztJaUM3YnhDLFlqQzZid0M7SWlDNWJ4QyxvQkFBb0I7SUFDcEIsV0FBVztJQUNYLHNCakNuRlc7SWlDb0ZYLHlCakNzSjZCLEVBQUE7RUZ0TmpDO0ltQ3NFSSxrQkFBa0I7SUFDbEIsWUFBK0U7SUFDL0UsYUFBK0Q7SUFDL0QsY0FBYztJQUNkLFdqQythd0M7SWlDOWF4QyxZakM4YXdDO0lpQzdheEMsV0FBVztJQUNYLG1DQUFnRSxFQUFBOztBbkM3RXBFO0VVVEksc0JSa09nQyxFQUFBOztBRnpOcEM7RW1DNkZNLGtPakI5RDRFLEVBQUE7O0FsQi9CbEY7RW1DbUdNLHFCakMxRlc7RXNCOUJiLHlCdEI4QmEsRUFBQTs7QUZUakI7RW1Dd0dNLCtLakJ6RTRFLEVBQUE7O0FsQi9CbEY7RW1DOEdNLHdDakNyR1csRUFBQTs7QUZUakI7RW1DaUhNLHdDakN4R1csRUFBQTs7QUZUakI7RW1DNkhJLGtCakNnYStDLEVBQUE7O0FGN2hCbkQ7RW1Da0lNLDhLakJuRzRFLEVBQUE7O0FsQi9CbEY7RW1Dd0lNLHdDakMvSFcsRUFBQTs7QUZUakI7RW1DbUpFLHFCQUEyRCxFQUFBO0VuQ25KN0Q7SW1DdUpNLGNBQXFEO0lBQ3JELGNqQ3dZK0U7SWlDdlkvRSxtQkFBbUI7SUFFbkIscUJqQ3NZNEUsRUFBQTtFRmppQmxGO0ltQytKTSx3QmpCbkUwRDtJaUJvRTFELDBCakJwRTBEO0lpQnFFMUQsdUJqQmpEMEQ7SWlCa0QxRCx3QmpCbEQwRDtJaUJtRDFELHlCakNsTFk7SWlDb0xaLHFCakM0WDRFO0lvQjVpQjVFLHlJcEI4ZitILEVBQUE7SW9CMWYvSDtNdEJPTjtRc0JOUSxnQkFBZ0IsRUFBQSxFYTZLbkI7RW5DdktMO0ltQzRLTSxzQmpDaE1TO0lpQ2lNVCw4QkFBNEUsRUFBQTtFbkM3S2xGO0ltQ21MTSx3Q2pDMUtXLEVBQUE7O0FGVGpCO0VtQ2dNRSxxQkFBcUI7RUFDckIsV0FBVztFQUNYLG1DakJ0RzhEO0VpQnVHOUQsMENqQzBLa0M7RUN6UTlCLGVBdENZO0VnQ3dJaEIsZ0JqQ29FK0I7RWlDbkUvQixnQmpDd0UrQjtFaUN2RS9CLGNsQzdOZ0I7RWtDOE5oQixzQkFBc0I7RUFDdEIsdU9qQ3lXK0k7RWlDeFcvSSx5QmxDN05nQjtFU1NkLHNCUmtPZ0M7RWlDWGxDLHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBQUE7RW5DOU1sQjtJbUNpTkkscUJqQzhQc0U7SWlDN1B0RSxVQUFVO0lBS1IsZ0RqQzlNVyxFQUFBO0lGVGpCO01tQ2dPTSxjbENyUFk7TWtDc1BaLHNCbEMvT1MsRUFBQTtFRGNmO0ltQ3VPSSxZQUFZO0lBQ1osc0JqQ3FJZ0M7SWlDcEloQyxzQkFBc0IsRUFBQTtFbkN6TzFCO0ltQzZPSSxjbENqUWM7SWtDa1FkLHlCbEM5UGMsRUFBQTtFRGdCbEI7SW1DbVBJLGFBQWEsRUFBQTtFbkNuUGpCO0ltQ3dQSSxrQkFBa0I7SUFDbEIsMEJsQzlRYyxFQUFBOztBRHFCbEI7RW1DOFBFLGtDakJsSzhEO0VpQm1LOUQsb0JqQ3VIa0M7RWlDdEhsQyx1QmpDc0hrQztFaUNySGxDLG9CakNzSGlDO0VDblI3QixtQkF0Q1ksRUFBQTs7QUg5RGxCO0VtQ3NRRSxnQ2pCMUs4RDtFaUIySzlELG1CakNvSGlDO0VpQ25IakMsc0JqQ21IaUM7RWlDbEhqQyxrQmpDbUhnQztFQ3hSNUIsa0JBdENZLEVBQUE7O0FIOURsQjtFbUNtUkUsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsbUNqQjFMOEQ7RWlCMkw5RCxnQkFBZ0IsRUFBQTs7QW5DdlJsQjtFbUMyUkUsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsbUNqQmxNOEQ7RWlCbU05RCxTQUFTO0VBQ1QsVUFBVSxFQUFBO0VuQ2hTWjtJbUNtU0kscUJqQzRLc0U7SWlDM0t0RSxnRGpDM1JhLEVBQUE7RUZUakI7O0ltQzBTSSx5QmpDNVRjLEVBQUE7RUZrQmxCO0ltQytTTSxpQmpDbVVRLEVBQUE7RUZsbkJkO0ltQ29USSwwQkFBMEIsRUFBQTs7QW5DcFQ5QjtFbUN5VEUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLFVBQVU7RUFDVixtQ2pCbE84RDtFaUJtTzlELHlCakM4Q2tDO0VpQzVDbEMsZ0JqQ3ZEK0I7RWlDd0QvQixnQmpDbkQrQjtFaUNvRC9CLGNqQ2hWZ0I7RWlDaVZoQixzQmpDeFZhO0VpQ3lWYix5QmpDclZnQjtFUU9kLHNCUmtPZ0MsRUFBQTtFRnpOcEM7SW1DMFVJLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sUUFBUTtJQUNSLFNBQVM7SUFDVCxVQUFVO0lBQ1YsY0FBYztJQUNkLDZCakJwUDREO0lpQnFQNUQseUJqQzRCZ0M7SWlDM0JoQyxnQmpDbkU2QjtJaUNvRTdCLGNqQ2hXYztJaUNpV2QsaUJBQWlCO0lYeldqQix5QnRCR2M7SWlDd1dkLG9CQUFvQjtJekIvVnBCLGtDeUJnV2dGLEVBQUE7O0FuQ3ZWcEY7RW1Da1dFLFdBQVc7RUFDWCxjakIxUTJCO0VpQjJRM0IsVUFBVTtFQUNWLDZCQUE2QjtFQUM3Qix3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQixFQUFBO0VuQ3RXbEI7SW1DeVdJLGFBQWEsRUFBQTtJbkN6V2pCO01tQzZXOEIsZ0VqQ3BXYixFQUFBO0lGVGpCO01tQzhXOEIsZ0VqQ3JXYixFQUFBO0lGVGpCO01tQytXOEIsZ0VqQ3RXYixFQUFBO0VGVGpCO0ltQ21YSSxTQUFTLEVBQUE7RW5DblhiO0ltQ3VYSSxXakM0TjZDO0lpQzNON0MsWWpDMk42QztJaUMxTjdDLG9CQUF5RTtJWDlZekUseUJ0QjhCYTtJaUNrWGIsU2pDMk4wQztJUS9sQjFDLG1CUmdtQjZDO0lvQmxtQjNDLG9IcEI4ZitIO0lvQjlmL0gsNEdwQjhmK0g7SWlDcEhqSSx3QkFBZ0I7WUFBaEIsZ0JBQWdCLEVBQUE7SWJ0WWQ7TXRCT047UXNCTlEsd0JBQWdCO1FBQWhCLGdCQUFnQixFQUFBLEVhMFlyQjtJbkNwWUg7TXdCckJJLHlCdEJnbkIyRSxFQUFBO0VGM2xCL0U7SW1DdVlJLFdqQ3FNb0M7SWlDcE1wQyxjakNxTXFDO0lpQ3BNckMsa0JBQWtCO0lBQ2xCLGVqQ29NdUM7SWlDbk12Qyx5QmpDNVpjO0lpQzZaZCx5QkFBeUI7SXpCclp6QixtQlJ5bEJvQyxFQUFBO0VGaGxCeEM7SW1Da1pJLFdqQ2lNNkM7SWlDaE03QyxZakNnTTZDO0lzQnhtQjdDLHlCdEI4QmE7SWlDNFliLFNqQ2lNMEM7SVEvbEIxQyxtQlJnbUI2QztJb0JsbUIzQyxpSHBCOGYrSDtJb0I5Zi9ILDRHcEI4ZitIO0lpQzFGakkscUJBQWdCO1NBQWhCLGdCQUFnQixFQUFBO0liaGFkO010Qk9OO1FzQk5RLHFCQUFnQjtRQUFoQixnQkFBZ0IsRUFBQSxFYW9hckI7SW5DOVpIO013QnJCSSx5QnRCZ25CMkUsRUFBQTtFRjNsQi9FO0ltQ2lhSSxXakMyS29DO0lpQzFLcEMsY2pDMktxQztJaUMxS3JDLGtCQUFrQjtJQUNsQixlakMwS3VDO0lpQ3pLdkMseUJqQ3RiYztJaUN1YmQseUJBQXlCO0l6Qi9hekIsbUJSeWxCb0MsRUFBQTtFRmhsQnhDO0ltQzRhSSxXakN1SzZDO0lpQ3RLN0MsWWpDc0s2QztJaUNySzdDLGFBQWE7SUFDYixvQmpDN0QrQjtJaUM4RC9CLG1CakM5RCtCO0lzQnZZL0IseUJ0QjhCYTtJaUN5YWIsU2pDb0swQztJUS9sQjFDLG1CUmdtQjZDO0lvQmxtQjNDLGdIcEI4ZitIO0lvQjlmL0gsNEdwQjhmK0g7SWlDN0RqSSxnQkFBZ0IsRUFBQTtJYjdiZDtNdEJPTjtRc0JOUSxvQkFBZ0I7UUFBaEIsZ0JBQWdCLEVBQUEsRWFpY3JCO0luQzNiSDtNd0JyQkkseUJ0QmduQjJFLEVBQUE7RUYzbEIvRTtJbUM4YkksV2pDOElvQztJaUM3SXBDLGNqQzhJcUM7SWlDN0lyQyxrQkFBa0I7SUFDbEIsZWpDNkl1QztJaUM1SXZDLDZCQUE2QjtJQUM3Qix5QkFBeUI7SUFDekIsb0JBQTRDLEVBQUE7RW5DcGNoRDtJbUN5Y0kseUJqQzFkYztJUVFkLG1CUnlsQm9DLEVBQUE7RUZobEJ4QztJbUM4Y0ksa0JBQWtCO0lBQ2xCLHlCakNoZWM7SVFRZCxtQlJ5bEJvQyxFQUFBO0VGaGxCeEM7SW1DcWRNLHlCakNwZVksRUFBQTtFRmVsQjtJbUN5ZE0sZUFBZSxFQUFBO0VuQ3pkckI7SW1DNmRNLHlCakM1ZVksRUFBQTtFRmVsQjtJbUNpZU0sZUFBZSxFQUFBO0VuQ2plckI7SW1DcWVNLHlCakNwZlksRUFBQTs7QUZlbEI7OztFc0JYTSw0R3BCOGYrSCxFQUFBO0VvQjFmL0g7SXRCT047OztNc0JOUSxnQkFBZ0IsRUFBQSxFYW9mdkI7O0FuQzllRDtFb0NyQkUsYUFBYTtFQUNiLGVBQWU7RUFDZixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGdCQUFnQixFQUFBOztBcENpQmxCO0VvQ2JFLGNBQWM7RUFDZCxvQmxDK3FCc0MsRUFBQTtFRm5xQnhDO0lvQ1JJLHFCQUFxQixFQUFBO0VwQ1F6QjtJb0NISSxjbENYYztJa0NZZCxvQkFBb0I7SUFDcEIsZUFBZSxFQUFBOztBcENDbkI7RW9DUUUsbURuQ2hDYSxFQUFBO0VEd0JmO0lvQ1dJLG1CbEMyTTZCLEVBQUE7RUZ0TmpDO0lvQ2VJLDZCQUFnRDtJMUJmaEQsK0JSeU5nQztJUXhOaEMsZ0NSd05nQyxFQUFBO0lGek5wQztNb0NtQk0sd0RuQzNDUyxFQUFBO0lEd0JmO01vQ3VCTSxjbENyQ1k7TWtDc0NaLDZCQUE2QjtNQUM3Qix5QkFBeUIsRUFBQTtFcEN6Qi9COztJb0MrQkksY25DdERjO0ltQ3VEZCx5Qm5DbEJpQjtJbUNtQmpCLHFDbkNuQmlCLEVBQUE7RURkckI7SW9Dc0NJLGdCbENnTDZCO0lRdE43Qix5QjBCd0M0QjtJMUJ2QzVCLDBCMEJ1QzRCLEVBQUE7O0FwQ3hDaEM7RVVUSSxzQlJrT2dDLEVBQUE7O0FGek5wQzs7RW9Dd0RJLFdsQzVFVztFa0M2RVgseUJsQ2hEYSxFQUFBOztBRlRqQjtFb0NvRUksY0FBYztFQUNkLGtCQUFrQixFQUFBOztBcENyRXRCO0VvQzJFSSxhQUFhO0VBQ2IsWUFBWTtFQUNaLGtCQUFrQixFQUFBOztBcEM3RXRCO0VvQ3dGSSxhQUFhLEVBQUE7O0FwQ3hGakI7RW9DMkZJLGNBQWMsRUFBQTs7QXBDM0ZsQjtFcUNURSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsOEJBQThCO0VBQzlCLG9CbkNtSFcsRUFBQTtFRi9HYjs7SXFDQ0ksYUFBYTtJQUNiLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsOEJBQThCLEVBQUE7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MUI7TXFDc0xVLGFBQWEsRUFBQSxFQUNkOztBckN2TFQ7RXFDOElRLHFCQUFxQjtFQUNyQiwyQkFBMkIsRUFBQTtFckMvSW5DOztJcUM2SFUsZ0JBQWdCO0lBQ2hCLGVBQWUsRUFBQTtFckM5SHpCO0lxQ2tKVSxtQkFBbUIsRUFBQTtJckNsSjdCO01xQ3FKWSxrQkFBa0IsRUFBQTtJckNySjlCO01xQ3lKWSxxQm5Da2lCNkI7TW1DamlCN0Isb0JuQ2lpQjZCLEVBQUE7RUYzckJ6Qzs7SXFDZ0tVLGlCQUFpQixFQUFBO0VyQ2hLM0I7SXFDK0tVLHdCQUF3QjtJQUd4QixnQkFBZ0IsRUFBQTtFckNsTDFCO0lxQ3NMVSxhQUFhLEVBQUE7O0FyQ3RMdkI7RXFDcU1JLHlCbkMvTVcsRUFBQTtFRlVmO0lxQ3dNTSx5Qm5DbE5TLEVBQUE7O0FGVWY7RXFDOE1NLHlCbkN4TlMsRUFBQTtFRlVmO0lxQ2lOUSx5Qm5DM05PLEVBQUE7RUZVZjtJcUNxTlEseUJuQy9OTyxFQUFBOztBRlVmOzs7O0VxQzZOTSx5Qm5Ddk9TLEVBQUE7O0FGVWY7RXFDa09JLHlCbkM1T1c7RW1DNk9YLGdDbkM3T1csRUFBQTs7QUZVZjtFcUN1T0ksbVJuQnhNOEUsRUFBQTs7QWxCL0JsRjtFcUMyT0kseUJuQ3JQVyxFQUFBO0VGVWY7SXFDNk9NLHlCbkN2UFMsRUFBQTtJRlVmO01xQ2dQUSx5Qm5DMVBPLEVBQUE7O0FGVWY7RXFDeVBJLFduQzdRVyxFQUFBO0VGb0JmO0lxQzRQTSxXbkNoUlMsRUFBQTs7QUZvQmY7RXFDa1FNLCtCbkN0UlMsRUFBQTtFRm9CZjtJcUNxUVEsZ0NuQ3pSTyxFQUFBO0VGb0JmO0lxQ3lRUSxnQ25DN1JPLEVBQUE7O0FGb0JmOzs7Ozs7O0VxQ2lSTSxXbkNyU1MsRUFBQTs7QUZvQmY7RXFDc1JJLCtCbkMxU1c7RW1DMlNYLHNDbkMzU1csRUFBQTs7QUZvQmY7RXFDMlJJLHlSbkI1UDhFLEVBQUE7O0FsQi9CbEY7RXFDK1JJLCtCbkNuVFcsRUFBQTtFRm9CZjtJcUNpU00sV25DclRTLEVBQUE7SUZvQmY7TXFDb1NRLFduQ3hUTyxFQUFBOztBRm9CZjtFc0N0QkUsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsWUFBWTtFQUVaLHFCQUFxQjtFQUNyQix5QnJDQ2dCO0VxQ0FoQiwyQkFBMkI7RUFDM0IsNENyQ1ZhO0VTZVgsc0JSa09nQyxFQUFBO0VGek5wQztJc0NWSSxlQUFlO0lBQ2YsY0FBYyxFQUFBO0V0Q1NsQjtJc0NMSSxtQkFBbUI7SUFDbkIsc0JBQXNCLEVBQUE7SXRDSTFCO01zQ0RNLG1CQUFtQjtNNUJDckIsMkNRZ0g0RDtNUi9HNUQsNENRK0c0RCxFQUFBO0lsQmhIaEU7TXNDSU0sc0JBQXNCO001QlV4QiwrQ1FrRzREO01Sakc1RCw4Q1FpRzRELEVBQUE7O0FsQmhIaEU7RXNDYUUsY0FBYztFQUdkLGVBQWU7RUFDZixnQnBDc3hCeUM7RW9DcnhCekMsY3JDeENnQixFQUFBOztBRHNCbEI7RXNDc0JFLHNCcENneEJ3QyxFQUFBOztBRnR5QjFDO0VzQzBCRSxxQkFBK0I7RUFDL0IsZ0JBQWdCLEVBQUE7O0F0QzNCbEI7RXNDK0JFLGdCQUFnQixFQUFBOztBdEMvQmxCO0VzQ29DSSxxQkFBcUIsRUFBQTs7QXRDcEN6QjtFc0N3Q0ksb0JwQyt2QnVDLEVBQUE7O0FGdnlCM0M7RXNDaURFLHdCcENzdkJ5QztFb0NydkJ6QyxnQkFBZ0I7RUFFaEIsMkNyQzVFYTtFcUM2RWIsbURyQzdFYSxFQUFBO0VEd0JmO0lVVEksMEQ0QmlFOEUsRUFBQTtFdEN4RGxGO0lzQzZETSxhQUFhLEVBQUE7O0F0QzdEbkI7RXNDbUVFLHdCcENvdUJ5QztFb0NsdUJ6QywyQ3JDN0ZhO0VxQzhGYixnRHJDOUZhLEVBQUE7RUR3QmY7SVVUSSwwRFF5SDRELEVBQUE7O0FsQmhIaEU7RXNDbUZFLHVCQUFpQztFQUNqQyx1QnBDa3RCd0M7RW9DanRCeEMsc0JBQWdDO0VBQ2hDLGdCQUFnQixFQUFBOztBdEN0RmxCO0VzQzBGRSx1QkFBaUM7RUFDakMsc0JBQWdDLEVBQUE7O0F0QzNGbEM7RXNDZ0dFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsZ0JwQzZzQnlDLEVBQUE7O0FGbHpCM0M7OztFc0MyR0UsY0FBYztFQUNkLFdBQVcsRUFBQTs7QXRDNUdiOztFVUFJLDJDUWdINEQ7RVIvRzVELDRDUStHNEQsRUFBQTs7QWxCaEhoRTs7RVVjSSwrQ1FrRzREO0VSakc1RCw4Q1FpRzRELEVBQUE7O0FsQmhIaEU7RXNDOEhJLG1CcENzckJzRCxFQUFBOztBV254QnREO0ViakNKO0lzQ2tJSSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLG1CcENnckJzRDtJb0MvcUJ0RCxrQnBDK3FCc0QsRUFBQTtJRnB6QjFEO01zQ3lJTSxZQUFZO01BQ1osa0JwQzBxQm9EO01vQ3pxQnBELGdCQUFnQjtNQUNoQixpQnBDd3FCb0QsRUFBQSxFb0N2cUJyRDs7QXRDN0lMO0VzQzBKSSxtQnBDMHBCc0QsRUFBQTs7QVdueEJ0RDtFYmpDSjtJc0M4SkksYUFBYTtJQUNiLG1CQUFtQixFQUFBO0l0Qy9KdkI7TXNDb0tNLFlBQVk7TUFDWixnQkFBZ0IsRUFBQTtNdENyS3RCO1FzQ3dLUSxjQUFjO1FBQ2QsY0FBYyxFQUFBO010Q3pLdEI7UVVPSSwwQjRCd0tvQztRNUJ2S3BDLDZCNEJ1S29DLEVBQUE7UXRDL0t4Qzs7VXNDb0xZLDBCQUEwQixFQUFBO1F0Q3BMdEM7O1VzQ3lMWSw2QkFBNkIsRUFBQTtNdEN6THpDO1FVcUJJLHlCNEJ5S21DO1E1QnhLbkMsNEI0QndLbUMsRUFBQTtRdEM5THZDOztVc0NtTVkseUJBQXlCLEVBQUE7UXRDbk1yQzs7VXNDd01ZLDRCQUE0QixFQUFBLEVBQzdCOztBdEN6TVg7RXNDdU5JLHNCcEMra0JzQyxFQUFBOztBV3J3QnRDO0ViakNKO0lzQzJOSSxvQnBDNGxCaUM7U29DNWxCakMsZXBDNGxCaUM7SW9DM2xCakMsd0JwQzRsQnVDO1NvQzVsQnZDLG1CcEM0bEJ1QztJb0MzbEJ2QyxVQUFVO0lBQ1YsU0FBUyxFQUFBO0l0QzlOYjtNc0NpT00scUJBQXFCO01BQ3JCLFdBQVcsRUFBQSxFQUNaOztBdENuT0w7RXNDOE9JLGdCQUFnQixFQUFBO0V0QzlPcEI7SXNDaVBNLGdCQUFnQjtJNUJuT2xCLDZCNEJvT2lDO0k1Qm5PakMsNEI0Qm1PaUMsRUFBQTtFdENsUHJDO0lVQUkseUI0QnNQOEI7STVCclA5QiwwQjRCcVA4QixFQUFBO0V0Q3RQbEM7SVVUSSxnQjRCbVEwQjtJQUN4QixtQnBDckMyQixFQUFBOztBRnROakM7RXVDMUJFLGFBQWE7RUFDYixlQUFlO0VBQ2YscUJyQ2tpQ3NDO0VxQ2ppQ3RDLG1CckNvaUNzQztFcUNsaUN0QyxnQkFBZ0I7RUFDaEIseUJ0Q0lnQjtFU09kLHNCUmtPZ0MsRUFBQTs7QUZ6TnBDO0V1Q2ZFLGFBQWEsRUFBQTtFdkNlZjtJdUNYSSxvQnJDc2hDcUMsRUFBQTtJRjNnQ3pDO011Q1JNLHFCQUFxQjtNQUNyQixxQnJDa2hDbUM7TXFDamhDbkMsY3RDZFk7TXNDZVosWXJDdWhDdUMsRUFBQTtFRmxoQzdDO0l1Q01JLDBCQUEwQixFQUFBO0V2Q045QjtJdUNVSSxxQkFBcUIsRUFBQTtFdkNWekI7SXVDY0ksY3RDbENjLEVBQUE7O0FEb0JsQjtFd0MxQkUsYUFBYTtFakNHYixlQUFlO0VBQ2YsZ0JBQWdCO0VHYWQsc0JSa09nQyxFQUFBOztBRnpOcEM7RXdDcEJFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsdUJ0Q214QndDO0VzQ2x4QnhDLGlCdEN1TytCO0VzQ3RPL0IsaUJ0Q3N4QnNDO0VzQ3J4QnRDLGN2Q21Da0Q7RXVDakNsRCxzQnZDRGE7RXVDRWIseUJ2Q0xnQixFQUFBO0VEaUJsQjtJd0NUSSxVQUFVO0lBQ1YsY3ZDOEJnRDtJdUM3QmhELHFCQUFxQjtJQUNyQix5QnZDVmM7SXVDV2QscUJ2Q1pjLEVBQUE7RURpQmxCO0l3Q0RJLFVBQVU7SUFDVixVdEM4d0JpQztJc0M3d0JqQyxnRHRDUWEsRUFBQTs7QUZUakI7RXdDUU0sY0FBYztFOUJhaEIsK0JSb01nQztFUW5NaEMsa0NSbU1nQyxFQUFBOztBRnpOcEM7RVVPSSxnQ1JrTmdDO0VRak5oQyxtQ1JpTmdDLEVBQUE7O0FGek5wQztFd0NtQkksVUFBVTtFQUNWLFd2Q2xDVztFdUNtQ1gseUJ2QzVCa0Q7RXVDNkJsRCxxQnZDN0JrRCxFQUFBOztBRE90RDtFd0MwQkksY3ZDOUNjO0V1QytDZCxvQkFBb0I7RUFFcEIsWUFBWTtFQUNaLHNCdkM1Q1c7RXVDNkNYLHFCdkNoRGMsRUFBQTs7QURpQmxCO0V5Q3ZCSSx1QnZDNHhCc0M7RUNqcUJwQyxrQkF0Q1k7RXNDbkZkLGdCdkN3TzZCLEVBQUE7O0FGbk5qQztFVXFCSSw4QlJxTStCO0VRcE0vQixpQ1JvTStCLEVBQUE7O0FGMU5uQztFVU9JLCtCUm1OK0I7RVFsTi9CLGtDUmtOK0IsRUFBQTs7QUYxTm5DO0V5Q3ZCSSx1QnZDMHhCcUM7RUMvcEJuQyxtQkF0Q1k7RXNDbkZkLGdCdkN5TzZCLEVBQUE7O0FGcE5qQztFVXFCSSw4QlJzTStCO0VRck0vQixpQ1JxTStCLEVBQUE7O0FGM05uQztFVU9JLCtCUm9OK0I7RVFuTi9CLGtDUm1OK0IsRUFBQTs7QUYzTm5DO0UwQ3JCRSxxQkFBcUI7RUFDckIscUJ4QzI1QnNDO0VDMTFCcEMsY0FBVztFdUMvRGIsZ0J4QzZSK0I7RXdDNVIvQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix3QkFBd0I7RWhDS3RCLHNCUmtPZ0M7RW9CcE85QixxSXBCcWI2SSxFQUFBO0VvQmpiN0k7SXRCT047TXNCTlEsZ0JBQWdCLEVBQUEsRW9CTXZCO0VDWEM7SURHSSxxQkFBcUIsRUFBQTtFMUNRM0I7STBDRkksYUFBYSxFQUFBOztBMUNFakI7RTBDSUUsa0JBQWtCO0VBQ2xCLFNBQVMsRUFBQTs7QTFDTFg7RTBDYUUsb0J4Q2c0QnNDO0V3Qy8zQnRDLG1CeEMrM0JzQztFUXQ1QnBDLG9CUnk1QnFDLEVBQUE7O0FGaDVCekM7RTRDMUJFLGMzQ01nQjtFMkNMaEIseUIxQ2tDZSxFQUFBO0V5Q3BCZjtJQ1ZJLGMzQ0NZO0kyQ0FaLHlCQUFrQyxFQUFBO0VBSDlCO0lBUUosVUFBVTtJQUNWLCtDMUN1QlcsRUFBQTs7QUZUakI7RTRDMUJFLGMzQ01nQjtFMkNMaEIseUIxQ1dnQixFQUFBO0V5Q0doQjtJQ1ZJLGMzQ0NZO0kyQ0FaLHlCQUFrQyxFQUFBO0VBSDlCO0lBUUosVUFBVTtJQUNWLGlEMUNBWSxFQUFBOztBRmNsQjtFNEMxQkUsYzNDTWdCO0UyQ0xoQix5QjFDeUNlLEVBQUE7RXlDM0JmO0lDVkksYzNDQ1k7STJDQVoseUJBQWtDLEVBQUE7RUFIOUI7SUFRSixVQUFVO0lBQ1YsK0MxQzhCVyxFQUFBOztBRmhCakI7RTRDMUJFLGMzQ01nQjtFMkNMaEIseUIxQzJDZSxFQUFBO0V5QzdCZjtJQ1ZJLGMzQ0NZO0kyQ0FaLHlCQUFrQyxFQUFBO0VBSDlCO0lBUUosVUFBVTtJQUNWLGdEMUNnQ1csRUFBQTs7QUZsQmpCO0U0QzFCRSxjM0NXZ0I7RTJDVmhCLHlCMUN3Q2UsRUFBQTtFeUMxQmY7SUNWSSxjM0NNWTtJMkNMWix5QkFBa0MsRUFBQTtFQUg5QjtJQVFKLFVBQVU7SUFDViwrQzFDNkJXLEVBQUE7O0FGZmpCO0U0QzFCRSxjM0NNZ0I7RTJDTGhCLHlCMUNzQ2UsRUFBQTtFeUN4QmY7SUNWSSxjM0NDWTtJMkNBWix5QkFBa0MsRUFBQTtFQUg5QjtJQVFKLFVBQVU7SUFDViwrQzFDMkJXLEVBQUE7O0FGYmpCO0U0QzFCRSxjM0NXZ0I7RTJDVmhCLHlCMUNNZ0IsRUFBQTtFeUNRaEI7SUNWSSxjM0NNWTtJMkNMWix5QkFBa0MsRUFBQTtFQUg5QjtJQVFKLFVBQVU7SUFDVixpRDFDTFksRUFBQTs7QUZtQmxCO0U0QzFCRSxjM0NNZ0I7RTJDTGhCLHlCMUNhZ0IsRUFBQTtFeUNDaEI7SUNWSSxjM0NDWTtJMkNBWix5QkFBa0MsRUFBQTtFQUg5QjtJQVFKLFVBQVU7SUFDViw4QzFDRVksRUFBQTs7QUZZbEI7RTZDMUJFLGtCQUFvRDtFQUNwRCxtQjNDd3pCc0M7RTJDdHpCdEMseUI1Q09nQjtFU09kLHFCUm1PK0IsRUFBQTtFV3pML0I7SWJqQ0o7TTZDbkJJLGtCM0NrekJvQyxFQUFBLEUyQ2h6QnZDOztBN0NpQkQ7RTZDZEUsZ0JBQWdCO0VBQ2hCLGVBQWU7RW5DSWIsZ0JtQ0hzQixFQUFBOztBN0NZMUI7RThDdEJFLGtCQUFrQjtFQUNsQix3QjVDdzlCeUM7RTRDdjlCekMsbUI1Q3c5QnNDO0U0Q3Y5QnRDLDZCQUE2QztFcENVM0Msc0JSa09nQyxFQUFBOztBRnpOcEM7RThDWkUsY0FBYyxFQUFBOztBOUNZaEI7RThDUEUsZ0I1Q2tSK0IsRUFBQTs7QUYzUWpDO0U4Q0VFLG1CQUFzRCxFQUFBO0U5Q0Z4RDtJOENNSSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFFBQVE7SUFDUix3QjVDMDdCdUM7STRDejdCdkMsY0FBYyxFQUFBOztBOUNWbEI7RStDMUJFLGM3QnFHZ0U7RU1oRzlELHlCTmdHOEQ7RTZCbkdoRSxxQjdCbUdnRSxFQUFBO0VsQjNFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QnFHZ0U7RU1oRzlELHlCTmdHOEQ7RTZCbkdoRSxxQjdCbUdnRSxFQUFBO0VsQjNFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QnFHZ0U7RU1oRzlELHlCTmdHOEQ7RTZCbkdoRSxxQjdCbUdnRSxFQUFBO0VsQjNFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QnFHZ0U7RU1oRzlELHlCTmdHOEQ7RTZCbkdoRSxxQjdCbUdnRSxFQUFBO0VsQjNFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QnFHZ0U7RU1oRzlELHlCTmdHOEQ7RTZCbkdoRSxxQjdCbUdnRSxFQUFBO0VsQjNFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QnFHZ0U7RU1oRzlELHlCTmdHOEQ7RTZCbkdoRSxxQjdCbUdnRSxFQUFBO0VsQjNFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QnFHZ0U7RU1oRzlELHlCTmdHOEQ7RTZCbkdoRSxxQjdCbUdnRSxFQUFBO0VsQjNFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QnFHZ0U7RU1oRzlELHlCTmdHOEQ7RTZCbkdoRSxxQjdCbUdnRSxFQUFBO0VsQjNFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0FDUjVCO0VBQ0U7SUFBTywyQkFBdUMsRUFBQTtFQUM5QztJQUFLLHdCQUF3QixFQUFBLEVBQUE7O0FBRi9CO0VBQ0U7SUFBTywyQkFBdUMsRUFBQTtFQUM5QztJQUFLLHdCQUF3QixFQUFBLEVBQUE7O0FoRHVCakM7RWdEbEJFLGFBQWE7RUFDYixZOUNpK0JzQztFOENoK0J0QyxnQkFBZ0I7RUFDaEIsY0FBYztFN0NtSFYsa0JBdENZO0U2QzNFaEIseUI5Q0xnQjtFUVNkLHNCUmtPZ0MsRUFBQTs7QUZ6TnBDO0VnRFBFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLGdCQUFnQjtFQUNoQixXOUNqQmE7RThDa0JiLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIseUI5Q1NlO0VvQnBCWCwyQnBCbStCNEMsRUFBQTtFb0IvOUI1QztJdEJPTjtNc0JOUSxnQkFBZ0IsRUFBQSxFMEJRdkI7O0FoREZEO0V3QmdCRSxxTUFBNkk7RXdCVjdJLDBCOUMwOEJzQyxFQUFBOztBRmg5QnhDO0VnRFdJLDBEOUM0OEJrRDtVOEM1OEJsRCxrRDlDNDhCa0QsRUFBQTtFOEN6OEJoRDtJaERkTjtNZ0RlUSx1QkFBZTtjQUFmLGVBQWUsRUFBQSxFQUdwQjs7QWhEbEJIO0VpRDFCRSxhQUFhO0VBQ2IsdUJBQXVCLEVBQUE7O0FqRHlCekI7RWlEckJFLE9BQU8sRUFBQTs7QWpEcUJUO0VrRHRCRSxhQUFhO0VBQ2Isc0JBQXNCO0VBR3RCLGVBQWU7RUFDZixnQkFBZ0I7RXhDUWQsc0JSa09nQyxFQUFBOztBRnpOcEM7RWtETkUsV0FBVztFQUNYLGNqRGhCZ0I7RWlEaUJoQixtQkFBbUIsRUFBQTtFbERJckI7SWtEQUksVUFBVTtJQUNWLGNqRHRCYztJaUR1QmQscUJBQXFCO0lBQ3JCLHlCakRsQmMsRUFBQTtFRGVsQjtJa0RPSSxjakRRaUI7SWlEUGpCLHlCakR4QmMsRUFBQTs7QURnQmxCO0VrRGtCRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHdCaERnOUJ5QztFZ0Q3OEJ6Qyx3Q2pEVG1CO0VpRFVuQiw0Q2pEaERhLEVBQUE7RUR3QmY7SVVBSSwrQndDMkJrQztJeEMxQmxDLGdDd0MwQmtDLEVBQUE7RWxEM0J0QztJVWNJLG1Dd0NpQnFDO0l4Q2hCckMsa0N3Q2dCcUMsRUFBQTtFbEQvQnpDO0lrRG9DSSxjakR4RGM7SWlEeURkLG9CQUFvQjtJQUNwQix3Q2pEeEJpQixFQUFBO0VEZHJCO0lrRDJDSSxVQUFVO0lBQ1YsV2pEMURXO0lpRDJEWCx5QmpEcERrRDtJaURxRGxELHFCakRyRGtELEVBQUE7RURPdEQ7SWtEa0RJLG1CQUFtQixFQUFBO0lsRGxEdkI7TWtEcURNLGdCaERpSzJCO01nRGhLM0IscUJoRGdLMkIsRUFBQTs7QUZ0TmpDO0VrRHFFTSxtQkFBbUIsRUFBQTtFbERyRXpCO0lVOENJLGtDUjJLZ0M7SVF2TGhDLDBCd0N3Q3dDLEVBQUE7RWxEMUU1QztJVWtDSSxnQ1J1TGdDO0lRM0toQyw0QndDaUMwQyxFQUFBO0VsRC9FOUM7SWtEbUZVLGFBQWEsRUFBQTtFbERuRnZCO0lrRHVGVSxxQmhEK0h1QjtJZ0Q5SHZCLG9CQUFvQixFQUFBO0lsRHhGOUI7TWtEMkZZLGlCaEQySHFCO01nRDFIckIsc0JoRDBIcUIsRUFBQTs7QVdyTDdCO0ViakNKO0lrRHFFTSxtQkFBbUIsRUFBQTtJbERyRXpCO01VOENJLGtDUjJLZ0M7TVF2TGhDLDBCd0N3Q3dDLEVBQUE7SWxEMUU1QztNVWtDSSxnQ1J1TGdDO01RM0toQyw0QndDaUMwQyxFQUFBO0lsRC9FOUM7TWtEbUZVLGFBQWEsRUFBQTtJbERuRnZCO01rRHVGVSxxQmhEK0h1QjtNZ0Q5SHZCLG9CQUFvQixFQUFBO01sRHhGOUI7UWtEMkZZLGlCaEQySHFCO1FnRDFIckIsc0JoRDBIcUIsRUFBQSxFZ0R6SHRCOztBckM1RFA7RWJqQ0o7SWtEcUVNLG1CQUFtQixFQUFBO0lsRHJFekI7TVU4Q0ksa0NSMktnQztNUXZMaEMsMEJ3Q3dDd0MsRUFBQTtJbEQxRTVDO01Va0NJLGdDUnVMZ0M7TVEzS2hDLDRCd0NpQzBDLEVBQUE7SWxEL0U5QztNa0RtRlUsYUFBYSxFQUFBO0lsRG5GdkI7TWtEdUZVLHFCaEQrSHVCO01nRDlIdkIsb0JBQW9CLEVBQUE7TWxEeEY5QjtRa0QyRlksaUJoRDJIcUI7UWdEMUhyQixzQmhEMEhxQixFQUFBLEVnRHpIdEI7O0FyQzVEUDtFYmpDSjtJa0RxRU0sbUJBQW1CLEVBQUE7SWxEckV6QjtNVThDSSxrQ1IyS2dDO01RdkxoQywwQndDd0N3QyxFQUFBO0lsRDFFNUM7TVVrQ0ksZ0NSdUxnQztNUTNLaEMsNEJ3Q2lDMEMsRUFBQTtJbEQvRTlDO01rRG1GVSxhQUFhLEVBQUE7SWxEbkZ2QjtNa0R1RlUscUJoRCtIdUI7TWdEOUh2QixvQkFBb0IsRUFBQTtNbER4RjlCO1FrRDJGWSxpQmhEMkhxQjtRZ0QxSHJCLHNCaEQwSHFCLEVBQUEsRWdEekh0Qjs7QXJDNURQO0ViakNKO0lrRHFFTSxtQkFBbUIsRUFBQTtJbERyRXpCO01VOENJLGtDUjJLZ0M7TVF2TGhDLDBCd0N3Q3dDLEVBQUE7SWxEMUU1QztNVWtDSSxnQ1J1TGdDO01RM0toQyw0QndDaUMwQyxFQUFBO0lsRC9FOUM7TWtEbUZVLGFBQWEsRUFBQTtJbERuRnZCO01rRHVGVSxxQmhEK0h1QjtNZ0Q5SHZCLG9CQUFvQixFQUFBO01sRHhGOUI7UWtEMkZZLGlCaEQySHFCO1FnRDFIckIsc0JoRDBIcUIsRUFBQSxFZ0R6SHRCOztBbEQ3Rlg7RVVUSSxnQndDb0hzQixFQUFBO0VsRDNHMUI7SWtEOEdJLHFCaER3RzZCLEVBQUE7SUZ0TmpDO01rRGlITSxzQkFBc0IsRUFBQTs7QWxEakg1QjtFbUR2QkksY2pDa0c4RDtFaUNqRzlELHlCakNpRzhELEVBQUE7RWxCM0VsRTtJbURsQlEsY2pDNkYwRDtJaUM1RjFELHlCQUF5QyxFQUFBO0VuRGlCakQ7SW1EYlEsV2xEWE87SWtEWVAseUJqQ3VGMEQ7SWlDdEYxRCxxQmpDc0YwRCxFQUFBOztBbEIzRWxFO0VtRHZCSSxjakNrRzhEO0VpQ2pHOUQseUJqQ2lHOEQsRUFBQTtFbEIzRWxFO0ltRGxCUSxjakM2RjBEO0lpQzVGMUQseUJBQXlDLEVBQUE7RW5EaUJqRDtJbURiUSxXbERYTztJa0RZUCx5QmpDdUYwRDtJaUN0RjFELHFCakNzRjBELEVBQUE7O0FsQjNFbEU7RW1EdkJJLGNqQ2tHOEQ7RWlDakc5RCx5QmpDaUc4RCxFQUFBO0VsQjNFbEU7SW1EbEJRLGNqQzZGMEQ7SWlDNUYxRCx5QkFBeUMsRUFBQTtFbkRpQmpEO0ltRGJRLFdsRFhPO0lrRFlQLHlCakN1RjBEO0lpQ3RGMUQscUJqQ3NGMEQsRUFBQTs7QWxCM0VsRTtFbUR2QkksY2pDa0c4RDtFaUNqRzlELHlCakNpRzhELEVBQUE7RWxCM0VsRTtJbURsQlEsY2pDNkYwRDtJaUM1RjFELHlCQUF5QyxFQUFBO0VuRGlCakQ7SW1EYlEsV2xEWE87SWtEWVAseUJqQ3VGMEQ7SWlDdEYxRCxxQmpDc0YwRCxFQUFBOztBbEIzRWxFO0VtRHZCSSxjakNrRzhEO0VpQ2pHOUQseUJqQ2lHOEQsRUFBQTtFbEIzRWxFO0ltRGxCUSxjakM2RjBEO0lpQzVGMUQseUJBQXlDLEVBQUE7RW5EaUJqRDtJbURiUSxXbERYTztJa0RZUCx5QmpDdUYwRDtJaUN0RjFELHFCakNzRjBELEVBQUE7O0FsQjNFbEU7RW1EdkJJLGNqQ2tHOEQ7RWlDakc5RCx5QmpDaUc4RCxFQUFBO0VsQjNFbEU7SW1EbEJRLGNqQzZGMEQ7SWlDNUYxRCx5QkFBeUMsRUFBQTtFbkRpQmpEO0ltRGJRLFdsRFhPO0lrRFlQLHlCakN1RjBEO0lpQ3RGMUQscUJqQ3NGMEQsRUFBQTs7QWxCM0VsRTtFbUR2QkksY2pDa0c4RDtFaUNqRzlELHlCakNpRzhELEVBQUE7RWxCM0VsRTtJbURsQlEsY2pDNkYwRDtJaUM1RjFELHlCQUF5QyxFQUFBO0VuRGlCakQ7SW1EYlEsV2xEWE87SWtEWVAseUJqQ3VGMEQ7SWlDdEYxRCxxQmpDc0YwRCxFQUFBOztBbEIzRWxFO0VtRHZCSSxjakNrRzhEO0VpQ2pHOUQseUJqQ2lHOEQsRUFBQTtFbEIzRWxFO0ltRGxCUSxjakM2RjBEO0lpQzVGMUQseUJBQXlDLEVBQUE7RW5EaUJqRDtJbURiUSxXbERYTztJa0RZUCx5QmpDdUYwRDtJaUN0RjFELHFCakNzRjBELEVBQUE7O0FsQjNFbEU7RW9EMUJFLFlBQVk7RWpEOEhSLGlCQXRDWTtFaUR0RmhCLGdCbERtUytCO0VrRGxTL0IsY0FBYztFQUNkLFduREZhO0VtREdiLHlCbkRPYTtFbUROYixXQUFXLEVBQUE7RXBEb0JiO0lvRGhCSSxXbkRSVztJbURTWCxxQkFBcUIsRUFBQTtFcERlekI7SW9EVk0sWUFBWSxFQUFBOztBcERVbEI7RW9ERUUsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixTQUFTLEVBQUE7O0FwREpYO0VvRFdFLG9CQUFvQixFQUFBOztBcERYdEI7RXFEMUJFLGdCbkQ0NEJ1QztFbUQzNEJ2QyxnQkFBZ0I7RWxENkhaLG1CQXRDWTtFa0RwRmhCLHFDcERRYTtFb0RQYiw0QkFBNEI7RUFDNUIsMENwRHFKeUQ7RW9EcEp6RCxzRHBETGE7RW9ETWIsbUNBQTJCO1VBQTNCLDJCQUEyQjtFQUMzQixVQUFVO0UzQ1FSLHNCUm00QnNDLEVBQUE7RUYxM0IxQztJcURiSSxzQm5EZzRCc0MsRUFBQTtFRm4zQjFDO0lxRFRJLFVBQVUsRUFBQTtFckRTZDtJcURMSSxjQUFjO0lBQ2QsVUFBVSxFQUFBO0VyRElkO0lxREFJLGFBQWEsRUFBQTs7QXJEQWpCO0VxREtFLGFBQWE7RUFDYixtQkFBbUI7RUFD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SSwyQnZDa0c0RCxFQUFBO0lsQmhIaEU7TXlEaUJNLFNBQVM7TUFDVCw2QkFBZ0U7TUFDaEUscUN2RDAxQmlFLEVBQUE7SUY3MkJ2RTtNeUR1Qk0sV3ZEK0wyQjtNdUQ5TDNCLDZCQUFnRTtNQUNoRSxzQnZEN0NTLEVBQUE7O0FGb0JmO0V5RCtCRSxtQnZEMjBCdUMsRUFBQTtFRjEyQnpDO0l5RGtDSSx5QnZDOEU0RDtJdUM3RTVELGF2RHUwQnFDO0l1RHQwQnJDLFl2RHEwQm9DO0l1RHAwQnBDLGdCQUFnQyxFQUFBO0l6RHJDcEM7TXlEd0NNLE9BQU87TUFDUCxvQ0FBMkY7TUFDM0YsdUN2RG0wQmlFLEVBQUE7SUY3MkJ2RTtNeUQ4Q00sU3ZEd0syQjtNdUR2SzNCLG9DQUEyRjtNQUMzRix3QnZEcEVTLEVBQUE7O0FGb0JmO0V5RHNERSxrQnZEb3pCdUMsRUFBQTtFRjEyQnpDO0l5RHlESSx3QnZDdUQ0RCxFQUFBO0lsQmhIaEU7TXlENERNLE1BQU07TUFDTixvQ0FBMkY7TUFDM0Ysd0N2RCt5QmlFLEVBQUE7SUY3MkJ2RTtNeURrRU0sUXZEb0oyQjtNdURuSjNCLG9DQUEyRjtNQUMzRix5QnZEeEZTLEVBQUE7RUZvQmY7SXlEMEVJLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sU0FBUztJQUNULGNBQWM7SUFDZCxXdkQyeEJvQztJdUQxeEJwQyxvQkFBc0M7SUFDdEMsV0FBVztJQUNYLGdDdkQrd0J1RCxFQUFBOztBRmgyQjNEO0V5RHNGRSxvQnZEb3hCdUMsRUFBQTtFRjEyQnpDO0l5RHlGSSwwQnZDdUI0RDtJdUN0QjVELGF2RGd4QnFDO0l1RC93QnJDLFl2RDh3Qm9DO0l1RDd3QnBDLGdCQUFnQyxFQUFBO0l6RDVGcEM7TXlEK0ZNLFFBQVE7TUFDUixvQ3ZEMHdCbUM7TXVEendCbkMsc0N2RDR3QmlFLEVBQUE7SUY3MkJ2RTtNeURxR00sVXZEaUgyQjtNdURoSDNCLG9DdkRvd0JtQztNdURud0JuQyx1QnZEM0hTLEVBQUE7O0FGb0JmO0V5RDhIRSx1QnZEcXVCd0M7RXVEcHVCeEMsZ0JBQWdCO0V0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O0VqRWdCeEQ7SWlFaEI4QixnQ0FBMEIsRUFBQTtFakVnQnhEO0lpRWhCOEIseUJBQTBCLEVBQUE7RWpFZ0J4RDtJaUVoQjhCLHlCQUEwQixFQUFBO0VqRWdCeEQ7SWlFaEI4Qiw2QkFBMEIsRUFBQTtFakVnQnhEO0lpRWhCOEIsOEJBQTBCLEVBQUE7RWpFZ0J4RDtJaUVoQjhCLHdCQUEwQixFQUFBO0VqRWdCeEQ7SWlFaEI4QiwrQkFBMEIsRUFBQSxFQUFJOztBcERpRHhEO0ViakNKO0lpRWhCOEIsd0JBQTBCLEVBQUE7RWpFZ0J4RDtJaUVoQjhCLDBCQUEwQixFQUFBO0VqRWdCeEQ7SWlFaEI4QixnQ0FBMEIsRUFBQTtFakVnQnhEO0lpRWhCOEIseUJBQTBCLEVBQUE7RWpFZ0J4RDtJaUVoQjhCLHlCQUEwQixFQUFBO0VqRWdCeEQ7SWlFaEI4Qiw2QkFBMEIsRUFBQTtFakVnQnhEO0lpRWhCOEIsOEJBQTBCLEVBQUE7RWpFZ0J4RDtJaUVoQjhCLHdCQUEwQixFQUFBO0VqRWdCeEQ7SWlFaEI4QiwrQkFBMEIsRUFBQSxFQUFJOztBcERpRHhEO0ViakNKO0lpRWhCOEIsd0JBQTBCLEVBQUE7RWpFZ0J4RDtJaUVoQjhCLDBCQUEwQixFQUFBO0VqRWdCeEQ7SWlFaEI4QixnQ0FBMEIsRUFBQTtFakVnQnhEO0lpRWhCOEIseUJBQTBCLEVBQUE7RWpFZ0J4RDtJaUVoQjhCLHlCQUEwQixFQUFBO0VqRWdCeEQ7SWlFaEI4Qiw2QkFBMEIsRUFBQTtFakVnQnhEO0lpRWhCOEIsOEJBQTBCLEVBQUE7RWpFZ0J4RDtJaUVoQjhCLHdCQUEwQixFQUFBO0VqRWdCeEQ7SWlFaEI4QiwrQkFBMEIsRUFBQSxFQUFJOztBQVU1RDtFakVNQTtJaUVKeUIsd0JBQTBCLEVBQUE7RWpFSW5EO0lpRUp5QiwwQkFBMEIsRUFBQTtFakVJbkQ7SWlFSnlCLGdDQUEwQixFQUFBO0VqRUluRDtJaUVKeUIseUJBQTBCLEVBQUE7RWpFSW5EO0lpRUp5Qix5QkFBMEIsRUFBQTtFakVJbkQ7SWlFSnlCLDZCQUEwQixFQUFBO0VqRUluRDtJaUVKeUIsOEJBQTBCLEVBQUE7RWpFSW5EO0lpRUp5Qix3QkFBMEIsRUFBQTtFakVJbkQ7SWlFSnlCLCtCQUEwQixFQUFBLEVBQUk7O0FqRUl2RDtFa0V4QkUsa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxXQUFXO0VBQ1gsVUFBVTtFQUNWLGdCQUFnQixFQUFBO0VsRW9CbEI7SWtFakJJLGNBQWM7SUFDZCxXQUFXLEVBQUE7RWxFZ0JmOzs7OztJa0VSSSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFNBQVM7SUFDVCxPQUFPO0lBQ1AsV0FBVztJQUNYLFlBQVk7SUFDWixTQUFTLEVBQUE7O0FsRUViO0VrRVFNLHNCQUE0RixFQUFBOztBbEVSbEc7RWtFUU0sbUJBQTRGLEVBQUE7O0FsRVJsRztFa0VRTSxnQkFBNEYsRUFBQTs7QWxFUmxHO0VrRVFNLGlCQUE0RixFQUFBOztBbEVSbEc7RW1FakJvQyw4QkFBOEIsRUFBQTs7QW5FaUJsRTtFbUVoQm9DLGlDQUFpQyxFQUFBOztBbkVnQnJFO0VtRWZvQyxzQ0FBc0MsRUFBQTs7QW5FZTFFO0VtRWRvQyx5Q0FBeUMsRUFBQTs7QW5FYzdFO0VtRVprQywwQkFBMEIsRUFBQTs7QW5FWTVEO0VtRVhrQyw0QkFBNEIsRUFBQTs7QW5FVzlEO0VtRVZrQyxrQ0FBa0MsRUFBQTs7QW5FVXBFO0VtRVRrQyx5QkFBeUIsRUFBQTs7QW5FUzNEO0VtRVJrQyx1QkFBdUIsRUFBQTs7QW5FUXpEO0VtRVBrQyx1QkFBdUIsRUFBQTs7QW5FT3pEO0VtRU5rQyx5QkFBeUIsRUFBQTs7QW5FTTNEO0VtRUxrQyx5QkFBeUIsRUFBQTs7QW5FSzNEO0VtRUh3QyxzQ0FBc0MsRUFBQTs7QW5FRzlFO0VtRUZ3QyxvQ0FBb0MsRUFBQTs7QW5FRTVFO0VtRUR3QyxrQ0FBa0MsRUFBQTs7QW5FQzFFO0VtRUF3Qyx5Q0FBeUMsRUFBQTs7QW5FQWpGO0VtRUN3Qyx3Q0FBd0MsRUFBQTs7QW5FRGhGO0VtRUdxQyxrQ0FBa0MsRUFBQTs7QW5FSHZFO0VtRUlxQyxnQ0FBZ0MsRUFBQTs7QW5FSnJFO0VtRUtxQyw4QkFBOEIsRUFBQTs7QW5FTG5FO0VtRU1xQyxnQ0FBZ0MsRUFBQTs7QW5FTnJFO0VtRU9xQywrQkFBK0IsRUFBQTs7QW5FUHBFO0VtRVNzQyxvQ0FBb0MsRUFBQTs7QW5FVDFFO0VtRVVzQyxrQ0FBa0MsRUFBQTs7QW5FVnhFO0VtRVdzQyxnQ0FBZ0MsRUFBQTs7QW5FWHRFO0VtRVlzQyx1Q0FBdUMsRUFBQTs7QW5FWjdFO0VtRWFzQyxzQ0FBc0MsRUFBQTs7QW5FYjVFO0VtRWNzQyxpQ0FBaUMsRUFBQTs7QW5FZHZFO0VtRWdCb0MsMkJBQTJCLEVBQUE7O0FuRWhCL0Q7RW1FaUJvQyxpQ0FBaUMsRUFBQTs7QW5FakJyRTtFbUVrQm9DLCtCQUErQixFQUFBOztBbkVsQm5FO0VtRW1Cb0MsNkJBQTZCLEVBQUE7O0FuRW5CakU7RW1Fb0JvQywrQkFBK0IsRUFBQTs7QW5FcEJuRTtFbUVxQm9DLDhCQUE4QixFQUFBOztBdERZOUQ7RWJqQ0o7SW1FakJvQyw4QkFBOEIsRUFBQTtFbkVpQmxFO0ltRWhCb0MsaUNBQWlDLEVBQUE7RW5FZ0JyRTtJbUVmb0Msc0NBQXNDLEVBQUE7RW5FZTFFO0ltRWRvQyx5Q0FBeUMsRUFBQTtFbkVjN0U7SW1FWmtDLDBCQUEwQixFQUFBO0VuRVk1RDtJbUVYa0MsNEJBQTRCLEVBQUE7RW5FVzlEO0ltRVZrQyxrQ0FBa0MsRUFBQTtFbkVVcEU7SW1FVGtDLHlCQUF5QixFQUFBO0VuRVMzRDtJbUVSa0MsdUJBQXVCLEVBQUE7RW5FUXpEO0ltRVBrQyx1QkFBdUIsRUFBQTtFbkVPekQ7SW1FTmtDLHlCQUF5QixFQUFBO0VuRU0zRDtJbUVMa0MseUJBQXlCLEVBQUE7RW5FSzNEO0ltRUh3QyxzQ0FBc0MsRUFBQTtFbkVHOUU7SW1FRndDLG9DQUFvQyxFQUFBO0VuRUU1RTtJbUVEd0Msa0NBQWtDLEVBQUE7RW5FQzFFO0ltRUF3Qyx5Q0FBeUMsRUFBQTtFbkVBakY7SW1FQ3dDLHdDQUF3QyxFQUFBO0VuRURoRjtJbUVHcUMsa0NBQWtDLEVBQUE7RW5FSHZFO0ltRUlxQyxnQ0FBZ0MsRUFBQTtFbkVKckU7SW1FS3FDLDhCQUE4QixFQUFBO0VuRUxuRTtJbUVNcUMsZ0NBQWdDLEVBQUE7RW5FTnJFO0ltRU9xQywrQkFBK0IsRUFBQTtFbkVQcEU7SW1FU3NDLG9DQUFvQyxFQUFBO0VuRVQxRTtJbUVVc0Msa0NBQWtDLEVBQUE7RW5FVnhFO0ltRVdzQyxnQ0FBZ0MsRUFBQTtFbkVYdEU7SW1FWXNDLHVDQUF1QyxFQUFBO0VuRVo3RTtJbUVhc0Msc0NBQXNDLEVBQUE7RW5FYjVFO0ltRWNzQyxpQ0FBaUMsRUFBQTtFbkVkdkU7SW1FZ0JvQywyQkFBMkIsRUFBQTtFbkVoQi9EO0ltRWlCb0MsaUNBQWlDLEVBQUE7RW5FakJyRTtJbUVrQm9DLCtCQUErQixFQUFBO0VuRWxCbkU7SW1FbUJvQyw2QkFBNkIsRUFBQTtFbkVuQmpFO0ltRW9Cb0MsK0JBQStCLEVBQUE7RW5FcEJuRTtJbUVxQm9DLDhCQUE4QixFQUFBLEVBQUk7O0F0RFlsRTtFYmpDSjtJbUVqQm9DLDhCQUE4QixFQUFBO0VuRWlCbEU7SW1FaEJvQyxpQ0FBaUMsRUFBQTtFbkVnQnJFO0ltRWZvQyxzQ0FBc0MsRUFBQTtFbkVlMUU7SW1FZG9DLHlDQUF5QyxFQUFBO0VuRWM3RTtJbUVaa0MsMEJBQTBCLEVBQUE7RW5FWTVEO0ltRVhrQyw0QkFBNEIsRUFBQTtFbkVXOUQ7SW1FVmtDLGtDQUFrQyxFQUFBO0VuRVVwRTtJbUVUa0MseUJBQXlCLEVBQUE7RW5FUzNEO0ltRVJrQyx1QkFBdUIsRUFBQTtFbkVRekQ7SW1FUGtDLHVCQUF1QixFQUFBO0VuRU96RDtJbUVOa0MseUJBQXlCLEVBQUE7RW5FTTNEO0ltRUxrQyx5QkFBeUIsRUFBQTtFbkVLM0Q7SW1FSHdDLHNDQUFzQyxFQUFBO0VuRUc5RTtJbUVGd0Msb0NBQW9DLEVBQUE7RW5FRTVFO0ltRUR3QyxrQ0FBa0MsRUFBQTtFbkVDMUU7SW1FQXdDLHlDQUF5QyxFQUFBO0VuRUFqRjtJbUVDd0Msd0NBQXdDLEVBQUE7RW5FRGhGO0ltRUdxQyxrQ0FBa0MsRUFBQTtFbkVIdkU7SW1FSXFDLGdDQUFnQyxFQUFBO0VuRUpyRTtJbUVLcUMsOEJBQThCLEVBQUE7RW5FTG5FO0ltRU1xQyxnQ0FBZ0MsRUFBQTtFbkVOckU7SW1FT3FDLCtCQUErQixFQUFBO0VuRVBwRTtJbUVTc0Msb0NBQW9DLEVBQUE7RW5FVDFFO0ltRVVzQyxrQ0FBa0MsRUFBQTtFbkVWeEU7SW1FV3NDLGdDQUFnQyxFQUFBO0VuRVh0RTtJbUVZc0MsdUNBQXVDLEVBQUE7RW5FWjdFO0ltRWFzQyxzQ0FBc0MsRUFBQTtFbkViNUU7SW1FY3NDLGlDQUFpQyxFQUFBO0VuRWR2RTtJbUVnQm9DLDJCQUEyQixFQUFBO0VuRWhCL0Q7SW1FaUJvQyxpQ0FBaUMsRUFBQTtFbkVqQnJFO0ltRWtCb0MsK0JBQStCLEVBQUE7RW5FbEJuRTtJbUVtQm9DLDZCQUE2QixFQUFBO0VuRW5CakU7SW1Fb0JvQywrQkFBK0IsRUFBQTtFbkVwQm5FO0ltRXFCb0MsOEJBQThCLEVBQUEsRUFBSTs7QXREWWxFO0ViakNKO0ltRWpCb0MsOEJBQThCLEVBQUE7RW5FaUJsRTtJbUVoQm9DLGlDQUFpQyxFQUFBO0VuRWdCckU7SW1FZm9DLHNDQUFzQyxFQUFBO0VuRWUxRTtJbUVkb0MseUNBQXlDLEVBQUE7RW5FYzdFO0ltRVprQywwQkFBMEIsRUFBQTtFbkVZNUQ7SW1FWGtDLDRCQUE0QixFQUFBO0VuRVc5RDtJbUVWa0Msa0NBQWtDLEVBQUE7RW5FVXBFO0ltRVRrQyx5QkFBeUIsRUFBQTtFbkVTM0Q7SW1FUmtDLHVCQUF1QixFQUFBO0VuRVF6RDtJbUVQa0MsdUJBQXVCLEVBQUE7RW5FT3pEO0ltRU5rQyx5QkFBeUIsRUFBQTtFbkVNM0Q7SW1FTGtDLHlCQUF5QixFQUFBO0VuRUszRDtJbUVId0Msc0NBQXNDLEVBQUE7RW5FRzlFO0ltRUZ3QyxvQ0FBb0MsRUFBQTtFbkVFNUU7SW1FRHdDLGtDQUFrQyxFQUFBO0VuRUMxRTtJbUVBd0MseUNBQXlDLEVBQUE7RW5FQWpGO0ltRUN3Qyx3Q0FBd0MsRUFBQTtFbkVEaEY7SW1FR3FDLGtDQUFrQyxFQUFBO0VuRUh2RTtJbUVJcUMsZ0NBQWdDLEVBQUE7RW5FSnJFO0ltRUtxQyw4QkFBOEIsRUFBQTtFbkVMbkU7SW1FTXFDLGdDQUFnQyxFQUFBO0VuRU5yRTtJbUVPcUMsK0JBQStCLEVBQUE7RW5FUHBFO0ltRVNzQyxvQ0FBb0MsRUFBQTtFbkVUMUU7SW1FVXNDLGtDQUFrQyxFQUFBO0VuRVZ4RTtJbUVXc0MsZ0NBQWdDLEVBQUE7RW5FWHRFO0ltRVlzQyx1Q0FBdUMsRUFBQTtFbkVaN0U7SW1FYXNDLHNDQUFzQyxFQUFBO0VuRWI1RTtJbUVjc0MsaUNBQWlDLEVBQUE7RW5FZHZFO0ltRWdCb0MsMkJBQTJCLEVBQUE7RW5FaEIvRDtJbUVpQm9DLGlDQUFpQyxFQUFBO0VuRWpCckU7SW1Fa0JvQywrQkFBK0IsRUFBQTtFbkVsQm5FO0ltRW1Cb0MsNkJBQTZCLEVBQUE7RW5FbkJqRTtJbUVvQm9DLCtCQUErQixFQUFBO0VuRXBCbkU7SW1FcUJvQyw4QkFBOEIsRUFBQSxFQUFJOztBdERZbEU7RWJqQ0o7SW1FakJvQyw4QkFBOEIsRUFBQTtFbkVpQmxFO0ltRWhCb0MsaUNBQWlDLEVBQUE7RW5FZ0JyRTtJbUVmb0Msc0NBQXNDLEVBQUE7RW5FZTFFO0ltRWRvQyx5Q0FBeUMsRUFBQTtFbkVjN0U7SW1FWmtDLDBCQUEwQixFQUFBO0VuRVk1RDtJbUVYa0MsNEJBQTRCLEVBQUE7RW5FVzlEO0ltRVZrQyxrQ0FBa0MsRUFBQTtFbkVVcEU7SW1FVGtDLHlCQUF5QixFQUFBO0VuRVMzRDtJbUVSa0MsdUJBQXVCLEVBQUE7RW5FUXpEO0ltRVBrQyx1QkFBdUIsRUFBQTtFbkVPekQ7SW1FTmtDLHlCQUF5QixFQUFBO0VuRU0zRDtJbUVMa0MseUJBQXlCLEVBQUE7RW5FSzNEO0ltRUh3QyxzQ0FBc0MsRUFBQTtFbkVHOUU7SW1FRndDLG9DQUFvQyxFQUFBO0VuRUU1RTtJbUVEd0Msa0NBQWtDLEVBQUE7RW5FQzFFO0ltRUF3Qyx5Q0FBeUMsRUFBQTtFbkVBakY7SW1FQ3dDLHdDQUF3QyxFQUFBO0VuRURoRjtJbUVHcUMsa0NBQWtDLEVBQUE7RW5FSHZFO0ltRUlxQyxnQ0FBZ0MsRUFBQTtFbkVKckU7SW1FS3FDLDhCQUE4QixFQUFBO0VuRUxuRTtJbUVNcUMsZ0NBQWdDLEVBQUE7RW5FTnJFO0ltRU9xQywrQkFBK0IsRUFBQTtFbkVQcEU7SW1FU3NDLG9DQUFvQyxFQUFBO0VuRVQxRTtJbUVVc0Msa0NBQWtDLEVBQUE7RW5FVnhFO0ltRVdzQyxnQ0FBZ0MsRUFBQTtFbkVYdEU7SW1FWXNDLHVDQUF1QyxFQUFBO0VuRVo3RTtJbUVhc0Msc0NBQXNDLEVBQUE7RW5FYjVFO0ltRWNzQyxpQ0FBaUMsRUFBQTtFbkVkdkU7SW1FZ0JvQywyQkFBMkIsRUFBQTtFbkVoQi9EO0ltRWlCb0MsaUNBQWlDLEVBQUE7RW5FakJyRTtJbUVrQm9DLCtCQUErQixFQUFBO0VuRWxCbkU7SW1FbUJvQyw2QkFBNkIsRUFBQTtFbkVuQmpFO0ltRW9Cb0MsK0JBQStCLEVBQUE7RW5FcEJuRTtJbUVxQm9DLDhCQUE4QixFQUFBLEVBQUk7O0FuRXJCdEU7RW9FckI0QixzQkFBc0IsRUFBQTs7QXBFcUJsRDtFb0VwQjRCLHVCQUF1QixFQUFBOztBcEVvQm5EO0VvRW5CNEIsc0JBQXNCLEVBQUE7O0F2RG9EOUM7RWJqQ0o7SW9FckI0QixzQkFBc0IsRUFBQTtFcEVxQmxEO0lvRXBCNEIsdUJBQXVCLEVBQUE7RXBFb0JuRDtJb0VuQjRCLHNCQUFzQixFQUFBLEVBQUk7O0F2RG9EbEQ7RWJqQ0o7SW9FckI0QixzQkFBc0IsRUFBQTtFcEVxQmxEO0lvRXBCNEIsdUJBQXVCLEVBQUE7RXBFb0JuRDtJb0VuQjRCLHNCQUFzQixFQUFBLEVBQUk7O0F2RG9EbEQ7RWJqQ0o7SW9FckI0QixzQkFBc0IsRUFBQTtFcEVxQmxEO0lvRXBCNEIsdUJBQXVCLEVBQUE7RXBFb0JuRDtJb0VuQjRCLHNCQUFzQixFQUFBLEVBQUk7O0F2RG9EbEQ7RWJqQ0o7SW9FckI0QixzQkFBc0IsRUFBQTtFcEVxQmxEO0lvRXBCNEIsdUJBQXVCLEVBQUE7RXBFb0JuRDtJb0VuQjRCLHNCQUFzQixFQUFBLEVBQUk7O0FwRW1CdEQ7RXFFeEIyQixtQ0FBOEI7S0FBOUIsZ0NBQThCO01BQTlCLCtCQUE4QjtVQUE5QiwyQkFBOEIsRUFBQTs7QXJFd0J6RDtFcUV4QjJCLG9DQUE4QjtLQUE5QixpQ0FBOEI7TUFBOUIsZ0NBQThCO1VBQTlCLDRCQUE4QixFQUFBOztBckV3QnpEO0VxRXhCMkIsb0NBQThCO0tBQTlCLGlDQUE4QjtNQUE5QixnQ0FBOEI7VUFBOUIsNEJBQThCLEVBQUE7O0FyRXdCekQ7RXNFeEJ3Qix5QkFBMkIsRUFBQTs7QXRFd0JuRDtFc0V4QndCLDJCQUEyQixFQUFBOztBdEV3Qm5EO0V1RXZCMkIsMkJBQThCLEVBQUE7O0F2RXVCekQ7RXVFdkIyQiw2QkFBOEIsRUFBQTs7QXZFdUJ6RDtFdUV2QjJCLDZCQUE4QixFQUFBOztBdkV1QnpEO0V1RXZCMkIsMEJBQThCLEVBQUE7O0F2RXVCekQ7RXVFdkIyQixtQ0FBOEI7RUFBOUIsMkJBQThCLEVBQUE7O0F2RXVCekQ7RXVFakJFLGVBQWU7RUFDZixNQUFNO0VBQ04sUUFBUTtFQUNSLE9BQU87RUFDUCxhckVzcUJzQyxFQUFBOztBRnpwQnhDO0V1RVRFLGVBQWU7RUFDZixRQUFRO0VBQ1IsU0FBUztFQUNULE9BQU87RUFDUCxhckU4cEJzQyxFQUFBOztBcUUxcEJWO0V2RUM5QjtJdUVBSSx3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLE1BQU07SUFDTixhckVzcEJvQyxFQUFBLEVxRXBwQnZDOztBdkVKRDtFd0VyQkUsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsVUFBVTtFQUNWLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQixTQUFTLEVBQUE7O0F4RWFYO0V3RURJLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixVQUFVO0VBQ1YsbUJBQW1CLEVBQUE7O0F4RUp2QjtFeUV6QmEsOERBQXFDLEVBQUE7O0F6RXlCbEQ7RXlFeEJVLHdEQUFrQyxFQUFBOztBekV3QjVDO0V5RXZCYSx1REFBcUMsRUFBQTs7QXpFdUJsRDtFeUV0QmUsMkJBQTJCLEVBQUE7O0F6RXNCMUM7RTBFckIyQixxQkFBNEIsRUFBQTs7QTFFcUJ2RDtFMEVyQjJCLHFCQUE0QixFQUFBOztBMUVxQnZEO0UwRXJCMkIscUJBQTRCLEVBQUE7O0ExRXFCdkQ7RTBFckIyQixzQkFBNEIsRUFBQTs7QTFFcUJ2RDtFMEVyQjJCLHNCQUE0QixFQUFBOztBMUVxQnZEO0UwRXJCMkIsc0JBQTRCLEVBQUE7O0ExRXFCdkQ7RTBFckIyQixzQkFBNEIsRUFBQTs7QTFFcUJ2RDtFMEVyQjJCLHNCQUE0QixFQUFBOztBMUVxQnZEO0UwRXJCMkIsdUJBQTRCLEVBQUE7O0ExRXFCdkQ7RTBFckIyQix1QkFBNEIsRUFBQTs7QTFFcUJ2RDtFMEVqQlUsMEJBQTBCLEVBQUE7O0ExRWlCcEM7RTBFaEJVLDJCQUEyQixFQUFBOztBMUVnQnJDO0UwRVpjLDJCQUEyQixFQUFBOztBMUVZekM7RTBFWGMsNEJBQTRCLEVBQUE7O0ExRVcxQztFMEVUVSx1QkFBdUIsRUFBQTs7QTFFU2pDO0UwRVJVLHdCQUF3QixFQUFBOztBMUVRbEM7RTJFakJ3QyxvQkFBNEIsRUFBQTs7QTNFaUJwRTs7RTJFZFUsd0JBQW9DLEVBQUE7O0EzRWM5Qzs7RTJFVlUsMEJBQXdDLEVBQUE7O0EzRVVsRDs7RTJFTlUsMkJBQTBDLEVBQUE7O0EzRU1wRDs7RTJFRlUseUJBQXNDLEVBQUE7O0EzRUVoRDtFMkVqQndDLDBCQUE0QixFQUFBOztBM0VpQnBFOztFMkVkVSw4QkFBb0MsRUFBQTs7QTNFYzlDOztFMkVWVSxnQ0FBd0MsRUFBQTs7QTNFVWxEOztFMkVOVSxpQ0FBMEMsRUFBQTs7QTNFTXBEOztFMkVGVSwrQkFBc0MsRUFBQTs7QTNFRWhEO0UyRWpCd0MseUJBQTRCLEVBQUE7O0EzRWlCcEU7O0UyRWRVLDZCQUFvQyxFQUFBOztBM0VjOUM7O0UyRVZVLCtCQUF3QyxFQUFBOztBM0VVbEQ7O0UyRU5VLGdDQUEwQyxFQUFBOztBM0VNcEQ7O0UyRUZVLDhCQUFzQyxFQUFBOztBM0VFaEQ7RTJFakJ3Qyx1QkFBNEIsRUFBQTs7QTNFaUJwRTs7RTJFZFUsMkJBQW9DLEVBQUE7O0EzRWM5Qzs7RTJFVlUsNkJBQXdDLEVBQUE7O0EzRVVsRDs7RTJFTlUsOEJBQTBDLEVBQUE7O0EzRU1wRDs7RTJFRlUsNEJBQXNDLEVBQUE7O0EzRUVoRDtFMkVqQndDLHlCQUE0QixFQUFBOztBM0VpQnBFOztFMkVkVSw2QkFBb0MsRUFBQTs7QTNFYzlDOztFMkVWVSwrQkFBd0MsRUFBQTs7QTNFVWxEOztFMkVOVSxnQ0FBMEMsRUFBQTs7QTNFTXBEOztFMkVGVSw4QkFBc0MsRUFBQTs7QTNFRWhEO0UyRWpCd0MsdUJBQTRCLEVBQUE7O0EzRWlCcEU7O0UyRWRVLDJCQUFvQyxFQUFBOztBM0VjOUM7O0UyRVZVLDZCQUF3QyxFQUFBOztBM0VVbEQ7O0UyRU5VLDhCQUEwQyxFQUFBOztBM0VNcEQ7O0UyRUZVLDRCQUFzQyxFQUFBOztBM0VFaEQ7RTJFakJ3QyxxQkFBNEIsRUFBQTs7QTNFaUJwRTs7RTJFZFUseUJBQW9DLEVBQUE7O0EzRWM5Qzs7RTJFVlUsMkJBQXdDLEVBQUE7O0EzRVVsRDs7RTJFTlUsNEJBQTBDLEVBQUE7O0EzRU1wRDs7RTJFRlUsMEJBQXNDLEVBQUE7O0EzRUVoRDtFMkVqQndDLDJCQUE0QixFQUFBOztBM0VpQnBFOztFMkVkVSwrQkFBb0MsRUFBQTs7QTNFYzlDOztFMkVWVSxpQ0FBd0MsRUFBQTs7QTNFVWxEOztFMkVOVSxrQ0FBMEMsRUFBQTs7QTNFTXBEOztFMkVGVSxnQ0FBc0MsRUFBQTs7QTNFRWhEO0UyRWpCd0MsMEJBQTRCLEVBQUE7O0EzRWlCcEU7O0UyRWRVLDhCQUFvQyxFQUFBOztBM0VjOUM7O0UyRVZVLGdDQUF3QyxFQUFBOztBM0VVbEQ7O0UyRU5VLGlDQUEwQyxFQUFBOztBM0VNcEQ7O0UyRUZVLCtCQUFzQyxFQUFBOztBM0VFaEQ7RTJFakJ3Qyx3QkFBNEIsRUFBQTs7QTNFaUJwRTs7RTJFZFUsNEJBQW9DLEVBQUE7O0EzRWM5Qzs7RTJFVlUsOEJBQXdDLEVBQUE7O0EzRVVsRDs7RTJFTlUsK0JBQTBDLEVBQUE7O0EzRU1wRDs7RTJFRlUsNkJBQXNDLEVBQUE7O0EzRUVoRDtFMkVqQndDLDBCQUE0QixFQUFBOztBM0VpQnBFOztFMkVkVSw4QkFBb0MsRUFBQTs7QTNFYzlDOztFMkVWVSxnQ0FBd0MsRUFBQTs7QTNFVWxEOztFMkVOVSxpQ0FBMEMsRUFBQTs7QTNFTXBEOztFMkVGVSwrQkFBc0MsRUFBQTs7QTNFRWhEO0UyRWpCd0Msd0JBQTRCLEVBQUE7O0EzRWlCcEU7O0UyRWRVLDRCQUFvQyxFQUFBOztBM0VjOUM7O0UyRVZVLDhCQUF3QyxFQUFBOztBM0VVbEQ7O0UyRU5VLCtCQUEwQyxFQUFBOztBM0VNcEQ7O0UyRUZVLDZCQUFzQyxFQUFBOztBM0VFaEQ7RTJFTWdDLDJCQUEyQixFQUFBOztBM0VOM0Q7O0UyRVNVLCtCQUErQixFQUFBOztBM0VUekM7O0UyRWFVLGlDQUFpQyxFQUFBOztBM0ViM0M7O0UyRWlCVSxrQ0FBa0MsRUFBQTs7QTNFakI1Qzs7RTJFcUJVLGdDQUFnQyxFQUFBOztBM0VyQjFDO0UyRU1nQywwQkFBMkIsRUFBQTs7QTNFTjNEOztFMkVTVSw4QkFBK0IsRUFBQTs7QTNFVHpDOztFMkVhVSxnQ0FBaUMsRUFBQTs7QTNFYjNDOztFMkVpQlUsaUNBQWtDLEVBQUE7O0EzRWpCNUM7O0UyRXFCVSwrQkFBZ0MsRUFBQTs7QTNFckIxQztFMkVNZ0Msd0JBQTJCLEVBQUE7O0EzRU4zRDs7RTJFU1UsNEJBQStCLEVBQUE7O0EzRVR6Qzs7RTJFYVUsOEJBQWlDLEVBQUE7O0EzRWIzQzs7RTJFaUJVLCtCQUFrQyxFQUFBOztBM0VqQjVDOztFMkVxQlUsNkJBQWdDLEVBQUE7O0EzRXJCMUM7RTJFTWdDLDBCQUEyQixFQUFBOztBM0VOM0Q7O0UyRVNVLDhCQUErQixFQUFBOztBM0VUekM7O0UyRWFVLGdDQUFpQyxFQUFBOztBM0ViM0M7O0UyRWlCVSxpQ0FBa0MsRUFBQTs7QTNFakI1Qzs7RTJFcUJVLCtCQUFnQyxFQUFBOztBM0VyQjFDO0UyRU1nQyx3QkFBMkIsRUFBQTs7QTNFTjNEOztFMkVTVSw0QkFBK0IsRUFBQTs7QTNFVHpDOztFMkVhVSw4QkFBaUMsRUFBQTs7QTNFYjNDOztFMkVpQlUsK0JBQWtDLEVBQUE7O0EzRWpCNUM7O0UyRXFCVSw2QkFBZ0MsRUFBQTs7QTNFckIxQztFMkUyQnVCLHVCQUF1QixFQUFBOztBM0UzQjlDOztFMkU4Qk0sMkJBQTJCLEVBQUE7O0EzRTlCakM7O0UyRWtDTSw2QkFBNkIsRUFBQTs7QTNFbENuQzs7RTJFc0NNLDhCQUE4QixFQUFBOztBM0V0Q3BDOztFMkUwQ00sNEJBQTRCLEVBQUE7O0E5RFQ5QjtFYmpDSjtJMkVqQndDLG9CQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLHdCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsMEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwyQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLHlCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHlCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDZCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsK0JBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxnQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDhCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHVCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDJCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsNkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw4QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDRCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHlCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDZCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsK0JBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxnQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDhCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHVCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDJCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsNkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw4QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDRCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHFCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLHlCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsMkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw0QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDBCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDJCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLCtCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsaUNBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxrQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLGdDQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHdCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDRCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsOEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwrQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDZCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHdCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDRCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsOEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwrQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDZCQUFzQyxFQUFBO0UzRUVoRDtJMkVNZ0MsMkJBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSwrQkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLGlDQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLGtDQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSxnQ0FBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQywwQkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDhCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsZ0NBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsaUNBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLCtCQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLHdCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsNEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSw4QkFBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSwrQkFBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsNkJBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0MsMEJBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw4QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLGdDQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLGlDQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSwrQkFBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQyx3QkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDRCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsOEJBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsK0JBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLDZCQUFnQyxFQUFBO0UzRXJCMUM7STJFMkJ1Qix1QkFBdUIsRUFBQTtFM0UzQjlDOztJMkU4Qk0sMkJBQTJCLEVBQUE7RTNFOUJqQzs7STJFa0NNLDZCQUE2QixFQUFBO0UzRWxDbkM7O0kyRXNDTSw4QkFBOEIsRUFBQTtFM0V0Q3BDOztJMkUwQ00sNEJBQTRCLEVBQUEsRUFDN0I7O0E5RFZEO0ViakNKO0kyRWpCd0Msb0JBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsd0JBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSwwQkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLDJCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUseUJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsMEJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsOEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSxnQ0FBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGlDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsK0JBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MseUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsNkJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSwrQkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGdDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsOEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsdUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsMkJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSw2QkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLDhCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsNEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MseUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsNkJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSwrQkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGdDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsOEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsdUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsMkJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSw2QkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLDhCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsNEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MscUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUseUJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSwyQkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLDRCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsMEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsMkJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsK0JBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSxpQ0FBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGtDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsZ0NBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsMEJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsOEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSxnQ0FBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGlDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsK0JBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0Msd0JBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsNEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSw4QkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLCtCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsNkJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsMEJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsOEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSxnQ0FBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGlDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsK0JBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0Msd0JBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsNEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSw4QkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLCtCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsNkJBQXNDLEVBQUE7RTNFRWhEO0kyRU1nQywyQkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLCtCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsaUNBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsa0NBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLGdDQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLDBCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsOEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSxnQ0FBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSxpQ0FBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsK0JBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0Msd0JBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw0QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLDhCQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLCtCQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSw2QkFBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQywwQkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDhCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsZ0NBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsaUNBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLCtCQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLHdCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsNEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSw4QkFBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSwrQkFBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsNkJBQWdDLEVBQUE7RTNFckIxQztJMkUyQnVCLHVCQUF1QixFQUFBO0UzRTNCOUM7O0kyRThCTSwyQkFBMkIsRUFBQTtFM0U5QmpDOztJMkVrQ00sNkJBQTZCLEVBQUE7RTNFbENuQzs7STJFc0NNLDhCQUE4QixFQUFBO0UzRXRDcEM7O0kyRTBDTSw0QkFBNEIsRUFBQSxFQUM3Qjs7QTlEVkQ7RWJqQ0o7STJFakJ3QyxvQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSx3QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDBCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsMkJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSx5QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx5QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw2QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLCtCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsZ0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw4QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx1QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwyQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDZCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsOEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw0QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx5QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw2QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLCtCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsZ0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw4QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx1QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwyQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDZCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsOEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw0QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QyxxQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSx5QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDJCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsNEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwwQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywyQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwrQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGlDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsa0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSxnQ0FBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx3QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw0QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDhCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsK0JBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw2QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx3QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw0QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDhCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsK0JBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw2QkFBc0MsRUFBQTtFM0VFaEQ7STJFTWdDLDJCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsK0JBQStCLEVBQUE7RTNFVHpDOztJMkVhVSxpQ0FBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSxrQ0FBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsZ0NBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0MsMEJBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw4QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLGdDQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLGlDQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSwrQkFBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQyx3QkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDRCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsOEJBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsK0JBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLDZCQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLDBCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsOEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSxnQ0FBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSxpQ0FBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsK0JBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0Msd0JBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw0QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLDhCQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLCtCQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSw2QkFBZ0MsRUFBQTtFM0VyQjFDO0kyRTJCdUIsdUJBQXVCLEVBQUE7RTNFM0I5Qzs7STJFOEJNLDJCQUEyQixFQUFBO0UzRTlCakM7O0kyRWtDTSw2QkFBNkIsRUFBQTtFM0VsQ25DOztJMkVzQ00sOEJBQThCLEVBQUE7RTNFdENwQzs7STJFMENNLDRCQUE0QixFQUFBLEVBQzdCOztBOURWRDtFYmpDSjtJMkVqQndDLG9CQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLHdCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsMEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwyQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLHlCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHlCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDZCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsK0JBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxnQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDhCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHVCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDJCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsNkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw4QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDRCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHlCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDZCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsK0JBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxnQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDhCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHVCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDJCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsNkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw4QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDRCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHFCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLHlCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsMkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw0QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDBCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDJCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLCtCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsaUNBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxrQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLGdDQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHdCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDRCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsOEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwrQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDZCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHdCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDRCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsOEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwrQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDZCQUFzQyxFQUFBO0UzRUVoRDtJMkVNZ0MsMkJBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSwrQkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLGlDQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLGtDQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSxnQ0FBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQywwQkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDhCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsZ0NBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsaUNBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLCtCQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLHdCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsNEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSw4QkFBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSwrQkFBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsNkJBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0MsMEJBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw4QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLGdDQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLGlDQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSwrQkFBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQyx3QkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDRCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsOEJBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsK0JBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLDZCQUFnQyxFQUFBO0UzRXJCMUM7STJFMkJ1Qix1QkFBdUIsRUFBQTtFM0UzQjlDOztJMkU4Qk0sMkJBQTJCLEVBQUE7RTNFOUJqQzs7STJFa0NNLDZCQUE2QixFQUFBO0UzRWxDbkM7O0kyRXNDTSw4QkFBOEIsRUFBQTtFM0V0Q3BDOztJMkUwQ00sNEJBQTRCLEVBQUEsRUFDN0I7O0EzRTNDTDtFNEVyQkksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBRVYsb0JBQW9CO0VBQ3BCLFdBQVc7RUFFWCxrQ0FBa0MsRUFBQTs7QTVFV3RDO0U2RXJCa0IsNEdBQThDLEVBQUE7O0E3RXFCaEU7RTZFakJpQiw4QkFBOEIsRUFBQTs7QTdFaUIvQztFNkVoQmlCLDhCQUE4QixFQUFBOztBN0VnQi9DO0U2RWZpQiw4QkFBOEIsRUFBQTs7QTdFZS9DO0U4RXZCRSxnQkFBZ0I7RUFDaEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQixFQUFBOztBOUVxQnJCO0U2RU40QiwyQkFBMkIsRUFBQTs7QTdFTXZEO0U2RUw0Qiw0QkFBNEIsRUFBQTs7QTdFS3hEO0U2RUo0Qiw2QkFBNkIsRUFBQTs7QWhFcUNyRDtFYmpDSjtJNkVONEIsMkJBQTJCLEVBQUE7RTdFTXZEO0k2RUw0Qiw0QkFBNEIsRUFBQTtFN0VLeEQ7STZFSjRCLDZCQUE2QixFQUFBLEVBQUk7O0FoRXFDekQ7RWJqQ0o7STZFTjRCLDJCQUEyQixFQUFBO0U3RU12RDtJNkVMNEIsNEJBQTRCLEVBQUE7RTdFS3hEO0k2RUo0Qiw2QkFBNkIsRUFBQSxFQUFJOztBaEVxQ3pEO0ViakNKO0k2RU40QiwyQkFBMkIsRUFBQTtFN0VNdkQ7STZFTDRCLDRCQUE0QixFQUFBO0U3RUt4RDtJNkVKNEIsNkJBQTZCLEVBQUEsRUFBSTs7QWhFcUN6RDtFYmpDSjtJNkVONEIsMkJBQTJCLEVBQUE7RTdFTXZEO0k2RUw0Qiw0QkFBNEIsRUFBQTtFN0VLeEQ7STZFSjRCLDZCQUE2QixFQUFBLEVBQUk7O0E3RUk3RDtFNkVFbUIsb0NBQW9DLEVBQUE7O0E3RUZ2RDtFNkVHbUIsb0NBQW9DLEVBQUE7O0E3RUh2RDtFNkVJbUIscUNBQXFDLEVBQUE7O0E3RUp4RDtFNkVRdUIsMkJBQTBDLEVBQUE7O0E3RVJqRTtFNkVTdUIsK0JBQTRDLEVBQUE7O0E3RVRuRTtFNkVVdUIsMkJBQTJDLEVBQUE7O0E3RVZsRTtFNkVXdUIsMkJBQXlDLEVBQUE7O0E3RVhoRTtFNkVZdUIsOEJBQTJDLEVBQUE7O0E3RVpsRTtFNkVhdUIsNkJBQTZCLEVBQUE7O0E3RWJwRDtFNkVpQmMsc0JBQXdCLEVBQUE7O0E3RWpCdEM7RStFckJJLHlCQUF3QixFQUFBOztBL0VxQjVCO0UrRWhCUSx5QkFBMEUsRUFBQTs7QS9FZ0JsRjtFK0VyQkkseUJBQXdCLEVBQUE7O0EvRXFCNUI7RStFaEJRLHlCQUEwRSxFQUFBOztBL0VnQmxGO0UrRXJCSSx5QkFBd0IsRUFBQTs7QS9FcUI1QjtFK0VoQlEseUJBQTBFLEVBQUE7O0EvRWdCbEY7RStFckJJLHlCQUF3QixFQUFBOztBL0VxQjVCO0UrRWhCUSx5QkFBMEUsRUFBQTs7QS9FZ0JsRjtFK0VyQkkseUJBQXdCLEVBQUE7O0EvRXFCNUI7RStFaEJRLHlCQUEwRSxFQUFBOztBL0VnQmxGO0UrRXJCSSx5QkFBd0IsRUFBQTs7QS9FcUI1QjtFK0VoQlEseUJBQTBFLEVBQUE7O0EvRWdCbEY7RStFckJJLHlCQUF3QixFQUFBOztBL0VxQjVCO0UrRWhCUSx5QkFBMEUsRUFBQTs7QS9FZ0JsRjtFK0VyQkkseUJBQXdCLEVBQUE7O0EvRXFCNUI7RStFaEJRLHlCQUEwRSxFQUFBOztBL0VnQmxGO0U2RXVCYSx5QkFBNkIsRUFBQTs7QTdFdkIxQztFNkV3QmMseUJBQTZCLEVBQUE7O0E3RXhCM0M7RTZFMEJpQixvQ0FBa0MsRUFBQTs7QTdFMUJuRDtFNkUyQmlCLDBDQUFrQyxFQUFBOztBN0UzQm5EO0VnRnhCRSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsU0FBUyxFQUFBOztBaEZvQlg7RTZFbUN3QixnQ0FBZ0MsRUFBQTs7QTdFbkN4RDtFNkVzQ0UsZ0NBQWdDLEVBQUE7O0E3RXRDbEM7RTZFMkNjLHlCQUF5QixFQUFBOztBN0UzQ3ZDO0VpRnBCRSw4QkFBOEIsRUFBQTs7QWpGb0JoQztFaUZoQkUsNkJBQTZCLEVBQUEiLCJmaWxlIjoidG9nZ2xlLWJvb3RzdHJhcC1kYXJrLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mdW5jdGlvbnMnO1xyXG5AaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmFyaWFibGVzJztcclxuXHJcbkBpbXBvcnQgJ2RhcmstdmFyaWFibGVzJztcclxuXHJcbkBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMnO1xyXG5AaW1wb3J0ICdtaXhpbnMtb3ZlcnJpZGVzJztcclxuQGltcG9ydCAnZGFyay1taXhpbnMnO1xyXG5cclxuaHRtbCB7XHJcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxyXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcclxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxyXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcclxufVxyXG5cclxuYm9keS5ib290c3RyYXAtZGFyayB7XHJcbiAgICBtYXJnaW46IDA7IC8vIDFcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcclxufVxyXG5cclxuLmJvb3RzdHJhcC1kYXJrIHtcclxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9yb290JztcclxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9yZWJvb3QnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3R5cGUnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2ltYWdlcyc7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY29kZSc7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZ3JpZCc7XHJcblxyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3RhYmxlcyc7XHJcbiAgICBAaW1wb3J0ICdkYXJrLXRhYmxlcyc7XHJcblxyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zJztcclxuICAgIEBpbXBvcnQgJ2Zvcm0tb3ZlcnJpZGVzJztcclxuXHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYnV0dG9ucyc7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdHJhbnNpdGlvbnMnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Ryb3Bkb3duJztcclxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9idXR0b24tZ3JvdXAnO1xyXG5cclxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9pbnB1dC1ncm91cCc7XHJcbiAgICBAaW1wb3J0ICdkYXJrLWlucHV0LWdyb3VwJztcclxuXHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY3VzdG9tLWZvcm1zJztcclxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9uYXYnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL25hdmJhcic7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY2FyZCc7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYnJlYWRjcnVtYic7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvcGFnaW5hdGlvbic7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYmFkZ2UnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2p1bWJvdHJvbic7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYWxlcnQnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3Byb2dyZXNzJztcclxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9tZWRpYSc7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbGlzdC1ncm91cCc7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY2xvc2UnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3RvYXN0cyc7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbW9kYWwnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3Rvb2x0aXAnO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3BvcG92ZXInO1xyXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Nhcm91c2VsJztcclxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9zcGlubmVycyc7XHJcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzJztcclxuXHJcbiAgICAubmF2YmFyLXRoZW1lZCB7XHJcbiAgICAgICAgQGV4dGVuZCAuYmctZGFyaztcclxuICAgICAgICBAZXh0ZW5kIC5uYXZiYXItZGFyaztcclxuICAgIH1cclxuXHJcbiAgICBAaW1wb3J0ICdkYXJrLXN0eWxlcyc7XHJcbn1cclxuIiwiJGZvcmV2b2x2ZS1ncmVlbjogIzAwN2YwMDtcclxuXHJcbi8vIHN0eWxlbGludC1kaXNhYmxlXHJcbiR3aGl0ZTogICAgI2ZmZjtcclxuJGdyYXktMTAwOiAjZjhmOWZhO1xyXG4kZ3JheS0yMDA6ICNlOWVjZWY7XHJcbiRncmF5LTMwMDogI2RlZTJlNjtcclxuJGdyYXktNDAwOiAjY2VkNGRhO1xyXG4kZ3JheS01MDA6ICNhZGI1YmQ7XHJcbiRncmF5LTYwMDogIzZjNzU3ZDtcclxuJGdyYXktNzAwOiAjNDk1MDU3O1xyXG4kZ3JheS04MDA6ICMzNDNhNDA7XHJcbiRncmF5LTkwMDogIzIxMjUyOTtcclxuJGJsYWNrOiAgICAjMDAwO1xyXG5cclxuJGNvbG9yLWRhcmtlci1wZXJjZW50LWZ1bGw6IDIwJTtcclxuJGNvbG9yLWRhcmtlci1wZXJjZW50LWhhbGY6ICRjb2xvci1kYXJrZXItcGVyY2VudC1mdWxsIC8gMjtcclxuJGNvbG9yLWRhcmtlci1wZXJjZW50LXF1YXJ0ZXI6ICRjb2xvci1kYXJrZXItcGVyY2VudC1oYWxmIC8gMjtcclxuJGNvbG9yLWRhcmtlci1wZXJjZW50LW5vbmU6IDA7XHJcblxyXG4kYmx1ZTogICAgbGlnaHRlbigjMDA3YmZmLCAkY29sb3ItZGFya2VyLXBlcmNlbnQtaGFsZik7XHJcbiRpbmRpZ286ICBkYXJrZW4oIzY2MTBmMiwgJGNvbG9yLWRhcmtlci1wZXJjZW50LW5vbmUpO1xyXG4kcHVycGxlOiAgZGFya2VuKCM2ZjQyYzEsICRjb2xvci1kYXJrZXItcGVyY2VudC1ub25lKTtcclxuJHBpbms6ICAgIGRhcmtlbigjZTgzZThjLCAkY29sb3ItZGFya2VyLXBlcmNlbnQtbm9uZSk7XHJcbiRyZWQ6ICAgICBkYXJrZW4oI2RjMzU0NSwgJGNvbG9yLWRhcmtlci1wZXJjZW50LW5vbmUpO1xyXG4kb3JhbmdlOiAgZGFya2VuKCNmZDdlMTQsICRjb2xvci1kYXJrZXItcGVyY2VudC1ub25lKTtcclxuJHllbGxvdzogIGxpZ2h0ZW4oI2ZmYzEwNywgJGNvbG9yLWRhcmtlci1wZXJjZW50LWhhbGYpO1xyXG4kZ3JlZW46ICAgZGFya2VuKCMyOGE3NDUsICRjb2xvci1kYXJrZXItcGVyY2VudC1ub25lKTtcclxuJHRlYWw6ICAgIGRhcmtlbigjMjBjOTk3LCAkY29sb3ItZGFya2VyLXBlcmNlbnQtbm9uZSk7XHJcbiRjeWFuOiAgICBsaWdodGVuKCMxN2EyYjgsICRjb2xvci1kYXJrZXItcGVyY2VudC1ub25lKTtcclxuXHJcbiRwcmltYXJ5OiAgICAgICAkYmx1ZTtcclxuJHNlY29uZGFyeTogICAgICRncmF5LTYwMDtcclxuJHN1Y2Nlc3M6ICAgICAgICRncmVlbjtcclxuJGluZm86ICAgICAgICAgICRjeWFuO1xyXG4kd2FybmluZzogICAgICAgJG9yYW5nZTtcclxuJGRhbmdlcjogICAgICAgICRyZWQ7XHJcbiRsaWdodDogICAgICAgICAkZ3JheS0zMDA7XHJcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDA7XHJcblxyXG4vLyRib2R5LWJnOiAgICAgICAkZ3JheS05MDA7IC8vIzFFMUUxRTtcclxuJGJvZHktYmc6ICAgICAjMTkxZDIxO1xyXG4kYm9keS1jb2xvcjogICNkM2QzZDM7IC8vJGdyYXktMjAwOyAvLyNENEQ0RDQ7XHJcblxyXG4keWlxLXRleHQtZGFyazogJGdyYXktOTAwO1xyXG4keWlxLXRleHQtbGlnaHQ6ICRncmF5LTQwMDtcclxuXHJcbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJvZHktY29sb3IsIDE1JSk7XHJcbi8vICRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICBub25lO1xyXG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpO1xyXG4vLyRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICB1bmRlcmxpbmU7XHJcblxyXG5cclxuLy8gVXRpbGl0aWVzIChib3JkZXJzKVxyXG4kYm9yZGVyLWNvbG9yOiAkZGFyaztcclxuXHJcbi8vIENhcmRzXHJcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKCR3aGl0ZSwgLjEyNSk7XHJcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjAzKTtcclxuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTIwMDtcclxuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LTkwMDsgLy8kYm9keS1iZyA/XHJcblxyXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjEyNSk7XHJcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTcwMCAkZ3JheS03MDAgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcclxuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktMTAwO1xyXG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZztcclxuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktNzAwICRncmF5LTcwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XHJcblxyXG5cclxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJGJsYWNrO1xyXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICAkcHJpbWFyeTtcclxuXHJcbi8vIExpc3QgZ3JvdXBcclxuXHJcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJvZHktYmcsIC4wNSk7XHJcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuMTI1KTtcclxuXHJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTkwMDtcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XHJcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnO1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XHJcblxyXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS00MDA7XHJcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnO1xyXG5cclxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwO1xyXG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XHJcblxyXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvcjtcclxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktODAwO1xyXG5cclxuLy8gRm9ybXNcclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRibGFjaztcclxuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTgwMDtcclxuXHJcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0zMDA7XHJcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS02MDA7XHJcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkd2hpdGUsIC4wNzUpO1xyXG5cclxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnO1xyXG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKTtcclxuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvcjtcclxuXHJcbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3I7XHJcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDA7XHJcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yO1xyXG5cclxuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yO1xyXG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS00MDA7XHJcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZztcclxuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktODAwO1xyXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS0yMDA7XHJcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCR3aGl0ZSwgLjA3NSk7XHJcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3I7XHJcblxyXG4vLyBNb2RhbHNcclxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAkYm9keS1iZztcclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICByZ2JhKCR3aGl0ZSwgLjIpO1xyXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTgwMDtcclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcclxuXHJcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHdoaXRlO1xyXG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgIDAgMXB4IDAgJGJsYWNrO1xyXG5cclxuLy8gLy8gVGFibGVzXHJcbi8vICR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG4vLyAkdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KTtcclxuLy8gJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpO1xyXG4vLyAkdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmc7XHJcbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yO1xyXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yO1xyXG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3I7XHJcblxyXG4vLyAkdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDA7XHJcbi8vICR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMDtcclxuXHJcbi8vICR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICAgJGdyYXktOTAwO1xyXG4vLyAkdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpO1xyXG4vLyAkdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KTtcclxuLy8gJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICBsaWdodGVuKCRncmF5LTkwMCwgNy41JSk7XHJcbi8vICR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgJGJvZHktYmc7XHJcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMDtcclxuXHJcbi8vICR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkO1xyXG5cclxuXHJcbi8vIEp1bWJvdHJvblxyXG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS04MDA7XHJcblxyXG4vLyBIUlxyXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjEpO1xyXG5cclxuXHJcbi8vIFRvYXN0c1xyXG4vLyR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGw7XHJcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuODUpO1xyXG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKTtcclxuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJHdoaXRlLCAuMSk7XHJcblxyXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS00MDA7XHJcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJGJsYWNrLCAuODUpO1xyXG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIC4wNSk7XHJcblxyXG4vLyBEcm9wZG93bnNcclxuLy9cclxuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3I7XHJcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICRibGFjaztcclxuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC4xNSk7XHJcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMDtcclxuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJHdoaXRlLCAuMTc1KTtcclxuXHJcbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTEwMDtcclxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgbGlnaHRlbigkZ3JheS0xMDAsIDUlKTtcclxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktOTAwO1xyXG5cclxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XHJcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnO1xyXG5cclxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNDAwO1xyXG5cclxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNDAwO1xyXG5cclxuLy8gQnJlYWRjcnVtYnNcclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktODAwO1xyXG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS00MDA7XHJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTQwMDtcclxuXHJcbi8vIFBhZ2luYXRpb25cclxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3I7XHJcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICRibGFjaztcclxuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwO1xyXG5cclxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93O1xyXG5cclxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3I7XHJcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMDtcclxuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktNzAwO1xyXG5cclxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XHJcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnO1xyXG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XHJcblxyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS00MDA7XHJcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRibGFjaztcclxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktNzAwO1xyXG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsXCIlM2NcIiksXG4gIChcIj5cIixcIiUzZVwiKSxcbiAgKFwiI1wiLFwiJTIzXCIpLFxuICAoXCIoXCIsXCIlMjhcIiksXG4gIChcIilcIixcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgLyAyKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I6ICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6ICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgLyAyICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgc3VidHJhY3QoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDQpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGFkZCgxZW0gKiAuNzUsICgyICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICogLjc1KSArICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcbiR1c2VyLXNlbGVjdHM6IGFsbCwgYXV0bywgbm9uZSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiLy8gRG8gbm90IGZvcmdldCB0byB1cGRhdGUgZ2V0dGluZy1zdGFydGVkL3RoZW1pbmcubWQhXG46cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLW5vLXZlbmRvci1wcmVmaXgsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gRnV0dXJlLXByb29mIHJ1bGU6IGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCA6Zm9jdXMtdmlzaWJsZSwgc3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmVcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxuLy8gaW50ZXJhY3Rpb24gdGhhdCBsZWQgdG8gdGhlIGVsZW1lbnQgcmVjZWl2aW5nIHByb2dyYW1tYXRpYyBmb2N1cyB3YXMgYSBrZXlib2FyZCBpbnRlcmFjdGlvbixcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXG4vLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDE4LzAzL2ZvY3VzLXZpc2libGUtYW5kLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5L1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8vIERpc2FibGUgYXV0by1oaWRpbmcgc2Nyb2xsYmFyIGluIElFICYgbGVnYWN5IEVkZ2UgdG8gYXZvaWQgb3ZlcmxhcCxcbiAgLy8gbWFraW5nIGl0IGltcG9zc2libGUgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgY29udGVudFxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2ZyB7XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBTVkcgb3ZlcmZsb3cgYnVnIGluIElFMTAvMTEgaXMgc3RpbGwgcmVxdWlyZWQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI2ODc4XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbnRoIHtcbiAgLy8gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBmcm9tIHRoZSBgPGJvZHk+YCwgb3IgdGhlXG4gIC8vIGNsb3Nlc3QgcGFyZW50IHdpdGggYSBzZXQgYHRleHQtYWxpZ25gLlxuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRsYWJlbC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbi8vIHJlc3VsdHMgaW4gYSBsb3NzIG9mIHRoZSBkZWZhdWx0IGBidXR0b25gIGZvY3VzIHN0eWxlcy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkO1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gU2V0IHRoZSBjdXJzb3IgZm9yIG5vbi1gPGJ1dHRvbj5gIGJ1dHRvbnNcbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5AaWYgJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucyB7XG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuICAvLyBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4gIC8vIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAgbWluLXdpZHRoOiAwO1xuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDEuNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxufVxuXG4vL1xuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG4vL1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUVcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgLyAyO1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICAmID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCUgLyAkY291bnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlIC8gJGNvdW50O1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cblxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1NDEwXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYm9yZGVyLWxldmVsKSk7XG59XG5cbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGFjdGl2ZSwgJHRhYmxlLWFjdGl2ZS1iZyk7XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLnRoZWFkLWxpZ2h0IHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhlYWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuXG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgge1xuICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgICAgIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICAgICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcblxuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIgb3IgdW5pdCgkcHJldi1udW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gIEBpZiBsZW5ndGgoJG1hcCkgPiAwIHtcbiAgICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICAgIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcbiAgICAgIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJ1cmwoXCIpID09IDEge1xuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAvIDEwMDA7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuIiwiLy8gVGFibGVzXHJcblxyXG5AbWl4aW4gZGFyay10YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XHJcbiAgICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxyXG4gICAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cclxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xyXG4gICAgICAgICYsXHJcbiAgICAgICAgPiB0aCxcclxuICAgICAgICA+IHRkIHtcclxuICAgICAgICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcclxuICAgIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxyXG4gICAgLnRhYmxlLWhvdmVyIHtcclxuICAgICAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XHJcblxyXG4gICAgICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcclxuXHJcbiAgICAgICAgICAgICAgICA+IHRkLFxyXG4gICAgICAgICAgICAgICAgPiB0aCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gVGFibGUgYmFja2dyb3VuZHNcclxuLy9cclxuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcclxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cclxuXHJcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xyXG4gICAgQGluY2x1ZGUgZGFyay10YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpKTtcclxufVxyXG5cclxuQGluY2x1ZGUgZGFyay10YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsICR0YWJsZS1hY3RpdmUtYmcpO1xyXG5cclxuLnRhYmxlLWRhcmsge1xyXG4gICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xyXG59XHJcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBSZW1vdmUgc2VsZWN0IG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGlucHV0LWNvbG9yO1xuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgJi5mb3JtLWNvbnRyb2wge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICZbc2l6ZV0sXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG59XG5cblxuLy8gRm9ybSBncmlkXG4vL1xuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuXG4gID4gLmNvbCxcbiAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLmZvcm0tY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIGZvciB3b3JrYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuZm9ybS1jaGVjay1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pKTtcbn1cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAsXG4gICAgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZvcm0tY29udHJvbC1mb2N1cygpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsIGVzY2FwZS1zdmcoJGljb24pICRjdXN0b20tc2VsZWN0LWJnIG5vLXJlcGVhdCAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi53YXMtdmFsaWRhdGVkIHtcclxuICAgIEBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xyXG5cclxuICAgICAgICAuaXMtI3skc3RhdGV9IH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcclxuICAgICAgICAuaXMtI3skc3RhdGV9IH4gLiN7JHN0YXRlfS10b29sdGlwLFxyXG4gICAgICAgIDojeyRzdGF0ZX0gfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxyXG4gICAgICAgIDojeyRzdGF0ZX0gfiAuI3skc3RhdGV9LXRvb2x0aXAge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcblxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAwO1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZHJvcGRvd24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRkcm9wZG93bi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wcmlnaHQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHJpZ2h0KTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BsZWZ0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBXaGVuIGVuYWJsZWQgUG9wcGVyLmpzLCByZXNldCBiYXNpYyBkcm9wZG93biBwb3NpdGlvblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5kcm9wZG93bi1tZW51IHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZywgJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXksIHRydWUpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duKCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcHJpZ2h0ICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wbGVmdCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi5pbnB1dC1ncm91cCB7XHJcbiAgICAmID4gLmlucHV0LWdyb3VwLWFwcGVuZCB7XHJcbiAgICAgICAgJiA+IC5jdXN0b20tc2VsZWN0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCB7XHJcbiAgICAgICAgJiA+IC5jdXN0b20tc2VsZWN0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIGhlaWdodDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtY3Vyc29yO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJnICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93LCAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXBwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB9XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtc207XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1sZztcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbXMtdGh1bWIgICAgICAgICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQpIC8gMjsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbXMtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0IC8gMjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC1sb3dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyAvLyBhcmJpdHJhcnk/XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAubmF2LWxpbmsge1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5jb250YWluZXIsXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAvLyBDaGFuZ2VzIGZsZXgtYmFzZXMgdG8gYXV0byBiZWNhdXNlIG9mIGFuIElFMTAgYnVnXG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi5uYXZiYXItZGFyayB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiAkY2FyZC1oZWlnaHQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgaW1hZ2Ugc2l6ZSBidWcgaW4gSUVcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yODg1NVxuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxuXG4gICsgLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuLmNhcmQtY29sdW1ucyB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1jb2x1bW5zLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBBY2NvcmRpb25cbi8vXG5cbi5hY2NvcmRpb24ge1xuICA+IC5jYXJkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICA+IC5jYXJkLWhlYWRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIFN1cHByZXNzIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3IgaW4gbW9kZXJuIGJyb3dzZXJzXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xuICAgIGJveC1zaGFkb3c6ICRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAvLyBPcGluaW9uYXRlZDogcmVtb3ZlIHRoZSBcImhhbmRcIiBjdXJzb3Igc2V0IHByZXZpb3VzbHkgZm9yIC5wYWdlLWxpbmtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJGxpbmUtaGVpZ2h0LWxnLCAkYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkbGluZS1oZWlnaHQtc20sICRib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRiYWRnZS10cmFuc2l0aW9uKTtcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4vLyBQaWxsIGJhZGdlc1xuLy9cbi8vIE1ha2UgdGhlbSBleHRyYSByb3VuZGVkIHdpdGggYSBtb2RpZmllciB0byByZXBsYWNlIHYzJ3MgYmFkZ2VzLlxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENvbG9yc1xuLy9cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyKCkge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMoKSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1ib3JkZXItbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nO1xuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAtOSksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgNikpO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5hLmNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIudG9hc3Qge1xuICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGNoZWFwIHJvdW5kZWQgY29ybmVycyBvbiBuZXN0ZWQgaXRlbXNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b2FzdC1mb250LXNpemUpO1xuICBjb2xvcjogJHRvYXN0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1ib3JkZXItY29sb3I7XG4gIGJveC1zaGFkb3c6ICR0b2FzdC1ib3gtc2hhZG93O1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHRvYXN0LXBhZGRpbmcteDtcbiAgfVxuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteSAkdG9hc3QtcGFkZGluZy14O1xuICBjb2xvcjogJHRvYXN0LWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yO1xufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXg7IC8vIGFwcGx5IHRvIGJvdGggdmVydGljYWwgYW5kIGhvcml6b250YWxcbn1cbiIsIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi5tb2RhbC1vcGVuIHtcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDsgLy8gUmVzZXQgaGVpZ2h0IHRvIDAgZXhjZXB0IG9uIElFXG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmcgLSAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXJpZ2h0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWxlZnQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcG9wb3Zlci1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIG1hcmdpbjogMCAkcG9wb3Zlci1ib3JkZXItcmFkaXVzO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gIG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgdG9wOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgLyAxMDAlIDEwMCU7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBSb3RhdGluZyBib3JkZXJcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ib3JkZXIgLjc1cyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG4gIGJvcmRlci13aWR0aDogJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtO1xufVxuXG4vL1xuLy8gR3Jvd2luZyBjaXJjbGVcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ncm93IC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmICRzaXplICE9IDAge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iXX0= */
