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", "Liberation 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: #3395ff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffce3a;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #3395ff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #fd7e14;
  --danger: #dc3545;
  --light: #dee2e6;
  --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", "Liberation 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", "Liberation 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]):not([class]) {
  color: inherit;
  text-decoration: none; }
  .bootstrap-dark a:not([href]):not([class]):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;
  text-align: -webkit-match-parent; }

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

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

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

.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: 0.875em;
  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: 0.875em;
  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: #f8f9fa; }
  .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,
.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;
  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;
    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;
    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;
    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;
    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: #c6e1ff; }

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

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

.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: #fedbbd; }

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

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

.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: #f6f7f8; }

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

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

.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: #343a40; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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: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:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #dee2e6; }

.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: 0.875em;
  color: #28a745; }

.bootstrap-dark .valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  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: #e9ecef;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem; }
  .form-row > .col > .bootstrap-dark .valid-tooltip,
  .form-row > [class*="col-"] > .bootstrap-dark .valid-tooltip {
    left: 5px; }

.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) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .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 select.form-control.is-valid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center; }

.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) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #000 url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat; }
  .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: 0.875em;
  color: #dc3545; }

.bootstrap-dark .invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  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: #e9ecef;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem; }
  .form-row > .col > .bootstrap-dark .invalid-tooltip,
  .form-row > [class*="col-"] > .bootstrap-dark .invalid-tooltip {
    left: 5px; }

.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) !important;
  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 select.form-control.is-invalid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center; }

.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) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #000 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") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat; }
  .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: 0.875em;
  color: #28a745; }

.bootstrap-dark .was-validated .valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  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: #e9ecef;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem; }
  .form-row > .col > .bootstrap-dark .was-validated .valid-tooltip,
  .form-row > [class*="col-"] > .bootstrap-dark .was-validated .valid-tooltip {
    left: 5px; }

.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) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .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 select.form-control:valid, .bootstrap-dark .was-validated select.form-control.is-valid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center; }

.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) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #000 url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat; }
  .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: 0.875em;
  color: #dc3545; }

.bootstrap-dark .was-validated .invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  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: #e9ecef;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem; }
  .form-row > .col > .bootstrap-dark .was-validated .invalid-tooltip,
  .form-row > [class*="col-"] > .bootstrap-dark .was-validated .invalid-tooltip {
    left: 5px; }

.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) !important;
  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 select.form-control:invalid, .bootstrap-dark .was-validated select.form-control.is-invalid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center; }

.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) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #000 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") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat; }
  .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: #e9ecef;
  background-color: #3395ff;
  border-color: #3395ff; }
  .bootstrap-dark .btn-primary:hover {
    color: #e9ecef;
    background-color: #0d82ff;
    border-color: #007bff; }
  .bootstrap-dark .btn-primary:focus, .bootstrap-dark .btn-primary.focus {
    color: #e9ecef;
    background-color: #0d82ff;
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(78, 162, 253, 0.5); }
  .bootstrap-dark .btn-primary.disabled, .bootstrap-dark .btn-primary:disabled {
    color: #e9ecef;
    background-color: #3395ff;
    border-color: #3395ff; }
  .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: #e9ecef;
    background-color: #007bff;
    border-color: #0075f2; }
    .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(78, 162, 253, 0.5); }

.bootstrap-dark .btn-secondary {
  color: #e9ecef;
  background-color: #6c757d;
  border-color: #6c757d; }
  .bootstrap-dark .btn-secondary:hover {
    color: #e9ecef;
    background-color: #5a6268;
    border-color: #545b62; }
  .bootstrap-dark .btn-secondary:focus, .bootstrap-dark .btn-secondary.focus {
    color: #e9ecef;
    background-color: #5a6268;
    border-color: #545b62;
    box-shadow: 0 0 0 0.2rem rgba(127, 135, 142, 0.5); }
  .bootstrap-dark .btn-secondary.disabled, .bootstrap-dark .btn-secondary:disabled {
    color: #e9ecef;
    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: #e9ecef;
    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(127, 135, 142, 0.5); }

.bootstrap-dark .btn-success {
  color: #e9ecef;
  background-color: #28a745;
  border-color: #28a745; }
  .bootstrap-dark .btn-success:hover {
    color: #e9ecef;
    background-color: #218838;
    border-color: #1e7e34; }
  .bootstrap-dark .btn-success:focus, .bootstrap-dark .btn-success.focus {
    color: #e9ecef;
    background-color: #218838;
    border-color: #1e7e34;
    box-shadow: 0 0 0 0.2rem rgba(69, 177, 95, 0.5); }
  .bootstrap-dark .btn-success.disabled, .bootstrap-dark .btn-success:disabled {
    color: #e9ecef;
    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: #e9ecef;
    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(69, 177, 95, 0.5); }

.bootstrap-dark .btn-info {
  color: #e9ecef;
  background-color: #17a2b8;
  border-color: #17a2b8; }
  .bootstrap-dark .btn-info:hover {
    color: #e9ecef;
    background-color: #138496;
    border-color: #117a8b; }
  .bootstrap-dark .btn-info:focus, .bootstrap-dark .btn-info.focus {
    color: #e9ecef;
    background-color: #138496;
    border-color: #117a8b;
    box-shadow: 0 0 0 0.2rem rgba(55, 173, 192, 0.5); }
  .bootstrap-dark .btn-info.disabled, .bootstrap-dark .btn-info:disabled {
    color: #e9ecef;
    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: #e9ecef;
    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(55, 173, 192, 0.5); }

.bootstrap-dark .btn-warning {
  color: #343a40;
  background-color: #fd7e14;
  border-color: #fd7e14; }
  .bootstrap-dark .btn-warning:hover {
    color: #e9ecef;
    background-color: #e96b02;
    border-color: #dc6502; }
  .bootstrap-dark .btn-warning:focus, .bootstrap-dark .btn-warning.focus {
    color: #e9ecef;
    background-color: #e96b02;
    border-color: #dc6502;
    box-shadow: 0 0 0 0.2rem rgba(223, 116, 27, 0.5); }
  .bootstrap-dark .btn-warning.disabled, .bootstrap-dark .btn-warning:disabled {
    color: #343a40;
    background-color: #fd7e14;
    border-color: #fd7e14; }
  .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: #e9ecef;
    background-color: #dc6502;
    border-color: #cf5f02; }
    .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(223, 116, 27, 0.5); }

.bootstrap-dark .btn-danger {
  color: #e9ecef;
  background-color: #dc3545;
  border-color: #dc3545; }
  .bootstrap-dark .btn-danger:hover {
    color: #e9ecef;
    background-color: #c82333;
    border-color: #bd2130; }
  .bootstrap-dark .btn-danger:focus, .bootstrap-dark .btn-danger.focus {
    color: #e9ecef;
    background-color: #c82333;
    border-color: #bd2130;
    box-shadow: 0 0 0 0.2rem rgba(222, 80, 95, 0.5); }
  .bootstrap-dark .btn-danger.disabled, .bootstrap-dark .btn-danger:disabled {
    color: #e9ecef;
    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: #e9ecef;
    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(222, 80, 95, 0.5); }

.bootstrap-dark .btn-light {
  color: #343a40;
  background-color: #dee2e6;
  border-color: #dee2e6; }
  .bootstrap-dark .btn-light:hover {
    color: #343a40;
    background-color: #c8cfd6;
    border-color: #c1c9d0; }
  .bootstrap-dark .btn-light:focus, .bootstrap-dark .btn-light.focus {
    color: #343a40;
    background-color: #c8cfd6;
    border-color: #c1c9d0;
    box-shadow: 0 0 0 0.2rem rgba(197, 201, 205, 0.5); }
  .bootstrap-dark .btn-light.disabled, .bootstrap-dark .btn-light:disabled {
    color: #343a40;
    background-color: #dee2e6;
    border-color: #dee2e6; }
  .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: #343a40;
    background-color: #c1c9d0;
    border-color: #bac2cb; }
    .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(197, 201, 205, 0.5); }

.bootstrap-dark .btn-dark {
  color: #e9ecef;
  background-color: #343a40;
  border-color: #343a40; }
  .bootstrap-dark .btn-dark:hover {
    color: #e9ecef;
    background-color: #23272b;
    border-color: #1d2124; }
  .bootstrap-dark .btn-dark:focus, .bootstrap-dark .btn-dark.focus {
    color: #e9ecef;
    background-color: #23272b;
    border-color: #1d2124;
    box-shadow: 0 0 0 0.2rem rgba(79, 85, 90, 0.5); }
  .bootstrap-dark .btn-dark.disabled, .bootstrap-dark .btn-dark:disabled {
    color: #e9ecef;
    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: #e9ecef;
    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(79, 85, 90, 0.5); }

.bootstrap-dark .btn-outline-primary {
  color: #3395ff;
  border-color: #3395ff; }
  .bootstrap-dark .btn-outline-primary:hover {
    color: #e9ecef;
    background-color: #3395ff;
    border-color: #3395ff; }
  .bootstrap-dark .btn-outline-primary:focus, .bootstrap-dark .btn-outline-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(51, 149, 255, 0.5); }
  .bootstrap-dark .btn-outline-primary.disabled, .bootstrap-dark .btn-outline-primary:disabled {
    color: #3395ff;
    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: #e9ecef;
    background-color: #3395ff;
    border-color: #3395ff; }
    .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(51, 149, 255, 0.5); }

.bootstrap-dark .btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d; }
  .bootstrap-dark .btn-outline-secondary:hover {
    color: #e9ecef;
    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: #e9ecef;
    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: #e9ecef;
    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: #e9ecef;
    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: #e9ecef;
    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: #e9ecef;
    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: #fd7e14;
  border-color: #fd7e14; }
  .bootstrap-dark .btn-outline-warning:hover {
    color: #343a40;
    background-color: #fd7e14;
    border-color: #fd7e14; }
  .bootstrap-dark .btn-outline-warning:focus, .bootstrap-dark .btn-outline-warning.focus {
    box-shadow: 0 0 0 0.2rem rgba(253, 126, 20, 0.5); }
  .bootstrap-dark .btn-outline-warning.disabled, .bootstrap-dark .btn-outline-warning:disabled {
    color: #fd7e14;
    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: #343a40;
    background-color: #fd7e14;
    border-color: #fd7e14; }
    .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(253, 126, 20, 0.5); }

.bootstrap-dark .btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545; }
  .bootstrap-dark .btn-outline-danger:hover {
    color: #e9ecef;
    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: #e9ecef;
    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: #dee2e6;
  border-color: #dee2e6; }
  .bootstrap-dark .btn-outline-light:hover {
    color: #343a40;
    background-color: #dee2e6;
    border-color: #dee2e6; }
  .bootstrap-dark .btn-outline-light:focus, .bootstrap-dark .btn-outline-light.focus {
    box-shadow: 0 0 0 0.2rem rgba(222, 226, 230, 0.5); }
  .bootstrap-dark .btn-outline-light.disabled, .bootstrap-dark .btn-outline-light:disabled {
    color: #dee2e6;
    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: #343a40;
    background-color: #dee2e6;
    border-color: #dee2e6; }
    .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(222, 226, 230, 0.5); }

.bootstrap-dark .btn-outline-dark {
  color: #343a40;
  border-color: #343a40; }
  .bootstrap-dark .btn-outline-dark:hover {
    color: #e9ecef;
    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: #e9ecef;
    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 .collapsing.width {
    width: 0;
    height: auto;
    transition: width 0.35s ease; }
    @media (prefers-reduced-motion: reduce) {
      .bootstrap-dark .collapsing.width {
        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(: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:not(.has-validation) > .form-control:not(:last-child),
  .bootstrap-dark .input-group:not(.has-validation) > .custom-select:not(:last-child),
  .bootstrap-dark .input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
  .bootstrap-dark .input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .bootstrap-dark .input-group.has-validation > .form-control:nth-last-child(n + 3),
  .bootstrap-dark .input-group.has-validation > .custom-select:nth-last-child(n + 3),
  .bootstrap-dark .input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label,
  .bootstrap-dark .input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }

.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:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.bootstrap-dark .input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.bootstrap-dark .input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.bootstrap-dark .input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .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;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  print-color-adjust: exact; }

.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: 1px solid #adb5bd; }
  .bootstrap-dark .custom-control-label::after {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    content: "";
    background: 50% / 50% 50% no-repeat; }

.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") right 0.75rem center/8px 10px no-repeat;
  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;
  overflow: hidden;
  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;
  overflow: hidden;
  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: 0; }
    .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-link {
    margin-bottom: -1px;
    background-color: transparent;
    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 {
      isolation: isolate;
      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 {
  background: none;
  border: 0;
  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-link,
.bootstrap-dark .nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center; }

.bootstrap-dark .nav-justified > .nav-link,
.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: 50% / 100% 100% no-repeat; }

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

@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-nav-scroll {
      overflow: visible; }
    .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-nav-scroll {
      overflow: visible; }
    .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-nav-scroll {
      overflow: visible; }
    .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-nav-scroll {
      overflow: visible; }
    .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-nav-scroll {
    overflow: visible; }
  .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 > .card-header + .list-group,
  .bootstrap-dark .card > .list-group + .card-footer {
    border-top: 0; }

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

.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-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;
  border-radius: calc(0.25rem - 1px); }

.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 {
  overflow-anchor: none; }
  .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 + .breadcrumb-item {
  padding-left: 0.5rem; }
  .bootstrap-dark .breadcrumb-item + .breadcrumb-item::before {
    float: left;
    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: #e9ecef;
  background-color: #3395ff; }
  a.bootstrap-dark .badge-primary:hover, a.bootstrap-dark .badge-primary:focus {
    color: #e9ecef;
    background-color: #007bff; }
  a.bootstrap-dark .badge-primary:focus, a.bootstrap-dark .badge-primary.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(51, 149, 255, 0.5); }

.bootstrap-dark .badge-secondary {
  color: #e9ecef;
  background-color: #6c757d; }
  a.bootstrap-dark .badge-secondary:hover, a.bootstrap-dark .badge-secondary:focus {
    color: #e9ecef;
    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: #e9ecef;
  background-color: #28a745; }
  a.bootstrap-dark .badge-success:hover, a.bootstrap-dark .badge-success:focus {
    color: #e9ecef;
    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: #e9ecef;
  background-color: #17a2b8; }
  a.bootstrap-dark .badge-info:hover, a.bootstrap-dark .badge-info:focus {
    color: #e9ecef;
    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: #343a40;
  background-color: #fd7e14; }
  a.bootstrap-dark .badge-warning:hover, a.bootstrap-dark .badge-warning:focus {
    color: #343a40;
    background-color: #dc6502; }
  a.bootstrap-dark .badge-warning:focus, a.bootstrap-dark .badge-warning.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(253, 126, 20, 0.5); }

.bootstrap-dark .badge-danger {
  color: #e9ecef;
  background-color: #dc3545; }
  a.bootstrap-dark .badge-danger:hover, a.bootstrap-dark .badge-danger:focus {
    color: #e9ecef;
    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: #343a40;
  background-color: #dee2e6; }
  a.bootstrap-dark .badge-light:hover, a.bootstrap-dark .badge-light:focus {
    color: #343a40;
    background-color: #c1c9d0; }
  a.bootstrap-dark .badge-light:focus, a.bootstrap-dark .badge-light.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(222, 226, 230, 0.5); }

.bootstrap-dark .badge-dark {
  color: #e9ecef;
  background-color: #343a40; }
  a.bootstrap-dark .badge-dark:hover, a.bootstrap-dark .badge-dark:focus {
    color: #e9ecef;
    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;
    z-index: 2;
    padding: 0.75rem 1.25rem;
    color: inherit; }

.bootstrap-dark .alert-primary {
  color: #1b4e85;
  background-color: #d6eaff;
  border-color: #c6e1ff; }
  .bootstrap-dark .alert-primary hr {
    border-top-color: #add4ff; }
  .bootstrap-dark .alert-primary .alert-link {
    color: #12355b; }

.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: #84420a;
  background-color: #ffe5d0;
  border-color: #fedbbd; }
  .bootstrap-dark .alert-warning hr {
    border-top-color: #fecda4; }
  .bootstrap-dark .alert-warning .alert-link {
    color: #552a06; }

.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, .bootstrap-dark .alert-themed-inverted {
  color: #737678;
  background-color: #f8f9fa;
  border-color: #f6f7f8; }
  .bootstrap-dark .alert-light hr, .bootstrap-dark .alert-themed-inverted hr {
    border-top-color: #e8eaed; }
  .bootstrap-dark .alert-light .alert-link, .bootstrap-dark .alert-themed-inverted .alert-link {
    color: #5a5c5e; }

.bootstrap-dark .alert-dark, .bootstrap-dark .alert-themed {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca; }
  .bootstrap-dark .alert-dark hr, .bootstrap-dark .alert-themed hr {
    border-top-color: #b9bbbe; }
  .bootstrap-dark .alert-dark .alert-link, .bootstrap-dark .alert-themed .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: 1s linear infinite progress-bar-stripes;
          animation: 1s linear infinite progress-bar-stripes; }
  @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: #1b4e85;
  background-color: #c6e1ff; }
  .bootstrap-dark .list-group-item-primary.list-group-item-action:hover, .bootstrap-dark .list-group-item-primary.list-group-item-action:focus {
    color: #1b4e85;
    background-color: #add4ff; }
  .bootstrap-dark .list-group-item-primary.list-group-item-action.active {
    color: #fff;
    background-color: #1b4e85;
    border-color: #1b4e85; }

.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: #84420a;
  background-color: #fedbbd; }
  .bootstrap-dark .list-group-item-warning.list-group-item-action:hover, .bootstrap-dark .list-group-item-warning.list-group-item-action:focus {
    color: #84420a;
    background-color: #fecda4; }
  .bootstrap-dark .list-group-item-warning.list-group-item-action.active {
    color: #fff;
    background-color: #84420a;
    border-color: #84420a; }

.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: #737678;
  background-color: #f6f7f8; }
  .bootstrap-dark .list-group-item-light.list-group-item-action:hover, .bootstrap-dark .list-group-item-light.list-group-item-action:focus {
    color: #737678;
    background-color: #e8eaed; }
  .bootstrap-dark .list-group-item-light.list-group-item-action.active {
    color: #fff;
    background-color: #737678;
    border-color: #737678; }

.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 {
  flex-basis: 350px;
  max-width: 350px;
  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);
  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);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px); }

.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", "Liberation 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;
  white-space: normal;
  word-spacing: 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", "Liberation 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;
  white-space: normal;
  word-spacing: 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%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  border: 0;
  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: 50% / 100% 100% no-repeat; }

.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: -0.125em;
  border: 0.25em solid currentcolor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: .75s linear infinite spinner-border;
          animation: .75s linear infinite spinner-border; }

.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: -0.125em;
  background-color: currentcolor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: .75s linear infinite spinner-grow;
          animation: .75s linear infinite spinner-grow; }

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

@media (prefers-reduced-motion: reduce) {
  .bootstrap-dark .spinner-border,
  .bootstrap-dark .spinner-grow {
    -webkit-animation-duration: 1.5s;
            animation-duration: 1.5s; } }

.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: #3395ff !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: #007bff !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: #fd7e14 !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: #dc6502 !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, .bootstrap-dark .bg-themed-inverted {
  background-color: #dee2e6 !important; }

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

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

.bootstrap-dark a.bg-dark:hover, .bootstrap-dark a.navbar-themed:hover, .bootstrap-dark a.bg-themed:hover, .bootstrap-dark a.bg-dark:focus, .bootstrap-dark a.navbar-themed:focus, .bootstrap-dark a.bg-themed:focus,
.bootstrap-dark button.bg-dark:hover,
.bootstrap-dark button.navbar-themed:hover,
.bootstrap-dark button.bg-themed:hover,
.bootstrap-dark button.bg-dark:focus,
.bootstrap-dark button.navbar-themed:focus,
.bootstrap-dark button.bg-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: #3395ff !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: #fd7e14 !important; }

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

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

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

.bootstrap-dark .border-white {
  border-color: #fff !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-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: #3395ff !important; }

.bootstrap-dark a.text-primary:hover, .bootstrap-dark a.text-primary:focus {
  color: #006fe6 !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: #fd7e14 !important; }

.bootstrap-dark a.text-warning:hover, .bootstrap-dark a.text-warning:focus {
  color: #c35a02 !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, .bootstrap-dark .text-themed {
  color: #dee2e6 !important; }

.bootstrap-dark a.text-light:hover, .bootstrap-dark a.text-themed:hover, .bootstrap-dark a.text-light:focus, .bootstrap-dark a.text-themed:focus {
  color: #b2bcc5 !important; }

.bootstrap-dark .text-dark, .bootstrap-dark .text-themed-inverted {
  color: #343a40 !important; }

.bootstrap-dark a.text-dark:hover, .bootstrap-dark a.text-themed-inverted:hover, .bootstrap-dark a.text-dark:focus, .bootstrap-dark a.text-themed-inverted: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-break: break-word !important;
  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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvZ2dsZS1ib290c3RyYXAtZGFyay5zY3NzIiwiX2RhcmstdmFyaWFibGVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29kZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCJtaXhpbnMvX2RhcmstdGFibGUtcm93LnNjc3MiLCJfZGFyay10YWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIl9mb3JtLW92ZXJyaWRlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCJfZGFyay1pbnB1dC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2p1bWJvdHJvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19pbnRlcmFjdGlvbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0E7RUFDSSx1QkFBdUI7RUFDdkIsaUJBQWlCO0VBQ2pCLDhCQUE4QjtFQUM5Qiw2Q0NBVyxFQUFBOztBREdmO0VBQ0ksU0FBUztFQUNULHFORW1Ra087RUNqR2hPLGVBQVc7RUhoS2IsZ0JFNFE2QjtFRjNRN0IsZ0JFZ1I2QjtFRi9RN0IsY0NxRGlCO0VEcERqQixnQkFBZ0I7RUFDaEIseUJDa0RpQixFQUFBOztBRC9DckI7RUl4QkksZUFBYztFQUFkLGlCQUFjO0VBQWQsaUJBQWM7RUFBZCxlQUFjO0VBQWQsY0FBYztFQUFkLGlCQUFjO0VBQWQsaUJBQWM7RUFBZCxnQkFBYztFQUFkLGVBQWM7RUFBZCxlQUFjO0VBQWQsYUFBYztFQUFkLGVBQWM7RUFBZCxvQkFBYztFQUlkLGtCQUFjO0VBQWQsb0JBQWM7RUFBZCxrQkFBYztFQUFkLGVBQWM7RUFBZCxrQkFBYztFQUFkLGlCQUFjO0VBQWQsZ0JBQWM7RUFBZCxlQUFjO0VBSWQsa0JBQWlDO0VBQWpDLHNCQUFpQztFQUFqQyxzQkFBaUM7RUFBakMsc0JBQWlDO0VBQWpDLHVCQUFpQztFQUtuQyxrT0FBeUI7RUFDekIsNkdBQXdCLEVBQUE7O0FKVTFCOzs7RUtORSxzQkFBc0IsRUFBQTs7QUxNeEI7RUtGRSx1QkFBdUI7RUFDdkIsaUJBQWlCO0VBQ2pCLDhCQUE4QjtFQUM5Qiw2Q0pmYSxFQUFBOztBRGNmO0VLUUUsY0FBYyxFQUFBOztBTFJoQjtFS21CRSxTQUFTO0VBQ1QscU5Ic09vTztFQ2pHaE8sZUFBVztFRW5JZixnQkgrTytCO0VHOU8vQixnQkhtUCtCO0VHbFAvQixjSndCbUI7RUl2Qm5CLGdCQUFnQjtFQUNoQix5QkpxQm1CLEVBQUE7O0FEL0NyQjtFS3VDRSxxQkFBcUIsRUFBQTs7QUx2Q3ZCO0VLaURFLHVCQUF1QjtFQUN2QixTQUFTO0VBQ1QsaUJBQWlCLEVBQUE7O0FMbkRuQjtFS2lFRSxhQUFhO0VBQ2IscUJIaU53QyxFQUFBOztBRm5SMUM7RUswRUUsYUFBYTtFQUNiLG1CSG9GOEIsRUFBQTs7QUYvSmhDOztFS3dGRSwwQkFBMEI7RUFDMUIseUNBQWlDO1VBQWpDLGlDQUFpQztFQUNqQyxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNDQUE4QjtVQUE5Qiw4QkFBOEIsRUFBQTs7QUw1RmhDO0VLZ0dFLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsb0JBQW9CLEVBQUE7O0FMbEd0Qjs7O0VLd0dFLGFBQWE7RUFDYixtQkFBbUIsRUFBQTs7QUx6R3JCOzs7O0VLZ0hFLGdCQUFnQixFQUFBOztBTGhIbEI7RUtvSEUsZ0JIa0orQixFQUFBOztBRnRRakM7RUt3SEUsb0JBQW9CO0VBQ3BCLGNBQWMsRUFBQTs7QUx6SGhCO0VLNkhFLGdCQUFnQixFQUFBOztBTDdIbEI7O0VLa0lFLG1CSHFJa0MsRUFBQTs7QUZ2UXBDO0VHeUlJLGNBQVcsRUFBQTs7QUh6SWY7O0VLZ0pFLGtCQUFrQjtFRlBoQixjQUFXO0VFU2IsY0FBYztFQUNkLHdCQUF3QixFQUFBOztBTG5KMUI7RUtzSk0sY0FBYyxFQUFBOztBTHRKcEI7RUt1Sk0sVUFBVSxFQUFBOztBTHZKaEI7RUsrSkUsY0oxR2tEO0VJMkdsRCxxQkhYNEM7RUdZNUMsNkJBQTZCLEVBQUE7RUxqSy9CO0lLb0tJLGNKN0dnRDtJSThHaEQsMEJIZCtDLEVBQUE7O0FGdkpuRDtFSytLRSxjQUFjO0VBQ2QscUJBQXFCLEVBQUE7RUxoTHZCO0lLbUxJLGNBQWM7SUFDZCxxQkFBcUIsRUFBQTs7QUxwTHpCOzs7O0VLaU1FLGlHSDBEZ0g7RUNsSDlHLGNBQVcsRUFBQTs7QUh6SWY7RUt1TUUsYUFBYTtFQUViLG1CQUFtQjtFQUVuQixjQUFjO0VBR2QsNkJBQTZCLEVBQUE7O0FMOU0vQjtFS3dORSxnQkFBZ0IsRUFBQTs7QUx4TmxCO0VLaU9FLHNCQUFzQjtFQUN0QixrQkFBa0IsRUFBQTs7QUxsT3BCO0VLd09FLGdCQUFnQjtFQUNoQixzQkFBc0IsRUFBQTs7QUx6T3hCO0VLa1BFLHlCQUF5QixFQUFBOztBTGxQM0I7RUtzUEUsb0JIOEVrQztFRzdFbEMsdUJINkVrQztFRzVFbEMsY0h0UWdCO0VHdVFoQixnQkFBZ0I7RUFDaEIsb0JBQW9CLEVBQUE7O0FMMVB0QjtFS21RRSxtQkFBbUI7RUFDbkIsZ0NBQWdDLEVBQUE7O0FMcFFsQztFSzhRRSxxQkFBcUI7RUFDckIscUJINEoyQyxFQUFBOztBRjNhN0M7RUt1UkUsZ0JBQWdCLEVBQUE7O0FMdlJsQjtFS2dTRSxVQUFVLEVBQUE7O0FMaFNaOzs7OztFS3dTRSxTQUFTO0VBQ1Qsb0JBQW9CO0VGaEtsQixrQkFBVztFRWtLYixvQkFBb0IsRUFBQTs7QUwzU3RCOztFS2dURSxpQkFBaUIsRUFBQTs7QUxoVG5COztFS3FURSxvQkFBb0IsRUFBQTs7QUxyVHRCO0VLNFRFLGVBQWUsRUFBQTs7QUw1VGpCO0VLbVVFLGlCQUFpQixFQUFBOztBTG5VbkI7Ozs7RUs4VUUsMEJBQTBCLEVBQUE7O0FMOVU1Qjs7OztFS3dWTSxlQUFlLEVBQUE7O0FMeFZyQjs7OztFS2tXRSxVQUFVO0VBQ1Ysa0JBQWtCLEVBQUE7O0FMbldwQjs7RUt3V0Usc0JBQXNCO0VBQ3RCLFVBQVUsRUFBQTs7QUx6V1o7RUs4V0UsY0FBYztFQUVkLGdCQUFnQixFQUFBOztBTGhYbEI7RUt5WEUsWUFBWTtFQUVaLFVBQVU7RUFDVixTQUFTO0VBQ1QsU0FBUyxFQUFBOztBTDdYWDtFS21ZRSxjQUFjO0VBQ2QsV0FBVztFQUNYLGVBQWU7RUFDZixVQUFVO0VBQ1Ysb0JBQW9CO0VGOU9oQixpQkFBVztFRWdQZixvQkFBb0I7RUFDcEIsY0FBYztFQUNkLG1CQUFtQixFQUFBOztBTDNZckI7RUsrWUUsd0JBQXdCLEVBQUE7O0FML1kxQjs7RUtxWkUsWUFBWSxFQUFBOztBTHJaZDtFSzZaRSxvQkFBb0I7RUFDcEIsd0JBQXdCLEVBQUE7O0FMOVoxQjtFS3NhRSx3QkFBd0IsRUFBQTs7QUx0YTFCO0VLK2FFLGFBQWE7RUFDYiwwQkFBMEIsRUFBQTs7QUxoYjVCO0VLd2JFLHFCQUFxQixFQUFBOztBTHhidkI7RUs0YkUsa0JBQWtCO0VBQ2xCLGVBQWUsRUFBQTs7QUw3YmpCO0VLaWNFLGFBQWEsRUFBQTs7QUxqY2Y7RUt1Y0Usd0JBQXdCLEVBQUE7O0FMdmMxQjs7RU1uQkUscUJKc1N3QztFSXBTeEMsZ0JKc1MrQjtFSXJTL0IsZ0JKc1MrQixFQUFBOztBRnRSakM7RUd5Sk0saUJBQVcsRUFBQTs7QUh6SmpCO0VHeUpNLGVBQVcsRUFBQTs7QUh6SmpCO0VHeUpNLGtCQUFXLEVBQUE7O0FIekpqQjtFR3lKTSxpQkFBVyxFQUFBOztBSHpKakI7RUd5Sk0sa0JBQVcsRUFBQTs7QUh6SmpCO0VHeUpNLGVBQVcsRUFBQTs7QUh6SmpCO0VHeUpNLGtCQUFXO0VHNUpmLGdCSndTK0IsRUFBQTs7QUZyU2pDO0VHeUpNLGVBQVc7RUd0SmYsZ0JKMlIrQjtFSTFSL0IsZ0JKa1IrQixFQUFBOztBRnRSakM7RUd5Sk0saUJBQVc7RUdqSmYsZ0JKdVIrQjtFSXRSL0IsZ0JKNlErQixFQUFBOztBRnRSakM7RUd5Sk0saUJBQVc7RUc1SWYsZ0JKbVIrQjtFSWxSL0IsZ0JKd1ErQixFQUFBOztBRnRSakM7RUd5Sk0saUJBQVc7RUd2SWYsZ0JKK1ErQjtFSTlRL0IsZ0JKbVErQixFQUFBOztBRnRSakM7RU00QkUsZ0JKZ0ZXO0VJL0VYLG1CSitFVztFSTlFWCxTQUFTO0VBQ1QsOENMdkRhLEVBQUE7O0FEd0JmOztFR3lJSSxrQkFBVztFRy9GYixnQkoyTitCLEVBQUE7O0FGclFqQzs7RU0rQ0UsY0ptUWdDO0VJbFFoQyx5QkoyUW1DLEVBQUE7O0FGM1RyQztFT3ZCRSxlQUFlO0VBQ2YsZ0JBQWdCLEVBQUE7O0FQc0JsQjtFT3ZCRSxlQUFlO0VBQ2YsZ0JBQWdCLEVBQUE7O0FQc0JsQjtFTWlFRSxxQkFBcUIsRUFBQTtFTmpFdkI7SU1vRUksb0JKcVArQixFQUFBOztBRnpUbkM7RUd5SUksY0FBVztFR3pEYix5QkFBeUIsRUFBQTs7QU5oRjNCO0VNcUZFLG1CSnVCVztFQzZDUCxrQkFBVyxFQUFBOztBSHpKakI7RU0wRkUsY0FBYztFSCtDWixrQkFBVztFRzdDYixjSjFHZ0IsRUFBQTtFRmNsQjtJTStGSSxxQkFBcUIsRUFBQTs7QU4vRnpCO0VRaEJFLGVBQWU7RUFHZixZQUFZLEVBQUE7O0FSYWQ7RVNiRSxnQlBxZ0N3QztFT3BnQ3hDLHNCUFJhO0VPU2IseUJQTmdCO0VRUWQsc0JSNk5nQztFTXBPbEMsZUFBZTtFQUdmLFlBQVksRUFBQTs7QVJhZDtFU0dFLHFCQUFxQixFQUFBOztBVEh2QjtFU09FLHFCQUEyQjtFQUMzQixjQUFjLEVBQUE7O0FUUmhCO0VHeUlJLGNBQVc7RU01SGIsY1AzQmdCLEVBQUE7O0FGY2xCO0VHeUlJLGdCQUFXO0VRaktiLGNUbUNlO0VTbENmLHFCQUFxQixFQUFBO0VBR3JCO0lBQ0UsY0FBYyxFQUFBOztBWG1CbEI7RVdiRSxzQlQwbEN1QztFQ3A4QnJDLGdCQUFXO0VRcEpiLFdUVGE7RVNVYix5QlREZ0I7RVFFZCxxQlIrTitCLEVBQUE7RUZ0Tm5DO0lXTEksVUFBVTtJUjhJVixlQUFXO0lRNUlYLGdCVHlRNkIsRUFBQTs7QUZ0UWpDO0VXSUUsY0FBYztFUnFJWixnQkFBVztFUW5JYixjVjdCZ0IsRUFBQTtFRHVCbEI7SUd5SUksa0JBQVc7SVE5SFgsY0FBYztJQUNkLGtCQUFrQixFQUFBOztBWFp0QjtFV2tCRSxpQlRpa0N1QztFU2hrQ3ZDLGtCQUFrQixFQUFBOztBWG5CcEI7Ozs7OztFWXRCRSxXQUFXO0VBQ1gsbUJBQTJCO0VBQzNCLGtCQUEwQjtFQUMxQixrQkFBa0I7RUFDbEIsaUJBQWlCLEVBQUE7O0FDbURmO0ViakNKO0ljUFEsZ0JaK0xHLEVBQUEsRVk5TEo7O0FEdUNIO0ViakNKO0ljUFEsZ0JaZ01HLEVBQUEsRVkvTEo7O0FEdUNIO0ViakNKO0ljUFEsZ0JaaU1HLEVBQUEsRVloTUo7O0FEdUNIO0ViakNKO0ljUFEsaUJaa01JLEVBQUEsRVlqTUw7O0FkTVA7RVlkRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLG1CQUEyQjtFQUMzQixrQkFBMEIsRUFBQTs7QVpXNUI7RWM0QkksZUFBZTtFQUNmLGNBQWMsRUFBQTtFZDdCbEI7O0ljaUNNLGdCQUFnQjtJQUNoQixlQUFlLEVBQUE7O0FkbENyQjs7Ozs7O0VlbkJJLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsbUJBQTJCO0VBQzNCLGtCQUEwQixFQUFBOztBZmdCOUI7RWVPUSxhQUFhO0VBQ2IsWUFBWTtFQUNaLGVBQWUsRUFBQTs7QWZUdkI7RVlzQ0ksY1R1QnFEO0VTdEJyRCxlVHNCcUQsRUFBQTs7QUg3RHpEO0VZc0NJLGFUdUJxRDtFU3RCckQsY1RzQnFELEVBQUE7O0FIN0R6RDtFWXNDSSxtQlR1QnFEO0VTdEJyRCxvQlRzQnFELEVBQUE7O0FIN0R6RDtFWXNDSSxhVHVCcUQ7RVN0QnJELGNUc0JxRCxFQUFBOztBSDdEekQ7RVlzQ0ksYVR1QnFEO0VTdEJyRCxjVHNCcUQsRUFBQTs7QUg3RHpEO0VZc0NJLG1CVHVCcUQ7RVN0QnJELG9CVHNCcUQsRUFBQTs7QUg3RHpEO0VZcUJFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZUFBZSxFQUFBOztBWnZCakI7RVlhRSxrQkFBNkM7RUFJN0MsbUJBQThDLEVBQUE7O0FaakJoRDtFWWFFLG1CQUE2QztFQUk3QyxvQkFBOEMsRUFBQTs7QVpqQmhEO0VZYUUsYUFBNkM7RUFJN0MsY0FBOEMsRUFBQTs7QVpqQmhEO0VZYUUsbUJBQTZDO0VBSTdDLG9CQUE4QyxFQUFBOztBWmpCaEQ7RVlhRSxtQkFBNkM7RUFJN0Msb0JBQThDLEVBQUE7O0FaakJoRDtFWWFFLGFBQTZDO0VBSTdDLGNBQThDLEVBQUE7O0FaakJoRDtFWWFFLG1CQUE2QztFQUk3QyxvQkFBOEMsRUFBQTs7QVpqQmhEO0VZYUUsbUJBQTZDO0VBSTdDLG9CQUE4QyxFQUFBOztBWmpCaEQ7RVlhRSxhQUE2QztFQUk3QyxjQUE4QyxFQUFBOztBWmpCaEQ7RVlhRSxtQkFBNkM7RUFJN0Msb0JBQThDLEVBQUE7O0FaakJoRDtFWWFFLG1CQUE2QztFQUk3QyxvQkFBOEMsRUFBQTs7QVpqQmhEO0VZYUUsY0FBNkM7RUFJN0MsZUFBOEMsRUFBQTs7QVpqQmhEO0VlZ0M4QixTQUFTLEVBQUE7O0FmaEN2QztFZWtDNkIsU2JtS0csRUFBQTs7QUZyTWhDO0VlcUNnQyxRQURaLEVBQUE7O0FmcENwQjtFZXFDZ0MsUUFEWixFQUFBOztBZnBDcEI7RWVxQ2dDLFFBRFosRUFBQTs7QWZwQ3BCO0VlcUNnQyxRQURaLEVBQUE7O0FmcENwQjtFZXFDZ0MsUUFEWixFQUFBOztBZnBDcEI7RWVxQ2dDLFFBRFosRUFBQTs7QWZwQ3BCO0VlcUNnQyxRQURaLEVBQUE7O0FmcENwQjtFZXFDZ0MsUUFEWixFQUFBOztBZnBDcEI7RWVxQ2dDLFFBRFosRUFBQTs7QWZwQ3BCO0VlcUNnQyxRQURaLEVBQUE7O0FmcENwQjtFZXFDZ0MsU0FEWixFQUFBOztBZnBDcEI7RWVxQ2dDLFNBRFosRUFBQTs7QWZwQ3BCO0VlcUNnQyxTQURaLEVBQUE7O0FmcENwQjtFWTRCRSxxQkFBOEMsRUFBQTs7QVo1QmhEO0VZNEJFLHNCQUE4QyxFQUFBOztBWjVCaEQ7RVk0QkUsZ0JBQThDLEVBQUE7O0FaNUJoRDtFWTRCRSxzQkFBOEMsRUFBQTs7QVo1QmhEO0VZNEJFLHNCQUE4QyxFQUFBOztBWjVCaEQ7RVk0QkUsZ0JBQThDLEVBQUE7O0FaNUJoRDtFWTRCRSxzQkFBOEMsRUFBQTs7QVo1QmhEO0VZNEJFLHNCQUE4QyxFQUFBOztBWjVCaEQ7RVk0QkUsZ0JBQThDLEVBQUE7O0FaNUJoRDtFWTRCRSxzQkFBOEMsRUFBQTs7QVo1QmhEO0VZNEJFLHNCQUE4QyxFQUFBOztBQ0s1QztFYmpDSjtJZU9RLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZSxFQUFBO0VmVHZCO0lZc0NJLGNUdUJxRDtJU3RCckQsZVRzQnFELEVBQUE7RUg3RHpEO0lZc0NJLGFUdUJxRDtJU3RCckQsY1RzQnFELEVBQUE7RUg3RHpEO0lZc0NJLG1CVHVCcUQ7SVN0QnJELG9CVHNCcUQsRUFBQTtFSDdEekQ7SVlzQ0ksYVR1QnFEO0lTdEJyRCxjVHNCcUQsRUFBQTtFSDdEekQ7SVlzQ0ksYVR1QnFEO0lTdEJyRCxjVHNCcUQsRUFBQTtFSDdEekQ7SVlzQ0ksbUJUdUJxRDtJU3RCckQsb0JUc0JxRCxFQUFBO0VIN0R6RDtJWXFCRSxjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWUsRUFBQTtFWnZCakI7SVlhRSxrQkFBNkM7SUFJN0MsbUJBQThDLEVBQUE7RVpqQmhEO0lZYUUsbUJBQTZDO0lBSTdDLG9CQUE4QyxFQUFBO0VaakJoRDtJWWFFLGFBQTZDO0lBSTdDLGNBQThDLEVBQUE7RVpqQmhEO0lZYUUsbUJBQTZDO0lBSTdDLG9CQUE4QyxFQUFBO0VaakJoRDtJWWFFLG1CQUE2QztJQUk3QyxvQkFBOEMsRUFBQTtFWmpCaEQ7SVlhRSxhQUE2QztJQUk3QyxjQUE4QyxFQUFBO0VaakJoRDtJWWFFLG1CQUE2QztJQUk3QyxvQkFBOEMsRUFBQTtFWmpCaEQ7SVlhRSxtQkFBNkM7SUFJN0Msb0JBQThDLEVBQUE7RVpqQmhEO0lZYUUs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QUE7RWZwQ3BCO0llcUNnQyxRQURaLEVBQUE7RWZwQ3BCO0llcUNnQyxRQURaLEVBQUE7RWZwQ3BCO0llcUNnQyxTQURaLEVBQUE7RWZwQ3BCO0llcUNnQyxTQURaLEVBQUE7RWZwQ3BCO0llcUNnQyxTQURaLEVBQUE7RWZwQ3BCO0lZNEJFLGNBQTRCLEVBQUE7RVo1QjlCO0lZNEJFLHFCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsZ0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLHNCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsZ0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLHNCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsZ0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLHNCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQSxFR2tCbkM7O0FGYlQ7RWJqQ0o7SWVPUSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWUsRUFBQTtFZlR2QjtJWXNDSSxjVHVCcUQ7SVN0QnJELGVUc0JxRCxFQUFBO0VIN0R6RDtJWXNDSSxhVHVCcUQ7SVN0QnJELGNUc0JxRCxFQUFBO0VIN0R6RDtJWXNDSSxtQlR1QnFEO0lTdEJyRCxvQlRzQnFELEVBQUE7RUg3RHpEO0lZc0NJLGFUdUJxRDtJU3RCckQsY1RzQnFELEVBQUE7RUg3RHpEO0lZc0NJLGFUdUJxRDtJU3RCckQsY1RzQnFELEVBQUE7RUg3RHpEO0lZc0NJLG1CVHVCcUQ7SVN0QnJELG9CVHNCcUQsRUFBQTtFSDdEekQ7SVlxQkUsY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlLEVBQUE7RVp2QmpCO0lZYUUsa0JBQTZDO0lBSTdDLG1CQUE4QyxFQUFBO0VaakJoRDtJWWFFLG1CQUE2QztJQUk3QyxvQkFBOEMsRUFBQTtFWmpCaEQ7SVlhRSxhQUE2QztJQUk3QyxjQUE4QyxFQUFBO0VaakJoRDtJWWFFLG1CQUE2QztJQUk3QyxvQkFBOEMsRUFB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QjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsUUFEWixFQUFBO0VmcENwQjtJZXFDZ0MsU0FEWixFQUFBO0VmcENwQjtJZXFDZ0MsU0FEWixFQUFBO0VmcENwQjtJZXFDZ0MsU0FEWixFQUFBO0VmcENwQjtJWTRCRSxjQUE0QixFQUFBO0VaNUI5QjtJWTRCRSxxQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsc0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLGdCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsc0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLGdCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsc0JBQThDLEVBQUE7RVo1QmhEO0lZNEJFLGdCQUE4QyxFQUFBO0VaNUJoRDtJWTRCRSxzQkFBOEMsRUFBQTtFWjVCaEQ7SVk0QkUsc0JBQThDLEVBQUEsRUdrQm5DOztBZjlDYjtFZ0J0QkUsV0FBVztFQUNYLG1CZGlJVztFY2hJWCxjZm9FbUIsRUFBQTtFRGhEckI7O0lnQmZJLGdCZG1WZ0M7SWNsVmhDLG1CQUFtQjtJQUNuQiw2QmZIYyxFQUFBO0VEZ0JsQjtJZ0JUSSxzQkFBc0I7SUFDdEIsZ0NmUmMsRUFBQTtFRGdCbEI7SWdCSkksNkJmWmMsRUFBQTs7QURnQmxCOztFZ0JRSSxlZDZUK0IsRUFBQTs7QUZyVW5DO0VnQmtCRSx5QmZsQ2dCLEVBQUE7RURnQmxCOztJZ0JzQkkseUJmdENjLEVBQUE7RURnQmxCOztJZ0I0Qk0sd0JBQTRDLEVBQUE7O0FoQjVCbEQ7Ozs7RWdCc0NJLFNBQVMsRUFBQTs7QWhCdENiO0VnQmdESSxxQ2QxRFcsRUFBQTs7QUZVZjtFZ0I0RE0sY2ZaZTtFZWFmLHNDZHZFUyxFQUFBOztBRlVmOzs7RWlCbEJNLHlCQ2dHNEQsRUFBQTs7QWxCOUVsRTs7OztFaUJWUSxxQkN3RjBELEVBQUE7O0FsQjlFbEU7RWlCRVEseUJBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSx5QkFSb0MsRUFBQTs7QWpCRTlDOzs7RWlCbEJNLHlCQ2dHNEQsRUFBQTs7QWxCOUVsRTs7OztFaUJWUSxxQkN3RjBELEVBQUE7O0FsQjlFbEU7RWlCRVEseUJBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSx5QkFSb0MsRUFBQTs7QWpCRTlDOzs7RWlCbEJNLHlCQ2dHNEQsRUFBQTs7QWxCOUVsRTs7OztFaUJWUSxxQkN3RjBELEVBQUE7O0FsQjlFbEU7RWlCRVEseUJBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSx5QkFSb0MsRUFBQTs7QWpCRTlDOzs7RWlCbEJNLHlCQ2dHNEQsRUFBQTs7QWxCOUVsRTs7OztFaUJWUSxxQkN3RjBELEVBQUE7O0FsQjlFbEU7RWlCRVEseUJBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSx5QkFSb0MsRUFBQTs7QWpCRTlDOzs7RWlCbEJNLHlCQ2dHNEQsRUFBQTs7QWxCOUVsRTs7OztFaUJWUSxxQkN3RjBELEVBQUE7O0FsQjlFbEU7RWlCRVEseUJBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSx5QkFSb0MsRUFBQTs7QWpCRTlDOzs7RWlCbEJNLHlCQ2dHNEQsRUFBQTs7QWxCOUVsRTs7OztFaUJWUSxxQkN3RjBELEVBQUE7O0FsQjlFbEU7RWlCRVEseUJBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSx5QkFSb0MsRUFBQTs7QWpCRTlDOzs7RWlCbEJNLHlCQ2dHNEQsRUFBQTs7QWxCOUVsRTs7OztFaUJWUSxxQkN3RjBELEVBQUE7O0FsQjlFbEU7RWlCRVEseUJBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSx5QkFSb0MsRUFBQTs7QWpCRTlDOzs7RWlCbEJNLHlCQ2dHNEQsRUFBQTs7QWxCOUVsRTs7OztFaUJWUSxxQkN3RjBELEVBQUE7O0FsQjlFbEU7RWlCRVEseUJBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSx5QkFSb0MsRUFBQTs7QWpCRTlDOzs7RWlCbEJNLHNDZlFTLEVBQUE7O0FGVWY7RWlCRVEsc0NBSnNDLEVBQUE7RWpCRTlDOztJaUJNVSxzQ0FSb0MsRUFBQTs7QWpCRTlDO0VnQnVGTSxjZjVHWTtFZTZHWix5QmRwR1k7RWNxR1oscUJkaVFxRCxFQUFBOztBRjFWM0Q7RWdCK0ZNLGNkNUdZO0VjNkdaLHlCZGxIWTtFY21IWixxQmZqSFksRUFBQTs7QURnQmxCO0VnQnVHRSxjZjVIZ0I7RWU2SGhCLHlCZHBIZ0IsRUFBQTtFRllsQjs7O0lnQjZHSSxxQmQ2T3VELEVBQUE7RUYxVjNEO0lnQmlISSxTQUFTLEVBQUE7RWhCakhiO0lnQnNITSwyQ2QxSVMsRUFBQTtFRm9CZjtJZ0I2SFEsV2RqSk87SWNrSlAsNENkbEpPLEVBQUE7O0FXa0VYO0ViOUNKO0lnQmlKUSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUMsRUFBQTtJaEJwSnpDO01nQndKVSxTQUFTLEVBQUEsRUFDVjs7QUgzR0w7RWI5Q0o7SWdCaUpRLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQyxFQUFBO0loQnBKekM7TWdCd0pVLFNBQVMsRUFBQSxFQUNWOztBSDNHTDtFYjlDSjtJZ0JpSlEsY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDLEVBQUE7SWhCcEp6QztNZ0J3SlUsU0FBUyxFQUFBLEVBQ1Y7O0FIM0dMO0ViOUNKO0lnQmlKUSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUMsRUFBQTtJaEJwSnpDO01nQndKVSxTQUFTLEVBQUEsRUFDVjs7QWhCekpUO0VnQmlKUSxjQUFjO0VBQ2QsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixpQ0FBaUMsRUFBQTtFaEJwSnpDO0lnQndKVSxTQUFTLEVBQUE7O0FoQnhKbkI7OztFbUJsQlksY2xCRU0sRUFBQTs7QURnQmxCO0VtQlBnQixjbEJURSxFQUFBO0VEZ0JsQjs7SW1CSG9CLGNsQmJGLEVBQUE7O0FEZ0JsQjs7O0VtQmxCWSxjbEJFTSxFQUFBOztBRGdCbEI7RW1CUGdCLGNsQlRFLEVBQUE7RURnQmxCOztJbUJIb0IsY2xCYkYsRUFBQTs7QURnQmxCOzs7RW1CbEJZLGNsQkVNLEVBQUE7O0FEZ0JsQjtFbUJQZ0IsY2xCVEUsRUFBQTtFRGdCbEI7O0ltQkhvQixjbEJiRixFQUFBOztBRGdCbEI7OztFbUJsQlksY2xCRU0sRUFBQTs7QURnQmxCO0VtQlBnQixjbEJURSxFQUFBO0VEZ0JsQjs7SW1CSG9CLGNsQmJGLEVBQUE7O0FEZ0JsQjs7O0VtQmxCWSxjbEJFTSxFQUFBOztBRGdCbEI7RW1CUGdCLGNsQlRFLEVBQUE7RURnQmxCOztJbUJIb0IsY2xCYkYsRUFBQTs7QURnQmxCOzs7RW1CbEJZLGNsQkVNLEVBQUE7O0FEZ0JsQjtFbUJQZ0IsY2xCVEUsRUFBQTtFRGdCbEI7O0ltQkhvQixjbEJiRixFQUFBOztBRGdCbEI7OztFbUJsQlksY2xCRU0sRUFBQTs7QURnQmxCO0VtQlBnQixjbEJURSxFQUFBO0VEZ0JsQjs7SW1CSG9CLGNsQmJGLEVBQUE7O0FEZ0JsQjs7O0VtQmxCWSxjbEJFTSxFQUFBOztBRGdCbEI7RW1CUGdCLGNsQlRFLEVBQUE7RURnQmxCOztJbUJIb0IsY2xCYkYsRUFBQTs7QURnQmxCOzs7RW1CbEJZLGNsQkpNLEVBQUE7O0FEc0JsQjtFbUJQZ0IsY2xCZkUsRUFBQTtFRHNCbEI7O0ltQkhvQixjbEJuQkYsRUFBQTs7QURzQmxCO0VvQmZJLGNuQk5jLEVBQUE7O0FEcUJsQjtFcUJwQkUsY0FBYztFQUNkLFdBQVc7RUFDWCxtQ0hpSDhEO0VHaEg5RCx5Qm5CMFhrQztFQ2hOOUIsZUFBVztFa0J2S2YsZ0JuQm1SK0I7RW1CbFIvQixnQm5CdVIrQjtFbUJ0Ui9CLGNwQlRnQjtFb0JVaEIsc0JwQkhhO0VvQkliLDRCQUE0QjtFQUM1Qix5QnBCVGdCO0VTU2Qsc0JSNk5nQztFb0IvTjlCLHdFcEJ3ZTRGLEVBQUE7RW9CcGU1RjtJdEJPTjtNc0JOUSxnQkFBZ0IsRUFBQSxFRGdDdkI7RXJCMUJEO0lxQkNJLDZCQUE2QjtJQUM3QixTQUFTLEVBQUE7RXJCRmI7SXVCYkksY3RCUmM7SXNCU2QseUJ0QjJEaUI7SXNCMURqQixxQnRCcUhzRTtJc0JwSHRFLFVBQVU7SUFLUixnRHJCYVcsRUFBQTtFRlJqQjtJcUJVSSxjbkJ4QmM7SW1CMEJkLFVBQVUsRUFBQTtFckJaZDtJcUJVSSxjbkJ4QmM7SW1CMEJkLFVBQVUsRUFBQTtFckJaZDtJcUJVSSxjbkJ4QmM7SW1CMEJkLFVBQVUsRUFBQTtFckJaZDtJcUJVSSxjbkJ4QmM7SW1CMEJkLFVBQVUsRUFBQTtFckJaZDtJcUJzQkkseUJwQnRDYztJb0J3Q2QsVUFBVSxFQUFBOztBckJ4QmQ7Ozs7RXFCaUNJLHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBQUE7O0FyQmpDcEI7RXFCd0NJLGtCQUFrQjtFQUNsQiwwQnBCOURjLEVBQUE7O0FEcUJsQjtFcUJrREksY3BCdkVjO0VvQndFZCxzQnBCakVXLEVBQUE7O0FEY2Y7O0VxQjBERSxjQUFjO0VBQ2QsV0FBVyxFQUFBOztBckIzRGI7RXFCc0VFLGlDSHlCOEQ7RUd4QjlELG9DSHdCOEQ7RUd2QjlELGdCQUFnQjtFbEJpRWQsa0JBQVc7RWtCL0RiLGdCbkJnTStCLEVBQUE7O0FGMVFqQztFcUI4RUUsK0JIaUI4RDtFR2hCOUQsa0NIZ0I4RDtFZjBEMUQsa0JBQVc7RWtCeEVmLGdCbkI2SCtCLEVBQUE7O0FGOU1qQztFcUJxRkUsZ0NIVThEO0VHVDlELG1DSFM4RDtFZjBEMUQsbUJBQVc7RWtCakVmLGdCbkJ1SCtCLEVBQUE7O0FGL01qQztFcUJrR0UsY0FBYztFQUNkLFdBQVc7RUFDWCxtQkFBMkI7RUFDM0IsZ0JBQWdCO0VsQm9EWixlQUFXO0VrQmxEZixnQm5CbUsrQjtFbUJsSy9CLGNuQm5IZ0I7RW1Cb0hoQiw2QkFBNkI7RUFDN0IseUJBQXlCO0VBQ3pCLG1CQUFtQyxFQUFBO0VyQjNHckM7SXFCK0dJLGdCQUFnQjtJQUNoQixlQUFlLEVBQUE7O0FyQmhIbkI7RXFCNkhFLGtDSDlCOEQ7RUcrQjlELHVCbkJxUGlDO0VDMU43QixtQkFBVztFa0J6QmYsZ0JuQitFK0I7RVF4TjdCLHFCUitOK0IsRUFBQTs7QUZ0Tm5DO0VxQnFJRSxnQ0h0QzhEO0VHdUM5RCxvQm5Ca1BnQztFQy9ONUIsa0JBQVc7RWtCakJmLGdCbkJzRStCO0VRdk43QixxQlI4TitCLEVBQUE7O0FGck5uQztFcUJnSkksWUFBWSxFQUFBOztBckJoSmhCO0VxQnFKRSxZQUFZLEVBQUE7O0FyQnJKZDtFcUI4SkUsbUJuQjJVMEMsRUFBQTs7QUZ6ZTVDO0VxQmtLRSxjQUFjO0VBQ2QsbUJuQjRUNEMsRUFBQTs7QUYvZDlDO0VxQjRLRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGtCQUEyQztFQUMzQyxpQkFBMEMsRUFBQTtFckIvSzVDOztJcUJtTEksa0JBQTJDO0lBQzNDLGlCQUEwQyxFQUFBOztBckJwTDlDO0VxQjhMRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHFCbkJpUzZDLEVBQUE7O0FGamUvQztFcUJvTUUsa0JBQWtCO0VBQ2xCLGtCbkI2UjJDO0VtQjVSM0MscUJuQjJSNkMsRUFBQTtFRmplL0M7O0lxQjJNSSxjbkJ6TmMsRUFBQTs7QUZjbEI7RXFCZ05FLGdCQUFnQixFQUFBOztBckJoTmxCO0VxQm9ORSxvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixxQm5COFE0QyxFQUFBO0VGcmU5QztJcUIyTkksZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYix1Qm5CeVE0QztJbUJ4UTVDLGNBQWMsRUFBQTs7QXJCOU5sQjtFdUJrQkksYUFBYTtFQUNiLFdBQVc7RUFDWCxtQnJCMmMwQztFQ3RWMUMsa0JBQVc7RW9CbkhYLGNyQlBhLEVBQUE7O0FGZmpCO0V1QjBCSSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QnJCc3lCcUM7RXFCcnlCckMsaUJBQWlCO0VwQndIZixtQkFBVztFb0J0SGIsZ0JyQnVPNkI7RXFCdE83QixjdEIxRGM7RXNCMkRkLHdDckJ0QmE7RVF4QmIsc0JSNk5nQyxFQUFBO0VxQjFLaEM7O0lBRUUsU0FBa0MsRUFBQTs7QXZCNUN4Qzs7RXVCbURNLGNBQWMsRUFBQTs7QXZCbkRwQjtFdUJ5RE0scUJyQjFDVztFcUI2Q1QsK0NBQTZDO0VBQzdDLGlSTDNCMEU7RUs0QjFFLDRCQUE0QjtFQUM1QiwyREFBNkQ7RUFDN0QsZ0VMK0J3RCxFQUFBO0VsQi9GaEU7SXVCb0VRLHFCckJyRFM7SXFCc0RULGdEckJ0RFMsRUFBQTs7QUZmakI7RXVCOEVRLDhCQUE4QztFQUM5Qyx3Q0FBc0QsRUFBQTs7QXZCL0U5RDtFdUJ3RlEsb0NMT3dEO0VLTnhELGtGTE13RCxFQUFBOztBbEIvRmhFO0V1QmdHTSxxQnJCakZXO0VxQm9GVCxrREFBb0U7RUFDcEUsdWpCQUE4SixFQUFBO0V2QnBHdEs7SXVCd0dRLHFCckJ6RlM7SXFCMEZULGdEckIxRlMsRUFBQTs7QUZmakI7RXVCaUhRLGNyQmxHUyxFQUFBOztBRmZqQjs7RXVCc0hRLGNBQWMsRUFBQTs7QXZCdEh0QjtFdUI4SFEsY3JCL0dTLEVBQUE7RUZmakI7SXVCaUlVLHFCckJsSE8sRUFBQTs7QUZmakI7RXVCdUlVLHFCQUFrQztFQzVKeEMseUJENkorQyxFQUFBOztBdkJ4SW5EO0V1QjhJVSxnRHJCL0hPLEVBQUE7O0FGZmpCO0V1QmtKVSxxQnJCbklPLEVBQUE7O0FGZmpCO0V1QjRKUSxxQnJCN0lTLEVBQUE7O0FGZmpCO0V1QmlLVSxxQnJCbEpPO0VxQm1KUCxnRHJCbkpPLEVBQUE7O0FGZmpCO0V1QmtCSSxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CckIyYzBDO0VDdFYxQyxrQkFBVztFb0JuSFgsY3JCVmEsRUFBQTs7QUZaakI7RXVCMEJJLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsT0FBTztFQUNQLFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCckJzeUJxQztFcUJyeUJyQyxpQkFBaUI7RXBCd0hmLG1CQUFXO0VvQnRIYixnQnJCdU82QjtFcUJ0TzdCLGN0QjFEYztFc0IyRGQsd0NyQnpCYTtFUXJCYixzQlI2TmdDLEVBQUE7RXFCMUtoQzs7SUFFRSxTQUFrQyxFQUFBOztBdkI1Q3hDOztFdUJtRE0sY0FBYyxFQUFBOztBdkJuRHBCO0V1QnlETSxxQnJCN0NXO0VxQmdEVCwrQ0FBNkM7RUFDN0MsNFVMM0IwRTtFSzRCMUUsNEJBQTRCO0VBQzVCLDJEQUE2RDtFQUM3RCxnRUwrQndELEVBQUE7RWxCL0ZoRTtJdUJvRVEscUJyQnhEUztJcUJ5RFQsZ0RyQnpEUyxFQUFBOztBRlpqQjtFdUI4RVEsOEJBQThDO0VBQzlDLHdDQUFzRCxFQUFBOztBdkIvRTlEO0V1QndGUSxvQ0xPd0Q7RUtOeEQsa0ZMTXdELEVBQUE7O0FsQi9GaEU7RXVCZ0dNLHFCckJwRlc7RXFCdUZULGtEQUFvRTtFQUNwRSxrbkJBQThKLEVBQUE7RXZCcEd0SztJdUJ3R1EscUJyQjVGUztJcUI2RlQsZ0RyQjdGUyxFQUFBOztBRlpqQjtFdUJpSFEsY3JCckdTLEVBQUE7O0FGWmpCOztFdUJzSFEsY0FBYyxFQUFBOztBdkJ0SHRCO0V1QjhIUSxjckJsSFMsRUFBQTtFRlpqQjtJdUJpSVUscUJyQnJITyxFQUFBOztBRlpqQjtFdUJ1SVUscUJBQWtDO0VDNUp4Qyx5QkQ2SitDLEVBQUE7O0F2QnhJbkQ7RXVCOElVLGdEckJsSU8sRUFBQTs7QUZaakI7RXVCa0pVLHFCckJ0SU8sRUFBQTs7QUZaakI7RXVCNEpRLHFCckJoSlMsRUFBQTs7QUZaakI7RXVCaUtVLHFCckJySk87RXFCc0pQLGdEckJ0Sk8sRUFBQTs7QUZaakI7RXFCd1BFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsbUJBQW1CLEVBQUE7RXJCMVByQjtJcUJnUUksV0FBVyxFQUFBO0VSL05YO0liakNKO01xQnNRTSxhQUFhO01BQ2IsbUJBQW1CO01BQ25CLHVCQUF1QjtNQUN2QixnQkFBZ0IsRUFBQTtJckJ6UXRCO01xQjhRTSxhQUFhO01BQ2IsY0FBYztNQUNkLG1CQUFtQjtNQUNuQixtQkFBbUI7TUFDbkIsZ0JBQWdCLEVBQUE7SXJCbFJ0QjtNcUJ1Uk0scUJBQXFCO01BQ3JCLFdBQVc7TUFDWCxzQkFBc0IsRUFBQTtJckJ6UjVCO01xQjhSTSxxQkFBcUIsRUFBQTtJckI5UjNCOztNcUJtU00sV0FBVyxFQUFBO0lyQm5TakI7TXFCeVNNLGFBQWE7TUFDYixtQkFBbUI7TUFDbkIsdUJBQXVCO01BQ3ZCLFdBQVc7TUFDWCxlQUFlLEVBQUE7SXJCN1NyQjtNcUJnVE0sa0JBQWtCO01BQ2xCLGNBQWM7TUFDZCxhQUFhO01BQ2IscUJuQmdMd0M7TW1CL0t4QyxjQUFjLEVBQUE7SXJCcFRwQjtNcUJ3VE0sbUJBQW1CO01BQ25CLHVCQUF1QixFQUFBO0lyQnpUN0I7TXFCNFRNLGdCQUFnQixFQUFBLEVBQ2pCOztBckI3VEw7RXVCa0JJLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJyQjJjMEM7RUN0VjFDLGtCQUFXO0VvQm5IWCxjckJQYSxFQUFBOztBRmZqQjtFdUIwQkksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsdUJyQnN5QnFDO0VxQnJ5QnJDLGlCQUFpQjtFcEJ3SGYsbUJBQVc7RW9CdEhiLGdCckJ1TzZCO0VxQnRPN0IsY3RCMURjO0VzQjJEZCx3Q3JCdEJhO0VReEJiLHNCUjZOZ0MsRUFBQTtFcUIxS2hDOztJQUVFLFNBQWtDLEVBQUE7O0F2QjVDeEM7OztFdUJtRE0sY0FBYyxFQUFBOztBdkJuRHBCO0V1QnlETSxxQnJCMUNXO0VxQjZDVCwrQ0FBNkM7RUFDN0MsaVJMM0IwRTtFSzRCMUUsNEJBQTRCO0VBQzVCLDJEQUE2RDtFQUM3RCxnRUwrQndELEVBQUE7RWxCL0ZoRTtJdUJvRVEscUJyQnJEUztJcUJzRFQsZ0RyQnREUyxFQUFBOztBRmZqQjtFdUI4RVEsOEJBQThDO0VBQzlDLHdDQUFzRCxFQUFBOztBdkIvRTlEO0V1QndGUSxvQ0xPd0Q7RUtOeEQsa0ZMTXdELEVBQUE7O0FsQi9GaEU7RXVCZ0dNLHFCckJqRlc7RXFCb0ZULGtEQUFvRTtFQUNwRSx1akJBQThKLEVBQUE7RXZCcEd0SztJdUJ3R1EscUJyQnpGUztJcUIwRlQsZ0RyQjFGUyxFQUFBOztBRmZqQjtFdUJpSFEsY3JCbEdTLEVBQUE7O0FGZmpCOzs7RXVCc0hRLGNBQWMsRUFBQTs7QXZCdEh0QjtFdUI4SFEsY3JCL0dTLEVBQUE7RUZmakI7SXVCaUlVLHFCckJsSE8sRUFBQTs7QUZmakI7RXVCdUlVLHFCQUFrQztFQzVKeEMseUJENkorQyxFQUFBOztBdkJ4SW5EO0V1QjhJVSxnRHJCL0hPLEVBQUE7O0FGZmpCO0V1QmtKVSxxQnJCbklPLEVBQUE7O0FGZmpCO0V1QjRKUSxxQnJCN0lTLEVBQUE7O0FGZmpCO0V1QmlLVSxxQnJCbEpPO0VxQm1KUCxnRHJCbkpPLEVBQUE7O0FGZmpCOzs7O0V5Qm5CWSxjQUFjLEVBQUE7O0F6Qm1CMUI7RXVCa0JJLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJyQjJjMEM7RUN0VjFDLGtCQUFXO0VvQm5IWCxjckJWYSxFQUFBOztBRlpqQjtFdUIwQkksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsdUJyQnN5QnFDO0VxQnJ5QnJDLGlCQUFpQjtFcEJ3SGYsbUJBQVc7RW9CdEhiLGdCckJ1TzZCO0VxQnRPN0IsY3RCMURjO0VzQjJEZCx3Q3JCekJhO0VRckJiLHNCUjZOZ0MsRUFBQTtFcUIxS2hDOztJQUVFLFNBQWtDLEVBQUE7O0F2QjVDeEM7OztFdUJtRE0sY0FBYyxFQUFBOztBdkJuRHBCO0V1QnlETSxxQnJCN0NXO0VxQmdEVCwrQ0FBNkM7RUFDN0MsNFVMM0IwRTtFSzRCMUUsNEJBQTRCO0VBQzVCLDJEQUE2RDtFQUM3RCxnRUwrQndELEVBQUE7RWxCL0ZoRTtJdUJvRVEscUJyQnhEUztJcUJ5RFQsZ0RyQnpEUyxFQUFBOztBRlpqQjtFdUI4RVEsOEJBQThDO0VBQzlDLHdDQUFzRCxFQUFBOztBdkIvRTlEO0V1QndGUSxvQ0xPd0Q7RUtOeEQsa0ZMTXdELEVBQUE7O0FsQi9GaEU7RXVCZ0dNLHFCckJwRlc7RXFCdUZULGtEQUFvRTtFQUNwRSxrbkJBQThKLEVBQUE7RXZCcEd0SztJdUJ3R1EscUJyQjVGUztJcUI2RlQsZ0RyQjdGUyxFQUFBOztBRlpqQjtFdUJpSFEsY3JCckdTLEVBQUE7O0FGWmpCOzs7RXVCc0hRLGNBQWMsRUFBQTs7QXZCdEh0QjtFdUI4SFEsY3JCbEhTLEVBQUE7RUZaakI7SXVCaUlVLHFCckJySE8sRUFBQTs7QUZaakI7RXVCdUlVLHFCQUFrQztFQzVKeEMseUJENkorQyxFQUFBOztBdkJ4SW5EO0V1QjhJVSxnRHJCbElPLEVBQUE7O0FGWmpCO0V1QmtKVSxxQnJCdElPLEVBQUE7O0FGWmpCO0V1QjRKUSxxQnJCaEpTLEVBQUE7O0FGWmpCO0V1QmlLVSxxQnJCckpPO0VxQnNKUCxnRHJCdEpPLEVBQUE7O0FGWmpCOzs7O0V5Qm5CWSxjQUFjLEVBQUE7O0F6Qm1CMUI7RTBCcEJFLHFCQUFxQjtFQUVyQixnQnhCdVIrQjtFd0J0Ui9CLGN6QmlFbUI7RXlCaEVuQixrQkFBa0I7RUFHbEIsc0JBQXNCO0VBQ3RCLHlCQUFpQjtLQUFqQixzQkFBaUI7TUFBakIscUJBQWlCO1VBQWpCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsNkJBQTJDO0VDdUYzQyx5QnpCNFJrQztFQ2hOOUIsZUFBVztFd0IxRWYsZ0J6QjJMK0I7RVFuUjdCLHNCUjZOZ0M7RW9CL045QixxSXBCaWI2SSxFQUFBO0VvQjdhN0k7SXRCT047TXNCTlEsZ0JBQWdCLEVBQUEsRUk4QnZCO0UxQnhCRDtJMEJMSSxjekJxRGlCO0l5QnBEakIscUJBQXFCLEVBQUE7RTFCSXpCO0kwQkNJLFVBQVU7SUFDVixnRHhCTWEsRUFBQTtFRlJqQjtJMEJRSSxheEJrWjZCLEVBQUE7RUYxWmpDO0kwQmFJLGVBQXNELEVBQUE7O0ExQmIxRDs7RTBCNkJFLG9CQUFvQixFQUFBOztBMUI3QnRCO0UyQnJCRSxjMUJEZ0I7RXVCQ2QseUJ2QmNrRDtFMEJacEQscUIxQllvRCxFQUFBO0VET3REO0kyQmZJLGMxQlBjO0l1QkNkLHlCR0RvRjtJQVNwRixxQkFUeUgsRUFBQTtFM0JzQjdIO0kyQlJJLGMxQmRjO0l1QkNkLHlCR0RvRjtJQWdCcEYscUJBaEJ5SDtJQXFCdkgsZ0RBQWlGLEVBQUE7RTNCQ3ZGO0kyQk1JLGMxQjVCYztJMEI2QmQseUIxQmRrRDtJMEJlbEQscUIxQmZrRCxFQUFBO0VET3REOztJMkJrQkksYzFCeENjO0kwQnlDZCx5QkF6Q3VLO0lBNkN2SyxxQkE3QytNLEVBQUE7STNCc0JuTjs7TTJCOEJRLGdEQUFpRixFQUFBOztBM0I5QnpGO0UyQnJCRSxjMUJEZ0I7RXVCQ2QseUJ2QkdjO0UwQkRoQixxQjFCQ2dCLEVBQUE7RURrQmxCO0kyQmZJLGMxQlBjO0l1QkNkLHlCR0RvRjtJQVNwRixxQkFUeUgsRUFBQTtFM0JzQjdIO0kyQlJJLGMxQmRjO0l1QkNkLHlCR0RvRjtJQWdCcEYscUJBaEJ5SDtJQXFCdkgsaURBQWlGLEVBQUE7RTNCQ3ZGO0kyQk1JLGMxQjVCYztJMEI2QmQseUIxQnpCYztJMEIwQmQscUIxQjFCYyxFQUFBO0VEa0JsQjs7STJCa0JJLGMxQnhDYztJMEJ5Q2QseUJBekN1SztJQTZDdksscUJBN0MrTSxFQUFBO0kzQnNCbk47O00yQjhCUSxpREFBaUYsRUFBQTs7QTNCOUJ6RjtFMkJyQkUsYzFCRGdCO0V1QkNkLHlCdkJxQmlEO0UwQm5CbkQscUIxQm1CbUQsRUFBQTtFREFyRDtJMkJmSSxjMUJQYztJdUJDZCx5QkdEb0Y7SUFTcEYscUJBVHlILEVBQUE7RTNCc0I3SDtJMkJSSSxjMUJkYztJdUJDZCx5QkdEb0Y7SUFnQnBGLHFCQWhCeUg7SUFxQnZILCtDQUFpRixFQUFBO0UzQkN2RjtJMkJNSSxjMUI1QmM7STBCNkJkLHlCMUJQaUQ7STBCUWpELHFCMUJSaUQsRUFBQTtFREFyRDs7STJCa0JJLGMxQnhDYztJMEJ5Q2QseUJBekN1SztJQTZDdksscUJBN0MrTSxFQUFBO0kzQnNCbk47O00yQjhCUSwrQ0FBaUYsRUFBQTs7QTNCOUJ6RjtFMkJyQkUsYzFCRGdCO0V1QkNkLHlCdkJ1QmtEO0UwQnJCcEQscUIxQnFCb0QsRUFBQTtFREZ0RDtJMkJmSSxjMUJQYztJdUJDZCx5QkdEb0Y7SUFTcEYscUJBVHlILEVBQUE7RTNCc0I3SDtJMkJSSSxjMUJkYztJdUJDZCx5QkdEb0Y7SUFnQnBGLHFCQWhCeUg7SUFxQnZILGdEQUFpRixFQUFBO0UzQkN2RjtJMkJNSSxjMUI1QmM7STBCNkJkLHlCMUJMa0Q7STBCTWxELHFCMUJOa0QsRUFBQTtFREZ0RDs7STJCa0JJLGMxQnhDYztJMEJ5Q2QseUJBekN1SztJQTZDdksscUJBN0MrTSxFQUFBO0kzQnNCbk47O00yQjhCUSxnREFBaUYsRUFBQTs7QTNCOUJ6RjtFMkJyQkUsYzFCS2dCO0V1QkxkLHlCdkJtQmlEO0UwQmpCbkQscUIxQmlCbUQsRUFBQTtFREVyRDtJMkJmSSxjMUJQYztJdUJDZCx5QkdEb0Y7SUFTcEYscUJBVHlILEVBQUE7RTNCc0I3SDtJMkJSSSxjMUJkYztJdUJDZCx5QkdEb0Y7SUFnQnBGLHFCQWhCeUg7SUFxQnZILGdEQUFpRixFQUFBO0UzQkN2RjtJMkJNSSxjMUJ0QmM7STBCdUJkLHlCMUJUaUQ7STBCVWpELHFCMUJWaUQsRUFBQTtFREVyRDs7STJCa0JJLGMxQnhDYztJMEJ5Q2QseUJBekN1SztJQTZDdksscUJBN0MrTSxFQUFBO0kzQnNCbk47O00yQjhCUSxnREFBaUYsRUFBQTs7QTNCOUJ6RjtFMkJyQkUsYzFCRGdCO0V1QkNkLHlCdkJrQmlEO0UwQmhCbkQscUIxQmdCbUQsRUFBQTtFREdyRDtJMkJmSSxjMUJQYztJdUJDZCx5QkdEb0Y7SUFTcEYscUJBVHlILEVBQUE7RTNCc0I3SDtJMkJSSSxjMUJkYztJdUJDZCx5QkdEb0Y7SUFnQnBGLHFCQWhCeUg7SUFxQnZILCtDQUFpRixFQUFBO0UzQkN2RjtJMkJNSSxjMUI1QmM7STBCNkJkLHlCMUJWaUQ7STBCV2pELHFCMUJYaUQsRUFBQTtFREdyRDs7STJCa0JJLGMxQnhDYztJMEJ5Q2QseUJBekN1SztJQTZDdksscUJBN0MrTSxFQUFBO0kzQnNCbk47O00yQjhCUSwrQ0FBaUYsRUFBQTs7QTNCOUJ6RjtFMkJyQkUsYzFCS2dCO0V1QkxkLHlCdkJBYztFMEJFaEIscUIxQkZnQixFQUFBO0VEcUJsQjtJMkJmSSxjMUJEYztJdUJMZCx5QkdEb0Y7SUFTcEYscUJBVHlILEVBQUE7RTNCc0I3SDtJMkJSSSxjMUJSYztJdUJMZCx5QkdEb0Y7SUFnQnBGLHFCQWhCeUg7SUFxQnZILGlEQUFpRixFQUFBO0UzQkN2RjtJMkJNSSxjMUJ0QmM7STBCdUJkLHlCMUI1QmM7STBCNkJkLHFCMUI3QmMsRUFBQTtFRHFCbEI7O0kyQmtCSSxjMUJsQ2M7STBCbUNkLHlCQXpDdUs7SUE2Q3ZLLHFCQTdDK00sRUFBQTtJM0JzQm5OOztNMkI4QlEsaURBQWlGLEVBQUE7O0EzQjlCekY7RTJCckJFLGMxQkRnQjtFdUJDZCx5QnZCS2M7RTBCSGhCLHFCMUJHZ0IsRUFBQTtFRGdCbEI7STJCZkksYzFCUGM7SXVCQ2QseUJHRG9GO0lBU3BGLHFCQVR5SCxFQUFBO0UzQnNCN0g7STJCUkksYzFCZGM7SXVCQ2QseUJHRG9GO0lBZ0JwRixxQkFoQnlIO0lBcUJ2SCw4Q0FBaUYsRUFBQTtFM0JDdkY7STJCTUksYzFCNUJjO0kwQjZCZCx5QjFCdkJjO0kwQndCZCxxQjFCeEJjLEVBQUE7RURnQmxCOztJMkJrQkksYzFCeENjO0kwQnlDZCx5QkF6Q3VLO0lBNkN2SyxxQkE3QytNLEVBQUE7STNCc0JuTjs7TTJCOEJRLDhDQUFpRixFQUFBOztBM0I5QnpGO0UyQnFDRSxjMUI1Q29EO0UwQjZDcEQscUIxQjdDb0QsRUFBQTtFRE90RDtJMkJ5Q0ksYzFCL0RjO0kwQmdFZCx5QjFCakRrRDtJMEJrRGxELHFCMUJsRGtELEVBQUE7RURPdEQ7STJCZ0RJLGdEMUJ2RGtELEVBQUE7RURPdEQ7STJCcURJLGMxQjVEa0Q7STBCNkRsRCw2QkFBNkIsRUFBQTtFM0J0RGpDOztJMkI0REksYzFCbEZjO0kwQm1GZCx5QjFCcEVrRDtJMEJxRWxELHFCMUJyRWtELEVBQUE7SURPdEQ7O00yQnFFUSxnRDFCNUU4QyxFQUFBOztBRE90RDtFMkJxQ0UsYzFCdkRnQjtFMEJ3RGhCLHFCMUJ4RGdCLEVBQUE7RURrQmxCO0kyQnlDSSxjMUIvRGM7STBCZ0VkLHlCMUI1RGM7STBCNkRkLHFCMUI3RGMsRUFBQTtFRGtCbEI7STJCZ0RJLGlEMUJsRWMsRUFBQTtFRGtCbEI7STJCcURJLGMxQnZFYztJMEJ3RWQsNkJBQTZCLEVBQUE7RTNCdERqQzs7STJCNERJLGMxQmxGYztJMEJtRmQseUIxQi9FYztJMEJnRmQscUIxQmhGYyxFQUFBO0lEa0JsQjs7TTJCcUVRLGlEMUJ2RlUsRUFBQTs7QURrQmxCO0UyQnFDRSxjMUJyQ21EO0UwQnNDbkQscUIxQnRDbUQsRUFBQTtFREFyRDtJMkJ5Q0ksYzFCL0RjO0kwQmdFZCx5QjFCMUNpRDtJMEIyQ2pELHFCMUIzQ2lELEVBQUE7RURBckQ7STJCZ0RJLCtDMUJoRGlELEVBQUE7RURBckQ7STJCcURJLGMxQnJEaUQ7STBCc0RqRCw2QkFBNkIsRUFBQTtFM0J0RGpDOztJMkI0REksYzFCbEZjO0kwQm1GZCx5QjFCN0RpRDtJMEI4RGpELHFCMUI5RGlELEVBQUE7SURBckQ7O00yQnFFUSwrQzFCckU2QyxFQUFBOztBREFyRDtFMkJxQ0UsYzFCbkNvRDtFMEJvQ3BELHFCMUJwQ29ELEVBQUE7RURGdEQ7STJCeUNJLGMxQi9EYztJMEJnRWQseUIxQnhDa0Q7STBCeUNsRCxxQjFCekNrRCxFQUFBO0VERnREO0kyQmdESSxnRDFCOUNrRCxFQUFBO0VERnREO0kyQnFESSxjMUJuRGtEO0kwQm9EbEQsNkJBQTZCLEVBQUE7RTNCdERqQzs7STJCNERJLGMxQmxGYztJMEJtRmQseUIxQjNEa0Q7STBCNERsRCxxQjFCNURrRCxFQUFBO0lERnREOztNMkJxRVEsZ0QxQm5FOEMsRUFBQTs7QURGdEQ7RTJCcUNFLGMxQnZDbUQ7RTBCd0NuRCxxQjFCeENtRCxFQUFBO0VERXJEO0kyQnlDSSxjMUJ6RGM7STBCMERkLHlCMUI1Q2lEO0kwQjZDakQscUIxQjdDaUQsRUFBQTtFREVyRDtJMkJnREksZ0QxQmxEaUQsRUFBQTtFREVyRDtJMkJxREksYzFCdkRpRDtJMEJ3RGpELDZCQUE2QixFQUFBO0UzQnREakM7O0kyQjRESSxjMUI1RWM7STBCNkVkLHlCMUIvRGlEO0kwQmdFakQscUIxQmhFaUQsRUFBQTtJREVyRDs7TTJCcUVRLGdEMUJ2RTZDLEVBQUE7O0FERXJEO0UyQnFDRSxjMUJ4Q21EO0UwQnlDbkQscUIxQnpDbUQsRUFBQTtFREdyRDtJMkJ5Q0ksYzFCL0RjO0kwQmdFZCx5QjFCN0NpRDtJMEI4Q2pELHFCMUI5Q2lELEVBQUE7RURHckQ7STJCZ0RJLCtDMUJuRGlELEVBQUE7RURHckQ7STJCcURJLGMxQnhEaUQ7STBCeURqRCw2QkFBNkIsRUFBQTtFM0J0RGpDOztJMkI0REksYzFCbEZjO0kwQm1GZCx5QjFCaEVpRDtJMEJpRWpELHFCMUJqRWlELEVBQUE7SURHckQ7O00yQnFFUSwrQzFCeEU2QyxFQUFBOztBREdyRDtFMkJxQ0UsYzFCMURnQjtFMEIyRGhCLHFCMUIzRGdCLEVBQUE7RURxQmxCO0kyQnlDSSxjMUJ6RGM7STBCMERkLHlCMUIvRGM7STBCZ0VkLHFCMUJoRWMsRUFBQTtFRHFCbEI7STJCZ0RJLGlEMUJyRWMsRUFBQTtFRHFCbEI7STJCcURJLGMxQjFFYztJMEIyRWQsNkJBQTZCLEVBQUE7RTNCdERqQzs7STJCNERJLGMxQjVFYztJMEI2RWQseUIxQmxGYztJMEJtRmQscUIxQm5GYyxFQUFBO0lEcUJsQjs7TTJCcUVRLGlEMUIxRlUsRUFBQTs7QURxQmxCO0UyQnFDRSxjMUJyRGdCO0UwQnNEaEIscUIxQnREZ0IsRUFBQTtFRGdCbEI7STJCeUNJLGMxQi9EYztJMEJnRWQseUIxQjFEYztJMEIyRGQscUIxQjNEYyxFQUFBO0VEZ0JsQjtJMkJnREksOEMxQmhFYyxFQUFBO0VEZ0JsQjtJMkJxREksYzFCckVjO0kwQnNFZCw2QkFBNkIsRUFBQTtFM0J0RGpDOztJMkI0REksYzFCbEZjO0kwQm1GZCx5QjFCN0VjO0kwQjhFZCxxQjFCOUVjLEVBQUE7SURnQmxCOztNMkJxRVEsOEMxQnJGVSxFQUFBOztBRGdCbEI7RTBCd0RFLGdCeEI2TStCO0V3QjVNL0IsY3pCSmtEO0V5QktsRCxxQnhCMkY0QyxFQUFBO0VGcko5QztJMEI2REksY3pCTmdEO0l5Qk9oRCwwQnhCeUYrQyxFQUFBO0VGdkpuRDtJMEJtRUksMEJ4Qm9GK0MsRUFBQTtFRnZKbkQ7STBCd0VJLGN4QnRGYztJd0J1RmQsb0JBQW9CLEVBQUE7O0ExQnpFeEI7RTJCNkVFLG9CekIyU2dDO0VDL041QixrQkFBVztFd0IxRWYsZ0J6QitIK0I7RVF2TjdCLHFCUjhOK0IsRUFBQTs7QUZyTm5DO0UyQjZFRSx1QnpCc1NpQztFQzFON0IsbUJBQVc7RXdCMUVmLGdCekJnSStCO0VReE43QixxQlIrTitCLEVBQUE7O0FGdE5uQztFMEJrR0UsY0FBYztFQUNkLFdBQVcsRUFBQTtFMUJuR2I7STBCdUdJLGtCeEJ3VCtCLEVBQUE7O0FGL1puQzs7O0UwQmdISSxXQUFXLEVBQUE7O0ExQmhIZjtFc0JYTSxnQ3BCaVAyQyxFQUFBO0VvQjdPM0M7SXRCT047TXNCTlEsZ0JBQWdCLEVBQUEsRU1mdkI7RTVCcUJEO0k0QnZCSSxVQUFVLEVBQUE7O0E1QnVCZDtFNEJqQkksYUFBYSxFQUFBOztBNUJpQmpCO0U0QlpFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsZ0JBQWdCO0VORFosNkJwQmtQd0MsRUFBQTtFb0I5T3hDO0l0Qk9OO01zQk5RLGdCQUFnQixFQUFBLEVNSXZCO0U1QkVEO0k0Qk5JLFFBQVE7SUFDUixZQUFZO0lOTlYsNEJwQm1QdUMsRUFBQTtJb0IvT3ZDO010Qk9OO1FzQk5RLGdCQUFnQixFQUFBLEVNR3JCOztBNUJHSDs7OztFNkJ0QkUsa0JBQWtCLEVBQUE7O0E3QnNCcEI7RTZCbEJFLG1CQUFtQixFQUFBO0U3QmtCckI7SThCR00scUJBQXFCO0lBQ3JCLG9CNUIrTjBDO0k0QjlOMUMsdUI1QjZOMEM7STRCNU4xQyxXQUFXO0lBaENmLHVCQUE4QjtJQUM5QixxQ0FBNEM7SUFDNUMsZ0JBQWdCO0lBQ2hCLG9DQUEyQyxFQUFBO0U5QnVCN0M7SThCK0JNLGNBQWMsRUFBQTs7QTlCL0JwQjtFNkJWRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxhM0J5cEJzQztFMkJ4cEJ0QyxhQUFhO0VBQ2IsV0FBVztFQUNYLGdCM0JpdUJ1QztFMkJodUJ2QyxpQjNCaXVCbUM7RTJCaHVCbkMsb0JBQTRCO0UxQjJKeEIsZUFBVztFMEJ6SmYsYzVCZ0RtQjtFNEIvQ25CLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsc0I1QmpCYTtFNEJrQmIsNEJBQTRCO0VBQzVCLDJDNUI3QmE7RVNlWCxzQlI2TmdDLEVBQUE7O0FGcE5wQztFNkJlTSxXQUFXO0VBQ1gsT0FBTyxFQUFBOztBN0JoQmI7RTZCb0JNLFFBQVE7RUFDUixVQUFVLEVBQUE7O0FoQllaO0ViakNKO0k2QmVNLFdBQVc7SUFDWCxPQUFPLEVBQUE7RTdCaEJiO0k2Qm9CTSxRQUFRO0lBQ1IsVUFBVSxFQUFBLEVBQ1g7O0FoQldEO0ViakNKO0k2QmVNLFdBQVc7SUFDWCxPQUFPLEVBQUE7RTdCaEJiO0k2Qm9CTSxRQUFRO0lBQ1IsVUFBVSxFQUFBLEVBQ1g7O0FoQldEO0ViakNKO0k2QmVNLFdBQVc7SUFDWCxPQUFPLEVBQUE7RTdCaEJiO0k2Qm9CTSxRQUFRO0lBQ1IsVUFBVSxFQUFBLEVBQ1g7O0FoQldEO0ViakNKO0k2QmVNLFdBQVc7SUFDWCxPQUFPLEVBQUE7RTdCaEJiO0k2Qm9CTSxRQUFRO0lBQ1IsVUFBVSxFQUFBLEVBQ1g7O0E3QnRCTDtFNkI4QkksU0FBUztFQUNULFlBQVk7RUFDWixhQUFhO0VBQ2IsdUIzQityQnVDLEVBQUE7O0FGaHVCM0M7RThCR00scUJBQXFCO0VBQ3JCLG9CNUIrTjBDO0U0QjlOMUMsdUI1QjZOMEM7RTRCNU4xQyxXQUFXO0VBekJmLGFBQWE7RUFDYixxQ0FBNEM7RUFDNUMsMEJBQWlDO0VBQ2pDLG9DQUEyQyxFQUFBOztBOUJnQjdDO0U4QitCTSxjQUFjLEVBQUE7O0E5Qi9CcEI7RTZCMkNJLE1BQU07RUFDTixXQUFXO0VBQ1gsVUFBVTtFQUNWLGFBQWE7RUFDYixxQjNCaXJCdUMsRUFBQTs7QUZodUIzQztFOEJHTSxxQkFBcUI7RUFDckIsb0I1QitOMEM7RTRCOU4xQyx1QjVCNk4wQztFNEI1TjFDLFdBQVc7RUFsQmYsbUNBQTBDO0VBQzFDLGVBQWU7RUFDZixzQ0FBNkM7RUFDN0Msd0JBQStCLEVBQUE7O0E5QlNqQztFOEIrQk0sY0FBYyxFQUFBOztBOUIvQnBCO0U2QnFETSxpQkFBaUIsRUFBQTs7QTdCckR2QjtFNkI0REksTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHNCM0JncUJ1QyxFQUFBOztBRmh1QjNDO0U4QkdNLHFCQUFxQjtFQUNyQixvQjVCK04wQztFNEI5TjFDLHVCNUI2TjBDO0U0QjVOMUMsV0FBVyxFQUFBOztBOUJOakI7RThCa0JRLGFBQWEsRUFBQTs7QTlCbEJyQjtFOEJzQlEscUJBQXFCO0VBQ3JCLHFCNUI0TXdDO0U0QjNNeEMsdUI1QjBNd0M7RTRCek14QyxXQUFXO0VBOUJqQixtQ0FBMEM7RUFDMUMseUJBQWdDO0VBQ2hDLHNDQUE2QyxFQUFBOztBOUJHL0M7RThCK0JNLGNBQWMsRUFBQTs7QTlCL0JwQjtFNkJzRU0saUJBQWlCLEVBQUE7O0E3QnRFdkI7RTZCa0ZJLFdBQVc7RUFDWCxZQUFZLEVBQUE7O0E3Qm5GaEI7RStCdEJFLFNBQVM7RUFDVCxnQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLDZCOUJHZ0IsRUFBQTs7QURnQmxCO0U2QmdHRSxjQUFjO0VBQ2QsV0FBVztFQUNYLHVCM0JvcEJ3QztFMkJucEJ4QyxXQUFXO0VBQ1gsZ0IzQmlLK0I7RTJCaEsvQixjNUI1SGdCO0U0QjZIaEIsbUJBQW1CO0VBRW5CLG1CQUFtQjtFQUNuQiw2QkFBNkI7RUFDN0IsU0FBUyxFQUFBO0U3QjFHWDtJNkJ5SEksWTVCeURzRDtJNEJ4RHRELHFCQUFxQjtJTC9JckIseUJ2Qk1jLEVBQUE7RURlbEI7STZCZ0lJLFc1QjlJVztJNEIrSVgscUJBQXFCO0lMdEpyQix5QnZCY2tELEVBQUE7RURPdEQ7STZCdUlJLGM1QjNKYztJNEI0SmQsb0JBQW9CO0lBQ3BCLDZCQUE2QixFQUFBOztBN0J6SWpDO0U2QmtKRSxjQUFjLEVBQUE7O0E3QmxKaEI7RTZCdUpFLGNBQWM7RUFDZCxzQjNCOGxCd0M7RTJCN2xCeEMsZ0JBQWdCO0UxQkFaLG1CQUFXO0UwQkVmLGM1Qi9LZ0I7RTRCZ0xoQixtQkFBbUIsRUFBQTs7QTdCNUpyQjtFNkJpS0UsY0FBYztFQUNkLHVCM0JvbEJ3QztFMkJubEJ4QyxjNUIxTGdCLEVBQUE7O0FEdUJsQjs7RWdDdEJFLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsc0JBQXNCLEVBQUE7RWhDb0J4Qjs7SWdDakJJLGtCQUFrQjtJQUNsQixjQUFjLEVBQUE7SWhDZ0JsQjs7TWdDWE0sVUFBVSxFQUFBO0loQ1doQjs7OztNZ0NOTSxVQUFVLEVBQUE7O0FoQ01oQjtFZ0NDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLDJCQUEyQixFQUFBO0VoQ0g3QjtJZ0NNSSxXQUFXLEVBQUE7O0FoQ05mOztFZ0NjSSxpQjlCbU02QixFQUFBOztBRmpOakM7O0VVT0ksMEJzQmE4QjtFdEJaOUIsNkJzQlk4QixFQUFBOztBaENwQmxDOztFVXFCSSx5QnNCSTZCO0V0Qkg3Qiw0QnNCRzZCLEVBQUE7O0FoQ3pCakM7RWdDMENFLHdCQUFtQztFQUNuQyx1QkFBa0MsRUFBQTtFaEMzQ3BDOzs7SWdDZ0RJLGNBQWMsRUFBQTtFQUdoQjtJQUNFLGVBQWUsRUFBQTs7QWhDcERuQjtFZ0N5REUsdUJBQXNDO0VBQ3RDLHNCQUFxQyxFQUFBOztBaEMxRHZDO0VnQzhERSxzQkFBc0M7RUFDdEMscUJBQXFDLEVBQUE7O0FoQy9EdkM7RWdDb0ZFLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsdUJBQXVCLEVBQUE7RWhDdEZ6Qjs7SWdDMEZJLFdBQVcsRUFBQTtFaEMxRmY7O0lnQytGSSxnQjlCa0g2QixFQUFBO0VGak5qQzs7SVVjSSw2QnNCdUYrQjtJdEJ0Ri9CLDRCc0JzRitCLEVBQUE7RWhDckduQzs7SVVBSSx5QnNCMEc0QjtJdEJ6RzVCLDBCc0J5RzRCLEVBQUE7O0FoQzFHaEM7O0VnQzhISSxnQkFBZ0IsRUFBQTtFaEM5SHBCOzs7O0lnQ2tJTSxrQkFBa0I7SUFDbEIsc0JBQXNCO0lBQ3RCLG9CQUFvQixFQUFBOztBaENwSTFCO0VpQ3BCRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsV0FBVyxFQUFBO0VqQ2dCYjs7OztJaUNWSSxrQkFBa0I7SUFDbEIsY0FBYztJQUNkLFNBQVM7SUFDVCxZQUFZO0lBQ1osZ0JBQWdCLEVBQUE7SWpDTXBCOzs7Ozs7Ozs7Ozs7TWlDRE0saUIvQmtOMkIsRUFBQTtFRmpOakM7OztJaUNPSSxVQUFVLEVBQUE7RWpDUGQ7SWlDWUksVUFBVSxFQUFBO0VqQ1pkOztJVXFCSSx5QnVCSm1EO0l2QktuRCw0QnVCTG1ELEVBQUE7RWpDakJ2RDtJaUN1QkksYUFBYTtJQUNiLG1CQUFtQixFQUFBO0lqQ3hCdkI7O01VT0ksMEJ1Qm9CNkU7TXZCbkI3RSw2QnVCbUI2RSxFQUFBO0lqQzNCakY7TVVxQkkseUJ1Qk9zRTtNdkJOdEUsNEJ1Qk1zRSxFQUFBO0VqQzVCMUU7Ozs7SVVPSSwwQnVCNkJnQztJdkI1QmhDLDZCdUI0QmdDLEVBQUE7RWpDcENwQzs7OztJVU9JLDBCdUJzQ2dDO0l2QnJDaEMsNkJ1QnFDZ0MsRUFBQTs7QWpDN0NwQzs7RWlDMkRFLGFBQWEsRUFBQTtFakMzRGY7O0lpQ2lFSSxrQkFBa0I7SUFDbEIsVUFBVSxFQUFBO0lqQ2xFZDs7TWlDcUVNLFVBQVUsRUFBQTtFakNyRWhCOzs7Ozs7OztJaUM2RUksaUIvQm9JNkIsRUFBQTs7QUZqTmpDO0VpQ2lGdUIsa0IvQmdJVSxFQUFBOztBRmpOakM7RWlDa0ZzQixpQi9CK0hXLEVBQUE7O0FGak5qQztFaUMyRkUsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix5Qi9CNFFrQztFK0IzUWxDLGdCQUFnQjtFOUIyRFosZUFBVztFOEJ6RGYsZ0IvQnFLK0I7RStCcEsvQixnQi9CeUsrQjtFK0J4Sy9CLGNoQ3ZIZ0I7RWdDd0hoQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHlCaENySGdCO0VnQ3NIaEIseUJoQ3hIZ0I7RVNTZCxzQlI2TmdDLEVBQUE7RUZwTnBDOztJaUM0R0ksYUFBYSxFQUFBOztBakM1R2pCOztFaUN3SEUsZ0NmekI4RCxFQUFBOztBbEIvRmhFOzs7Ozs7RWlDaUlFLG9CL0J1UGdDO0VDL041QixrQkFBVztFOEJ0QmYsZ0IvQjJFK0I7RVF2TjdCLHFCUjhOK0IsRUFBQTs7QUZyTm5DOztFaUN5SUUsa0NmMUM4RCxFQUFBOztBbEIvRmhFOzs7Ozs7RWlDa0pFLHVCL0JpT2lDO0VDMU43QixtQkFBVztFOEJMZixnQi9CMkQrQjtFUXhON0IscUJSK04rQixFQUFBOztBRnRObkM7O0VpQzBKRSxzQkFBMEUsRUFBQTs7QWpDMUo1RTs7Ozs7Ozs7RVVPSSwwQnVCc0s0QjtFdkJySzVCLDZCdUJxSzRCLEVBQUE7O0FqQzdLaEM7Ozs7OztFVXFCSSx5QnVCaUsyQjtFdkJoSzNCLDRCdUJnSzJCLEVBQUE7O0FqQ3RML0I7RVVxQkkseUJ3QjdDcUM7RXhCOENyQyw0QndCOUNxQyxFQUFBOztBbEN3QnpDO0VVT0ksMEJ3QjFCc0M7RXhCMkJ0Qyw2QndCM0JzQyxFQUFBOztBbENtQjFDO0VtQ2pCRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGNBQWM7RUFDZCxrQkFBK0M7RUFDL0Msb0JBQXFFO0VBQ3JFLHlCQUF5QixFQUFBOztBbkNZM0I7RW1DUkUsb0JBQW9CO0VBQ3BCLGtCakN5ZjBDLEVBQUE7O0FGbGY1QztFbUNIRSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLFdBQVc7RUFDWCxXakNxZjBDO0VpQ3BmMUMsZUFBbUY7RUFDbkYsVUFBVSxFQUFBO0VuQ0ZaO0ltQ0tJLFdqQ3pCVztJaUMwQlgscUJqQ0VhO0lzQjdCYix5QnRCNkJhLEVBQUE7RUZSakI7SW1DZ0JNLGdEakNSVyxFQUFBO0VGUmpCO0ltQ3FCSSxxQmpDc2JzRSxFQUFBO0VGM2MxRTtJbUN5QkksV2pDN0NXO0lpQzhDWCx5QmpDa2Y4RTtJaUNqZjlFLHFCakNpZjhFLEVBQUE7RUY1Z0JsRjtJbUNtQ00sY2pDakRZLEVBQUE7SUZjbEI7TW1Dc0NRLHlCakN4RFUsRUFBQTs7QUZrQmxCO0VtQ2lERSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBRWhCLG1CQUFtQixFQUFBO0VuQ3BEckI7SW1DeURJLGtCQUFrQjtJQUNsQixZQUFnRjtJQUNoRixhQUErRDtJQUMvRCxjQUFjO0lBQ2QsV2pDd2J3QztJaUN2YnhDLFlqQ3Vid0M7SWlDdGJ4QyxvQkFBb0I7SUFDcEIsV0FBVztJQUNYLHNCakNyRlc7SWlDc0ZYLHlCakNqRmMsRUFBQTtFRmVsQjtJbUN3RUksa0JBQWtCO0lBQ2xCLFlBQWdGO0lBQ2hGLGFBQStEO0lBQy9ELGNBQWM7SUFDZCxXakN5YXdDO0lpQ3hheEMsWWpDd2F3QztJaUN2YXhDLFdBQVc7SUFDWCxtQ0FBZ0UsRUFBQTs7QW5DL0VwRTtFVVRJLHNCUjZOZ0MsRUFBQTs7QUZwTnBDO0VtQytGTSxrT2pCN0Q0RSxFQUFBOztBbEJsQ2xGO0VtQ3FHTSxxQmpDN0ZXO0VzQjdCYix5QnRCNkJhLEVBQUE7O0FGUmpCO0VtQzBHTSwrS2pCeEU0RSxFQUFBOztBbEJsQ2xGO0V3QnJCSSx3Q3RCNkJhLEVBQUE7O0FGUmpCO0V3QnJCSSx3Q3RCNkJhLEVBQUE7O0FGUmpCO0VtQytISSxrQmpDMForQyxFQUFBOztBRnpoQm5EO0VtQ29JTSw4S2pCbEc0RSxFQUFBOztBbEJsQ2xGO0V3QnJCSSx3Q3RCNkJhLEVBQUE7O0FGUmpCO0VtQ3FKRSxxQkFBMkQsRUFBQTtFbkNySjdEO0ltQ3lKTSxjQUFxRDtJQUNyRCxjakNrWStFO0lpQ2pZL0UsbUJBQW1CO0lBRW5CLHFCakNnWTZFLEVBQUE7RUY3aEJuRjtJbUNpS00sd0JqQmxFMEQ7SWlCbUUxRCwwQmpCbkUwRDtJaUJvRTFELHVCakI1QzBEO0lpQjZDMUQsd0JqQjdDMEQ7SWlCOEMxRCx5QmpDcExZO0lpQ3NMWixxQmpDc1g2RTtJb0J4aUI3RSx5SXBCMGYrSCxFQUFBO0lvQnRmL0g7TXRCT047UXNCTlEsZ0JBQWdCLEVBQUEsRWErS25CO0VuQ3pLTDtJbUM4S00sc0JqQ2xNUztJaUNtTVQsOEJBQTRFLEVBQUE7RW5DL0tsRjtJd0JyQkksd0N0QjZCYSxFQUFBOztBRlJqQjtFbUNrTUUscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxtQ2pCckc4RDtFaUJzRzlELDBDakNvS2tDO0VDaE45QixlQUFXO0VnQytDZixnQmpDNkQrQjtFaUM1RC9CLGdCakNpRStCO0VpQ2hFL0IsY2xDL05nQjtFa0NnT2hCLHNCQUFzQjtFQUN0Qix1T2pDbVcrSTtFaUNsVy9JLHlCbEMvTmdCO0VTU2Qsc0JSNk5nQztFaUNKbEMsd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0IsRUFBQTtFbkNoTmxCO0ltQ21OSSxxQmpDd1BzRTtJaUN2UHRFLFVBQVU7SUFLUixnRGpDak5XLEVBQUE7SUZSakI7TW1Da09NLGNsQ3ZQWTtNa0N3UFosc0JsQ2pQUyxFQUFBO0VEY2Y7SW1DeU9JLFlBQVk7SUFDWixzQmpDK0hnQztJaUM5SGhDLHNCQUFzQixFQUFBO0VuQzNPMUI7SW1DK09JLGNsQ25RYztJa0NvUWQseUJsQ2hRYyxFQUFBO0VEZ0JsQjtJbUNxUEksYUFBYSxFQUFBO0VuQ3JQakI7SW1DMFBJLGtCQUFrQjtJQUNsQiwwQmxDaFJjLEVBQUE7O0FEcUJsQjtFbUNnUUUsa0NqQmpLOEQ7RWlCa0s5RCxvQmpDaUhrQztFaUNoSGxDLHVCakNnSGtDO0VpQy9HbEMsb0JqQ2dIaUM7RUMxTjdCLG1CQUFXLEVBQUE7O0FIekpqQjtFbUN3UUUsZ0NqQnpLOEQ7RWlCMEs5RCxtQmpDOEdpQztFaUM3R2pDLHNCakM2R2lDO0VpQzVHakMsa0JqQzZHZ0M7RUMvTjVCLGtCQUFXLEVBQUE7O0FIekpqQjtFbUNxUkUsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsbUNqQnpMOEQ7RWlCMEw5RCxnQkFBZ0IsRUFBQTs7QW5DelJsQjtFbUM2UkUsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsbUNqQmpNOEQ7RWlCa005RCxTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLFVBQVUsRUFBQTtFbkNuU1o7SW1Dc1NJLHFCakNxS3NFO0lpQ3BLdEUsZ0RqQy9SYSxFQUFBO0VGUmpCOztJbUM2U0kseUJqQy9UYyxFQUFBO0VGa0JsQjtJbUNrVE0saUJqQzRUUSxFQUFBO0VGOW1CZDtJbUN1VEksMEJBQTBCLEVBQUE7O0FuQ3ZUOUI7RW1DNFRFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLE9BQU87RUFDUCxVQUFVO0VBQ1YsbUNqQmxPOEQ7RWlCbU85RCx5QmpDdUNrQztFaUN0Q2xDLGdCQUFnQjtFQUVoQixnQmpDaEUrQjtFaUNpRS9CLGdCakM1RCtCO0VpQzZEL0IsY2pDcFZnQjtFaUNxVmhCLHNCakM1VmE7RWlDNlZiLHlCakN6VmdCO0VRT2Qsc0JSNk5nQyxFQUFBO0VGcE5wQztJbUM4VUksa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixRQUFRO0lBQ1IsU0FBUztJQUNULFVBQVU7SUFDVixjQUFjO0lBQ2QsNkJqQnJQNEQ7SWlCc1A1RCx5QmpDb0JnQztJaUNuQmhDLGdCakM1RTZCO0lpQzZFN0IsY2pDcFdjO0lpQ3FXZCxpQkFBaUI7SVg3V2pCLHlCdEJHYztJaUM0V2Qsb0JBQW9CO0l6Qm5XcEIsa0N5Qm9XZ0YsRUFBQTs7QW5DM1ZwRjtFbUNzV0UsV0FBVztFQUNYLGNqQjNRMkI7RWlCNFEzQixVQUFVO0VBQ1YsNkJBQTZCO0VBQzdCLHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBQUE7RW5DMVdsQjtJbUM2V0ksVUFBVSxFQUFBO0luQzdXZDtNbUNpWDhCLGdFakN6V2IsRUFBQTtJRlJqQjtNbUNrWDhCLGdFakMxV2IsRUFBQTtJRlJqQjtNbUNtWDhCLGdFakMzV2IsRUFBQTtFRlJqQjtJbUN1WEksU0FBUyxFQUFBO0VuQ3ZYYjtJbUMyWEksV2pDb042QztJaUNuTjdDLFlqQ21ONkM7SWlDbE43QyxvQkFBMEU7SVhsWjFFLHlCdEI2QmE7SWlDdVhiLFNqQ21OMEM7SVEzbEIxQyxtQlI0bEI2QztJb0I5bEIzQyxvSHBCMGYrSDtJb0IxZi9ILDRHcEIwZitIO0lpQzVHakksd0JBQWdCO1lBQWhCLGdCQUFnQixFQUFBO0liMVlkO010Qk9OO1FzQk5RLHdCQUFnQjtRQUFoQixnQkFBZ0IsRUFBQSxFYThZckI7SW5DeFlIO013QnJCSSx5QnRCNG1CMkUsRUFBQTtFRnZsQi9FO0ltQzJZSSxXakM2TG9DO0lpQzVMcEMsY2pDNkxxQztJaUM1THJDLGtCQUFrQjtJQUNsQixlakM0THVDO0lpQzNMdkMseUJqQ2hhYztJaUNpYWQseUJBQXlCO0l6QnpaekIsbUJScWxCb0MsRUFBQTtFRjVrQnhDO0ltQ3NaSSxXakN5TDZDO0lpQ3hMN0MsWWpDd0w2QztJc0JwbUI3Qyx5QnRCNkJhO0lpQ2laYixTakN5TDBDO0lRM2xCMUMsbUJSNGxCNkM7SW9COWxCM0MsaUhwQjBmK0g7SW9CMWYvSCw0R3BCMGYrSDtJaUNsRmpJLHFCQUFnQjtTQUFoQixnQkFBZ0IsRUFBQTtJYnBhZDtNdEJPTjtRc0JOUSxxQkFBZ0I7UUFBaEIsZ0JBQWdCLEVBQUEsRWF3YXJCO0luQ2xhSDtNd0JyQkkseUJ0QjRtQjJFLEVBQUE7RUZ2bEIvRTtJbUNxYUksV2pDbUtvQztJaUNsS3BDLGNqQ21LcUM7SWlDbEtyQyxrQkFBa0I7SUFDbEIsZWpDa0t1QztJaUNqS3ZDLHlCakMxYmM7SWlDMmJkLHlCQUF5QjtJekJuYnpCLG1CUnFsQm9DLEVBQUE7RUY1a0J4QztJbUNnYkksV2pDK0o2QztJaUM5SjdDLFlqQzhKNkM7SWlDN0o3QyxhQUFhO0lBQ2Isb0JqQ3JFK0I7SWlDc0UvQixtQmpDdEUrQjtJc0JuWS9CLHlCdEI2QmE7SWlDOGFiLFNqQzRKMEM7SVEzbEIxQyxtQlI0bEI2QztJb0I5bEIzQyxnSHBCMGYrSDtJb0IxZi9ILDRHcEIwZitIO0lpQ3JEakksZ0JBQWdCLEVBQUE7SWJqY2Q7TXRCT047UXNCTlEsb0JBQWdCO1FBQWhCLGdCQUFnQixFQUFBLEVhcWNyQjtJbkMvYkg7TXdCckJJLHlCdEI0bUIyRSxFQUFBO0VGdmxCL0U7SW1Da2NJLFdqQ3NJb0M7SWlDcklwQyxjakNzSXFDO0lpQ3JJckMsa0JBQWtCO0lBQ2xCLGVqQ3FJdUM7SWlDcEl2Qyw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCLG9CQUE2QyxFQUFBO0VuQ3hjakQ7SW1DNmNJLHlCakM5ZGM7SVFRZCxtQlJxbEJvQyxFQUFBO0VGNWtCeEM7SW1Da2RJLGtCQUFrQjtJQUNsQix5QmpDcGVjO0lRUWQsbUJScWxCb0MsRUFBQTtFRjVrQnhDO0ltQ3lkTSx5QmpDeGVZLEVBQUE7RUZlbEI7SW1DNmRNLGVBQWUsRUFBQTtFbkM3ZHJCO0ltQ2llTSx5QmpDaGZZLEVBQUE7RUZlbEI7SW1DcWVNLGVBQWUsRUFBQTtFbkNyZXJCO0ltQ3llTSx5QmpDeGZZLEVBQUE7O0FGZWxCOzs7RXNCWE0sNEdwQjBmK0gsRUFBQTtFb0J0Zi9IO0l0Qk9OOzs7TXNCTlEsZ0JBQWdCLEVBQUEsRWF3ZnZCOztBbkNsZkQ7RW9DckJFLGFBQWE7RUFDYixlQUFlO0VBQ2YsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixnQkFBZ0IsRUFBQTs7QXBDaUJsQjtFb0NiRSxjQUFjO0VBQ2Qsb0JsQzBxQnNDLEVBQUE7RUY5cEJ4QztJb0NSSSxxQkFBcUIsRUFBQTtFcENRekI7SW9DSEksY2xDWGM7SWtDWWQsb0JBQW9CO0lBQ3BCLGVBQWUsRUFBQTs7QXBDQ25CO0VvQ1FFLG1EbkNoQ2EsRUFBQTtFRHdCZjtJb0NXSSxtQmxDc002QjtJa0NyTTdCLDZCQUE2QjtJQUM3Qiw2QkFBZ0Q7STFCYmhELCtCUm9OZ0M7SVFuTmhDLGdDUm1OZ0MsRUFBQTtJRnBOcEM7TW9Da0JNLGtCQUFrQjtNQUNsQix3RG5DM0NTLEVBQUE7SUR3QmY7TW9DdUJNLGNsQ3JDWTtNa0NzQ1osNkJBQTZCO01BQzdCLHlCQUF5QixFQUFBO0VwQ3pCL0I7O0lvQytCSSxjbkN0RGM7SW1DdURkLHlCbkNlaUI7SW1DZGpCLHFDbkNjaUIsRUFBQTtFRC9DckI7SW9Dc0NJLGdCbEMySzZCO0lRak43Qix5QjBCd0M0QjtJMUJ2QzVC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RUFBQTtJckNuSm5DO01xQ3NKVSxtQkFBbUIsRUFBQTtNckN0SjdCO1FxQ3lKWSxrQkFBa0IsRUFBQTtNckN6SjlCO1FxQzZKWSxxQm5DeWhCNkI7UW1DeGhCN0Isb0JuQ3doQjZCLEVBQUE7SUZ0ckJ6Qzs7TXFDb0tVLGlCQUFpQixFQUFBO0lyQ3BLM0I7TXFDbUxVLGlCQUFpQixFQUFBO0lyQ25MM0I7TXFDdUxVLHdCQUF3QjtNQUd4QixnQkFBZ0IsRUFBQTtJckMxTDFCO01xQzhMVSxhQUFhLEVBQUEsRUFDZDs7QXhCakpMO0ViOUNKOztJcUNpSVUsZ0JBQWdCO0lBQ2hCLGVBQWUsRUFBQSxFQUNoQjs7QXhCbEdMO0ViakNKO0lxQ2tKUSxxQkFBcUI7SUFDckIsMkJBQTJCLEVBQUE7SXJDbkpuQztNcUNzSlUsbUJBQW1CLEVBQUE7TXJDdEo3QjtRcUN5Slksa0JBQWtCLEVBQUE7TXJDeko5QjtRcUM2SlkscUJuQ3loQjZCO1FtQ3hoQjdCLG9CbkN3aEI2QixFQUFBO0lGdHJCekM7O01xQ29LVSxpQkFBaUIsRUFBQTtJckNwSzNCO01xQ21MVSxpQkFBaUIsRUFBQTtJckNuTDNCO01xQ3VMVSx3QkFBd0I7TUFHeEIsZ0JBQWdCLEVBQUE7SXJDMUwxQjtNcUM4TFUsYUFBYSxFQUFBLEVBQ2Q7O0FyQy9MVDtFcUNrSlEscUJBQXFCO0VBQ3JCLDJCQUEyQixFQUFBO0VyQ25KbkM7O0lxQ2lJVSxnQkFBZ0I7SUFDaEIsZUFBZSxFQUFBO0VyQ2xJekI7SXFDc0pVLG1CQUFtQixFQUFBO0lyQ3RKN0I7TXFDeUpZLGtCQUFrQixFQUFBO0lyQ3pKOUI7TXFDNkpZLHFCbkN5aEI2QjtNbUN4aEI3QixvQm5Dd2hCNkIsRUFBQTtFRnRyQnpDOztJcUNvS1UsaUJBQWlCLEVBQUE7RXJDcEszQjtJcUNtTFUsaUJBQWlCLEVBQUE7RXJDbkwzQjtJcUN1TFUsd0JBQXdCO0lBR3hCLGdCQUFnQixFQUFBO0VyQzFMMUI7SXFDOExVLGFBQWEsRUFBQTs7QXJDOUx2QjtFcUM2TUkseUJuQ3ZOVyxFQUFBO0VGVWY7SXFDZ05NLHlCbkMxTlMsRUFBQTs7QUZVZjtFcUNzTk0seUJuQ2hPUyxFQUFBO0VGVWY7SXFDeU5RLHlCbkNuT08sRUFBQTtFRlVmO0lxQzZOUSx5Qm5Ddk9PLEVBQUE7O0FGVWY7Ozs7RXFDcU9NLHlCbkMvT1MsRUFBQTs7QUZVZjtFcUMwT0kseUJuQ3BQVztFbUNxUFgsZ0NuQ3JQVyxFQUFBOztBRlVmO0VxQytPSSxtUm5CN004RSxFQUFBOztBbEJsQ2xGO0VxQ21QSSx5Qm5DN1BXLEVBQUE7RUZVZjtJcUNxUE0seUJuQy9QUyxFQUFBO0lGVWY7TXFDd1BRLHlCbkNsUU8sRUFBQTs7QUZVZjtFcUNpUUksV25DclJXLEVBQUE7RUZvQmY7SXFDb1FNLFduQ3hSUyxFQUFBOztBRm9CZjtFcUMwUU0sK0JuQzlSUyxFQUFBO0VGb0JmO0lxQzZRUSxnQ25DalNPLEVBQUE7RUZvQmY7SXFDaVJRLGdDbkNyU08sRUFBQTs7QUZvQmY7Ozs7Ozs7RXFDeVJNLFduQzdTUyxFQUFBOztBRm9CZjtFcUM4UkksK0JuQ2xUVztFbUNtVFgsc0NuQ25UVyxFQUFBOztBRm9CZjtFcUNtU0kseVJuQmpROEUsRUFBQTs7QWxCbENsRjtFcUN1U0ksK0JuQzNUVyxFQUFBO0VGb0JmO0lxQ3lTTSxXbkM3VFMsRUFBQTtJRm9CZjtNcUM0U1EsV25DaFVPLEVBQUE7O0FGb0JmO0VzQ3RCRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixZQUFZO0VBRVoscUJBQXFCO0VBQ3JCLHlCckNDZ0I7RXFDQWhCLDJCQUEyQjtFQUMzQiw0Q3JDVmE7RVNlWCxzQlI2TmdDLEVBQUE7RUZwTnBDO0lzQ1ZJLGVBQWU7SUFDZixjQUFjLEVBQUE7RXRDU2xCO0lzQ0xJLG1CQUFtQjtJQUNuQixzQkFBc0IsRUFBQTtJdENJMUI7TXNDRE0sbUJBQW1CO001QkNyQiwyQ1F1SDREO01SdEg1RCw0Q1FzSDRELEVBQUE7SWxCdkhoRTtNc0NJTSxzQkFBc0I7TTVCVXhCLCtDUXlHNEQ7TVJ4RzVELDhDUXdHNEQsRUFBQTtFbEJ2SGhFOztJc0NhSSxhQUFhLEVBQUE7O0F0Q2JqQjtFc0NvQkUsY0FBYztFQUdkLGVBQWU7RUFDZixnQnBDZ3hCeUMsRUFBQTs7QUZ4eUIzQztFc0M2QkUsc0JwQzB3QndDLEVBQUE7O0FGdnlCMUM7RXNDaUNFLHFCQUFnQztFQUNoQyxnQkFBZ0IsRUFBQTs7QXRDbENsQjtFc0NzQ0UsZ0JBQWdCLEVBQUE7O0F0Q3RDbEI7RXNDMkNJLHFCQUFxQixFQUFBOztBdEMzQ3pCO0VzQytDSSxvQnBDeXZCdUMsRUFBQTs7QUZ4eUIzQztFc0N3REUsd0JwQ2d2QnlDO0VvQy91QnpDLGdCQUFnQjtFQUVoQiwyQ3JDbkZhO0VxQ29GYixtRHJDcEZhLEVBQUE7RUR3QmY7SVVUSSwwRDRCd0U4RSxFQUFBOztBdEMvRGxGO0VzQ29FRSx3QnBDb3VCeUM7RW9DbHVCekMsMkNyQzlGYTtFcUMrRmIsZ0RyQy9GYSxFQUFBO0VEd0JmO0lVVEksMERRZ0k0RCxFQUFBOztBbEJ2SGhFO0VzQ29GRSx1QkFBa0M7RUFDbEMsdUJwQ2t0QndDO0VvQ2p0QnhDLHNCQUFpQztFQUNqQyxnQkFBZ0IsRUFBQTs7QXRDdkZsQjtFc0MyRkUsdUJBQWtDO0VBQ2xDLHNCQUFpQyxFQUFBOztBdEM1Rm5DO0VzQ2lHRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGdCcEM2c0J5QztFUTV6QnZDLGtDUWdJNEQsRUFBQTs7QWxCdkhoRTs7O0VzQzZHRSxjQUFjO0VBQ2QsV0FBVyxFQUFBOztBdEM5R2I7O0VVQUksMkNRdUg0RDtFUnRINUQsNENRc0g0RCxFQUFBOztBbEJ2SGhFOztFVWNJLCtDUXlHNEQ7RVJ4RzVELDhDUXdHNEQsRUFBQTs7QWxCdkhoRTtFc0NnSUksbUJwQ3FyQnVELEVBQUE7O0FXcHhCdkQ7RWJqQ0o7SXNDb0lJLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsbUJwQytxQnVEO0lvQzlxQnZELGtCcEM4cUJ1RCxFQUFBO0lGcnpCM0Q7TXNDMklNLFlBQVk7TUFDWixrQnBDeXFCcUQ7TW9DeHFCckQsZ0JBQWdCO01BQ2hCLGlCcEN1cUJxRCxFQUFBLEVvQ3RxQnREOztBdEMvSUw7RXNDNEpJLG1CcEN5cEJ1RCxFQUFBOztBV3B4QnZEO0ViakNKO0lzQ2dLSSxhQUFhO0lBQ2IsbUJBQW1CLEVBQUE7SXRDakt2QjtNc0NzS00sWUFBWTtNQUNaLGdCQUFnQixFQUFBO010Q3ZLdEI7UXNDMEtRLGNBQWM7UUFDZCxjQUFjLEVBQUE7TXRDM0t0QjtRVU9JLDBCNEIwS29DO1E1QnpLcEMsNkI0QnlLb0MsRUFBQTtRdENqTHhDOztVc0NzTFksMEJBQTBCLEVBQUE7UXRDdEx0Qzs7VXNDMkxZLDZCQUE2QixFQUFBO010QzNMekM7UVVxQkkseUI0QjJLbUM7UTVCMUtuQyw0QjRCMEttQyxFQUFBO1F0Q2hNdkM7O1VzQ3FNWSx5QkFBeUIsRUFBQTtRdENyTXJDOztVc0MwTVksNEJBQTRCLEVBQUEsRUFDN0I7O0F0QzNNWDtFc0N5Tkksc0JwQzhrQnNDLEVBQUE7O0FXdHdCdEM7RWJqQ0o7SXNDNk5JLG9CcEMybEJpQztTb0MzbEJqQyxlcEMybEJpQztJb0MxbEJqQyx3QnBDMmxCdUM7U29DM2xCdkMsbUJwQzJsQnVDO0lvQzFsQnZDLFVBQVU7SUFDVixTQUFTLEVBQUE7SXRDaE9iO01zQ21PTSxxQkFBcUI7TUFDckIsV0FBVyxFQUFBLEVBQ1o7O0F0Q3JPTDtFc0MrT0UscUJBQXFCLEVBQUE7RXRDL092QjtJc0NrUEksZ0JBQWdCLEVBQUE7SXRDbFBwQjtNc0NxUE0sZ0JBQWdCO001QnZPbEIsNkI0QndPaUM7TTVCdk9qQyw0QjRCdU9pQyxFQUFBO0l0Q3RQckM7TVVBSSx5QjRCMFA4QjtNNUJ6UDlCLDBCNEJ5UDhCLEVBQUE7SXRDMVBsQztNVVRJLGdCNEJ1UTBCO01BQ3hCLG1CcEM5QzJCLEVBQUE7O0FGak5qQztFdUMxQkUsYUFBYTtFQUNiLGVBQWU7RUFDZixxQnJDbWlDc0M7RXFDbGlDdEMsbUJyQ3FpQ3NDO0VxQ25pQ3RDLGdCQUFnQjtFQUNoQix5QnRDSWdCO0VTT2Qsc0JSNk5nQyxFQUFBOztBRnBOcEM7RXVDYkksb0JyQ3loQ3FDLEVBQUE7RUY1Z0N6QztJdUNWTSxXQUFXO0lBQ1gscUJyQ3FoQ21DO0lxQ3BoQ25DLGN0Q1pZO0lzQ2FaLFlyQzBoQ3VDLEVBQUE7O0FGbmhDN0M7RXVDSUksMEJBQTBCLEVBQUE7O0F2Q0o5QjtFdUNRSSxxQkFBcUIsRUFBQTs7QXZDUnpCO0V1Q1lJLGN0Q2hDYyxFQUFBOztBRG9CbEI7RXdDMUJFLGFBQWE7RWpDR2IsZUFBZTtFQUNmLGdCQUFnQjtFR2FkLHNCUjZOZ0MsRUFBQTs7QUZwTnBDO0V3Q3BCRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHVCdENpeEJ3QztFc0NoeEJ4QyxpQnRDa08rQjtFc0NqTy9CLGlCdENveEJzQztFc0NueEJ0QyxjdkNvRWtEO0V1Q2xFbEQsc0J2Q0RhO0V1Q0ViLHlCdkNMZ0IsRUFBQTtFRGlCbEI7SXdDVEksVUFBVTtJQUNWLGN2QytEZ0Q7SXVDOURoRCxxQkFBcUI7SUFDckIseUJ2Q1ZjO0l1Q1dkLHFCdkNaYyxFQUFBO0VEaUJsQjtJd0NESSxVQUFVO0lBQ1YsVXRDNHdCaUM7SXNDM3dCakMsZ0R0Q09hLEVBQUE7O0FGUmpCO0V3Q1FNLGNBQWM7RTlCYWhCLCtCUitMZ0M7RVE5TGhDLGtDUjhMZ0MsRUFBQTs7QUZwTnBDO0VVT0ksZ0NSNk1nQztFUTVNaEMsbUNSNE1nQyxFQUFBOztBRnBOcEM7RXdDbUJJLFVBQVU7RUFDVixXdkNsQ1c7RXVDbUNYLHlCdkM1QmtEO0V1QzZCbEQscUJ2QzdCa0QsRUFBQTs7QURPdEQ7RXdDMEJJLGN2QzlDYztFdUMrQ2Qsb0JBQW9CO0VBRXBCLFlBQVk7RUFDWixzQnZDNUNXO0V1QzZDWCxxQnZDaERjLEVBQUE7O0FEaUJsQjtFeUN2QkksdUJ2QzB4QnNDO0VDMW1CcEMsa0JBQVc7RXNDOUtiLGdCdkNtTzZCLEVBQUE7O0FGOU1qQztFVXFCSSw4QlJnTStCO0VRL0wvQixpQ1IrTCtCLEVBQUE7O0FGck5uQztFVU9JLCtCUjhNK0I7RVE3TS9CLGtDUjZNK0IsRUFBQTs7QUZyTm5DO0V5Q3ZCSSx1QnZDd3hCcUM7RUN4bUJuQyxtQkFBVztFc0M5S2IsZ0J2Q29PNkIsRUFBQTs7QUYvTWpDO0VVcUJJLDhCUmlNK0I7RVFoTS9CLGlDUmdNK0IsRUFBQTs7QUZ0Tm5DO0VVT0ksK0JSK00rQjtFUTlNL0Isa0NSOE0rQixFQUFBOztBRnRObkM7RTBDckJFLHFCQUFxQjtFQUNyQixxQnhDNDVCc0M7RUMvdkJwQyxjQUFXO0V1QzNKYixnQnhDd1IrQjtFd0N2Ui9CLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHdCQUF3QjtFaENLdEIsc0JSNk5nQztFb0IvTjlCLHFJcEJpYjZJLEVBQUE7RW9CN2E3STtJdEJPTjtNc0JOUSxnQkFBZ0IsRUFBQSxFb0JNdkI7RUNYQztJREdJLHFCQUFxQixFQUFBO0UxQ1EzQjtJMENGSSxhQUFhLEVBQUE7O0ExQ0VqQjtFMENJRSxrQkFBa0I7RUFDbEIsU0FBUyxFQUFBOztBMUNMWDtFMENhRSxvQnhDaTRCc0M7RXdDaDRCdEMsbUJ4Q2c0QnNDO0VRdjVCcEMsb0JSMDVCcUMsRUFBQTs7QUZqNUJ6QztFNEMxQkUsYzNDSWdCO0UyQ0hoQix5QjNDa0JvRCxFQUFBO0UwQ0pwRDtJQ1ZJLGMzQ0RZO0kyQ0VaLHlCQUFrQyxFQUFBO0VBSDlCO0lBUUosVUFBVTtJQUNWLGdEM0NPZ0QsRUFBQTs7QURPdEQ7RTRDMUJFLGMzQ0lnQjtFMkNIaEIseUIzQ09nQixFQUFBO0UwQ09oQjtJQ1ZJLGMzQ0RZO0kyQ0VaLHlCQUFrQyxFQUFBO0VBSDlCO0lBUUosVUFBVTtJQUNWLGlEM0NKWSxFQUFBOztBRGtCbEI7RTRDMUJFLGMzQ0lnQjtFMkNIaEIseUIzQ3lCbUQsRUFBQTtFMENYbkQ7SUNWSSxjM0NEWTtJMkNFWix5QkFBa0MsRUFBQTtFQUg5QjtJQVFKLFVBQVU7SUFDViwrQzNDYytDLEVBQUE7O0FEQXJEO0U0QzFCRSxjM0NJZ0I7RTJDSGhCLHlCM0MyQm9ELEVBQUE7RTBDYnBEO0lDVkksYzNDRFk7STJDRVoseUJBQWtDLEVBQUE7RUFIOUI7SUFRSixVQUFVO0lBQ1YsZ0QzQ2dCZ0QsRUFBQTs7QURGdEQ7RTRDMUJFLGMzQ1VnQjtFMkNUaEIseUIzQ3VCbUQsRUFBQTtFMENUbkQ7SUNWSSxjM0NLWTtJMkNKWix5QkFBa0MsRUFBQTtFQUg5QjtJQVFKLFVBQVU7SUFDVixnRDNDWStDLEVBQUE7O0FERXJEO0U0QzFCRSxjM0NJZ0I7RTJDSGhCLHlCM0NzQm1ELEVBQUE7RTBDUm5EO0lDVkksYzNDRFk7STJDRVoseUJBQWtDLEVBQUE7RUFIOUI7SUFRSixVQUFVO0lBQ1YsK0MzQ1crQyxFQUFBOztBREdyRDtFNEMxQkUsYzNDVWdCO0UyQ1RoQix5QjNDSWdCLEVBQUE7RTBDVWhCO0lDVkksYzNDS1k7STJDSloseUJBQWtDLEVBQUE7RUFIOUI7SUFRSixVQUFVO0lBQ1YsaUQzQ1BZLEVBQUE7O0FEcUJsQjtFNEMxQkUsYzNDSWdCO0UyQ0hoQix5QjNDU2dCLEVBQUE7RTBDS2hCO0lDVkksYzNDRFk7STJDRVoseUJBQWtDLEVBQUE7RUFIOUI7SUFRSixVQUFVO0lBQ1YsOEMzQ0ZZLEVBQUE7O0FEZ0JsQjtFNkMxQkUsa0JBQXFEO0VBQ3JELG1CM0N5ekJzQztFMkN2ekJ0Qyx5QjVDT2dCO0VTT2QscUJSOE4rQixFQUFBO0VXcEwvQjtJYmpDSjtNNkNuQkksa0IzQ216Qm9DLEVBQUEsRTJDanpCdkM7O0E3Q2lCRDtFNkNkRSxnQkFBZ0I7RUFDaEIsZUFBZTtFbkNJYixnQm1DSHNCLEVBQUE7O0E3Q1kxQjtFOEN0QkUsa0JBQWtCO0VBQ2xCLHdCNUN5OUJ5QztFNEN4OUJ6QyxtQjVDeTlCc0M7RTRDeDlCdEMsNkJBQTZDO0VwQ1UzQyxzQlI2TmdDLEVBQUE7O0FGcE5wQztFOENaRSxjQUFjLEVBQUE7O0E5Q1loQjtFOENQRSxnQjVDNlErQixFQUFBOztBRnRRakM7RThDRUUsbUJBQXNELEVBQUE7RTlDRnhEO0k4Q01JLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sUUFBUTtJQUNSLFVBQVU7SUFDVix3QjVDMDdCdUM7STRDejdCdkMsY0FBYyxFQUFBOztBOUNYbEI7RStDMUJFLGM3QndHZ0U7RU1uRzlELHlCTm1HOEQ7RTZCdEdoRSxxQjdCc0dnRSxFQUFBO0VsQjlFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QndHZ0U7RU1uRzlELHlCTm1HOEQ7RTZCdEdoRSxxQjdCc0dnRSxFQUFBO0VsQjlFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QndHZ0U7RU1uRzlELHlCTm1HOEQ7RTZCdEdoRSxxQjdCc0dnRSxFQUFBO0VsQjlFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QndHZ0U7RU1uRzlELHlCTm1HOEQ7RTZCdEdoRSxxQjdCc0dnRSxFQUFBO0VsQjlFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QndHZ0U7RU1uRzlELHlCTm1HOEQ7RTZCdEdoRSxxQjdCc0dnRSxFQUFBO0VsQjlFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QndHZ0U7RU1uRzlELHlCTm1HOEQ7RTZCdEdoRSxxQjdCc0dnRSxFQUFBO0VsQjlFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QndHZ0U7RU1uRzlELHlCTm1HOEQ7RTZCdEdoRSxxQjdCc0dnRSxFQUFBO0VsQjlFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0EvQ2lCOUI7RStDMUJFLGM3QndHZ0U7RU1uRzlELHlCTm1HOEQ7RTZCdEdoRSxxQjdCc0dnRSxFQUFBO0VsQjlFbEU7SStDckJJLHlCQUFxQyxFQUFBO0UvQ3FCekM7SStDakJJLGNBQTBCLEVBQUE7O0FDUjVCO0VBQ0U7SUFBTywyQkFBdUMsRUFBQTtFQUM5QztJQUFLLHdCQUF3QixFQUFBLEVBQUE7O0FBRi9CO0VBQ0U7SUFBTywyQkFBdUMsRUFBQTtFQUM5QztJQUFLLHdCQUF3QixFQUFBLEVBQUE7O0FoRHVCakM7RWdEbEJFLGFBQWE7RUFDYixZOUNrK0JzQztFOENqK0J0QyxnQkFBZ0I7RUFDaEIsY0FBYztFN0N3S1Ysa0JBQVc7RTZDdEtmLHlCOUNMZ0I7RVFTZCxzQlI2TmdDLEVBQUE7O0FGcE5wQztFZ0RQRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIsVzlDakJhO0U4Q2tCYixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHlCOUNRZTtFb0JuQlgsMkJwQm8rQjRDLEVBQUE7RW9CaCtCNUM7SXRCT047TXNCTlEsZ0JBQWdCLEVBQUEsRTBCUXZCOztBaERGRDtFd0JnQkUscU1BQTZJO0V3QlY3SSwwQjlDMjhCc0MsRUFBQTs7QUZqOUJ4QztFZ0RXSSwwREFBOEQ7VUFBOUQsa0RBQThELEVBQUE7RUFHNUQ7SWhEZE47TWdEZVEsdUJBQWU7Y0FBZixlQUFlLEVBQUEsRUFHcEI7O0FoRGxCSDtFaUQxQkUsYUFBYTtFQUNiLHVCQUF1QixFQUFBOztBakR5QnpCO0VpRHJCRSxPQUFPLEVBQUE7O0FqRHFCVDtFa0R0QkUsYUFBYTtFQUNiLHNCQUFzQjtFQUd0QixlQUFlO0VBQ2YsZ0JBQWdCO0V4Q1FkLHNCUjZOZ0MsRUFBQTs7QUZwTnBDO0VrRE5FLFdBQVc7RUFDWCxjakRoQmdCO0VpRGlCaEIsbUJBQW1CLEVBQUE7RWxESXJCO0lrREFJLFVBQVU7SUFDVixjakR0QmM7SWlEdUJkLHFCQUFxQjtJQUNyQix5QmpEbEJjLEVBQUE7RURlbEI7SWtET0ksY2pEeUNpQjtJaUR4Q2pCLHlCakR4QmMsRUFBQTs7QURnQmxCO0VrRGtCRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHdCaERpOUJ5QztFZ0Q5OEJ6Qyx3Q2pEd0JtQjtFaUR2Qm5CLDRDakRoRGEsRUFBQTtFRHdCZjtJVUFJLCtCd0MyQmtDO0l4QzFCbEMsZ0N3QzBCa0MsRUFBQTtFbEQzQnRDO0lVY0ksbUN3Q2lCcUM7SXhDaEJyQyxrQ3dDZ0JxQyxFQUFBO0VsRC9CekM7SWtEb0NJLGNqRHhEYztJaUR5RGQsb0JBQW9CO0lBQ3BCLHdDakRTaUIsRUFBQTtFRC9DckI7SWtEMkNJLFVBQVU7SUFDVixXakQxRFc7SWlEMkRYLHlCakRwRGtEO0lpRHFEbEQscUJqRHJEa0QsRUFBQTtFRE90RDtJa0RrREksbUJBQW1CLEVBQUE7SWxEbER2QjtNa0RxRE0sZ0JoRDRKMkI7TWdEM0ozQixxQmhEMkoyQixFQUFBOztBRmpOakM7RWtEcUVNLG1CQUFtQixFQUFBO0VsRHJFekI7SVU4Q0ksa0NSc0tnQztJUWxMaEMsMEJ3Q3dDd0MsRUFBQTtFbEQxRTVDO0lVa0NJLGdDUmtMZ0M7SVF0S2hDLDRCd0NpQzBDLEVBQUE7RWxEL0U5QztJa0RtRlUsYUFBYSxFQUFBO0VsRG5GdkI7SWtEdUZVLHFCaEQwSHVCO0lnRHpIdkIsb0JBQW9CLEVBQUE7SWxEeEY5QjtNa0QyRlksaUJoRHNIcUI7TWdEckhyQixzQmhEcUhxQixFQUFBOztBV2hMN0I7RWJqQ0o7SWtEcUVNLG1CQUFtQixFQUFBO0lsRHJFekI7TVU4Q0ksa0NSc0tnQztNUWxMaEMsMEJ3Q3dDd0MsRUFBQTtJbEQxRTVDO01Va0NJLGdDUmtMZ0M7TVF0S2hDLDRCd0NpQzBDLEVBQUE7SWxEL0U5QztNa0RtRlUsYUFBYSxFQUFBO0lsRG5GdkI7TWtEdUZVLHFCaEQwSHVCO01nRHpIdkIsb0JBQW9CLEVBQUE7TWxEeEY5QjtRa0QyRlksaUJoRHNIcUI7UWdEckhyQixzQmhEcUhxQixFQUFBLEVnRHBIdEI7O0FyQzVEUDtFYmpDSjtJa0RxRU0sbUJBQW1CLEVBQUE7SWxEckV6QjtNVThDSSxrQ1JzS2dDO01RbExoQywwQndDd0N3QyxFQUFBO0lsRDFFNUM7TVVrQ0ksZ0NSa0xnQztNUXRLaEMsNEJ3Q2lDMEMsRUFBQTtJbEQvRTlDO01rRG1GVSxhQUFhLEVBQUE7SWxEbkZ2QjtNa0R1RlUscUJoRDBIdUI7TWdEekh2QixvQkFBb0IsRUFBQTtNbER4RjlCO1FrRDJGWSxpQmhEc0hxQjtRZ0RySHJCLHNCaERxSHFCLEVBQUEsRWdEcEh0Qjs7QXJDNURQO0ViakNKO0lrRHFFTSxtQkFBbUIsRUFBQTtJbERyRXpCO01VOENJLGtDUnNLZ0M7TVFsTGhDLDBCd0N3Q3dDLEVBQUE7SWxEMUU1QztNVWtDSSxnQ1JrTGdDO01RdEtoQyw0QndDaUMwQyxFQUFBO0lsRC9FOUM7TWtEbUZVLGFBQWEsRUFBQTtJbERuRnZCO01rRHVGVSxxQmhEMEh1QjtNZ0R6SHZCLG9CQUFvQixFQUFBO01sRHhGOUI7UWtEMkZZLGlCaERzSHFCO1FnRHJIckIsc0JoRHFIcUIsRUFBQSxFZ0RwSHRCOztBckM1RFA7RWJqQ0o7SWtEcUVNLG1CQUFtQixFQUFBO0lsRHJFekI7TVU4Q0ksa0NSc0tnQztNUWxMaEMsMEJ3Q3dDd0MsRUFBQTtJbEQxRTVDO01Va0NJLGdDUmtMZ0M7TVF0S2hDLDRCd0NpQzBDLEVBQUE7SWxEL0U5QztNa0RtRlUsYUFBYSxFQUFBO0lsRG5GdkI7TWtEdUZVLHFCaEQwSHVCO01nRHpIdkIsb0JBQW9CLEVBQUE7TWxEeEY5QjtRa0QyRlksaUJoRHNIcUI7UWdEckhyQixzQmhEcUhxQixFQUFBLEVnRHBIdEI7O0FsRDdGWDtFVVRJLGdCd0NvSHNCLEVBQUE7RWxEM0cxQjtJa0Q4R0kscUJoRG1HNkIsRUFBQTtJRmpOakM7TWtEaUhNLHNCQUFzQixFQUFBOztBbERqSDVCO0VtRHZCSSxjakNxRzhEO0VpQ3BHOUQseUJqQ29HOEQsRUFBQTtFbEI5RWxFO0ltRGxCUSxjakNnRzBEO0lpQy9GMUQseUJBQXlDLEVBQUE7RW5EaUJqRDtJbURiUSxXbERYTztJa0RZUCx5QmpDMEYwRDtJaUN6RjFELHFCakN5RjBELEVBQUE7O0FsQjlFbEU7RW1EdkJJLGNqQ3FHOEQ7RWlDcEc5RCx5QmpDb0c4RCxFQUFBO0VsQjlFbEU7SW1EbEJRLGNqQ2dHMEQ7SWlDL0YxRCx5QkFBeUMsRUFBQTtFbkRpQmpEO0ltRGJRLFdsRFhPO0lrRFlQLHlCakMwRjBEO0lpQ3pGMUQscUJqQ3lGMEQsRUFBQTs7QWxCOUVsRTtFbUR2QkksY2pDcUc4RDtFaUNwRzlELHlCakNvRzhELEVBQUE7RWxCOUVsRTtJbURsQlEsY2pDZ0cwRDtJaUMvRjFELHlCQUF5QyxFQUFBO0VuRGlCakQ7SW1EYlEsV2xEWE87SWtEWVAseUJqQzBGMEQ7SWlDekYxRCxxQmpDeUYwRCxFQUFBOztBbEI5RWxFO0VtRHZCSSxjakNxRzhEO0VpQ3BHOUQseUJqQ29HOEQsRUFBQTtFbEI5RWxFO0ltRGxCUSxjakNnRzBEO0lpQy9GMUQseUJBQXlDLEVBQUE7RW5EaUJqRDtJbURiUSxXbERYTztJa0RZUCx5QmpDMEYwRDtJaUN6RjFELHFCakN5RjBELEVBQUE7O0FsQjlFbEU7RW1EdkJJLGNqQ3FHOEQ7RWlDcEc5RCx5QmpDb0c4RCxFQUFBO0VsQjlFbEU7SW1EbEJRLGNqQ2dHMEQ7SWlDL0YxRCx5QkFBeUMsRUFBQTtFbkRpQmpEO0ltRGJRLFdsRFhPO0lrRFlQLHlCakMwRjBEO0lpQ3pGMUQscUJqQ3lGMEQsRUFBQTs7QWxCOUVsRTtFbUR2QkksY2pDcUc4RDtFaUNwRzlELHlCakNvRzhELEVBQUE7RWxCOUVsRTtJbURsQlEsY2pDZ0cwRDtJaUMvRjFELHlCQUF5QyxFQUFBO0VuRGlCakQ7SW1EYlEsV2xEWE87SWtEWVAseUJqQzBGMEQ7SWlDekYxRCxxQmpDeUYwRCxFQUFBOztBbEI5RWxFO0VtRHZCSSxjakNxRzhEO0VpQ3BHOUQseUJqQ29HOEQsRUFBQTtFbEI5RWxFO0ltRGxCUSxjakNnRzBEO0lpQy9GMUQseUJBQXlDLEVBQUE7RW5EaUJqRDtJbURiUSxXbERYTztJa0RZUCx5QmpDMEYwRDtJaUN6RjFELHFCakN5RjBELEVBQUE7O0FsQjlFbEU7RW1EdkJJLGNqQ3FHOEQ7RWlDcEc5RCx5QmpDb0c4RCxFQUFBO0VsQjlFbEU7SW1EbEJRLGNqQ2dHMEQ7SWlDL0YxRCx5QkFBeUMsRUFBQTtFbkRpQmpEO0ltRGJRLFdsRFhPO0lrRFlQLHlCakMwRjBEO0lpQ3pGMUQscUJqQ3lGMEQsRUFBQTs7QWxCOUVsRTtFb0QxQkUsWUFBWTtFakRtTFIsaUJBQVc7RWlEakxmLGdCbEQ4UitCO0VrRDdSL0IsY0FBYztFQUNkLFduREZhO0VtREdiLHlCbkRPYTtFbUROYixXQUFXLEVBQUE7RXBEb0JiO0lvRGhCSSxXbkRSVztJbURTWCxxQkFBcUIsRUFBQTtFcERlekI7SW9EVk0sWUFBWSxFQUFBOztBcERVbEI7RW9ERUUsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixTQUFTLEVBQUE7O0FwREpYO0VvRFdFLG9CQUFvQixFQUFBOztBcERYdEI7RXFEeEJFLGlCbkQyNEJ1QztFbUQxNEJ2QyxnQm5EMDRCdUM7RUMxdEJuQyxtQkFBVztFa0Q3S2YscUNwRE1hO0VvRExiLDRCQUE0QjtFQUM1QiwwQ3BEb0x5RDtFb0RuTHpELHNEcERQYTtFb0RRYixVQUFVO0UzQ09SLHNCUm80QnNDLEVBQUE7RUYzM0IxQztJcURaSSxzQm5EZzRCc0MsRUFBQTtFRnAzQjFDO0lxRFJJLFVBQVUsRUFBQTtFckRRZDtJcURKSSxjQUFjO0lBQ2QsVUFBVSxFQUFBO0VyREdkO0lxRENJLGFBQWEsRUFBQTs7QXJERGpCO0VxRE1FLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsd0JuRDQyQndDO0VtRDMyQnhDLGNwRDdCZ0I7RW9EOEJoQixxQ3BEeEJhO0VvRHlCYiw0QkFBNEI7RUFDNUIsa0RwRDJKMEQ7RVN2S3hELDJDUXVINEQ7RVJ0SDVELDRDUXNINEQsRUFBQTs7QWxCdkhoRTtFcURpQkUsZ0JuRG0yQndDLEVBQUE7O0FGcDNCMUM7RXNEbkJFLGdCQUFnQixFQUFBO0V0RG1CbEI7SXNEaEJJLGtCQUFrQjtJQUNsQixnQkFBZ0IsRUFBQTs7QXREZXBCO0VzRFRFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLGFwRDRwQnNDO0VvRDNwQnRDLGFBQWE7RUFDYixXQUFXO0VBQ1gsWUFBWTtFQUNaLGdCQUFnQjtFQUdoQixVQUFVLEVBQUE7O0F0RERaO0VzRFNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsY3BEaTVCdUM7RW9ELzRCdkMsb0JBQW9CLEVBQUE7RUFHcEI7SWhDM0JJLG1DcEJzOEJvRDtJb0R6NkJ0RCw4QnBEdTZCbUQsRUFBQTtJb0JoOEJqRDtNZ0N1Qko7UWhDdEJNLGdCQUFnQixFQUFBLEVnQ3lCckI7RUFDRDtJQUNFLGVwRHE2Qm9DLEVBQUE7RW9EajZCdEM7SUFDRSxzQnBEazZCMkMsRUFBQTs7QUY1N0IvQztFc0QrQkUsYUFBYTtFQUNiLDZCcEN1RjhELEVBQUE7RWxCdkhoRTtJc0RtQ0ksOEJwQ29GNEQ7SW9DbkY1RCxnQkFBZ0IsRUFBQTtFdERwQ3BCOztJc0R5Q0ksY0FBYyxFQUFBO0V0RHpDbEI7SXNENkNJLGdCQUFnQixFQUFBOztBdEQ3Q3BCO0VzRGtERSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLDZCcENtRThELEVBQUE7RWxCdkhoRTtJc0R3REksY0FBYztJQUNkLDBCcEM4RDREO0lvQzdENUQsMkJBQW1CO0lBQW5CLHdCQUFtQjtJQUFuQixtQkFBbUI7SUFDbkIsV0FBVyxFQUFBO0V0RDNEZjtJc0RnRUksc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixZQUFZLEVBQUE7SXREbEVoQjtNc0RxRU0sZ0JBQWdCLEVBQUE7SXREckV0QjtNc0R5RU0sYUFBYSxFQUFBOztBdER6RW5CO0VzRGdGRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixXQUFXO0VBR1gsb0JBQW9CO0VBQ3BCLHlCckR4Q21CO0VxRHlDbkIsNEJBQTRCO0VBQzVCLDBDckRqSGE7RVNlWCxxQlI4TitCO0VvRHhIakMsVUFBVSxFQUFBOztBdEQ3Rlo7RXNEa0dFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLGFwRGdqQnNDO0VvRC9pQnRDLFlBQVk7RUFDWixhQUFhO0VBQ2Isc0JwRGxIYSxFQUFBO0VGVWY7SXNEMkdXLFVBQVUsRUFBQTtFdEQzR3JCO0lzRDRHVyxZcEQrekIyQixFQUFBOztBRjM2QnRDO0VzRGtIRSxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLDhCQUE4QjtFQUM5QixrQnBENHpCc0M7RW9EM3pCdEMsZ0NyRHRJZ0I7RVNnQmQsMENRdUg0RDtFUnRINUQsMkNRc0g0RCxFQUFBO0VsQnZIaEU7SXNEMEhJLGtCcER1ekJvQztJb0RyekJwQyw4QkFBNkYsRUFBQTs7QXRENUhqRztFc0RrSUUsZ0JBQWdCO0VBQ2hCLGdCcER1SStCLEVBQUE7O0FGMVFqQztFc0R5SUUsa0JBQWtCO0VBR2xCLGNBQWM7RUFDZCxhcEQwd0JzQyxFQUFBOztBRnY1QnhDO0VzRGtKRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQix5QkFBeUI7RUFDekIsZ0JBQWlFO0VBQ2pFLDZCckR2S2dCO0VTOEJkLDhDUXlHNEQ7RVJ4RzVELDZDUXdHNEQsRUFBQTtFbEJ2SGhFO0lzRDhKSSxlQUF5QyxFQUFBOztBdEQ5SjdDO0VzRG9LRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxZQUFZO0VBQ1osZ0JBQWdCLEVBQUE7O0F6Q3ZJZDtFYmpDSjtJc0QrS0ksZ0JwRHV3QnFDO0lvRHR3QnJDLG9CQUF5QyxFQUFBO0V0RGhMN0M7SXNEb0xJLCtCcEM3RDRELEVBQUE7SWxCdkhoRTtNc0R1TE0sZ0NwQ2hFMEQsRUFBQTtFbEJ2SGhFO0lzRDRMSSwrQnBDckU0RCxFQUFBO0lsQnZIaEU7TXNEK0xNLDRCcEN4RTBEO01vQ3lFMUQsMkJBQW1CO01BQW5CLHdCQUFtQjtNQUFuQixtQkFBbUIsRUFBQTtFdERoTXpCO0lzRHdNYyxnQnBEK3VCMkIsRUFBQSxFb0QvdUJIOztBekN2S2xDO0ViakNKOztJc0Q4TUksZ0JwRHV1QnFDLEVBQUEsRW9EdHVCdEM7O0F6QzlLQztFYmpDSjtJc0RtTmMsaUJwRGl1QjRCLEVBQUEsRW9EanVCSjs7QXREbk50QztFdUR6QkUsa0JBQWtCO0VBQ2xCLGFyRGdyQnNDO0VxRC9xQnRDLGNBQWM7RUFDZCxTckQ2MUJtQztFc0RqMkJuQyxxTnREb1JvTztFc0RsUnBPLGtCQUFrQjtFQUNsQixnQnRENFIrQjtFc0QzUi9CLGdCdERnUytCO0VzRC9SL0IsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsZ0JBQWdCO0VyRHFLWixtQkFBVztFb0R6S2YscUJBQXFCO0VBQ3JCLFVBQVUsRUFBQTtFdkRlWjtJdURiVyxZckRpMUIyQixFQUFBO0VGcDBCdEM7SXVEVkksa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxhckRpMUJxQztJcURoMUJyQyxjckRpMUJxQyxFQUFBO0lGMTBCekM7TXVESk0sa0JBQWtCO01BQ2xCLFdBQVc7TUFDWCx5QkFBeUI7TUFDekIsbUJBQW1CLEVBQUE7O0F2REN6QjtFdURLRSxpQkFBZ0MsRUFBQTtFdkRMbEM7SXVEUUksU0FBUyxFQUFBO0l2RFJiO011RFdNLE1BQU07TUFDTiw2QkFBaUU7TUFDakUsc0JyRHZCUyxFQUFBOztBRlVmO0V1RG1CRSxpQnJEdXpCdUMsRUFBQTtFRjEwQnpDO0l1RHNCSSxPQUFPO0lBQ1AsYXJEbXpCcUM7SXFEbHpCckMsY3JEaXpCcUMsRUFBQTtJRnowQnpDO011RDJCTSxRQUFRO01BQ1Isb0NBQTZGO01BQzdGLHdCckR2Q1MsRUFBQTs7QUZVZjtFdURtQ0UsaUJBQWdDLEVBQUE7RXZEbkNsQztJdURzQ0ksTUFBTSxFQUFBO0l2RHRDVjtNdUR5Q00sU0FBUztNQUNULDZCckRneUJtQztNcUQveEJuQyx5QnJEckRTLEVBQUE7O0FGVWY7RXVEaURFLGlCckR5eEJ1QyxFQUFBO0VGMTBCekM7SXVEb0RJLFFBQVE7SUFDUixhckRxeEJxQztJcURweEJyQyxjckRteEJxQyxFQUFBO0lGejBCekM7TXVEeURNLE9BQU87TUFDUCxvQ3JEZ3hCbUM7TXFEL3dCbkMsdUJyRHJFUyxFQUFBOztBRlVmO0V1RGlGRSxnQnJEK3VCdUM7RXFEOXVCdkMsdUJyRG92QnVDO0VxRG52QnZDLFdyRHZHYTtFcUR3R2Isa0JBQWtCO0VBQ2xCLHNCckQvRmE7RVFDWCxzQlI2TmdDLEVBQUE7O0FGcE5wQztFeUQxQkUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsYXZEOHFCc0M7RXVEN3FCdEMsY0FBYztFQUNkLGdCdkQrMkJ1QztFc0RwM0J2QyxxTnREb1JvTztFc0RsUnBPLGtCQUFrQjtFQUNsQixnQnRENFIrQjtFc0QzUi9CLGdCdERnUytCO0VzRC9SL0IsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsZ0JBQWdCO0VyRHFLWixtQkFBVztFc0R4S2YscUJBQXFCO0VBQ3JCLHNCdkROYTtFdURPYiw0QkFBNEI7RUFDNUIsb0N2REVhO0VRQ1gscUJSOE4rQixFQUFBO0VGck5uQztJeURQSSxrQkFBa0I7SUFDbEIsY0FBYztJQUNkLFd2RCsyQm9DO0l1RDkyQnBDLGN2RCsyQnFDO0l1RDkyQnJDLGdCdkR3TitCLEVBQUE7SUZyTm5DO015RENNLGtCQUFrQjtNQUNsQixjQUFjO01BQ2QsV0FBVztNQUNYLHlCQUF5QjtNQUN6QixtQkFBbUIsRUFBQTs7QXpETHpCO0V5RFdFLHFCdkRnMkJ1QyxFQUFBO0VGMzJCekM7SXlEY0ksMkJ2Q3lHNEQsRUFBQTtJbEJ2SGhFO015RGlCTSxTQUFTO01BQ1QsNkJBQWlFO01BQ2pFLHFDdkQyMUJpRSxFQUFBO0lGOTJCdkU7TXlEdUJNLFd2RDBMMkI7TXVEekwzQiw2QkFBaUU7TUFDakUsc0J2RDdDUyxFQUFBOztBRm9CZjtFeUQrQkUsbUJ2RDQwQnVDLEVBQUE7RUYzMkJ6QztJeURrQ0kseUJ2Q3FGNEQ7SXVDcEY1RCxhdkR3MEJxQztJdUR2MEJyQyxZdkRzMEJvQztJdURyMEJwQyxnQkFBZ0MsRUFBQTtJekRyQ3BDO015RHdDTSxPQUFPO01BQ1Asb0NBQTZGO01BQzdGLHVDdkRvMEJpRSxFQUFBO0lGOTJCdkU7TXlEOENNLFN2RG1LMkI7TXVEbEszQixvQ0FBNkY7TUFDN0Ysd0J2RHBFUyxFQUFBOztBRm9CZjtFeURzREUsa0J2RHF6QnVDLEVBQUE7RUYzMkJ6QztJeUR5REksd0J2QzhENEQsRUFBQTtJbEJ2SGhFO015RDRETSxNQUFNO01BQ04sb0NBQTZGO01BQzdGLHdDdkRnekJpRSxFQUFBO0lGOTJCdkU7TXlEa0VNLFF2RCtJMkI7TXVEOUkzQixvQ0FBNkY7TUFDN0YseUJ2RHhGUyxFQUFBO0VGb0JmO0l5RDBFSSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFNBQVM7SUFDVCxjQUFjO0lBQ2QsV3ZENHhCb0M7SXVEM3hCcEMsb0JBQXVDO0lBQ3ZDLFdBQVc7SUFDWCxnQ3ZEZ3hCdUQsRUFBQTs7QUZqMkIzRDtFeURzRkUsb0J2RHF4QnVDLEVBQUE7RUYzMkJ6QztJeUR5RkksMEJ2QzhCNEQ7SXVDN0I1RCxhdkRpeEJxQztJdURoeEJyQyxZdkQrd0JvQztJdUQ5d0JwQyxnQkFBZ0MsRUFBQTtJekQ1RnBDO015RCtGTSxRQUFRO01BQ1Isb0N2RDJ3Qm1DO011RDF3Qm5DLHNDdkQ2d0JpRSxFQUFBO0lGOTJCdkU7TXlEcUdNLFV2RDRHMkI7TXVEM0czQixvQ3ZEcXdCbUM7TXVEcHdCbkMsdUJ2RDNIUyxFQUFBOztBRm9CZjtFeUQ4SEUsdUJ2RHN1QndDO0V1RHJ1QnhDLGdCQUFnQjtFdEQwQlosZUFBVztFc0R2QmYseUJ2RCt0QnlEO0V1RDl0QnpELGdDQUF5RTtFL0NuSXZFLDBDUXVINEQ7RVJ0SDVELDJDUXNINEQsRUFBQTtFbEJ2SGhFO0l5RHVJSSxhQUFhLEVBQUE7O0F6RHZJakI7RXlENElFLHVCdkR3dEJ3QztFdUR2dEJ4QyxjdkR4SmdCLEVBQUE7O0FGV2xCO0UwRGJFLGtCQUFrQixFQUFBOztBMURhcEI7RTBEVEUsbUJBQW1CLEVBQUE7O0ExRFNyQjtFMERMRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGdCQUFnQixFQUFBO0UxREdsQjtJMkR6QkksY0FBYztJQUNkLFdBQVc7SUFDWCxXQUFXLEVBQUE7O0EzRHVCZjtFMERFRSxrQkFBa0I7RUFDbEIsYUFBYTtF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LEVBQUE7O0FuRWR2RTtFbUVnQm9DLDJCQUEyQixFQUFBOztBbkVoQi9EO0VtRWlCb0MsaUNBQWlDLEVBQUE7O0FuRWpCckU7RW1Fa0JvQywrQkFBK0IsRUFBQTs7QW5FbEJuRTtFbUVtQm9DLDZCQUE2QixFQUFBOztBbkVuQmpFO0VtRW9Cb0MsK0JBQStCLEVBQUE7O0FuRXBCbkU7RW1FcUJvQyw4QkFBOEIsRUFBQTs7QXREWTlEO0ViakNKO0ltRWpCb0MsOEJBQThCLEVBQUE7RW5FaUJsRTtJbUVoQm9DLGlDQUFpQyxFQUFBO0VuRWdCckU7SW1FZm9DLHNDQUFzQyxFQUFBO0VuRWUxRTtJbUVkb0MseUNBQXlDLEVBQUE7RW5FYzdFO0ltRVprQywwQkFBMEIsRUFBQTtFbkVZNUQ7SW1FWGtDLDRCQUE0QixFQUFBO0VuRVc5RDtJbUVWa0Msa0NBQWtDLEVBQUE7RW5FVXBFO0ltRVRrQyx5QkFBeUIsRUFBQTtFbkVTM0Q7SW1FUmtDLHVCQUF1QixFQUFBO0VuRVF6RDtJbUVQa0MsdUJBQXVCLEVBQUE7RW5FT3pEO0ltRU5rQyx5QkFBeUIsRUFBQTtFbkVNM0Q7SW1FTGtDLHlCQUF5QixFQUFBO0VuRUszRDtJbUVId0Msc0NBQXNDLEVBQUE7RW5FRzlFO0ltRUZ3QyxvQ0FBb0MsRUFBQTtFbkVFNUU7SW1FRHdDLGtDQUFrQyxFQUFBO0VuRUMxRTtJbUVBd0MseUNBQXlDLEVBQUE7RW5FQWpGO0ltRUN3Qyx3Q0FBd0MsRUFBQTtFbkVEaEY7SW1FR3FDLGtDQUFrQyxFQUFBO0VuRUh2RTtJbUVJcUMsZ0NBQWdDLEVBQUE7RW5FSnJFO0ltRUtxQyw4QkFBOEIsRUFBQTtFbkVMbkU7SW1FTXFDLGdDQUFnQyxFQUFBO0VuRU5yRTtJbUVPcUMsK0JBQStCLEVBQUE7RW5FUHBFO0ltRVNzQyxvQ0FBb0MsRUFBQTtFbkVUMUU7SW1FVXNDLGtDQUFrQyxFQUFBO0VuRVZ4RTtJbUVXc0MsZ0NBQWdDLEVBQUE7RW5FWHRFO0ltRVlzQyx1Q0FBdUMsRUFBQTtFbkVaN0U7SW1FYXNDLHNDQUFzQyxFQUFBO0VuRWI1RTtJbUVjc0MsaUNBQWlDLEVBQUE7RW5FZHZFO0ltRWdCb0MsMkJBQTJCLEVBQUE7RW5FaEIvRDtJbUVpQm9DLGlDQUFpQyxFQUFBO0VuRWpCckU7SW1Fa0JvQywrQkFBK0IsRUFBQTtFbkVsQm5FO0ltRW1Cb0MsNkJBQTZCLEVBQUE7RW5FbkJqRTtJbUVvQm9DLCtCQUErQixFQUFBO0VuRXBCbkU7SW1FcUJvQyw4QkFBOEIsRUFBQSxFQUFJOztBdERZbEU7RWJqQ0o7SW1FakJvQyw4QkFBOEIsRUFBQTtFbkVpQmxFO0ltRWhCb0MsaUNBQWlDLEVBQUE7RW5FZ0JyRTtJbUVmb0Msc0NBQXNDLEVBQUE7RW5FZTFFO0ltRWRvQyx5Q0FBeUMsRUFBQTtFbkVjN0U7SW1FWmtDLDBCQUEwQixFQUFBO0VuRVk1RDtJbUVYa0MsNEJBQTRCLEVBQUE7RW5FVzlEO0ltRVZrQyxrQ0FBa0MsRUFBQTtFbkVVcEU7SW1FVGtDLHlCQUF5QixFQUFBO0VuRVMzRDtJbUVSa0MsdUJBQXVCLEVBQUE7RW5FUXpEO0ltRVBrQyx1QkFBdUIsRUFBQTtFbkVPekQ7SW1FTmtDLHlCQUF5QixFQUFBO0VuRU0zRDtJbUVMa0MseUJBQXlCLEVBQUE7RW5FSzNEO0ltRUh3QyxzQ0FBc0MsRUFBQTtFbkVHOUU7SW1FRndDLG9DQUFvQyxFQUFBO0VuRUU1RTtJbUVEd0Msa0NBQWtDLEVBQUE7RW5FQzFFO0ltRUF3Qyx5Q0FBeUMsRUFBQTtFbkVBakY7SW1FQ3dDLHdDQUF3QyxFQUFBO0VuRURoRjtJbUVHcUMsa0NBQWtDLEVBQUE7RW5FSHZFO0ltRUlxQyxnQ0FBZ0MsRUFBQTtFbkVKckU7SW1FS3FDLDhCQUE4QixFQUFBO0VuRUxuRTtJbUVNcUMsZ0NBQWdDLEVBQUE7RW5FTnJFO0ltRU9xQywrQkFBK0IsRUFBQTtFbkVQcEU7SW1FU3NDLG9DQUFvQyxFQUFBO0VuRVQxRTtJbUVVc0Msa0NBQWtDLEVBQUE7RW5FVnhFO0ltRVdzQyxnQ0FBZ0MsRUFBQTtFbkVYdEU7SW1FWXNDLHVDQUF1QyxFQUFBO0VuRVo3RTtJbUVhc0Msc0NBQXNDLEVBQUE7RW5FYjVFO0ltRWNzQyxpQ0FBaUMsRUFBQTtFbkVkdkU7SW1FZ0JvQywyQkFBMkIsRUFBQTtFbkVoQi9EO0ltRWlCb0MsaUNBQWlDLEVBQUE7RW5FakJyRTtJbUVrQm9DLCtCQUErQixFQUFBO0VuRWxCbkU7SW1FbUJvQyw2QkFBNkIsRUFBQTtFbkVuQmpFO0ltRW9Cb0MsK0JBQStCLEVBQUE7RW5FcEJuRTtJbUVxQm9DLDhCQUE4QixFQUFBLEVBQUk7O0F0RFlsRTtFYmpDSjtJbUVqQm9DLDhCQUE4QixFQUFBO0VuRWlCbEU7SW1FaEJvQyxpQ0FBaUMsRUFBQTtFbkVnQnJFO0ltRWZvQyxzQ0FBc0MsRUFBQTtFbkVlMUU7SW1FZG9DLHlDQUF5QyxFQUFBO0VuRWM3RTtJbUVaa0MsMEJBQTBCLEVBQUE7RW5FWTVEO0ltRVhrQyw0QkFBNEIsRUFBQTtFbkVXOUQ7SW1FVmtDLGtDQUFrQyxFQUFBO0VuRVVwRTtJbUVUa0MseUJBQXlCLEVBQUE7RW5FUzNEO0ltRVJrQyx1QkFBdUIsRUFBQTtFbkVRekQ7SW1FUGtDLHVCQUF1QixFQUFBO0VuRU96RDtJbUVOa0MseUJBQXlCLEVBQUE7RW5FTTNEO0ltRUxrQyx5QkFBeUIsRUFBQTtFbkVLM0Q7SW1FSHdDLHNDQUFzQyxFQUFBO0VuRUc5RTtJbUVGd0Msb0NBQW9DLEVBQUE7RW5FRTVFO0ltRUR3QyxrQ0FBa0MsRUFBQTtFbkVDMUU7SW1FQXdDLHlDQUF5QyxFQUFBO0VuRUFqRjtJbUVDd0Msd0NBQXdDLEVBQUE7RW5FRGhGO0ltRUdxQyxrQ0FBa0MsRUFBQTtFbkVIdkU7SW1FSXFDLGdDQUFnQyxFQUFBO0VuRUpyRTtJbUVLcUMsOEJBQThCLEVBQUE7RW5FTG5FO0ltRU1xQyxnQ0FBZ0MsRUFBQTtFbkVOckU7SW1FT3FDLCtCQUErQixFQUFBO0VuRVBwRTtJbUVTc0Msb0NBQW9DLEVBQUE7RW5FVDFFO0ltRVVzQyxrQ0FBa0MsRUFBQTtFbkVWeEU7SW1FV3NDLGdDQUFnQyxFQUFBO0VuRVh0RTtJbUVZc0MsdUNBQXVDLEVBQUE7RW5FWjdFO0ltRWFzQyxzQ0FBc0MsRUFBQTtFbkViNUU7SW1FY3NDLGlDQUFpQyxFQUFBO0VuRWR2RTtJbUVnQm9DLDJCQUEyQixFQUFBO0VuRWhCL0Q7SW1FaUJvQyxpQ0FBaUMsRUFBQTtFbkVqQnJFO0ltRWtCb0MsK0JBQStCLEVBQUE7RW5FbEJuRTtJbUVtQm9DLDZCQUE2QixFQUFBO0VuRW5CakU7SW1Fb0JvQywrQkFBK0IsRUFBQTtFbkVwQm5FO0ltRXFCb0MsOEJBQThCLEVBQUEsRUFBSTs7QXREWWxFO0ViakNKO0ltRWpCb0MsOEJBQThCLEVBQUE7RW5FaUJsRTtJbUVoQm9DLGlDQUFpQyxFQUFBO0VuRWdCckU7SW1FZm9DLHNDQUFzQyxFQUFBO0VuRWUxRTtJbUVkb0MseUNBQXlDLEVBQUE7RW5FYzdFO0ltRVprQywwQkFBMEIsRUFBQTtFbkVZNUQ7SW1FWGtDLDRCQUE0QixFQUFBO0VuRVc5RDtJbUVWa0Msa0NBQWtDLEVBQUE7RW5FVXBFO0ltRVRrQyx5QkFBeUIsRUFBQTtFbkVTM0Q7SW1FUmtDLHVCQUF1QixFQUFBO0VuRVF6RDtJbUVQa0MsdUJBQXVCLEVBQUE7RW5FT3pEO0ltRU5rQyx5QkFBeUIsRUFBQTtFbkVNM0Q7SW1FTGtDLHlCQUF5QixFQUFBO0VuRUszRDtJbUVId0Msc0NBQXNDLEVBQUE7RW5FRzlFO0ltRUZ3QyxvQ0FBb0MsRUFBQTtFbkVFNUU7SW1FRHdDLGtDQUFrQyxFQUFBO0VuRUMxRTtJbUVBd0MseUNBQXlDLEVBQUE7RW5FQWpGO0ltRUN3Qyx3Q0FBd0MsRUFBQTtFbkVEaEY7SW1FR3FDLGtDQUFrQyxFQUFBO0VuRUh2RTtJbUVJcUMsZ0NBQWdDLEVBQUE7RW5FSnJFO0ltRUtxQyw4QkFBOEIsRUFBQTtFbkVMbkU7SW1FTXFDLGdDQUFnQyxFQUFBO0VuRU5yRTtJbUVPcUMsK0JBQStCLEVBQUE7RW5FUHBFO0ltRVNzQyxvQ0FBb0MsRUFBQTtFbkVUMUU7SW1FVXNDLGtDQUFrQyxFQUFBO0VuRVZ4RTtJbUVXc0MsZ0NBQWdDLEVBQUE7RW5FWHRFO0ltRVlzQyx1Q0FBdUMsRUFBQTtF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QjJCLHNCQUE0QixFQUFBOztBMUVxQnZEO0UwRXJCMkIsc0JBQTRCLEVBQUE7O0ExRXFCdkQ7RTBFckIyQixzQkFBNEIsRUFBQTs7QTFFcUJ2RDtFMEVyQjJCLHVCQUE0QixFQUFBOztBMUVxQnZEO0UwRXJCMkIsdUJBQTRCLEVBQUE7O0ExRXFCdkQ7RTBFakJVLDBCQUEwQixFQUFBOztBMUVpQnBDO0UwRWhCVSwyQkFBMkIsRUFBQTs7QTFFZ0JyQztFMEVaYywyQkFBMkIsRUFBQTs7QTFFWXpDO0UwRVhjLDRCQUE0QixFQUFBOztBMUVXMUM7RTBFVFUsdUJBQXVCLEVBQUE7O0ExRVNqQztFMEVSVSx3QkFBd0IsRUFBQTs7QTFFUWxDO0UyRWpCd0Msb0JBQTRCLEVBQUE7O0EzRWlCcEU7O0UyRWRVLHdCQUFvQyxFQUFBOztBM0VjOUM7O0UyRVZVLDBCQUF3QyxFQUFBOztBM0VVbEQ7O0UyRU5VLDJCQUEwQyxFQUFBOztBM0VNcEQ7O0UyRUZVLHlCQUFzQyxFQUFBOztBM0VFaEQ7RTJFakJ3QywwQkFBNEIsRUFBQTs7QTNFaUJwRTs7RTJFZFUsOEJBQW9DLEVBQUE7O0EzRWM5Qzs7RTJFVlUsZ0NBQXdDLEVBQUE7O0EzRVVsRDs7RTJFTlUsaUNBQTBDLEVBQUE7O0EzRU1wRDs7RTJFRlUsK0JBQXNDLEVBQUE7O0EzRUVoRDtFMkVqQndDLHlCQUE0QixFQUFBOztBM0VpQnBFOztFMkVkVSw2QkFBb0MsRUFBQTs7QTNFYzlDOztFMkVWVSwrQkFBd0MsRUFBQTs7QTNFVWxEOztFMkVOVSxnQ0FBMEMsRUFBQTs7QTNFTXBEOztFMkVGVSw4QkFBc0MsRUFBQTs7QTNFRWhEO0UyRWpCd0MsdUJBQTRCLEVBQUE7O0EzRWlCcEU7O0UyRWRVLDJCQUFvQyxFQUFBOztBM0VjOUM7O0UyRVZVLDZCQUF3QyxFQUFBOztBM0VVbEQ7O0UyRU5VLDhCQUEwQyxFQUFBOztBM0VNcEQ7O0UyRUZVLDRCQUFzQyxFQUFBOztBM0VFaEQ7RTJFakJ3Qyx5QkFBNEIsRUFBQTs7QTNFaUJwRTs7RTJFZFUsNkJBQW9DLEVBQUE7O0EzRWM5Qzs7RTJFVlUsK0JBQXdDLEVBQUE7O0EzRVVsRDs7RTJFTlUsZ0NBQTBDLEVBQUE7O0EzRU1wRDs7RTJFRlUsOEJBQXNDLEVBQUE7O0EzRUVoRDtFMkVqQndDLHVCQUE0QixFQUFBOztBM0VpQnBFOztFMkVkVSwyQkFBb0MsRUFBQTs7QTNFYzlDOztFMkVWVSw2QkFBd0MsRUFBQTs7QTNFVWxEOztFMkVOVSw4QkFBMEMsRUFBQTs7QTNFTXBEOztFMkVGVSw0QkFBc0MsRUFBQTs7QTNFRWhEO0UyRWpCd0MscUJBQTRCLEVBQUE7O0EzRWlCcEU7O0UyRWRVLHlCQUFvQyxFQUFBOztBM0VjOUM7O0UyRVZVLDJCQUF3QyxFQUFBOztBM0VVbEQ7O0UyRU5VLDRCQUEwQyxFQUFBOztBM0VNcEQ7O0UyRUZVLDBCQUFzQyxFQUFBOztBM0VFaEQ7RTJFakJ3QywyQkFBNEIsRUFBQTs7QTNFaUJwRTs7RTJFZFUsK0JBQW9DLEVBQUE7O0EzRWM5Qzs7RTJFVlUsaUNBQXdDLEVBQUE7O0EzRVVsRDs7RTJFTlUsa0NBQTBDLEVBQUE7O0EzRU1wRDs7RTJFRlUsZ0NBQXNDLEVBQUE7O0EzRUVoRDtFMkVqQndDLDBCQUE0QixFQUFBOztBM0VpQnBFOztFMkVkVSw4QkFBb0MsRUFBQTs7QTNFYzlDOztFMkVWVSxnQ0FBd0MsRUFBQTs7QTNFVWxEOztFMkVOVSxpQ0FBMEMsRUFBQTs7QTNFTXBEOztFMkVGVSwrQkFBc0MsRUFBQTs7QTNFRWhEO0UyRWpCd0Msd0JBQTRCLEVBQUE7O0EzRWlCcEU7O0UyRWRVLDRCQUFvQyxFQUFBOztBM0VjOUM7O0UyRVZVLDhCQUF3QyxFQUFBOztBM0VVbEQ7O0UyRU5VLCtCQUEwQyxFQUFBOztBM0VNcEQ7O0UyRUZVLDZCQUFzQyxFQUFBOztBM0VFaEQ7RTJFakJ3QywwQkFBNEIsRUFBQTs7QTNFaUJwRTs7RTJFZFUsOEJBQW9DLEVBQUE7O0EzRWM5Qzs7RTJFVlUsZ0NBQXdDLEVBQUE7O0EzRVVsRDs7RTJFTlUsaUNBQTBDLEVBQUE7O0EzRU1wRDs7RTJFRlUsK0JBQXNDLEVBQUE7O0EzRUVoRDtFMkVqQndDLHdCQUE0QixFQUFBOztBM0VpQnBFOztFMkVkVSw0QkFBb0MsRUFBQTs7QTNFYzlDOztFMkVWVSw4QkFBd0MsRUFBQTs7QTNFVWxEOztFMkVOVSwrQkFBMEMsRUFBQTs7QTNFTXBEOztFMkVGVSw2QkFBc0MsRUFBQTs7QTNFRWhEO0UyRU1nQywyQkFBMkIsRUFBQTs7QTNFTjNEOztFMkVTVSwrQkFBK0IsRUFBQTs7QTNFVHpDOztFMkVhVSxpQ0FBaUMsRUFBQTs7QTNFYjNDOztFMkVpQlUsa0NBQWtDLEVBQUE7O0EzRWpCNUM7O0UyRXFCVSxnQ0FBZ0MsRUFBQTs7QTNFckIxQztFMkVNZ0MsMEJBQTJCLEVBQUE7O0EzRU4zRDs7RTJFU1UsOEJBQStCLEVBQUE7O0EzRVR6Qzs7RTJFYVUsZ0NBQWlDLEVBQUE7O0EzRWIzQzs7RTJFaUJVLGlDQUFrQyxFQUFBOztBM0VqQjVDOztFMkVxQlUsK0JBQWdDLEVBQUE7O0EzRXJCMUM7RTJFTWdDLHdCQUEyQixFQUFBOztBM0VOM0Q7O0UyRVNVLDRCQUErQixFQUFBOztBM0VUekM7O0UyRWFVLDhCQUFpQyxFQUFBOztBM0ViM0M7O0UyRWlCVSwrQkFBa0MsRUFBQTs7QTNFakI1Qzs7RTJFcUJVLDZCQUFnQyxFQUFBOztBM0VyQjFDO0UyRU1nQywwQkFBMkIsRUFBQTs7QTNFTjNEOztFMkVTVSw4QkFBK0IsRUFBQTs7QTNFVHpDOztFMkVhVSxnQ0FBaUMsRUFBQTs7QTNFYjNDOztFMkVpQlUsaUNBQWtDLEVBQUE7O0EzRWpCNUM7O0UyRXFCVSwrQkFBZ0MsRUFBQTs7QTNFckIxQztFMkVNZ0Msd0JBQTJCLEVBQUE7O0EzRU4zRDs7RTJFU1UsNEJBQStCLEVBQUE7O0EzRVR6Qzs7RTJFYVUsOEJBQWlDLEVBQUE7O0EzRWIzQzs7RTJFaUJVLCtCQUFrQyxFQUFBOztBM0VqQjVDOztFMkVxQlUsNkJBQWdDLEVBQUE7O0EzRXJCMUM7RTJFMkJ1Qix1QkFBdUIsRUFBQTs7QTNFM0I5Qzs7RTJFOEJNLDJCQUEyQixFQUFBOztBM0U5QmpDOztFMkVrQ00sNkJBQTZCLEVBQUE7O0EzRWxDbkM7O0UyRXNDTSw4QkFBOEIsRUFBQTs7QTNFdENwQzs7RTJFMENNLDRCQUE0QixFQUFBOztBOURUOUI7RWJqQ0o7STJFakJ3QyxvQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSx3QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDBCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsMkJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSx5QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx5QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw2QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLCtCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsZ0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw4QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx1QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwyQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDZCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsOEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw0QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx5QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw2QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLCtCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsZ0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw4QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx1QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwyQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDZCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsOEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw0QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QyxxQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSx5QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDJCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsNEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwwQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywyQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwrQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGlDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsa0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSxnQ0FBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx3QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw0QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDhCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsK0JBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw2QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx3QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw0QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDhCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsK0JBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw2QkFBc0MsRUFBQTtFM0VFaEQ7STJFTWdDLDJCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsK0JBQStCLEVBQUE7RTNFVHpDOztJMkVhVSxpQ0FBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSxrQ0FBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsZ0NBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0MsMEJBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw4QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLGdDQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLGlDQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSwrQkFBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQyx3QkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDRCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsOEJBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsK0JBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLDZCQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLDBCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsOEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSxnQ0FBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSxpQ0FBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsK0JBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0Msd0JBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw0QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLDhCQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLCtCQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSw2QkFBZ0MsRUFBQTtFM0VyQjFDO0kyRTJCdUIsdUJBQXVCLEVBQUE7RTNFM0I5Qzs7STJFOEJNLDJCQUEyQixFQUFBO0UzRTlCakM7O0kyRWtDTSw2QkFBNkIsRUFBQTtFM0VsQ25DOztJMkVzQ00sOEJBQThCLEVBQUE7RTNFdENwQzs7STJFMENNLDRCQUE0QixFQUFBLEVBQzdCOztBOURWRDtFYmpDSjtJMkVqQndDLG9CQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLHdCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsMEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwyQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLHlCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHlCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDZCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsK0JBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxnQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDhCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHVCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDJCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsNkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw4QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDRCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHlCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDZCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsK0JBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxnQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDhCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHVCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDJCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsNkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw4QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDRCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHFCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLHlCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsMkJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSw0QkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDBCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDJCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLCtCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsaUNBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxrQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLGdDQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHdCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDRCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsOEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwrQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDZCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLDBCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDhCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsZ0NBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSxpQ0FBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLCtCQUFzQyxFQUFBO0UzRUVoRDtJMkVqQndDLHdCQUE0QixFQUFBO0UzRWlCcEU7O0kyRWRVLDRCQUFvQyxFQUFBO0UzRWM5Qzs7STJFVlUsOEJBQXdDLEVBQUE7RTNFVWxEOztJMkVOVSwrQkFBMEMsRUFBQTtFM0VNcEQ7O0kyRUZVLDZCQUFzQyxFQUFBO0UzRUVoRDtJMkVNZ0MsMkJBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSwrQkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLGlDQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLGtDQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSxnQ0FBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQywwQkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDhCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsZ0NBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsaUNBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLCtCQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLHdCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsNEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSw4QkFBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSwrQkFBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsNkJBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0MsMEJBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw4QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLGdDQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLGlDQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSwrQkFBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQyx3QkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDRCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsOEJBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsK0JBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLDZCQUFnQyxFQUFBO0UzRXJCMUM7STJFMkJ1Qix1QkFBdUIsRUFBQTtFM0UzQjlDOztJMkU4Qk0sMkJBQTJCLEVBQUE7RTNFOUJqQzs7STJFa0NNLDZCQUE2QixFQUFBO0UzRWxDbkM7O0kyRXNDTSw4QkFBOEIsRUFBQTtFM0V0Q3BDOztJMkUwQ00sNEJBQTRCLEVBQUEsRUFDN0I7O0E5RFZEO0ViakNKO0kyRWpCd0Msb0JBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsd0JBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSwwQkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLDJCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUseUJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsMEJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsOEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSxnQ0FBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGlDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsK0JBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MseUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsNkJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSwrQkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGdDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsOEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsdUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsMkJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSw2QkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLDhCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsNEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MseUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsNkJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSwrQkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGdDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsOEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsdUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsMkJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSw2QkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLDhCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsNEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MscUJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUseUJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSwyQkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLDRCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsMEJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsMkJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsK0JBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSxpQ0FBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGtDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsZ0NBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsMEJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsOEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSxnQ0FBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGlDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsK0JBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0Msd0JBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsNEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSw4QkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLCtCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsNkJBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0MsMEJBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsOEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSxnQ0FBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLGlDQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsK0JBQXNDLEVBQUE7RTNFRWhEO0kyRWpCd0Msd0JBQTRCLEVBQUE7RTNFaUJwRTs7STJFZFUsNEJBQW9DLEVBQUE7RTNFYzlDOztJMkVWVSw4QkFBd0MsRUFBQTtFM0VVbEQ7O0kyRU5VLCtCQUEwQyxFQUFBO0UzRU1wRDs7STJFRlUsNkJBQXNDLEVBQUE7RTNFRWhEO0kyRU1nQywyQkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLCtCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsaUNBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsa0NBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLGdDQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLDBCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsOEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSxnQ0FBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSxpQ0FBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsK0JBQWdDLEVBQUE7RTNFckIxQztJMkVNZ0Msd0JBQTJCLEVBQUE7RTNFTjNEOztJMkVTVSw0QkFBK0IsRUFBQTtFM0VUekM7O0kyRWFVLDhCQUFpQyxFQUFBO0UzRWIzQzs7STJFaUJVLCtCQUFrQyxFQUFBO0UzRWpCNUM7O0kyRXFCVSw2QkFBZ0MsRUFBQTtFM0VyQjFDO0kyRU1nQywwQkFBMkIsRUFBQTtFM0VOM0Q7O0kyRVNVLDhCQUErQixFQUFBO0UzRVR6Qzs7STJFYVUsZ0NBQWlDLEVBQUE7RTNFYjNDOztJMkVpQlUsaUNBQWtDLEVBQUE7RTNFakI1Qzs7STJFcUJVLCtCQUFnQyxFQUFBO0UzRXJCMUM7STJFTWdDLHdCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsNEJBQStCLEVBQUE7RTNFVHpDOztJMkVhVSw4QkFBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSwrQkFBa0MsRUFBQTtFM0VqQjVDOztJMkVxQlUsNkJBQWdDLEVBQUE7RTNFckIxQztJMkUyQnVCLHVCQUF1QixFQUFBO0UzRTNCOUM7O0kyRThCTSwyQkFBMkIsRUFBQTtFM0U5QmpDOztJMkVrQ00sNkJBQTZCLEVBQUE7RTNFbENuQzs7STJFc0NNLDhCQUE4QixFQUFBO0UzRXRDcEM7O0kyRTBDTSw0QkFBNEIsRUFBQSxFQUM3Qjs7QTlEVkQ7RWJqQ0o7STJFakJ3QyxvQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSx3QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDBCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsMkJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSx5QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx5QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw2QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLCtCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsZ0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw4QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx1QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwyQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDZCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsOEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw0QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx5QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw2QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLCtCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsZ0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw4QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx1QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwyQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDZCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsOEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw0QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QyxxQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSx5QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDJCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsNEJBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwwQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywyQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSwrQkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGlDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsa0NBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSxnQ0FBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx3QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw0QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDhCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsK0JBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw2QkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3QywwQkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw4QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLGdDQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsaUNBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSwrQkFBc0MsRUFBQTtFM0VFaEQ7STJFakJ3Qyx3QkFBNEIsRUFBQTtFM0VpQnBFOztJMkVkVSw0QkFBb0MsRUFBQTtFM0VjOUM7O0kyRVZVLDhCQUF3QyxFQUFBO0UzRVVsRDs7STJFTlUsK0JBQTBDLEVBQUE7RTNFTXBEOztJMkVGVSw2QkFBc0MsRUFBQTtFM0VFaEQ7STJFTWdDLDJCQUEyQixFQUFBO0UzRU4zRDs7STJFU1UsK0JBQStCLEVBQUE7RTNFVHpDOztJMkVhVSxpQ0FBaUMsRUFBQTtFM0ViM0M7O0kyRWlCVSxrQ0FBa0MsRUFBQTtFM0VqQjVDOztJMkVx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RUFBQTs7QS9FZ0JsRjtFK0VyQkkseUJBQXdCLEVBQUE7O0EvRXFCNUI7RStFaEJRLHlCQUEwRSxFQUFBOztBL0VnQmxGO0UrRXJCSSx5QkFBd0IsRUFBQTs7QS9FcUI1QjtFK0VoQlEseUJBQTBFLEVBQUE7O0EvRWdCbEY7RStFckJJLHlCQUF3QixFQUFBOztBL0VxQjVCO0UrRWhCUSx5QkFBMEUsRUFBQTs7QS9FZ0JsRjtFK0VyQkkseUJBQXdCLEVBQUE7O0EvRXFCNUI7RStFaEJRLHlCQUEwRSxFQUFBOztBL0VnQmxGO0UrRXJCSSx5QkFBd0IsRUFBQTs7QS9FcUI1QjtFK0VoQlEseUJBQTBFLEVBQUE7O0EvRWdCbEY7RStFckJJLHlCQUF3QixFQUFBOztBL0VxQjVCO0UrRWhCUSx5QkFBMEUsRUFBQTs7QS9FZ0JsRjtFNkV1QmEseUJBQTZCLEVBQUE7O0E3RXZCMUM7RTZFd0JjLHlCQUE2QixFQUFBOztBN0V4QjNDO0U2RTBCaUIsb0NBQWtDLEVBQUE7O0E3RTFCbkQ7RTZFMkJpQiwwQ0FBa0MsRUFBQTs7QTdFM0JuRDtFZ0Z4QkUsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsNkJBQTZCO0VBQzdCLFNBQVMsRUFBQTs7QWhGb0JYO0U2RW1Dd0IsZ0NBQWdDLEVBQUE7O0E3RW5DeEQ7RTZFc0NFLGlDQUFpQztFQUNqQyxnQ0FBZ0MsRUFBQTs7QTdFdkNsQztFNkU0Q2MseUJBQXlCLEVBQUE7O0E3RTVDdkM7RWlGcEJFLDhCQUE4QixFQUFBOztBakZvQmhDO0VpRmhCRSw2QkFBNkIsRUFBQSIsImZpbGUiOiJ0b2dnbGUtYm9vdHN0cmFwLWRhcmsuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmFyaWFibGVzJztcblxuQGltcG9ydCAnZGFyay12YXJpYWJsZXMnO1xuXG5AaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zJztcbkBpbXBvcnQgJ21peGlucy1vdmVycmlkZXMnO1xuQGltcG9ydCAnZGFyay1taXhpbnMnO1xuXG5odG1sIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuYm9keS5ib290c3RyYXAtZGFyayB7XG4gICAgbWFyZ2luOiAwOyAvLyAxXG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4uYm9vdHN0cmFwLWRhcmsge1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9yb290JztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvcmVib290JztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdHlwZSc7XG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2ltYWdlcyc7XG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2NvZGUnO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ncmlkJztcblxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy90YWJsZXMnO1xuICAgIEBpbXBvcnQgJ2RhcmstdGFibGVzJztcblxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcyc7XG4gICAgQGltcG9ydCAnZm9ybS1vdmVycmlkZXMnO1xuXG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2J1dHRvbnMnO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy90cmFuc2l0aW9ucyc7XG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Ryb3Bkb3duJztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYnV0dG9uLWdyb3VwJztcblxuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9pbnB1dC1ncm91cCc7XG4gICAgQGltcG9ydCAnZGFyay1pbnB1dC1ncm91cCc7XG5cbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY3VzdG9tLWZvcm1zJztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbmF2JztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbmF2YmFyJztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY2FyZCc7XG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2JyZWFkY3J1bWInO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9wYWdpbmF0aW9uJztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYmFkZ2UnO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9qdW1ib3Ryb24nO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9hbGVydCc7XG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3Byb2dyZXNzJztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWVkaWEnO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9saXN0LWdyb3VwJztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY2xvc2UnO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy90b2FzdHMnO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9tb2RhbCc7XG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3Rvb2x0aXAnO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9wb3BvdmVyJztcbiAgICBAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvY2Fyb3VzZWwnO1xuICAgIEBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9zcGlubmVycyc7XG4gICAgQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcyc7XG5cbiAgICBAaW1wb3J0ICd0aGVtZWQtdXRpbGl0aWVzLWRhcmsnO1xuXG4gICAgQGltcG9ydCAnZGFyay1zdHlsZXMnO1xufVxuIiwiJGZvcmV2b2x2ZS1ncmVlbjogIzAwN2YwMDtcblxuLy8gc3R5bGVsaW50LWRpc2FibGVcbiR3aGl0ZTogICAgI2ZmZjtcbiRncmF5LTEwMDogI2Y4ZjlmYTtcbiRncmF5LTIwMDogI2U5ZWNlZjtcbiRncmF5LTMwMDogI2RlZTJlNjtcbiRncmF5LTQwMDogI2NlZDRkYTtcbiRncmF5LTUwMDogI2FkYjViZDtcbiRncmF5LTYwMDogIzZjNzU3ZDtcbiRncmF5LTcwMDogIzQ5NTA1NztcbiRncmF5LTgwMDogIzM0M2E0MDtcbiRncmF5LTkwMDogIzIxMjUyOTtcbiRibGFjazogICAgIzAwMDtcblxuJGNvbG9yLWRhcmtlci1wZXJjZW50LWZ1bGw6IDIwJTtcbiRjb2xvci1kYXJrZXItcGVyY2VudC1oYWxmOiAkY29sb3ItZGFya2VyLXBlcmNlbnQtZnVsbCAvIDI7XG4kY29sb3ItZGFya2VyLXBlcmNlbnQtcXVhcnRlcjogJGNvbG9yLWRhcmtlci1wZXJjZW50LWhhbGYgLyAyO1xuJGNvbG9yLWRhcmtlci1wZXJjZW50LW5vbmU6IDA7XG5cbiRibHVlOiAgICBsaWdodGVuKCMwMDdiZmYsICRjb2xvci1kYXJrZXItcGVyY2VudC1oYWxmKTtcbiRpbmRpZ286ICBkYXJrZW4oIzY2MTBmMiwgJGNvbG9yLWRhcmtlci1wZXJjZW50LW5vbmUpO1xuJHB1cnBsZTogIGRhcmtlbigjNmY0MmMxLCAkY29sb3ItZGFya2VyLXBlcmNlbnQtbm9uZSk7XG4kcGluazogICAgZGFya2VuKCNlODNlOGMsICRjb2xvci1kYXJrZXItcGVyY2VudC1ub25lKTtcbiRyZWQ6ICAgICBkYXJrZW4oI2RjMzU0NSwgJGNvbG9yLWRhcmtlci1wZXJjZW50LW5vbmUpO1xuJG9yYW5nZTogIGRhcmtlbigjZmQ3ZTE0LCAkY29sb3ItZGFya2VyLXBlcmNlbnQtbm9uZSk7XG4keWVsbG93OiAgbGlnaHRlbigjZmZjMTA3LCAkY29sb3ItZGFya2VyLXBlcmNlbnQtaGFsZik7XG4kZ3JlZW46ICAgZGFya2VuKCMyOGE3NDUsICRjb2xvci1kYXJrZXItcGVyY2VudC1ub25lKTtcbiR0ZWFsOiAgICBkYXJrZW4oIzIwYzk5NywgJGNvbG9yLWRhcmtlci1wZXJjZW50LW5vbmUpO1xuJGN5YW46ICAgIGxpZ2h0ZW4oIzE3YTJiOCwgJGNvbG9yLWRhcmtlci1wZXJjZW50LW5vbmUpO1xuXG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gICRjb2xvcnMsXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWU7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwO1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbjtcbiRpbmZvOiAgICAgICAgICAkY3lhbjtcbiR3YXJuaW5nOiAgICAgICAkb3JhbmdlO1xuJGRhbmdlcjogICAgICAgICRyZWQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMzAwO1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMDtcblxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAkdGhlbWUtY29sb3JzLFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gIClcbik7XG5cbi8vJGJvZHktYmc6ICAgICAgICRncmF5LTkwMDsgLy8jMUUxRTFFO1xuJGJvZHktYmc6ICAgICAjMTkxZDIxO1xuJGJvZHktY29sb3I6ICAjZDNkM2QzOyAvLyRncmF5LTIwMDsgLy8jRDRENEQ0O1xuXG4keWlxLXRleHQtZGFyazogJGdyYXktODAwO1xuJHlpcS10ZXh0LWxpZ2h0OiAkZ3JheS0yMDA7XG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJvZHktY29sb3IsIDE1JSk7XG4vLyAkbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgbm9uZTtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSk7XG4vLyRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICB1bmRlcmxpbmU7XG5cblxuLy8gVXRpbGl0aWVzIChib3JkZXJzKVxuJGJvcmRlci1jb2xvcjogJGRhcms7XG5cbi8vIENhcmRzXG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4xMjUpO1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDMpO1xuLy8gJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTIwMDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS05MDA7IC8vJGJvZHktYmcgP1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjEyNSk7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS03MDAgJGdyYXktNzAwICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS0xMDA7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZztcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTcwMCAkZ3JheS03MDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICRibGFjaztcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5O1xuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJvZHktYmcsIC4wNSk7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjEyNSk7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTkwMDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yO1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmc7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTQwMDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnO1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDA7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yO1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktODAwO1xuXG4vLyBGb3Jtc1xuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRibGFjaztcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS04MDA7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0zMDA7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNjAwO1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCR3aGl0ZSwgLjA3NSk7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZztcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpO1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvcjtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvcjtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDA7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yO1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNDAwO1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnO1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktODAwO1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktMjAwO1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJHdoaXRlLCAuMDc1KTtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbi8vIE1vZGFsc1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAkYm9keS1iZztcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgcmdiYSgkd2hpdGUsIC4yKTtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktODAwO1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcblxuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkd2hpdGU7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgIDAgMXB4IDAgJGJsYWNrO1xuXG4vLyAvLyBUYWJsZXNcbi8vICR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuLy8gJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSk7XG4vLyAkdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSk7XG4vLyAkdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmc7XG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvcjtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3I7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3I7XG5cbi8vICR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMDtcbi8vICR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMDtcblxuLy8gJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgICAkZ3JheS05MDA7XG4vLyAkdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpO1xuLy8gJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSk7XG4vLyAkdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICAgIGxpZ2h0ZW4oJGdyYXktOTAwLCA3LjUlKTtcbi8vICR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgJGJvZHktYmc7XG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDA7XG5cbi8vICR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkO1xuXG5cbi8vIEp1bWJvdHJvblxuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktODAwO1xuXG4vLyBIUlxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC4xKTtcblxuXG4vLyBUb2FzdHNcbi8vJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuODUpO1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSk7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkd2hpdGUsIC4xKTtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNDAwO1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkYmxhY2ssIC44NSk7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIC4wNSk7XG5cbi8vIERyb3Bkb3duc1xuLy9cbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yO1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrO1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC4xNSk7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS04MDA7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkd2hpdGUsIC4xNzUpO1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0xMDA7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBsaWdodGVuKCRncmF5LTEwMCwgNSUpO1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktOTAwO1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvcjtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnO1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS00MDA7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTQwMDtcblxuLy8gQnJlYWRjcnVtYnNcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTgwMDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTQwMDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTQwMDtcblxuLy8gUGFnaW5hdGlvblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3I7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkYmxhY2s7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS03MDA7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdztcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3I7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS04MDA7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS03MDA7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yO1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmc7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTQwMDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRibGFjaztcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTcwMDtcblxuLy8gQ29kZVxuLy8gJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbms7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0xMDA7XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjogICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNCcgdmlld0JveD0nMCAwIDQgNCc+PHBhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIC41ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgc3VidHJhY3QoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDQpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgbm8tcmVwZWF0ICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGFkZCgxZW0gKiAuNzUsICgyICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICogLjc1KSArICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0OiAgICAgIDc1dmggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVG9hc3RzXG5cbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuLy8gTWFyZ2luIGJldHdlZW4gZWxlbWVudHMgaW4gZm9vdGVyLCBtdXN0IGJlIGxvd2VyIHRoYW4gb3IgZXF1YWwgdG8gMiAqICRtb2RhbC1pbm5lci1wYWRkaW5nXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjVMNC4yNSA0bDIuNS0yLjVMNS4yNSAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG4kdXNlci1zZWxlY3RzOiBhbGwsIGF1dG8sIG5vbmUgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIHJlc3BvbnNpdmUgZm9udCBzaXplc1xuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvdjgueC9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgZm9udCBzaXplXG4kcmZzLWJhc2UtZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1mb250LXNpemUtdW5pdCAhPSByZW0gYW5kICRyZnMtZm9udC1zaXplLXVuaXQgIT0gcHgge1xuICBAZXJyb3IgXCJgI3skcmZzLWZvbnQtc2l6ZS11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1mb250LXNpemUtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgZm9udC1zaXplIHN0YXJ0cyBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuQGlmICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHB4IGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBlbSBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcmVtIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIFJlc2l6ZSBmb250IHNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxuJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0OiB1bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInB4XCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSwgJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInJlbVwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUsIGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInB4XCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCBkaXZpZGUoJHJmcy1icmVha3BvaW50ICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBkaXNhYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLWRpc2FibGUtY2xhc3Mge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBcImRpc2FibGVcIiB7XG4gICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSwgd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGVuYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1lbmFibGUtY2xhc3Mge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBtZWRpYSBxdWVyeSBuZWVkcyB0byBiZSB1c2VkXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeSgkbXEtdmFsdWUpIHtcbiAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSwgKG1heC1oZWlnaHQ6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250IHNpemUgbWl4aW5cbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBDYWNoZSAkZnMgdW5pdFxuICAkZnMtdW5pdDogaWYodHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIHVuaXQoJGZzKSwgZmFsc2UpO1xuXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcbiAgJHJmcy1zdWZmaXg6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gIEBpZiBub3QgJGZzLXVuaXQgb3IgJGZzLXVuaXQgIT0gXCJcIiBhbmQgJGZzLXVuaXQgIT0gXCJweFwiIGFuZCAkZnMtdW5pdCAhPSBcInJlbVwiIG9yICRmcyA9PSAwIHtcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBSZW1vdmUgdW5pdCBmcm9tICRmcyBmb3IgY2FsY3VsYXRpb25zXG4gICAgQGlmICRmcy11bml0ID09IFwicHhcIiB7XG4gICAgICAkZnM6IGRpdmlkZSgkZnMsICRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6IGRpdmlkZSgkZnMsIGRpdmlkZSgkZnMgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250IHNpemVcbiAgICAkcmZzLXN0YXRpYzogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCRmcywgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skZnN9cHgpO1xuXG4gICAgLy8gT25seSBhZGQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZSBmb250IHNpemUgaXMgYmlnZ2VyIHRoYW4gdGhlIG1pbmltdW0gZm9udCBzaXplXG4gICAgQGlmICRmcyA8PSAkcmZzLWJhc2UtZm9udC1zaXplIG9yIG5vdCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XG4gICAgICBmb250LXNpemU6ICN7JHJmcy1zdGF0aWN9I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSBmb250IHNpemUgZm9yICRmc1xuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArIGRpdmlkZSgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJGZzIGFuZCB0aGUgbWluaW11bSBmb250IHNpemVcbiAgICAgICRmcy1kaWZmOiAkZnMgLSAkZnMtbWluO1xuXG4gICAgICAvLyBCYXNlIGZvbnQtc2l6ZSBmb3JtYXR0aW5nXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3tkaXZpZGUoJGZzLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skZnMtbWlufXB4KTtcblxuICAgICAgLy8gVXNlIGB2bWluYCBpZiB0d28tZGltZW5zaW9uYWwgaXMgZW5hYmxlZFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3tkaXZpZGUoJGZzLWRpZmYgKiAxMDAsICRyZnMtYnJlYWtwb2ludCl9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgIC8vIFNldCB0aGUgY2FsY3VsYXRlZCBmb250LXNpemVcbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG5cbiAgICAgIC8vIEJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgJG1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcblxuICAgICAgQGluY2x1ZGUgX3Jmcy1kaXNhYmxlLWNsYXNzIHtcbiAgICAgICAgZm9udC1zaXplOiAjeyRyZnMtc3RhdGljfSN7JHJmcy1zdWZmaXh9O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5KCRtcS12YWx1ZSkge1xuICAgICAgICBAaW5jbHVkZSBfcmZzLWVuYWJsZS1jbGFzcyB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5jbHVkZSBzYWZhcmkgaWZyYW1lIHJlc2l6ZSBmaXggaWYgbmVlZGVkXG4gICAgICAgIG1pbi13aWR0aDogaWYoJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4LCAoMCAqIDF2dyksIG51bGwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW5zIHVzZSBSRlMgdG8gcmVzY2FsZSB0aGUgZm9udCBzaXplXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4vLyBGdXR1cmUtcHJvb2YgcnVsZTogaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IDpmb2N1cy12aXNpYmxlLCBzdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZVxuLy8gb24gZWxlbWVudHMgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IHJlY2VpdmUgZm9jdXMgYnV0IHdvdWxkbid0IG5vcm1hbGx5IHNob3cgYSB2aXNpYmxlXG4vLyBmb2N1cyBvdXRsaW5lLiBJbiBnZW5lcmFsLCB0aGlzIHdvdWxkIG1lYW4gdGhhdCB0aGUgb3V0bGluZSBpcyBvbmx5IGFwcGxpZWQgaWYgdGhlXG4vLyBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgZWxlbWVudCByZWNlaXZpbmcgcHJvZ3JhbW1hdGljIGZvY3VzIHdhcyBhIGtleWJvYXJkIGludGVyYWN0aW9uLFxuLy8gb3IgdGhlIGJyb3dzZXIgaGFzIHNvbWVob3cgZGV0ZXJtaW5lZCB0aGF0IHRoZSB1c2VyIGlzIHByaW1hcmlseSBhIGtleWJvYXJkIHVzZXIgYW5kL29yXG4vLyB3YW50cyBmb2N1cyBvdXRsaW5lcyB0byBhbHdheXMgYmUgcHJlc2VudGVkLlxuLy9cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvOmZvY3VzLXZpc2libGVcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gNS4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG59XG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDgwJSk7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDc1JSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy9cbi8vIExpbmtzXG4vL1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8vIERpc2FibGUgYXV0by1oaWRpbmcgc2Nyb2xsYmFyIGluIElFICYgbGVnYWN5IEVkZ2UgdG8gYXZvaWQgb3ZlcmxhcCxcbiAgLy8gbWFraW5nIGl0IGltcG9zc2libGUgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgY29udGVudFxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2ZyB7XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBTVkcgb3ZlcmZsb3cgYnVnIGluIElFMTAvMTEgaXMgc3RpbGwgcmVxdWlyZWQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI2ODc4XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtdGgtZm9udC13ZWlnaHQ7IC8vIDFcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRsYWJlbC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cbkBpZiAkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zIHtcbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS9jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyICogLjU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbiIsIi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGtiZC1ib3gtc2hhZG93KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDEwMCUpO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAqIC41O1xufVxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG1ha2UtY29udGFpbmVyLW1heC13aWR0aHNgIG1peGluXCIsIFwidjQuNS4yXCIsIFwidjVcIik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gICAgbWF4LXdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG4vL1xuLy8gUmVxdWlyZXMgdGhlIHVzZSBvZiBxdW90ZXMgYXJvdW5kIGRhdGEgVVJJcy5cblxuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcbiAgICAgIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJ1cmwoXCIpID09IDEge1xuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAqIC4wMDE7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTIpICE9IG51bWJlciB7XG4gICAgJHZhbHVlMjogdW5xdW90ZShcIihcIikgKyAkdmFsdWUyICsgdW5xdW90ZShcIilcIik7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gLSAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgLSBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gZGFyay10YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gICAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgICAmLFxuICAgICAgICA+IHRoLFxuICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAgIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAgIC50YWJsZS1ob3ZlciB7XG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgICAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcblxuICAgICAgICAgICAgICAgID4gdGQsXG4gICAgICAgICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGRhcmstdGFibGUtcm93LXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSk7XG59XG5cbkBpbmNsdWRlIGRhcmstdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuLnRhYmxlLWRhcmsge1xuICAgIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAvLyBSZW1vdmUgc2VsZWN0IG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGlucHV0LWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICZbc2l6ZV0sXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG59XG5cblxuLy8gRm9ybSBncmlkXG4vL1xuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgbWFwLWdldCgkZGF0YSwgY29sb3IpLCBtYXAtZ2V0KCRkYXRhLCBpY29uKSk7XG59XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmb3JtLWNvbnRyb2wtZm9jdXMoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG4vLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzE1NTdcbiAgICAvLyBBbGlnbiB0b29sdGlwIHRvIGZvcm0gZWxlbWVudHNcbiAgICAuZm9ybS1yb3cgPiAuY29sID4gJixcbiAgICAuZm9ybS1yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSA+ICYge1xuICAgICAgbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lciAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtcGFkZGluZy14ICogNCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtcGFkZGluZy14ICogMiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgJGN1c3RvbS1zZWxlY3QtYmcgZXNjYXBlLXN2ZygkaWNvbikgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZSBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLndhcy12YWxpZGF0ZWQge1xuICAgIEBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xuICAgICAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pKTtcblxuICAgICAgICAuaXMtI3skc3RhdGV9IH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgICAgLmlzLSN7JHN0YXRlfSB+IC4jeyRzdGF0ZX0tdG9vbHRpcCxcbiAgICAgICAgOiN7JHN0YXRlfSB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICAgIDojeyRzdGF0ZX0gfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBjdXJzb3I6IGlmKCRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMsIHBvaW50ZXIsIG51bGwpO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLndpZHRoIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1wYWRkaW5nLXg7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gUG9wcGVyIGlzIGVuYWJsZWQsIHJlc2V0IHRoZSBiYXNpYyBkcm9wZG93biBwb3NpdGlvblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5kcm9wZG93bi1tZW51IHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZywgJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXksIHRydWUpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duKCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcHJpZ2h0ICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wbGVmdCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxuICAvLyBib3JkZXItcmFkaXVzIG92ZXJyaWRlcy5cbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmJ0bixcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIuaW5wdXQtZ3JvdXAge1xuICAgICYgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgICAgICAgJiA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmID4gLmlucHV0LWdyb3VwLXByZXBlbmQge1xuICAgICAgICAmID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtY3Vyc29yO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41O1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgYm9yZGVyOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41O1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6IDUwJSAvICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplfSBuby1yZXBlYXQ7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIGNoZWNrYm94ZXMuXG5cbi5jdXN0b20tY2hlY2tib3gge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhZGlvc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciByYWRpb3MuXG5cbi5jdXN0b20tcmFkaW8ge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzd2l0Y2hlc1xuLy9cbi8vIFR3ZWFrIGEgZmV3IHRoaW5ncyBmb3Igc3dpdGNoZXNcblxuLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtd2lkdGg7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiBhZGQoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41LCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAqIC41OyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgKiAuNTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC1sb3dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyAvLyBhcmJpdHJhcnk/XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBDb250ZW50c1xuLy9cbi8vIE5hdmJhclxuLy8gTmF2YmFyIGJyYW5kXG4vLyBOYXZiYXIgbmF2XG4vLyBOYXZiYXIgdGV4dFxuLy8gTmF2YmFyIGRpdmlkZXJcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXkgJG5hdmJhci1wYWRkaW5nLXg7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAuY29udGFpbmVyLFxuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItYnJhbmQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgaW1hZ2Ugc2l6ZSBidWcgaW4gSUVcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yODg1NVxuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15ICogLjU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBmbGV4LXNocmluazogMDsgLy8gRm9yIElFOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5Mzk2XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG4uY2FyZC1kZWNrIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogLSRjYXJkLWRlY2stbWFyZ2luO1xuXG4gICAgLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuXG4gID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIH1cblxuICAgID4gLmNhcmQtaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYnJlYWRjcnVtYi1mb250LXNpemUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xuICAgIGJveC1zaGFkb3c6ICRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAvLyBPcGluaW9uYXRlZDogcmVtb3ZlIHRoZSBcImhhbmRcIiBjdXJzb3Igc2V0IHByZXZpb3VzbHkgZm9yIC5wYWdlLWxpbmtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJGxpbmUtaGVpZ2h0LWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYmFkZ2UtdHJhbnNpdGlvbik7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgKiAuNSk7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYm9yZGVyLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYgKyAmIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNsb3NlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBvcGFjaXR5OiAuNTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi50b2FzdCB7XG4gIC8vIFByZXZlbnRzIGZyb20gc2hyaW5raW5nIGluIElFMTEsIHdoZW4gaW4gYSBmbGV4IGNvbnRhaW5lclxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODM0MVxuICBmbGV4LWJhc2lzOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHN1YnRyYWN0KCR0b2FzdC1ib3JkZXItcmFkaXVzLCAkdG9hc3QtYm9yZGVyLXdpZHRoKSk7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcbiAgICBoZWlnaHQ6IG1pbi1jb250ZW50OyAvLyBSZXNldCBoZWlnaHQgdG8gMCBleGNlcHQgb24gSUVcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gKiAuNTtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJHBvcG92ZXItYm9yZGVyLXJhZGl1cztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuXG5AaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy1ncmFkaWVudC12YXJpYW50YCBtaXhpblwiLCBcInY0LjUuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZShkaXZpZGUoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXksICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xuICAudXNlci1zZWxlY3QtI3skdmFsdWV9IHsgdXNlci1zZWxlY3Q6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmIFwiI3skc2l6ZX1cIiAhPSBcIjBcIiB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iXX0= */
