@charset "UTF-8";
:root {
  --lead: 1.5;
  --unit: calc(var(--lead) * 1rem);
  --remPx: 16px;
  --boxSizing: border-box; }

*, *:after, *:before {
  box-sizing: border-box;
  box-sizing: var(--boxSizing);
  transition: all 300ms ease, font-size 0s;
  background-repeat: no-repeat; }

.reset-box-sizing {
  --boxSizing: content-box; }

html {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  padding: 0;
  font-family: "Work Sans"; }

main {
  display: block; }

dd, dt, li {
  margin-bottom: 0.75rem; }

blockquote,
dl,
figure,
form,
ol,
p,
pre,
table,
ul {
  margin-bottom: 3rem; }

:root {
  --remPx: 16px;
  --rem: 16; }

html {
  font-size: 100%; }

@media screen and (min-width: 50rem) {
  :root {
    --remPx: 17px;
    --rem: 17; }
  html {
    font-size: 106.25%; } }

@media screen and (min-width: 75rem) {
  :root {
    --remPx: 18px;
    --rem: 18; }
  html {
    font-size: 112.5%; } }

@media screen and (min-width: 35rem) {
  :root {
    --remPx: 16px;
    --rem: 16; }
  html {
    font-size: 100%; } }

h1, h2, h3, h4, h5, h6, .h1, .h2, .title, .intro-paragraph h1, .intro-paragraph h2, .intro-paragraph h3, .intro-paragraph h4, .intro-paragraph h5, .intro-paragraph h6, .intro-paragraph .h1, .intro-paragraph .h2, .intro-paragraph .h3, .intro-paragraph .h4, .intro-paragraph .h5, .intro-paragraph .h6, .h3, .h4, .h5, .h6,
.heading {
  letter-spacing: -0.03em;
  font-weight: 400;
  color: #FFB703;
  font-family: Work Sans;
  margin: 0 0 0.75rem 0; }

h1, .h1 {
  font-size: 1.625rem;
  line-height: 1.25;
  margin: 1.69062rem 0 0.77812rem 0; }

h2, .h2, .title, .intro-paragraph h1, .intro-paragraph h2, .intro-paragraph h3, .intro-paragraph h4, .intro-paragraph h5, .intro-paragraph h6, .intro-paragraph .h1, .intro-paragraph .h2, .intro-paragraph .h3, .intro-paragraph .h4, .intro-paragraph .h5, .intro-paragraph .h6 {
  font-size: 1.4375rem;
  line-height: 1.25;
  margin: 1.91094rem 0 0.79219rem 0; }

h3, .h3 {
  font-size: 1.25rem;
  line-height: 1.25;
  margin: 2.13125rem 0 0.80625rem 0; }

h4, .h4 {
  font-size: 1.125rem;
  line-height: 1.25;
  margin: 2.27813rem 0 0.81562rem 0; }

h5, .h5 {
  font-size: 1rem;
  line-height: 1.5;
  margin: 2.25rem 0 0.75rem 0; }

h6, .h6 {
  font-size: 0.875rem;
  line-height: 1.71429;
  margin: 2.25rem 0 0.75rem 0; }

@media screen and (min-width: 35rem) {
  h1, .h1 {
    font-size: 1.625rem;
    line-height: 1.25;
    margin: 1.69062rem 0 0.77812rem 0; }
  h2, .h2, .title, .intro-paragraph h1, .intro-paragraph h2, .intro-paragraph h3, .intro-paragraph h4, .intro-paragraph h5, .intro-paragraph h6, .intro-paragraph .h1, .intro-paragraph .h2, .intro-paragraph .h3, .intro-paragraph .h4, .intro-paragraph .h5, .intro-paragraph .h6 {
    font-size: 1.4375rem;
    line-height: 1.25;
    margin: 1.91094rem 0 0.79219rem 0; }
  h3, .h3 {
    font-size: 1.25rem;
    line-height: 1.25;
    margin: 2.13125rem 0 0.80625rem 0; }
  h4, .h4 {
    font-size: 1.125rem;
    line-height: 1.25;
    margin: 2.27813rem 0 0.81562rem 0; }
  h5, .h5 {
    font-size: 1rem;
    line-height: 1.5;
    margin: 2.25rem 0 0.75rem 0; }
  h6, .h6 {
    font-size: 0.875rem;
    line-height: 1.71429;
    margin: 2.25rem 0 0.75rem 0; } }

@media screen and (min-width: 50rem) {
  h1, .h1 {
    font-size: 1.6875rem;
    line-height: 1.25;
    margin: 1.61719rem 0 0.77344rem 0; }
  h2, .h2, .title, .intro-paragraph h1, .intro-paragraph h2, .intro-paragraph h3, .intro-paragraph h4, .intro-paragraph h5, .intro-paragraph h6, .intro-paragraph .h1, .intro-paragraph .h2, .intro-paragraph .h3, .intro-paragraph .h4, .intro-paragraph .h5, .intro-paragraph .h6 {
    font-size: 1.5rem;
    line-height: 1.25;
    margin: 1.8375rem 0 0.7875rem 0; }
  h3, .h3 {
    font-size: 1.3125rem;
    line-height: 1.25;
    margin: 2.05781rem 0 0.80156rem 0; }
  h4, .h4 {
    font-size: 1.125rem;
    line-height: 1.25;
    margin: 2.27813rem 0 0.81562rem 0; }
  h5, .h5 {
    font-size: 1rem;
    line-height: 1.5;
    margin: 2.25rem 0 0.75rem 0; }
  h6, .h6 {
    font-size: 0.875rem;
    line-height: 1.71429;
    margin: 2.25rem 0 0.75rem 0; } }

@media screen and (min-width: 75rem) {
  h1, .h1 {
    font-size: 1.875rem;
    line-height: 1.25;
    margin: 2.89687rem 0 0.75937rem 0; }
  h2, .h2, .title, .intro-paragraph h1, .intro-paragraph h2, .intro-paragraph h3, .intro-paragraph h4, .intro-paragraph h5, .intro-paragraph h6, .intro-paragraph .h1, .intro-paragraph .h2, .intro-paragraph .h3, .intro-paragraph .h4, .intro-paragraph .h5, .intro-paragraph .h6 {
    font-size: 1.5625rem;
    line-height: 1.25;
    margin: 1.76406rem 0 0.78281rem 0; }
  h3, .h3 {
    font-size: 1.375rem;
    line-height: 1.25;
    margin: 1.98438rem 0 0.79688rem 0; }
  h4, .h4 {
    font-size: 1.1875rem;
    line-height: 1.25;
    margin: 2.20469rem 0 0.81094rem 0; }
  h5, .h5 {
    font-size: 1rem;
    line-height: 1.5;
    margin: 2.25rem 0 0.75rem 0; }
  h6, .h6 {
    font-size: 0.875rem;
    line-height: 1.71429;
    margin: 2.25rem 0 0.75rem 0; } }

b, strong {
  font-weight: bolder; }

small {
  font-size: 75%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline dotted; }

code, kbd, samp {
  font-family: "IBM Plex Mono", monospace;
  font-size: 1em; }

p, .paragraph {
  margin: 0 0 1.5rem 0; }

pre, .pre {
  font-family: "IBM Plex Mono", monospace;
  font-size: 1em;
  overflow-y: hidden;
  overflow-x: auto;
  white-space: pre; }
  pre > code, .pre > code {
    border-radius: 0;
    display: block;
    padding: 1rem 1.5rem;
    white-space: pre; }

blockquote, .blockquote {
  border-left: 0.25rem solid #FFB703; }
  blockquote *:last-child, .blockquote *:last-child {
    margin-bottom: 0; }

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

dl,
ol,
ul {
  list-style: none;
  margin-top: 0;
  padding-left: 0; }
  dl dl,
  dl ol,
  dl ul,
  ol dl,
  ol ol,
  ol ul,
  ul dl,
  ul ol,
  ul ul {
    font-size: 90%;
    margin: 1.5rem 0 1.5rem 3rem; }

ol {
  list-style: decimal inside; }

ul {
  list-style: circle inside; }

table {
  border-spacing: 0;
  width: 100%; }

td,
th {
  padding: 0.75rem;
  text-align: left; }
  td:first-child,
  th:first-child {
    padding-left: 0; }
  td:last-child,
  th:last-child {
    padding-right: 0; }

a {
  color: #1800AD;
  text-decoration: none;
  cursor: pointer;
  font-weight: 500; }
  a:focus, a:hover {
    color: #1800AD;
    text-decoration: inherit; }

a.text {
  color: #1800AD; }
  a.text:focus, a.text:hover {
    color: #1800AD; }

img {
  border-style: none;
  max-width: 100%; }

button, input {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

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

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

.button,
button,
input[type='button'],
input[type='reset'],
input[type='submit'] {
  color: white;
  background-color: #FFB703;
  border: 1px solid;
  border-color: #FFB703;
  border-radius: 3px;
  font-weight: 700;
  cursor: pointer;
  display: inline-block;
  font-size: 0.75rem;
  font-family: "Work Sans";
  letter-spacing: 0.05em;
  line-height: 2.25rem;
  height: 2.25rem;
  margin: 0 0 0.75rem 0;
  padding: 0 1.5rem;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  transition: filter 250ms; }
  .button:focus, .button:hover,
  button:focus,
  button:hover,
  input[type='button']:focus,
  input[type='button']:hover,
  input[type='reset']:focus,
  input[type='reset']:hover,
  input[type='submit']:focus,
  input[type='submit']:hover {
    box-shadow: 0 0 2px 3px rgba(0, 0, 0, 0.12), inset 0 0 16px rgba(230, 225, 132, 0.1); }
  .button[disabled], .button.is-disabled,
  button[disabled],
  button.is-disabled,
  input[type='button'][disabled],
  input[type='button'].is-disabled,
  input[type='reset'][disabled],
  input[type='reset'].is-disabled,
  input[type='submit'][disabled],
  input[type='submit'].is-disabled {
    filter: saturate(25%);
    cursor: default;
    opacity: 0.75; }
  .button.is-small,
  button.is-small,
  input[type='button'].is-small,
  input[type='reset'].is-small,
  input[type='submit'].is-small {
    line-height: 1.5rem;
    height: 1.5rem;
    padding: 0 0.375rem; }
  .button.is-primary,
  button.is-primary,
  input[type='button'].is-primary,
  input[type='reset'].is-primary,
  input[type='submit'].is-primary {
    color: white;
    background-color: #1800AD;
    border-color: #1800AD; }
  .button.is-secondary,
  button.is-secondary,
  input[type='button'].is-secondary,
  input[type='reset'].is-secondary,
  input[type='submit'].is-secondary {
    color: white;
    background-color: #1800AD;
    border-color: #1800AD; }
  .button.is-positive,
  button.is-positive,
  input[type='button'].is-positive,
  input[type='reset'].is-positive,
  input[type='submit'].is-positive {
    color: #1809a7;
    background-color: #16ab39;
    border-color: #16ab39; }
  .button.is-warning,
  button.is-warning,
  input[type='button'].is-warning,
  input[type='reset'].is-warning,
  input[type='submit'].is-warning {
    color: #2309a5;
    background-color: #fbbd08;
    border-color: #fbbd08; }
  .button.is-negative,
  button.is-negative,
  input[type='button'].is-negative,
  input[type='reset'].is-negative,
  input[type='submit'].is-negative {
    color: #fdf2f4;
    background-color: #de011e;
    border-color: #de011e; }
  .button.is-clear,
  button.is-clear,
  input[type='button'].is-clear,
  input[type='reset'].is-clear,
  input[type='submit'].is-clear {
    background-color: transparent;
    border-color: transparent;
    color: inherit;
    cursor: pointer;
    font-size: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    height: initial;
    margin: initial;
    padding: 0;
    text-align: inherit;
    text-decoration: inherit;
    text-transform: inherit;
    white-space: nowrap; }
    .button.is-clear:focus, .button.is-clear:hover,
    button.is-clear:focus,
    button.is-clear:hover,
    input[type='button'].is-clear:focus,
    input[type='button'].is-clear:hover,
    input[type='reset'].is-clear:focus,
    input[type='reset'].is-clear:hover,
    input[type='submit'].is-clear:focus,
    input[type='submit'].is-clear:hover {
      box-shadow: none;
      text-decoration: underline; }
  .button.is-ghost,
  button.is-ghost,
  input[type='button'].is-ghost,
  input[type='reset'].is-ghost,
  input[type='submit'].is-ghost {
    background-color: transparent;
    color: #FFB703; }

input,
optgroup,
select {
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.15;
  margin: 0; }

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

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

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

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

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

input[type='email']:hover, input[type='email']:focus,
input[type='number']:hover,
input[type='number']:focus,
input[type='password']:hover,
input[type='password']:focus,
input[type='search']:hover,
input[type='search']:focus,
input[type='tel']:hover,
input[type='tel']:focus,
input[type='text']:hover,
input[type='text']:focus,
input[type='url']:hover,
input[type='url']:focus,
input[type='color']:hover,
input[type='color']:focus,
input[type='date']:hover,
input[type='date']:focus,
input[type='month']:hover,
input[type='month']:focus,
input[type='week']:hover,
input[type='week']:focus,
input[type='datetime']:hover,
input[type='datetime']:focus,
input[type='datetime-local']:hover,
input[type='datetime-local']:focus,
input:not([type]):hover,
input:not([type]):focus,
textarea:hover,
textarea:focus,
select:hover,
select:focus {
  background-color: #fafafa; }

input[type='email']:focus,
input[type='number']:focus,
input[type='password']:focus,
input[type='search']:focus,
input[type='tel']:focus,
input[type='text']:focus,
input[type='url']:focus,
input[type='color']:focus,
input[type='date']:focus,
input[type='month']:focus,
input[type='week']:focus,
input[type='datetime']:focus,
input[type='datetime-local']:focus,
input:not([type]):focus,
textarea:focus,
select:focus {
  box-shadow: inset 0 0 0.5rem 2px rgba(0, 0, 0, 0.08), 0 0 0 2px #ffb703;
  filter: none;
  outline: 0; }

input[type='email'],
input[type='number'],
input[type='password'],
input[type='search'],
input[type='tel'],
input[type='text'],
input[type='url'],
input[type='color'],
input[type='date'],
input[type='month'],
input[type='week'],
input[type='datetime'],
input[type='datetime-local'],
input:not([type]),
textarea,
select {
  color: #240db1;
  background-color: white;
  border: 1px solid;
  border-color: #FFB703;
  border-radius: 3px;
  min-width: 15em;
  width: 100%;
  max-width: 30rem;
  display: block;
  font-size: 1rem;
  font-family: inherit;
  height: 2.625rem;
  line-height: 1.5;
  margin: 0.375rem 0 1.5rem 0;
  padding: 0 1.125rem; }

input[type='color'] {
  padding: 0.375rem 1.125rem; }

input[type='date'],
input[type='month'],
input[type='week'],
input[type='datetime-local'],
textarea {
  font-size: var(--remPx); }

input[type='checkbox'],
input[type='radio'] {
  display: inline;
  margin-right: 1em; }

input[type='checkbox'],
input[type='radio'] {
  z-index: -1;
  transform: scale(1.5);
  outline: none; }

input[type='checkbox']::after,
input[type='radio']::after {
  display: block;
  content: "";
  z-index: 1;
  cursor: pointer;
  box-sizing: border-box;
  width: 1em;
  height: 1em;
  position: relative;
  background-color: white;
  box-shadow: inset 0 0 0.5em rgba(0, 0, 0, 0.1), inset 0 0 0 1px rgba(0, 0, 0, 0.2);
  outline-color: #FFB703; }

input[type='checkbox']::after {
  bottom: 0.9em;
  right: 0.15em;
  border-radius: 0.2em; }

input[type='checkbox']::before {
  content: "";
  display: block;
  z-index: 2;
  border: solid transparent;
  border-width: 0 0.2em 0.2em 0;
  transform: rotate(45deg);
  width: 0.4em;
  height: 0.7em;
  position: relative;
  right: -0.2em;
  bottom: 0.1em; }

input[type='radio']::after {
  border-radius: 50%;
  bottom: 0.25em;
  right: 0.1em; }

input[type='checkbox']:checked::before {
  border-color: white; }

input[type='checkbox']:checked::after {
  background-color: #FFB703;
  transition: background-color 0ms; }

input[type='radio']:checked::after {
  border: 0.33333em solid #FFB703;
  box-shadow: none; }

input[type='checkbox']:hover:not(:disabled)::after,
input[type='radio']:hover:not(:disabled)::after {
  background-color: #eee; }

input[type='checkbox']:checked:hover:not(:disabled)::after {
  background-color: #c5892e; }

input[type='radio']:checked:hover:not(:disabled)::after {
  background-color: white;
  border-color: #c5892e; }

input[type='radio']:disabled::after {
  filter: brightness(110%); }

input[type='checkbox']:checked:disabled::after {
  background-color: #d0b571; }

input[type='radio']:checked:disabled::after {
  border: 0.33333em solid silver; }

select {
  padding-right: 3rem; }

textarea {
  overflow: auto;
  padding: 0.75rem 1.125rem;
  min-height: 7.5rem; }

legend, .conversation-balloon textarea::placeholder, input + .helptext,
textarea + .helptext,
select + .helptext,
input + br + .helptext,
textarea + br + .helptext,
select + br + .helptext {
  display: table;
  max-width: 30rem;
  white-space: normal;
  color: inherit;
  padding: 0;
  text-align: right;
  font-size: 0.875rem; }

label {
  display: block;
  font-weight: 700;
  margin-bottom: 1.5rem; }

label + input[type='email'],
label + input[type='number'],
label + input[type='password'],
label + input[type='search'],
label + input[type='tel'],
label + input[type='text'],
label + input[type='url'],
label + input[type='color'],
label + input[type='date'],
label + input[type='month'],
label + input[type='week'],
label + input[type='datetime'],
label + input[type='datetime-local'],
label + input:not([type]),
label + textarea,
label + select {
  margin-top: -1.125rem; }

input[type='email'] + legend, .conversation-balloon input[type='email'] + textarea::placeholder, input[type='email'] + .helptext,
input[type='number'] + legend,
.conversation-balloon input[type='number'] + textarea::placeholder,
input[type='number'] + .helptext,
input[type='password'] + legend,
.conversation-balloon input[type='password'] + textarea::placeholder,
input[type='password'] + .helptext,
input[type='search'] + legend,
.conversation-balloon input[type='search'] + textarea::placeholder,
input[type='search'] + .helptext,
input[type='tel'] + legend,
.conversation-balloon input[type='tel'] + textarea::placeholder,
input[type='tel'] + .helptext,
input[type='text'] + legend,
.conversation-balloon input[type='text'] + textarea::placeholder,
input[type='text'] + .helptext,
input[type='url'] + legend,
.conversation-balloon input[type='url'] + textarea::placeholder,
input[type='url'] + .helptext,
input[type='color'] + legend,
.conversation-balloon input[type='color'] + textarea::placeholder,
input[type='color'] + .helptext,
input[type='date'] + legend,
.conversation-balloon input[type='date'] + textarea::placeholder,
input[type='date'] + .helptext,
input[type='month'] + legend,
.conversation-balloon input[type='month'] + textarea::placeholder,
input[type='month'] + .helptext,
input[type='week'] + legend,
.conversation-balloon input[type='week'] + textarea::placeholder,
input[type='week'] + .helptext,
input[type='datetime'] + legend,
.conversation-balloon input[type='datetime'] + textarea::placeholder,
input[type='datetime'] + .helptext,
input[type='datetime-local'] + legend,
.conversation-balloon input[type='datetime-local'] + textarea::placeholder,
input[type='datetime-local'] + .helptext,
input:not([type]) + legend,
.conversation-balloon input:not([type]) + textarea::placeholder,
input:not([type]) + .helptext,
textarea + legend,
.conversation-balloon textarea + textarea::placeholder,
textarea + .helptext,
select + legend,
.conversation-balloon select + textarea::placeholder,
select + .helptext,
label + legend,
.conversation-balloon label + textarea::placeholder {
  margin-top: -1.125rem;
  margin-bottom: 1.5rem; }

fieldset {
  padding: 0; }

progress {
  vertical-align: baseline; }

.label-inline {
  display: inline-block;
  font-weight: normal;
  margin-left: 0.5rem; }

.list-inline {
  padding: 0;
  margin: 0;
  list-style: none; }
  .list-inline > li {
    display: inline; }

.list-reset {
  padding: 0;
  margin: 0;
  list-style: none; }

.text-1 {
  font-size: 1.625rem; }
  @media screen and (min-width: 35rem) {
    .text-1 {
      font-size: 1.625rem; } }
  @media screen and (min-width: 50rem) {
    .text-1 {
      font-size: 1.6875rem; } }
  @media screen and (min-width: 75rem) {
    .text-1 {
      font-size: 1.875rem; } }
.text-2 {
  font-size: 1.4375rem; }
  @media screen and (min-width: 35rem) {
    .text-2 {
      font-size: 1.4375rem; } }
  @media screen and (min-width: 50rem) {
    .text-2 {
      font-size: 1.5rem; } }
  @media screen and (min-width: 75rem) {
    .text-2 {
      font-size: 1.5625rem; } }
.text-3 {
  font-size: 1.25rem; }
  @media screen and (min-width: 35rem) {
    .text-3 {
      font-size: 1.25rem; } }
  @media screen and (min-width: 50rem) {
    .text-3 {
      font-size: 1.3125rem; } }
  @media screen and (min-width: 75rem) {
    .text-3 {
      font-size: 1.375rem; } }
.text-4 {
  font-size: 1.125rem; }
  @media screen and (min-width: 35rem) {
    .text-4 {
      font-size: 1.125rem; } }
  @media screen and (min-width: 50rem) {
    .text-4 {
      font-size: 1.125rem; } }
  @media screen and (min-width: 75rem) {
    .text-4 {
      font-size: 1.1875rem; } }
.text-5 {
  font-size: 1rem; }
  @media screen and (min-width: 35rem) {
    .text-5 {
      font-size: 1rem; } }
  @media screen and (min-width: 50rem) {
    .text-5 {
      font-size: 1rem; } }
  @media screen and (min-width: 75rem) {
    .text-5 {
      font-size: 1rem; } }
.text-6, label, .description dt {
  font-size: 0.875rem; }
  @media screen and (min-width: 35rem) {
    .text-6, label, .description dt {
      font-size: 0.875rem; } }
  @media screen and (min-width: 50rem) {
    .text-6, label, .description dt {
      font-size: 0.875rem; } }
  @media screen and (min-width: 75rem) {
    .text-6, label, .description dt {
      font-size: 0.875rem; } }
.text-7 {
  font-size: 0.75rem; }
  @media screen and (min-width: 35rem) {
    .text-7 {
      font-size: 0.75rem; } }
  @media screen and (min-width: 50rem) {
    .text-7 {
      font-size: 0.75rem; } }
  @media screen and (min-width: 75rem) {
    .text-7 {
      font-size: 0.75rem; } }
.text-8 {
  font-size: 0.625rem; }
  @media screen and (min-width: 35rem) {
    .text-8 {
      font-size: 0.625rem; } }
  @media screen and (min-width: 50rem) {
    .text-8 {
      font-size: 0.625rem; } }
  @media screen and (min-width: 75rem) {
    .text-8 {
      font-size: 0.625rem; } }
.sans-serif {
  font-family: "Work Sans"; }

.serif {
  font-family: "IBM Plex Serif", serif; }

.cursive {
  font-family: cursive; }

.monospace {
  font-family: "IBM Plex Mono", monospace; }

.thin {
  font-weight: 100; }

.extra-light {
  font-weight: 200; }

.light {
  font-weight: 300; }

.regular {
  font-weight: 400; }

.medium {
  font-weight: 500; }

.semi-bold {
  font-weight: 600; }

.bold, .tooltip__content, .stat-slab dl dd, .stat-slab dl dt, .description dt, .categories {
  font-weight: 700; }

.extra-bold {
  font-weight: 800; }

.black {
  font-weight: 900; }

.italic {
  font-style: italic; }

.roman {
  font-style: normal; }

.uppercase, .tabs {
  text-transform: uppercase; }

.lowercase, .stat-slab dl dt, .description dt {
  text-transform: lowercase; }

.capitalize {
  text-transform: capitalize; }

.normalcase {
  text-transform: none; }

.underline {
  text-decoration: underline; }

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

.no-underline {
  text-decoration: none; }

.left, .moderate .comments-container {
  text-align: left; }

.center, .conversation-balloon, .popup__contents, .intro-paragraph, .title, .intro-paragraph h1, .intro-paragraph h2, .intro-paragraph h3, .intro-paragraph h4, .intro-paragraph h5, .intro-paragraph h6, .intro-paragraph .h1, .intro-paragraph .h2, .intro-paragraph .h3, .intro-paragraph .h4, .intro-paragraph .h5, .intro-paragraph .h6 {
  text-align: center; }

.right {
  text-align: right; }

.justify {
  text-align: justify; }

.baseline {
  vertical-align: baseline; }

.top {
  vertical-align: top; }

.middle {
  vertical-align: middle; }

.bottom {
  vertical-align: bottom; }

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

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

.normal {
  white-space: normal; }

.nowrap {
  white-space: nowrap; }

.pre {
  white-space: pre; }

.pre-line {
  white-space: pre-line; }

.pre-wrap {
  white-space: pre-wrap; }

.leading {
  line-height: 1.5; }

.leading-title {
  line-height: 1.25; }

.leading-solid {
  line-height: 1; }

.leading-loose {
  line-height: 2; }

.measure {
  max-width: 29em; }

.measure-wide {
  max-width: 38em; }

.measure-narrow {
  max-width: 20em; }

.indent {
  text-indent: 1.5em; }

.indent-punctuation {
  text-indent: -0.3em; }

.truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.rtl {
  direction: rtl; }

.ltr {
  direction: ltr; }

.pad-0, .stat-slab dl {
  padding: 0; }

.pad-0p {
  padding: 0.1875rem; }

.pad-1, .categories * {
  padding: 0.375rem; }

.pad-1p {
  padding: 0.5625rem; }

.pad-2, .tooltip__content, .toast__icon {
  padding: 0.75rem; }

.pad-2p {
  padding: 1.125rem; }

.pad-3, .modal__btn, .modal__btn--no-fill, .modal__btn--blue, .modal__btn--red, .moderate .comment, .popup__contents {
  padding: 1.5rem; }

.pad-3p {
  padding: 2.25rem; }

.pad-4, .modal__container, .modal__container--lg, .modal__container--md, .modal__container--sm, .modal__container--sm-height {
  padding: 3rem; }

.pad-4p {
  padding: 4.5rem; }

.pad-5 {
  padding: 6rem; }

.pad-5p {
  padding: 9rem; }

.pad-6 {
  padding: 12rem; }

.pad-6p {
  padding: 18rem; }

.pad-7 {
  padding: 24rem; }

.pad-7p {
  padding: 36rem; }

.pad-8 {
  padding: 48rem; }

.pad-8p {
  padding: 72rem; }

.pad-x0 {
  padding-left: 0;
  padding-right: 0; }

.pad-x0p {
  padding-left: 0.1875rem;
  padding-right: 0.1875rem; }

.pad-x1 {
  padding-left: 0.375rem;
  padding-right: 0.375rem; }

.pad-x1p {
  padding-left: 0.5625rem;
  padding-right: 0.5625rem; }

.pad-x2 {
  padding-left: 0.75rem;
  padding-right: 0.75rem; }

.pad-x2p {
  padding-left: 1.125rem;
  padding-right: 1.125rem; }

.pad-x3 {
  padding-left: 1.5rem;
  padding-right: 1.5rem; }

.pad-x3p {
  padding-left: 2.25rem;
  padding-right: 2.25rem; }

.pad-x4 {
  padding-left: 3rem;
  padding-right: 3rem; }

.pad-x4p {
  padding-left: 4.5rem;
  padding-right: 4.5rem; }

.pad-x5 {
  padding-left: 6rem;
  padding-right: 6rem; }

.pad-x5p {
  padding-left: 9rem;
  padding-right: 9rem; }

.pad-x6 {
  padding-left: 12rem;
  padding-right: 12rem; }

.pad-x6p {
  padding-left: 18rem;
  padding-right: 18rem; }

.pad-x7 {
  padding-left: 24rem;
  padding-right: 24rem; }

.pad-x7p {
  padding-left: 36rem;
  padding-right: 36rem; }

.pad-x8 {
  padding-left: 48rem;
  padding-right: 48rem; }

.pad-x8p {
  padding-left: 72rem;
  padding-right: 72rem; }

.pad-y0 {
  padding-top: 0;
  padding-bottom: 0; }

.pad-y0p {
  padding-top: 0.1875rem;
  padding-bottom: 0.1875rem; }

.pad-y1 {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem; }

.pad-y1p {
  padding-top: 0.5625rem;
  padding-bottom: 0.5625rem; }

.pad-y2 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem; }

.pad-y2p {
  padding-top: 1.125rem;
  padding-bottom: 1.125rem; }

.pad-y3 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }

.pad-y3p {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem; }

.pad-y4 {
  padding-top: 3rem;
  padding-bottom: 3rem; }

.pad-y4p {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem; }

.pad-y5 {
  padding-top: 6rem;
  padding-bottom: 6rem; }

.pad-y5p {
  padding-top: 9rem;
  padding-bottom: 9rem; }

.pad-y6 {
  padding-top: 12rem;
  padding-bottom: 12rem; }

.pad-y6p {
  padding-top: 18rem;
  padding-bottom: 18rem; }

.pad-y7 {
  padding-top: 24rem;
  padding-bottom: 24rem; }

.pad-y7p {
  padding-top: 36rem;
  padding-bottom: 36rem; }

.pad-y8 {
  padding-top: 48rem;
  padding-bottom: 48rem; }

.pad-y8p {
  padding-top: 72rem;
  padding-bottom: 72rem; }

.pad-l0 {
  padding-left: 0; }

.pad-l0p {
  padding-left: 0.1875rem; }

.pad-l1 {
  padding-left: 0.375rem; }

.pad-l1p {
  padding-left: 0.5625rem; }

.pad-l2 {
  padding-left: 0.75rem; }

.pad-l2p {
  padding-left: 1.125rem; }

.pad-l3 {
  padding-left: 1.5rem; }

.pad-l3p {
  padding-left: 2.25rem; }

.pad-l4 {
  padding-left: 3rem; }

.pad-l4p {
  padding-left: 4.5rem; }

.pad-l5 {
  padding-left: 6rem; }

.pad-l5p {
  padding-left: 9rem; }

.pad-l6 {
  padding-left: 12rem; }

.pad-l6p {
  padding-left: 18rem; }

.pad-l7 {
  padding-left: 24rem; }

.pad-l7p {
  padding-left: 36rem; }

.pad-l8 {
  padding-left: 48rem; }

.pad-l8p {
  padding-left: 72rem; }

.pad-r0 {
  padding-right: 0; }

.pad-r0p {
  padding-right: 0.1875rem; }

.pad-r1 {
  padding-right: 0.375rem; }

.pad-r1p {
  padding-right: 0.5625rem; }

.pad-r2 {
  padding-right: 0.75rem; }

.pad-r2p {
  padding-right: 1.125rem; }

.pad-r3 {
  padding-right: 1.5rem; }

.pad-r3p {
  padding-right: 2.25rem; }

.pad-r4 {
  padding-right: 3rem; }

.pad-r4p {
  padding-right: 4.5rem; }

.pad-r5 {
  padding-right: 6rem; }

.pad-r5p {
  padding-right: 9rem; }

.pad-r6 {
  padding-right: 12rem; }

.pad-r6p {
  padding-right: 18rem; }

.pad-r7 {
  padding-right: 24rem; }

.pad-r7p {
  padding-right: 36rem; }

.pad-r8 {
  padding-right: 48rem; }

.pad-r8p {
  padding-right: 72rem; }

.pad-t0 {
  padding-top: 0; }

.pad-t0p {
  padding-top: 0.1875rem; }

.pad-t1 {
  padding-top: 0.375rem; }

.pad-t1p {
  padding-top: 0.5625rem; }

.pad-t2 {
  padding-top: 0.75rem; }

.pad-t2p {
  padding-top: 1.125rem; }

.pad-t3 {
  padding-top: 1.5rem; }

.pad-t3p {
  padding-top: 2.25rem; }

.pad-t4 {
  padding-top: 3rem; }

.pad-t4p {
  padding-top: 4.5rem; }

.pad-t5 {
  padding-top: 6rem; }

.pad-t5p {
  padding-top: 9rem; }

.pad-t6 {
  padding-top: 12rem; }

.pad-t6p {
  padding-top: 18rem; }

.pad-t7 {
  padding-top: 24rem; }

.pad-t7p {
  padding-top: 36rem; }

.pad-t8 {
  padding-top: 48rem; }

.pad-t8p {
  padding-top: 72rem; }

.pad-b0 {
  padding-bottom: 0; }

.pad-b0p {
  padding-bottom: 0.1875rem; }

.pad-b1 {
  padding-bottom: 0.375rem; }

.pad-b1p {
  padding-bottom: 0.5625rem; }

.pad-b2 {
  padding-bottom: 0.75rem; }

.pad-b2p {
  padding-bottom: 1.125rem; }

.pad-b3, .moderate .comments-container {
  padding-bottom: 1.5rem; }

.pad-b3p {
  padding-bottom: 2.25rem; }

.pad-b4 {
  padding-bottom: 3rem; }

.pad-b4p {
  padding-bottom: 4.5rem; }

.pad-b5 {
  padding-bottom: 6rem; }

.pad-b5p {
  padding-bottom: 9rem; }

.pad-b6 {
  padding-bottom: 12rem; }

.pad-b6p {
  padding-bottom: 18rem; }

.pad-b7 {
  padding-bottom: 24rem; }

.pad-b7p {
  padding-bottom: 36rem; }

.pad-b8 {
  padding-bottom: 48rem; }

.pad-b8p {
  padding-bottom: 72rem; }

.margin-auto {
  margin: auto; }

.margin-0, .stat-slab dl dt, .description dt {
  margin: 0; }

.margin-0p {
  margin: 0.1875rem; }

.margin-1 {
  margin: 0.375rem; }

.margin-1p {
  margin: 0.5625rem; }

.margin-2 {
  margin: 0.75rem; }

.margin-2p {
  margin: 1.125rem; }

.margin-3, .popup__close {
  margin: 1.5rem; }

.margin-3p {
  margin: 2.25rem; }

.margin-4 {
  margin: 3rem; }

.margin-4p {
  margin: 4.5rem; }

.margin-5 {
  margin: 6rem; }

.margin-5p {
  margin: 9rem; }

.margin-6 {
  margin: 12rem; }

.margin-6p {
  margin: 18rem; }

.margin-7 {
  margin: 24rem; }

.margin-7p {
  margin: 36rem; }

.margin-8 {
  margin: 48rem; }

.margin-8p {
  margin: 72rem; }

.margin-n0 {
  margin: 0; }

.margin-n0p {
  margin: -0.1875rem; }

.margin-n1 {
  margin: -0.375rem; }

.margin-n1p {
  margin: -0.5625rem; }

.margin-n2 {
  margin: -0.75rem; }

.margin-n2p {
  margin: -1.125rem; }

.margin-n3 {
  margin: -1.5rem; }

.margin-n3p {
  margin: -2.25rem; }

.margin-n4 {
  margin: -3rem; }

.margin-n4p {
  margin: -4.5rem; }

.margin-n5 {
  margin: -6rem; }

.margin-n5p {
  margin: -9rem; }

.margin-n6 {
  margin: -12rem; }

.margin-n6p {
  margin: -18rem; }

.margin-n7 {
  margin: -24rem; }

.margin-n7p {
  margin: -36rem; }

.margin-n8 {
  margin: -48rem; }

.margin-n8p {
  margin: -72rem; }

.margin-xauto {
  margin-left: auto;
  margin-right: auto; }

.margin-x0 {
  margin-left: 0;
  margin-right: 0; }

.margin-x0p {
  margin-left: 0.1875rem;
  margin-right: 0.1875rem; }

.margin-x1, .categories * {
  margin-left: 0.375rem;
  margin-right: 0.375rem; }

.margin-x1p {
  margin-left: 0.5625rem;
  margin-right: 0.5625rem; }

.margin-x2 {
  margin-left: 0.75rem;
  margin-right: 0.75rem; }

.margin-x2p {
  margin-left: 1.125rem;
  margin-right: 1.125rem; }

.margin-x3 {
  margin-left: 1.5rem;
  margin-right: 1.5rem; }

.margin-x3p {
  margin-left: 2.25rem;
  margin-right: 2.25rem; }

.margin-x4 {
  margin-left: 3rem;
  margin-right: 3rem; }

.margin-x4p {
  margin-left: 4.5rem;
  margin-right: 4.5rem; }

.margin-x5 {
  margin-left: 6rem;
  margin-right: 6rem; }

.margin-x5p {
  margin-left: 9rem;
  margin-right: 9rem; }

.margin-x6 {
  margin-left: 12rem;
  margin-right: 12rem; }

.margin-x6p {
  margin-left: 18rem;
  margin-right: 18rem; }

.margin-x7 {
  margin-left: 24rem;
  margin-right: 24rem; }

.margin-x7p {
  margin-left: 36rem;
  margin-right: 36rem; }

.margin-x8 {
  margin-left: 48rem;
  margin-right: 48rem; }

.margin-x8p {
  margin-left: 72rem;
  margin-right: 72rem; }

.margin-nx0 {
  margin-left: 0;
  margin-right: 0; }

.margin-nx0p {
  margin-left: -0.1875rem;
  margin-right: -0.1875rem; }

.margin-nx1 {
  margin-left: -0.375rem;
  margin-right: -0.375rem; }

.margin-nx1p {
  margin-left: -0.5625rem;
  margin-right: -0.5625rem; }

.margin-nx2 {
  margin-left: -0.75rem;
  margin-right: -0.75rem; }

.margin-nx2p {
  margin-left: -1.125rem;
  margin-right: -1.125rem; }

.margin-nx3 {
  margin-left: -1.5rem;
  margin-right: -1.5rem; }

.margin-nx3p {
  margin-left: -2.25rem;
  margin-right: -2.25rem; }

.margin-nx4 {
  margin-left: -3rem;
  margin-right: -3rem; }

.margin-nx4p {
  margin-left: -4.5rem;
  margin-right: -4.5rem; }

.margin-nx5 {
  margin-left: -6rem;
  margin-right: -6rem; }

.margin-nx5p {
  margin-left: -9rem;
  margin-right: -9rem; }

.margin-nx6 {
  margin-left: -12rem;
  margin-right: -12rem; }

.margin-nx6p {
  margin-left: -18rem;
  margin-right: -18rem; }

.margin-nx7 {
  margin-left: -24rem;
  margin-right: -24rem; }

.margin-nx7p {
  margin-left: -36rem;
  margin-right: -36rem; }

.margin-nx8 {
  margin-left: -48rem;
  margin-right: -48rem; }

.margin-nx8p {
  margin-left: -72rem;
  margin-right: -72rem; }

.margin-yauto {
  margin-top: auto;
  margin-bottom: auto; }

.margin-y0 {
  margin-top: 0;
  margin-bottom: 0; }

.margin-y0p {
  margin-top: 0.1875rem;
  margin-bottom: 0.1875rem; }

.margin-y1 {
  margin-top: 0.375rem;
  margin-bottom: 0.375rem; }

.margin-y1p {
  margin-top: 0.5625rem;
  margin-bottom: 0.5625rem; }

.margin-y2 {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem; }

.margin-y2p {
  margin-top: 1.125rem;
  margin-bottom: 1.125rem; }

.margin-y3 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem; }

.margin-y3p {
  margin-top: 2.25rem;
  margin-bottom: 2.25rem; }

.margin-y4 {
  margin-top: 3rem;
  margin-bottom: 3rem; }

.margin-y4p {
  margin-top: 4.5rem;
  margin-bottom: 4.5rem; }

.margin-y5 {
  margin-top: 6rem;
  margin-bottom: 6rem; }

.margin-y5p {
  margin-top: 9rem;
  margin-bottom: 9rem; }

.margin-y6 {
  margin-top: 12rem;
  margin-bottom: 12rem; }

.margin-y6p {
  margin-top: 18rem;
  margin-bottom: 18rem; }

.margin-y7 {
  margin-top: 24rem;
  margin-bottom: 24rem; }

.margin-y7p {
  margin-top: 36rem;
  margin-bottom: 36rem; }

.margin-y8 {
  margin-top: 48rem;
  margin-bottom: 48rem; }

.margin-y8p {
  margin-top: 72rem;
  margin-bottom: 72rem; }

.margin-ny0 {
  margin-top: 0;
  margin-bottom: 0; }

.margin-ny0p {
  margin-top: -0.1875rem;
  margin-bottom: -0.1875rem; }

.margin-ny1 {
  margin-top: -0.375rem;
  margin-bottom: -0.375rem; }

.margin-ny1p {
  margin-top: -0.5625rem;
  margin-bottom: -0.5625rem; }

.margin-ny2 {
  margin-top: -0.75rem;
  margin-bottom: -0.75rem; }

.margin-ny2p {
  margin-top: -1.125rem;
  margin-bottom: -1.125rem; }

.margin-ny3 {
  margin-top: -1.5rem;
  margin-bottom: -1.5rem; }

.margin-ny3p {
  margin-top: -2.25rem;
  margin-bottom: -2.25rem; }

.margin-ny4 {
  margin-top: -3rem;
  margin-bottom: -3rem; }

.margin-ny4p {
  margin-top: -4.5rem;
  margin-bottom: -4.5rem; }

.margin-ny5 {
  margin-top: -6rem;
  margin-bottom: -6rem; }

.margin-ny5p {
  margin-top: -9rem;
  margin-bottom: -9rem; }

.margin-ny6 {
  margin-top: -12rem;
  margin-bottom: -12rem; }

.margin-ny6p {
  margin-top: -18rem;
  margin-bottom: -18rem; }

.margin-ny7 {
  margin-top: -24rem;
  margin-bottom: -24rem; }

.margin-ny7p {
  margin-top: -36rem;
  margin-bottom: -36rem; }

.margin-ny8 {
  margin-top: -48rem;
  margin-bottom: -48rem; }

.margin-ny8p {
  margin-top: -72rem;
  margin-bottom: -72rem; }

.margin-lauto {
  margin-left: auto; }

.margin-l0 {
  margin-left: 0; }

.margin-l0p {
  margin-left: 0.1875rem; }

.margin-l1 {
  margin-left: 0.375rem; }

.margin-l1p {
  margin-left: 0.5625rem; }

.margin-l2 {
  margin-left: 0.75rem; }

.margin-l2p {
  margin-left: 1.125rem; }

.margin-l3 {
  margin-left: 1.5rem; }

.margin-l3p {
  margin-left: 2.25rem; }

.margin-l4 {
  margin-left: 3rem; }

.margin-l4p {
  margin-left: 4.5rem; }

.margin-l5 {
  margin-left: 6rem; }

.margin-l5p {
  margin-left: 9rem; }

.margin-l6 {
  margin-left: 12rem; }

.margin-l6p {
  margin-left: 18rem; }

.margin-l7 {
  margin-left: 24rem; }

.margin-l7p {
  margin-left: 36rem; }

.margin-l8 {
  margin-left: 48rem; }

.margin-l8p {
  margin-left: 72rem; }

.margin-nl0 {
  margin-left: 0; }

.margin-nl0p {
  margin-left: -0.1875rem; }

.margin-nl1 {
  margin-left: -0.375rem; }

.margin-nl1p {
  margin-left: -0.5625rem; }

.margin-nl2 {
  margin-left: -0.75rem; }

.margin-nl2p {
  margin-left: -1.125rem; }

.margin-nl3 {
  margin-left: -1.5rem; }

.margin-nl3p {
  margin-left: -2.25rem; }

.margin-nl4 {
  margin-left: -3rem; }

.margin-nl4p {
  margin-left: -4.5rem; }

.margin-nl5 {
  margin-left: -6rem; }

.margin-nl5p {
  margin-left: -9rem; }

.margin-nl6 {
  margin-left: -12rem; }

.margin-nl6p {
  margin-left: -18rem; }

.margin-nl7 {
  margin-left: -24rem; }

.margin-nl7p {
  margin-left: -36rem; }

.margin-nl8 {
  margin-left: -48rem; }

.margin-nl8p {
  margin-left: -72rem; }

.margin-rauto {
  margin-right: auto; }

.margin-r0 {
  margin-right: 0; }

.margin-r0p {
  margin-right: 0.1875rem; }

.margin-r1 {
  margin-right: 0.375rem; }

.margin-r1p {
  margin-right: 0.5625rem; }

.margin-r2 {
  margin-right: 0.75rem; }

.margin-r2p {
  margin-right: 1.125rem; }

.margin-r3 {
  margin-right: 1.5rem; }

.margin-r3p {
  margin-right: 2.25rem; }

.margin-r4 {
  margin-right: 3rem; }

.margin-r4p {
  margin-right: 4.5rem; }

.margin-r5 {
  margin-right: 6rem; }

.margin-r5p {
  margin-right: 9rem; }

.margin-r6 {
  margin-right: 12rem; }

.margin-r6p {
  margin-right: 18rem; }

.margin-r7 {
  margin-right: 24rem; }

.margin-r7p {
  margin-right: 36rem; }

.margin-r8 {
  margin-right: 48rem; }

.margin-r8p {
  margin-right: 72rem; }

.margin-nr0 {
  margin-right: 0; }

.margin-nr0p {
  margin-right: -0.1875rem; }

.margin-nr1 {
  margin-right: -0.375rem; }

.margin-nr1p {
  margin-right: -0.5625rem; }

.margin-nr2 {
  margin-right: -0.75rem; }

.margin-nr2p {
  margin-right: -1.125rem; }

.margin-nr3 {
  margin-right: -1.5rem; }

.margin-nr3p {
  margin-right: -2.25rem; }

.margin-nr4 {
  margin-right: -3rem; }

.margin-nr4p {
  margin-right: -4.5rem; }

.margin-nr5 {
  margin-right: -6rem; }

.margin-nr5p {
  margin-right: -9rem; }

.margin-nr6 {
  margin-right: -12rem; }

.margin-nr6p {
  margin-right: -18rem; }

.margin-nr7 {
  margin-right: -24rem; }

.margin-nr7p {
  margin-right: -36rem; }

.margin-nr8 {
  margin-right: -48rem; }

.margin-nr8p {
  margin-right: -72rem; }

.margin-tauto {
  margin-top: auto; }

.margin-t0 {
  margin-top: 0; }

.margin-t0p {
  margin-top: 0.1875rem; }

.margin-t1 {
  margin-top: 0.375rem; }

.margin-t1p {
  margin-top: 0.5625rem; }

.margin-t2 {
  margin-top: 0.75rem; }

.margin-t2p {
  margin-top: 1.125rem; }

.margin-t3 {
  margin-top: 1.5rem; }

.margin-t3p {
  margin-top: 2.25rem; }

.margin-t4 {
  margin-top: 3rem; }

.margin-t4p {
  margin-top: 4.5rem; }

.margin-t5 {
  margin-top: 6rem; }

.margin-t5p {
  margin-top: 9rem; }

.margin-t6 {
  margin-top: 12rem; }

.margin-t6p {
  margin-top: 18rem; }

.margin-t7 {
  margin-top: 24rem; }

.margin-t7p {
  margin-top: 36rem; }

.margin-t8 {
  margin-top: 48rem; }

.margin-t8p {
  margin-top: 72rem; }

.margin-nt0 {
  margin-top: 0; }

.margin-nt0p {
  margin-top: -0.1875rem; }

.margin-nt1 {
  margin-top: -0.375rem; }

.margin-nt1p {
  margin-top: -0.5625rem; }

.margin-nt2 {
  margin-top: -0.75rem; }

.margin-nt2p {
  margin-top: -1.125rem; }

.margin-nt3 {
  margin-top: -1.5rem; }

.margin-nt3p {
  margin-top: -2.25rem; }

.margin-nt4 {
  margin-top: -3rem; }

.margin-nt4p {
  margin-top: -4.5rem; }

.margin-nt5 {
  margin-top: -6rem; }

.margin-nt5p {
  margin-top: -9rem; }

.margin-nt6 {
  margin-top: -12rem; }

.margin-nt6p {
  margin-top: -18rem; }

.margin-nt7 {
  margin-top: -24rem; }

.margin-nt7p {
  margin-top: -36rem; }

.margin-nt8 {
  margin-top: -48rem; }

.margin-nt8p {
  margin-top: -72rem; }

.margin-bauto {
  margin-bottom: auto; }

.margin-b0 {
  margin-bottom: 0; }

.margin-b0p {
  margin-bottom: 0.1875rem; }

.margin-b1 {
  margin-bottom: 0.375rem; }

.margin-b1p {
  margin-bottom: 0.5625rem; }

.margin-b2 {
  margin-bottom: 0.75rem; }

.margin-b2p {
  margin-bottom: 1.125rem; }

.margin-b3, .moderate .comment {
  margin-bottom: 1.5rem; }

.margin-b3p {
  margin-bottom: 2.25rem; }

.margin-b4 {
  margin-bottom: 3rem; }

.margin-b4p {
  margin-bottom: 4.5rem; }

.margin-b5 {
  margin-bottom: 6rem; }

.margin-b5p {
  margin-bottom: 9rem; }

.margin-b6 {
  margin-bottom: 12rem; }

.margin-b6p {
  margin-bottom: 18rem; }

.margin-b7 {
  margin-bottom: 24rem; }

.margin-b7p {
  margin-bottom: 36rem; }

.margin-b8 {
  margin-bottom: 48rem; }

.margin-b8p {
  margin-bottom: 72rem; }

.margin-nb0 {
  margin-bottom: 0; }

.margin-nb0p {
  margin-bottom: -0.1875rem; }

.margin-nb1 {
  margin-bottom: -0.375rem; }

.margin-nb1p {
  margin-bottom: -0.5625rem; }

.margin-nb2 {
  margin-bottom: -0.75rem; }

.margin-nb2p {
  margin-bottom: -1.125rem; }

.margin-nb3 {
  margin-bottom: -1.5rem; }

.margin-nb3p {
  margin-bottom: -2.25rem; }

.margin-nb4 {
  margin-bottom: -3rem; }

.margin-nb4p {
  margin-bottom: -4.5rem; }

.margin-nb5 {
  margin-bottom: -6rem; }

.margin-nb5p {
  margin-bottom: -9rem; }

.margin-nb6 {
  margin-bottom: -12rem; }

.margin-nb6p {
  margin-bottom: -18rem; }

.margin-nb7 {
  margin-bottom: -24rem; }

.margin-nb7p {
  margin-bottom: -36rem; }

.margin-nb8 {
  margin-bottom: -48rem; }

.margin-nb8p {
  margin-bottom: -72rem; }

.size-0 {
  width: 0;
  height: 0; }

.size-0p {
  width: 0.1875rem;
  height: 0.1875rem; }

.size-1 {
  width: 0.375rem;
  height: 0.375rem; }

.size-1p {
  width: 0.5625rem;
  height: 0.5625rem; }

.size-2 {
  width: 0.75rem;
  height: 0.75rem; }

.size-2p {
  width: 1.125rem;
  height: 1.125rem; }

.size-3 {
  width: 1.5rem;
  height: 1.5rem; }

.size-3p {
  width: 2.25rem;
  height: 2.25rem; }

.size-4 {
  width: 3rem;
  height: 3rem; }

.size-4p {
  width: 4.5rem;
  height: 4.5rem; }

.size-5 {
  width: 6rem;
  height: 6rem; }

.size-5p {
  width: 9rem;
  height: 9rem; }

.size-6 {
  width: 12rem;
  height: 12rem; }

.size-6p {
  width: 18rem;
  height: 18rem; }

.size-7 {
  width: 24rem;
  height: 24rem; }

.size-7p {
  width: 36rem;
  height: 36rem; }

.size-8 {
  width: 48rem;
  height: 48rem; }

.size-8p {
  width: 72rem;
  height: 72rem; }

.size-auto {
  width: auto;
  height: auto; }

.size-available {
  width: available;
  height: available; }

.size-fit {
  width: fit-content;
  height: fit-content; }

.size-max {
  width: max-content;
  height: max-content; }

.size-min {
  width: min-content;
  height: min-content; }

.size-x0 {
  width: 0; }

.size-x0p {
  width: 0.1875rem; }

.size-x1 {
  width: 0.375rem; }

.size-x1p {
  width: 0.5625rem; }

.size-x2 {
  width: 0.75rem; }

.size-x2p {
  width: 1.125rem; }

.size-x3 {
  width: 1.5rem; }

.size-x3p {
  width: 2.25rem; }

.size-x4 {
  width: 3rem; }

.size-x4p {
  width: 4.5rem; }

.size-x5 {
  width: 6rem; }

.size-x5p {
  width: 9rem; }

.size-x6 {
  width: 12rem; }

.size-x6p {
  width: 18rem; }

.size-x7 {
  width: 24rem; }

.size-x7p {
  width: 36rem; }

.size-x8 {
  width: 48rem; }

.size-x8p {
  width: 72rem; }

.size-xauto {
  width: auto; }

.size-xavailable {
  width: available; }

.size-xfit {
  width: fit-content; }

.size-xmax {
  width: max-content; }

.size-xmin {
  width: min-content; }

.size-y0 {
  height: 0; }

.size-y0p {
  height: 0.1875rem; }

.size-y1 {
  height: 0.375rem; }

.size-y1p {
  height: 0.5625rem; }

.size-y2 {
  height: 0.75rem; }

.size-y2p {
  height: 1.125rem; }

.size-y3 {
  height: 1.5rem; }

.size-y3p {
  height: 2.25rem; }

.size-y4 {
  height: 3rem; }

.size-y4p {
  height: 4.5rem; }

.size-y5 {
  height: 6rem; }

.size-y5p {
  height: 9rem; }

.size-y6 {
  height: 12rem; }

.size-y6p {
  height: 18rem; }

.size-y7 {
  height: 24rem; }

.size-y7p {
  height: 36rem; }

.size-y8 {
  height: 48rem; }

.size-y8p {
  height: 72rem; }

.size-yauto {
  height: auto; }

.size-yavailable {
  height: available; }

.size-yfit {
  height: fit-content; }

.size-ymax {
  height: max-content; }

.size-ymin {
  height: min-content; }

.line-height-0 {
  line-height: 0; }

.line-height-0p {
  line-height: 0.1875rem; }

.line-height-1 {
  line-height: 0.375rem; }

.line-height-1p {
  line-height: 0.5625rem; }

.line-height-2 {
  line-height: 0.75rem; }

.line-height-2p {
  line-height: 1.125rem; }

.line-height-3 {
  line-height: 1.5rem; }

.line-height-3p {
  line-height: 2.25rem; }

.line-height-4 {
  line-height: 3rem; }

.line-height-4p {
  line-height: 4.5rem; }

.line-height-5 {
  line-height: 6rem; }

.line-height-5p {
  line-height: 9rem; }

.line-height-6 {
  line-height: 12rem; }

.line-height-6p {
  line-height: 18rem; }

.line-height-7 {
  line-height: 24rem; }

.line-height-7p {
  line-height: 36rem; }

.line-height-8 {
  line-height: 48rem; }

.line-height-8p {
  line-height: 72rem; }

.line-height-normal {
  line-height: normal; }

.width-0 {
  width: 0; }

.width-2\/3 {
  width: 66.66667%; }

.width-1\/3vh {
  width: 33.33333vh; }

.width-1\/3vw {
  width: 33.33333vw; }

.width-1\/3 {
  width: 33.33333%; }

.width-3\/4vh {
  width: 75vh; }

.width-3\/4vw {
  width: 75vw; }

.width-3\/4 {
  width: 75%; }

.width-1\/4vh {
  width: 25vh; }

.width-1\/4vw {
  width: 25vw; }

.width-1\/4 {
  width: 25%; }

.width-1\/2vh {
  width: 50vh; }

.width-1\/2vw {
  width: 50vw; }

.width-1\/2 {
  width: 50%; }

.width-fullvh {
  width: 100vh; }

.width-fullvw {
  width: 100vw; }

.width-full {
  width: 100%; }

.width-7\/12vw {
  width: 58.33333vw; }

.width-7\/12 {
  width: 58.33333%; }

.width-5\/12vh {
  width: 41.66667vh; }

.width-5\/12vw {
  width: 41.66667vw; }

.width-5\/12 {
  width: 41.66667%; }

.width-1\/12vh {
  width: 8.33333vh; }

.width-1\/12vw {
  width: 8.33333vw; }

.width-1\/12 {
  width: 8.33333%; }

.width-5\/6vh {
  width: 83.33333vh; }

.width-5\/6vw {
  width: 83.33333vw; }

.width-5\/6 {
  width: 83.33333%; }

.width-1\/6vh {
  width: 16.66667vh; }

.width-1\/6vw {
  width: 16.66667vw; }

.width-1\/6 {
  width: 16.66667%; }

.width-2\/3vh {
  width: 66.66667vh; }

.width-2\/3vw {
  width: 66.66667vw; }

.width-4\/5vh {
  width: 80vh; }

.width-4\/5vw {
  width: 80vw; }

.width-4\/5 {
  width: 80%; }

.width-3\/5vh {
  width: 60vh; }

.width-3\/5vw {
  width: 60vw; }

.width-3\/5 {
  width: 60%; }

.width-2\/5vh {
  width: 40vh; }

.width-2\/5vw {
  width: 40vw; }

.width-2\/5 {
  width: 40%; }

.width-1\/5vh {
  width: 20vh; }

.width-1\/5vw {
  width: 20vw; }

.width-1\/5 {
  width: 20%; }

.width-11\/12vh {
  width: 91.66667vh; }

.width-11\/12vw {
  width: 91.66667vw; }

.width-11\/12 {
  width: 91.66667%; }

.width-7\/12vh {
  width: 58.33333vh; }

.max-width-0 {
  max-width: 0; }

.max-width-2\/3 {
  max-width: 66.66667%; }

.max-width-1\/3vh {
  max-width: 33.33333vh; }

.max-width-1\/3vw {
  max-width: 33.33333vw; }

.max-width-1\/3 {
  max-width: 33.33333%; }

.max-width-3\/4vh {
  max-width: 75vh; }

.max-width-3\/4vw {
  max-width: 75vw; }

.max-width-3\/4 {
  max-width: 75%; }

.max-width-1\/4vh {
  max-width: 25vh; }

.max-width-1\/4vw {
  max-width: 25vw; }

.max-width-1\/4 {
  max-width: 25%; }

.max-width-1\/2vh {
  max-width: 50vh; }

.max-width-1\/2vw {
  max-width: 50vw; }

.max-width-1\/2 {
  max-width: 50%; }

.max-width-fullvh {
  max-width: 100vh; }

.max-width-fullvw {
  max-width: 100vw; }

.max-width-full {
  max-width: 100%; }

.max-width-7\/12vw {
  max-width: 58.33333vw; }

.max-width-7\/12 {
  max-width: 58.33333%; }

.max-width-5\/12vh {
  max-width: 41.66667vh; }

.max-width-5\/12vw {
  max-width: 41.66667vw; }

.max-width-5\/12 {
  max-width: 41.66667%; }

.max-width-1\/12vh {
  max-width: 8.33333vh; }

.max-width-1\/12vw {
  max-width: 8.33333vw; }

.max-width-1\/12 {
  max-width: 8.33333%; }

.max-width-5\/6vh {
  max-width: 83.33333vh; }

.max-width-5\/6vw {
  max-width: 83.33333vw; }

.max-width-5\/6 {
  max-width: 83.33333%; }

.max-width-1\/6vh {
  max-width: 16.66667vh; }

.max-width-1\/6vw {
  max-width: 16.66667vw; }

.max-width-1\/6 {
  max-width: 16.66667%; }

.max-width-2\/3vh {
  max-width: 66.66667vh; }

.max-width-2\/3vw {
  max-width: 66.66667vw; }

.max-width-4\/5vh {
  max-width: 80vh; }

.max-width-4\/5vw {
  max-width: 80vw; }

.max-width-4\/5 {
  max-width: 80%; }

.max-width-3\/5vh {
  max-width: 60vh; }

.max-width-3\/5vw {
  max-width: 60vw; }

.max-width-3\/5 {
  max-width: 60%; }

.max-width-2\/5vh {
  max-width: 40vh; }

.max-width-2\/5vw {
  max-width: 40vw; }

.max-width-2\/5 {
  max-width: 40%; }

.max-width-1\/5vh {
  max-width: 20vh; }

.max-width-1\/5vw {
  max-width: 20vw; }

.max-width-1\/5 {
  max-width: 20%; }

.max-width-11\/12vh {
  max-width: 91.66667vh; }

.max-width-11\/12vw {
  max-width: 91.66667vw; }

.max-width-11\/12 {
  max-width: 91.66667%; }

.max-width-7\/12vh {
  max-width: 58.33333vh; }

.min-width-0 {
  min-width: 0; }

.min-width-2\/3 {
  min-width: 66.66667%; }

.min-width-1\/3vh {
  min-width: 33.33333vh; }

.min-width-1\/3vw {
  min-width: 33.33333vw; }

.min-width-1\/3 {
  min-width: 33.33333%; }

.min-width-3\/4vh {
  min-width: 75vh; }

.min-width-3\/4vw {
  min-width: 75vw; }

.min-width-3\/4 {
  min-width: 75%; }

.min-width-1\/4vh {
  min-width: 25vh; }

.min-width-1\/4vw {
  min-width: 25vw; }

.min-width-1\/4 {
  min-width: 25%; }

.min-width-1\/2vh {
  min-width: 50vh; }

.min-width-1\/2vw {
  min-width: 50vw; }

.min-width-1\/2 {
  min-width: 50%; }

.min-width-fullvh {
  min-width: 100vh; }

.min-width-fullvw {
  min-width: 100vw; }

.min-width-full {
  min-width: 100%; }

.min-width-7\/12vw {
  min-width: 58.33333vw; }

.min-width-7\/12 {
  min-width: 58.33333%; }

.min-width-5\/12vh {
  min-width: 41.66667vh; }

.min-width-5\/12vw {
  min-width: 41.66667vw; }

.min-width-5\/12 {
  min-width: 41.66667%; }

.min-width-1\/12vh {
  min-width: 8.33333vh; }

.min-width-1\/12vw {
  min-width: 8.33333vw; }

.min-width-1\/12 {
  min-width: 8.33333%; }

.min-width-5\/6vh {
  min-width: 83.33333vh; }

.min-width-5\/6vw {
  min-width: 83.33333vw; }

.min-width-5\/6 {
  min-width: 83.33333%; }

.min-width-1\/6vh {
  min-width: 16.66667vh; }

.min-width-1\/6vw {
  min-width: 16.66667vw; }

.min-width-1\/6 {
  min-width: 16.66667%; }

.min-width-2\/3vh {
  min-width: 66.66667vh; }

.min-width-2\/3vw {
  min-width: 66.66667vw; }

.min-width-4\/5vh {
  min-width: 80vh; }

.min-width-4\/5vw {
  min-width: 80vw; }

.min-width-4\/5 {
  min-width: 80%; }

.min-width-3\/5vh {
  min-width: 60vh; }

.min-width-3\/5vw {
  min-width: 60vw; }

.min-width-3\/5 {
  min-width: 60%; }

.min-width-2\/5vh {
  min-width: 40vh; }

.min-width-2\/5vw {
  min-width: 40vw; }

.min-width-2\/5 {
  min-width: 40%; }

.min-width-1\/5vh {
  min-width: 20vh; }

.min-width-1\/5vw {
  min-width: 20vw; }

.min-width-1\/5 {
  min-width: 20%; }

.min-width-11\/12vh {
  min-width: 91.66667vh; }

.min-width-11\/12vw {
  min-width: 91.66667vw; }

.min-width-11\/12 {
  min-width: 91.66667%; }

.min-width-7\/12vh {
  min-width: 58.33333vh; }

.height-0 {
  height: 0; }

.height-2\/3 {
  height: 66.66667%; }

.height-1\/3vh {
  height: 33.33333vh; }

.height-1\/3vw {
  height: 33.33333vw; }

.height-1\/3 {
  height: 33.33333%; }

.height-3\/4vh {
  height: 75vh; }

.height-3\/4vw {
  height: 75vw; }

.height-3\/4 {
  height: 75%; }

.height-1\/4vh {
  height: 25vh; }

.height-1\/4vw {
  height: 25vw; }

.height-1\/4 {
  height: 25%; }

.height-1\/2vh {
  height: 50vh; }

.height-1\/2vw {
  height: 50vw; }

.height-1\/2 {
  height: 50%; }

.height-fullvh {
  height: 100vh; }

.height-fullvw {
  height: 100vw; }

.height-full {
  height: 100%; }

.height-7\/12vw {
  height: 58.33333vw; }

.height-7\/12 {
  height: 58.33333%; }

.height-5\/12vh {
  height: 41.66667vh; }

.height-5\/12vw {
  height: 41.66667vw; }

.height-5\/12 {
  height: 41.66667%; }

.height-1\/12vh {
  height: 8.33333vh; }

.height-1\/12vw {
  height: 8.33333vw; }

.height-1\/12 {
  height: 8.33333%; }

.height-5\/6vh {
  height: 83.33333vh; }

.height-5\/6vw {
  height: 83.33333vw; }

.height-5\/6 {
  height: 83.33333%; }

.height-1\/6vh {
  height: 16.66667vh; }

.height-1\/6vw {
  height: 16.66667vw; }

.height-1\/6 {
  height: 16.66667%; }

.height-2\/3vh {
  height: 66.66667vh; }

.height-2\/3vw {
  height: 66.66667vw; }

.height-4\/5vh {
  height: 80vh; }

.height-4\/5vw {
  height: 80vw; }

.height-4\/5 {
  height: 80%; }

.height-3\/5vh {
  height: 60vh; }

.height-3\/5vw {
  height: 60vw; }

.height-3\/5 {
  height: 60%; }

.height-2\/5vh {
  height: 40vh; }

.height-2\/5vw {
  height: 40vw; }

.height-2\/5 {
  height: 40%; }

.height-1\/5vh {
  height: 20vh; }

.height-1\/5vw {
  height: 20vw; }

.height-1\/5 {
  height: 20%; }

.height-11\/12vh {
  height: 91.66667vh; }

.height-11\/12vw {
  height: 91.66667vw; }

.height-11\/12 {
  height: 91.66667%; }

.height-7\/12vh {
  height: 58.33333vh; }

.max-height-0 {
  max-height: 0; }

.max-height-2\/3 {
  max-height: 66.66667%; }

.max-height-1\/3vh {
  max-height: 33.33333vh; }

.max-height-1\/3vw {
  max-height: 33.33333vw; }

.max-height-1\/3 {
  max-height: 33.33333%; }

.max-height-3\/4vh {
  max-height: 75vh; }

.max-height-3\/4vw {
  max-height: 75vw; }

.max-height-3\/4 {
  max-height: 75%; }

.max-height-1\/4vh {
  max-height: 25vh; }

.max-height-1\/4vw {
  max-height: 25vw; }

.max-height-1\/4 {
  max-height: 25%; }

.max-height-1\/2vh {
  max-height: 50vh; }

.max-height-1\/2vw {
  max-height: 50vw; }

.max-height-1\/2 {
  max-height: 50%; }

.max-height-fullvh {
  max-height: 100vh; }

.max-height-fullvw {
  max-height: 100vw; }

.max-height-full {
  max-height: 100%; }

.max-height-7\/12vw {
  max-height: 58.33333vw; }

.max-height-7\/12 {
  max-height: 58.33333%; }

.max-height-5\/12vh {
  max-height: 41.66667vh; }

.max-height-5\/12vw {
  max-height: 41.66667vw; }

.max-height-5\/12 {
  max-height: 41.66667%; }

.max-height-1\/12vh {
  max-height: 8.33333vh; }

.max-height-1\/12vw {
  max-height: 8.33333vw; }

.max-height-1\/12 {
  max-height: 8.33333%; }

.max-height-5\/6vh {
  max-height: 83.33333vh; }

.max-height-5\/6vw {
  max-height: 83.33333vw; }

.max-height-5\/6 {
  max-height: 83.33333%; }

.max-height-1\/6vh {
  max-height: 16.66667vh; }

.max-height-1\/6vw {
  max-height: 16.66667vw; }

.max-height-1\/6 {
  max-height: 16.66667%; }

.max-height-2\/3vh {
  max-height: 66.66667vh; }

.max-height-2\/3vw {
  max-height: 66.66667vw; }

.max-height-4\/5vh {
  max-height: 80vh; }

.max-height-4\/5vw {
  max-height: 80vw; }

.max-height-4\/5 {
  max-height: 80%; }

.max-height-3\/5vh {
  max-height: 60vh; }

.max-height-3\/5vw {
  max-height: 60vw; }

.max-height-3\/5 {
  max-height: 60%; }

.max-height-2\/5vh {
  max-height: 40vh; }

.max-height-2\/5vw {
  max-height: 40vw; }

.max-height-2\/5 {
  max-height: 40%; }

.max-height-1\/5vh {
  max-height: 20vh; }

.max-height-1\/5vw {
  max-height: 20vw; }

.max-height-1\/5 {
  max-height: 20%; }

.max-height-11\/12vh {
  max-height: 91.66667vh; }

.max-height-11\/12vw {
  max-height: 91.66667vw; }

.max-height-11\/12 {
  max-height: 91.66667%; }

.max-height-7\/12vh {
  max-height: 58.33333vh; }

.min-height-0 {
  min-height: 0; }

.min-height-2\/3 {
  min-height: 66.66667%; }

.min-height-1\/3vh {
  min-height: 33.33333vh; }

.min-height-1\/3vw {
  min-height: 33.33333vw; }

.min-height-1\/3 {
  min-height: 33.33333%; }

.min-height-3\/4vh {
  min-height: 75vh; }

.min-height-3\/4vw {
  min-height: 75vw; }

.min-height-3\/4 {
  min-height: 75%; }

.min-height-1\/4vh {
  min-height: 25vh; }

.min-height-1\/4vw {
  min-height: 25vw; }

.min-height-1\/4 {
  min-height: 25%; }

.min-height-1\/2vh {
  min-height: 50vh; }

.min-height-1\/2vw {
  min-height: 50vw; }

.min-height-1\/2 {
  min-height: 50%; }

.min-height-fullvh {
  min-height: 100vh; }

.min-height-fullvw {
  min-height: 100vw; }

.min-height-full {
  min-height: 100%; }

.min-height-7\/12vw {
  min-height: 58.33333vw; }

.min-height-7\/12 {
  min-height: 58.33333%; }

.min-height-5\/12vh {
  min-height: 41.66667vh; }

.min-height-5\/12vw {
  min-height: 41.66667vw; }

.min-height-5\/12 {
  min-height: 41.66667%; }

.min-height-1\/12vh {
  min-height: 8.33333vh; }

.min-height-1\/12vw {
  min-height: 8.33333vw; }

.min-height-1\/12 {
  min-height: 8.33333%; }

.min-height-5\/6vh {
  min-height: 83.33333vh; }

.min-height-5\/6vw {
  min-height: 83.33333vw; }

.min-height-5\/6 {
  min-height: 83.33333%; }

.min-height-1\/6vh {
  min-height: 16.66667vh; }

.min-height-1\/6vw {
  min-height: 16.66667vw; }

.min-height-1\/6 {
  min-height: 16.66667%; }

.min-height-2\/3vh {
  min-height: 66.66667vh; }

.min-height-2\/3vw {
  min-height: 66.66667vw; }

.min-height-4\/5vh {
  min-height: 80vh; }

.min-height-4\/5vw {
  min-height: 80vw; }

.min-height-4\/5 {
  min-height: 80%; }

.min-height-3\/5vh {
  min-height: 60vh; }

.min-height-3\/5vw {
  min-height: 60vw; }

.min-height-3\/5 {
  min-height: 60%; }

.min-height-2\/5vh {
  min-height: 40vh; }

.min-height-2\/5vw {
  min-height: 40vw; }

.min-height-2\/5 {
  min-height: 40%; }

.min-height-1\/5vh {
  min-height: 20vh; }

.min-height-1\/5vw {
  min-height: 20vw; }

.min-height-1\/5 {
  min-height: 20%; }

.min-height-11\/12vh {
  min-height: 91.66667vh; }

.min-height-11\/12vw {
  min-height: 91.66667vw; }

.min-height-11\/12 {
  min-height: 91.66667%; }

.min-height-7\/12vh {
  min-height: 58.33333vh; }

.container-1, .Page-title h1 {
  margin: 0 auto;
  position: relative;
  width: 100%;
  padding: 0 1.5rem;
  max-width: 47rem; }

.container-2 {
  margin: 0 auto;
  position: relative;
  width: 100%;
  padding: 0 1.5rem;
  max-width: 41rem; }

.container-3 {
  margin: 0 auto;
  position: relative;
  width: 100%;
  padding: 0 1.5rem;
  max-width: 32rem; }

.container-4 {
  margin: 0 auto;
  position: relative;
  width: 100%;
  padding: 0 1.5rem;
  max-width: 23rem; }

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

.pin, .overlay {
  top: 0;
  bottom: 0;
  right: 0;
  left: 0; }

.pin-none {
  top: auto;
  bottom: auto;
  left: auto;
  right: auto; }

.pin-x {
  right: 0;
  left: 0; }

.pin-y {
  top: 0;
  bottom: 0; }

.pin-left {
  left: 0; }

.pin-right, .popup__close {
  right: 0; }

.pin-top, .popup__close {
  top: 0; }

.pin-bottom {
  bottom: 0; }

.block {
  display: block; }

.inline, .stat-slab dl dt {
  display: inline; }

.inline-block, .stat-slab dl dd, .stat-slab dl dt {
  display: inline-block; }

.table {
  display: table; }

.table-cell {
  display: table-cell; }

.inline-flex {
  display: inline-flex; }

.float-left {
  float: left; }

.float-right {
  float: right; }

.float-none {
  float: none; }

.absolute, .tooltip__content, .tooltip, .popup__close {
  position: absolute; }

.fixed, .overlay {
  position: fixed; }

.relative, .popup {
  position: relative; }

.static {
  position: static; }

.sticky {
  position: sticky; }

.overflow-auto {
  overflow: auto; }

.overflow-hidden {
  overflow: hidden; }

.overflow-visible {
  overflow: visible; }

.overflow-scroll {
  overflow: scroll; }

.overflow-x-auto {
  overflow-x: auto; }

.overflow-x-hidden {
  overflow-x: hidden; }

.overflow-x-visible {
  overflow-x: visible; }

.overflow-x-scroll {
  overflow-x: scroll; }

.overflow-y-auto {
  overflow-y: auto; }

.overflow-y-hidden {
  overflow-y: hidden; }

.overflow-y-visible {
  overflow-y: visible; }

.overflow-y-scroll {
  overflow-y: scroll; }

.border-1 {
  border: 1px solid; }

.border-2 {
  border: 2px solid; }

.border-4 {
  border: 4px solid; }

.border-8 {
  border: 8px solid; }

.border-l1 {
  border-left: 1px solid; }

.border-l2 {
  border-left: 2px solid; }

.border-l4 {
  border-left: 4px solid; }

.border-l8 {
  border-left: 8px solid; }

.border-r1 {
  border-right: 1px solid; }

.border-r2 {
  border-right: 2px solid; }

.border-r4 {
  border-right: 4px solid; }

.border-r8 {
  border-right: 8px solid; }

.border-t1 {
  border-top: 1px solid; }

.border-t2 {
  border-top: 2px solid; }

.border-t4 {
  border-top: 4px solid; }

.border-t8 {
  border-top: 8px solid; }

.border-b1 {
  border-bottom: 1px solid; }

.border-b2 {
  border-bottom: 2px solid; }

.border-b4 {
  border-bottom: 4px solid; }

.border-b8 {
  border-bottom: 8px solid; }

.border-solid {
  border-style: solid; }

.border-dashed {
  border-style: dashed; }

.border-dotted {
  border-style: dotted; }

.border-none {
  border-style: none; }

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

.rounded-0p {
  border-radius: 0.09375rem; }

.rounded-1 {
  border-radius: 0.1875rem; }

.rounded-1p {
  border-radius: 0.28125rem; }

.rounded-2 {
  border-radius: 0.375rem; }

.rounded-2p {
  border-radius: 0.5625rem; }

.rounded-3 {
  border-radius: 0.75rem; }

.rounded-3p {
  border-radius: 1.125rem; }

.rounded-4 {
  border-radius: 1.5rem; }

.rounded-4p {
  border-radius: 2.25rem; }

.rounded-5 {
  border-radius: 3rem; }

.rounded-5p {
  border-radius: 4.5rem; }

.rounded-6 {
  border-radius: 6rem; }

.rounded-6p {
  border-radius: 9rem; }

.rounded-7 {
  border-radius: 12rem; }

.rounded-7p {
  border-radius: 18rem; }

.rounded-8 {
  border-radius: 24rem; }

.rounded-8p {
  border-radius: 36rem; }

.rounded-t0 {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.rounded-t0p {
  border-top-left-radius: 0.09375rem;
  border-top-right-radius: 0.09375rem; }

.rounded-t1 {
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem; }

.rounded-t1p {
  border-top-left-radius: 0.28125rem;
  border-top-right-radius: 0.28125rem; }

.rounded-t2 {
  border-top-left-radius: 0.375rem;
  border-top-right-radius: 0.375rem; }

.rounded-t2p {
  border-top-left-radius: 0.5625rem;
  border-top-right-radius: 0.5625rem; }

.rounded-t3 {
  border-top-left-radius: 0.75rem;
  border-top-right-radius: 0.75rem; }

.rounded-t3p {
  border-top-left-radius: 1.125rem;
  border-top-right-radius: 1.125rem; }

.rounded-t4 {
  border-top-left-radius: 1.5rem;
  border-top-right-radius: 1.5rem; }

.rounded-t4p {
  border-top-left-radius: 2.25rem;
  border-top-right-radius: 2.25rem; }

.rounded-t5 {
  border-top-left-radius: 3rem;
  border-top-right-radius: 3rem; }

.rounded-t5p {
  border-top-left-radius: 4.5rem;
  border-top-right-radius: 4.5rem; }

.rounded-t6 {
  border-top-left-radius: 6rem;
  border-top-right-radius: 6rem; }

.rounded-t6p {
  border-top-left-radius: 9rem;
  border-top-right-radius: 9rem; }

.rounded-t7 {
  border-top-left-radius: 12rem;
  border-top-right-radius: 12rem; }

.rounded-t7p {
  border-top-left-radius: 18rem;
  border-top-right-radius: 18rem; }

.rounded-t8 {
  border-top-left-radius: 24rem;
  border-top-right-radius: 24rem; }

.rounded-t8p {
  border-top-left-radius: 36rem;
  border-top-right-radius: 36rem; }

.rounded-b0 {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.rounded-b0p {
  border-bottom-left-radius: 0.09375rem;
  border-bottom-right-radius: 0.09375rem; }

.rounded-b1 {
  border-bottom-left-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem; }

.rounded-b1p {
  border-bottom-left-radius: 0.28125rem;
  border-bottom-right-radius: 0.28125rem; }

.rounded-b2 {
  border-bottom-left-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem; }

.rounded-b2p {
  border-bottom-left-radius: 0.5625rem;
  border-bottom-right-radius: 0.5625rem; }

.rounded-b3 {
  border-bottom-left-radius: 0.75rem;
  border-bottom-right-radius: 0.75rem; }

.rounded-b3p {
  border-bottom-left-radius: 1.125rem;
  border-bottom-right-radius: 1.125rem; }

.rounded-b4 {
  border-bottom-left-radius: 1.5rem;
  border-bottom-right-radius: 1.5rem; }

.rounded-b4p {
  border-bottom-left-radius: 2.25rem;
  border-bottom-right-radius: 2.25rem; }

.rounded-b5 {
  border-bottom-left-radius: 3rem;
  border-bottom-right-radius: 3rem; }

.rounded-b5p {
  border-bottom-left-radius: 4.5rem;
  border-bottom-right-radius: 4.5rem; }

.rounded-b6 {
  border-bottom-left-radius: 6rem;
  border-bottom-right-radius: 6rem; }

.rounded-b6p {
  border-bottom-left-radius: 9rem;
  border-bottom-right-radius: 9rem; }

.rounded-b7 {
  border-bottom-left-radius: 12rem;
  border-bottom-right-radius: 12rem; }

.rounded-b7p {
  border-bottom-left-radius: 18rem;
  border-bottom-right-radius: 18rem; }

.rounded-b8 {
  border-bottom-left-radius: 24rem;
  border-bottom-right-radius: 24rem; }

.rounded-b8p {
  border-bottom-left-radius: 36rem;
  border-bottom-right-radius: 36rem; }

.rounded-r0 {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.rounded-r0p {
  border-top-right-radius: 0.09375rem;
  border-bottom-right-radius: 0.09375rem; }

.rounded-r1 {
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem; }

.rounded-r1p {
  border-top-right-radius: 0.28125rem;
  border-bottom-right-radius: 0.28125rem; }

.rounded-r2 {
  border-top-right-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem; }

.rounded-r2p {
  border-top-right-radius: 0.5625rem;
  border-bottom-right-radius: 0.5625rem; }

.rounded-r3 {
  border-top-right-radius: 0.75rem;
  border-bottom-right-radius: 0.75rem; }

.rounded-r3p {
  border-top-right-radius: 1.125rem;
  border-bottom-right-radius: 1.125rem; }

.rounded-r4 {
  border-top-right-radius: 1.5rem;
  border-bottom-right-radius: 1.5rem; }

.rounded-r4p {
  border-top-right-radius: 2.25rem;
  border-bottom-right-radius: 2.25rem; }

.rounded-r5 {
  border-top-right-radius: 3rem;
  border-bottom-right-radius: 3rem; }

.rounded-r5p {
  border-top-right-radius: 4.5rem;
  border-bottom-right-radius: 4.5rem; }

.rounded-r6 {
  border-top-right-radius: 6rem;
  border-bottom-right-radius: 6rem; }

.rounded-r6p {
  border-top-right-radius: 9rem;
  border-bottom-right-radius: 9rem; }

.rounded-r7 {
  border-top-right-radius: 12rem;
  border-bottom-right-radius: 12rem; }

.rounded-r7p {
  border-top-right-radius: 18rem;
  border-bottom-right-radius: 18rem; }

.rounded-r8 {
  border-top-right-radius: 24rem;
  border-bottom-right-radius: 24rem; }

.rounded-r8p {
  border-top-right-radius: 36rem;
  border-bottom-right-radius: 36rem; }

.rounded-l0 {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.rounded-l0p {
  border-top-left-radius: 0.09375rem;
  border-bottom-left-radius: 0.09375rem; }

.rounded-l1 {
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem; }

.rounded-l1p {
  border-top-left-radius: 0.28125rem;
  border-bottom-left-radius: 0.28125rem; }

.rounded-l2 {
  border-top-left-radius: 0.375rem;
  border-bottom-left-radius: 0.375rem; }

.rounded-l2p {
  border-top-left-radius: 0.5625rem;
  border-bottom-left-radius: 0.5625rem; }

.rounded-l3 {
  border-top-left-radius: 0.75rem;
  border-bottom-left-radius: 0.75rem; }

.rounded-l3p {
  border-top-left-radius: 1.125rem;
  border-bottom-left-radius: 1.125rem; }

.rounded-l4 {
  border-top-left-radius: 1.5rem;
  border-bottom-left-radius: 1.5rem; }

.rounded-l4p {
  border-top-left-radius: 2.25rem;
  border-bottom-left-radius: 2.25rem; }

.rounded-l5 {
  border-top-left-radius: 3rem;
  border-bottom-left-radius: 3rem; }

.rounded-l5p {
  border-top-left-radius: 4.5rem;
  border-bottom-left-radius: 4.5rem; }

.rounded-l6 {
  border-top-left-radius: 6rem;
  border-bottom-left-radius: 6rem; }

.rounded-l6p {
  border-top-left-radius: 9rem;
  border-bottom-left-radius: 9rem; }

.rounded-l7 {
  border-top-left-radius: 12rem;
  border-bottom-left-radius: 12rem; }

.rounded-l7p {
  border-top-left-radius: 18rem;
  border-bottom-left-radius: 18rem; }

.rounded-l8 {
  border-top-left-radius: 24rem;
  border-bottom-left-radius: 24rem; }

.rounded-l8p {
  border-top-left-radius: 36rem;
  border-bottom-left-radius: 36rem; }

.row, .stat-slab, .tabs, .categories {
  align-items: stretch;
  display: flex;
  flex-flow: row;
  justify-content: space-between; }
  .row > *, .stat-slab > *, .tabs > *, .categories > * {
    min-width: 0; }

.row-inline {
  align-items: stretch;
  display: inline-flex;
  flex-flow: row;
  justify-content: space-between; }

.row-expand > * {
  flex: 1; }

.col, .popup__contents, .popup {
  align-items: stretch;
  display: flex;
  flex-flow: column;
  justify-content: space-between; }
  .col > *, .popup__contents > *, .popup > * {
    min-width: 0; }

.col-inline {
  align-items: stretch;
  display: inline-flex;
  flex-flow: column;
  justify-content: space-between; }

.col-expand > * {
  flex: 1; }

.gutter-1 {
  margin: 0.375rem -0.375rem; }
  .gutter-1 > * {
    margin: 0.375rem; }
  .gutter-1 + .gutter-1 {
    margin-top: -0.375rem; }

.gutter-2 {
  margin: 0.75rem -0.75rem; }
  .gutter-2 > * {
    margin: 0.75rem; }
  .gutter-2 + .gutter-2 {
    margin-top: -0.75rem; }

.gutter-3 {
  margin: 1.5rem -1.5rem; }
  .gutter-3 > * {
    margin: 1.5rem; }
  .gutter-3 + .gutter-3 {
    margin-top: -1.5rem; }

.gutter-4 {
  margin: 3rem -3rem; }
  .gutter-4 > * {
    margin: 3rem; }
  .gutter-4 + .gutter-4 {
    margin-top: -3rem; }

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

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

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

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

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

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

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

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

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

.flex-evenly {
  justify-content: space-evenly; }

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

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

.items-center, .stat-slab {
  align-items: center; }

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

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

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

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

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

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

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

.content-evenly {
  align-content: space-evenly; }

.wrap, .stat-slab {
  flex-wrap: wrap; }

.nowrap {
  flex-wrap: nowrap; }

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

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

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

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

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

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

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

.flex-noshrink {
  flex-shrink: 0; }

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

.flex-nogrow {
  flex-grow: 0; }

.flex-auto {
  flex: auto; }

.flex-1 {
  flex: 1; }

.flex-2 {
  flex: 2; }

.flex-3 {
  flex: 3; }

.flex-4 {
  flex: 4; }

.flex-5 {
  flex: 5; }

.flex-6 {
  flex: 6; }

.flex-7 {
  flex: 7; }

.flex-8 {
  flex: 8; }

.flex-9 {
  flex: 9; }

.flex-10 {
  flex: 10; }

.flex-11 {
  flex: 11; }

.flex-12 {
  flex: 12; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.order-3 {
  order: 3; }

.order-4 {
  order: 4; }

.order-5 {
  order: 5; }

.order-6 {
  order: 6; }

.order-7 {
  order: 7; }

.order-8 {
  order: 8; }

.order-9 {
  order: 9; }

.order-10 {
  order: 10; }

.order-11 {
  order: 11; }

.order-12 {
  order: 12; }

.grid-dense {
  grid-auto-flow: dense; }

.grid-1 {
  --gridGap: 0;
  --gridSize: 1;
  display: grid;
  grid-template-columns: repeat(1, 1fr); }

.grid-2 {
  --gridGap: 0;
  --gridSize: 2;
  display: grid;
  grid-template-columns: repeat(2, 1fr); }

.grid-3 {
  --gridGap: 0;
  --gridSize: 3;
  display: grid;
  grid-template-columns: repeat(3, 1fr); }

.grid-4 {
  --gridGap: 0;
  --gridSize: 4;
  display: grid;
  grid-template-columns: repeat(4, 1fr); }

.grid-5 {
  --gridGap: 0;
  --gridSize: 5;
  display: grid;
  grid-template-columns: repeat(5, 1fr); }

.grid-6 {
  --gridGap: 0;
  --gridSize: 6;
  display: grid;
  grid-template-columns: repeat(6, 1fr); }

.grid-8 {
  --gridGap: 0;
  --gridSize: 8;
  display: grid;
  grid-template-columns: repeat(8, 1fr); }

.grid-9 {
  --gridGap: 0;
  --gridSize: 9;
  display: grid;
  grid-template-columns: repeat(9, 1fr); }

.grid-10 {
  --gridGap: 0;
  --gridSize: 10;
  display: grid;
  grid-template-columns: repeat(10, 1fr); }

.grid-12 {
  --gridGap: 0;
  --gridSize: 12;
  display: grid;
  grid-template-columns: repeat(12, 1fr); }

.grid-15 {
  --gridGap: 0;
  --gridSize: 15;
  display: grid;
  grid-template-columns: repeat(15, 1fr); }

.rows-1 {
  --gridGap: 0;
  --gridSize: 1;
  display: grid;
  grid-template-rows: repeat(1, 1fr); }

.rows-2 {
  --gridGap: 0;
  --gridSize: 2;
  display: grid;
  grid-template-rows: repeat(2, 1fr); }

.rows-3 {
  --gridGap: 0;
  --gridSize: 3;
  display: grid;
  grid-template-rows: repeat(3, 1fr); }

.rows-4 {
  --gridGap: 0;
  --gridSize: 4;
  display: grid;
  grid-template-rows: repeat(4, 1fr); }

.rows-5 {
  --gridGap: 0;
  --gridSize: 5;
  display: grid;
  grid-template-rows: repeat(5, 1fr); }

.rows-6 {
  --gridGap: 0;
  --gridSize: 6;
  display: grid;
  grid-template-rows: repeat(6, 1fr); }

.rows-8 {
  --gridGap: 0;
  --gridSize: 8;
  display: grid;
  grid-template-rows: repeat(8, 1fr); }

.rows-9 {
  --gridGap: 0;
  --gridSize: 9;
  display: grid;
  grid-template-rows: repeat(9, 1fr); }

.rows-10 {
  --gridGap: 0;
  --gridSize: 10;
  display: grid;
  grid-template-rows: repeat(10, 1fr); }

.rows-12 {
  --gridGap: 0;
  --gridSize: 12;
  display: grid;
  grid-template-rows: repeat(12, 1fr); }

.rows-15 {
  --gridGap: 0;
  --gridSize: 15;
  display: grid;
  grid-template-rows: repeat(15, 1fr); }

.gap-1 {
  --gridGap: 0.375rem;
  grid-gap: 0.375rem;
  gap: 0.375rem; }

.gap-2 {
  --gridGap: 0.75rem;
  grid-gap: 0.75rem;
  gap: 0.75rem; }

.gap-3 {
  --gridGap: 1.5rem;
  grid-gap: 1.5rem;
  gap: 1.5rem; }

.gap-4 {
  --gridGap: 3rem;
  grid-gap: 3rem;
  gap: 3rem; }

.grid {
  display: grid; }

.grid-dense {
  grid-auto-flow: dense; }

.place-center {
  place-items: center; }

.place-stretch {
  place-items: stretch; }

.place-right {
  justify-items: right; }

.place-left {
  justify-items: left; }

.place-start {
  justify-items: start; }

.place-end {
  justify-items: end; }

.place-center-x {
  justify-items: center; }

.place-stretch-x {
  justify-items: stretch; }

.place-top {
  align-items: start; }

.place-bottom {
  align-items: end; }

.place-center-y {
  align-items: center; }

.place-center {
  align-items: center; }

.place-stretch-y {
  align-items: stretch; }

.place-stretch {
  align-items: stretch; }

.grid-center {
  place-content: center; }

.grid-stretch {
  place-content: stretch; }

.grid-around {
  place-content: space-around; }

.grid-between {
  place-content: space-between; }

.grid-evenly {
  place-content: space-evenly; }

.grid-right {
  justify-content: right; }

.grid-left {
  justify-content: left; }

.grid-start {
  justify-content: start; }

.grid-end {
  justify-content: end; }

.grid-center-x {
  justify-content: center; }

.grid-stretch-x {
  justify-content: stretch; }

.grid-around-x {
  justify-content: space-around; }

.grid-between-x {
  justify-content: space-between; }

.grid-evenly-x {
  justify-content: space-evenly; }

.grid-top {
  align-content: start; }

.grid-bottom {
  align-content: end; }

.grid-center-y {
  align-content: center; }

.grid-stretch-y {
  align-content: stretch; }

.grid-around-y {
  align-content: space-around; }

.grid-between-y {
  align-content: space-between; }

.grid-evenly-y {
  align-content: space-evenly; }

.cell-center {
  place-self: center; }

.cell-stretch {
  place-self: stretch; }

.cell-right {
  justify-self: right; }

.cell-left {
  justify-self: left; }

.cell-start {
  justify-self: start; }

.cell-end {
  justify-self: end; }

.cell-center-x {
  justify-self: center; }

.cell-stretch-x {
  justify-self: stretch; }

.cell-top {
  align-self: start; }

.cell-bottom {
  align-self: end; }

.cell-center-y {
  align-self: center; }

.cell-stretch-y {
  align-self: stretch; }

.at-col-1 {
  grid-column-start: 1; }

.at-col-2 {
  grid-column-start: 2; }

.at-col-3 {
  grid-column-start: 3; }

.at-col-4 {
  grid-column-start: 4; }

.at-col-5 {
  grid-column-start: 5; }

.at-col-6 {
  grid-column-start: 6; }

.at-col-8 {
  grid-column-start: 8; }

.at-col-9 {
  grid-column-start: 9; }

.at-col-10 {
  grid-column-start: 10; }

.at-col-12 {
  grid-column-start: 12; }

.at-col-15 {
  grid-column-start: 15; }

.at-row-1 {
  grid-row-start: 1; }

.at-row-2 {
  grid-row-start: 2; }

.at-row-3 {
  grid-row-start: 3; }

.at-row-4 {
  grid-row-start: 4; }

.at-row-5 {
  grid-row-start: 5; }

.at-row-6 {
  grid-row-start: 6; }

.at-row-8 {
  grid-row-start: 8; }

.at-row-9 {
  grid-row-start: 9; }

.at-row-10 {
  grid-row-start: 10; }

.at-row-12 {
  grid-row-start: 12; }

.at-row-15 {
  grid-row-start: 15; }

.col-span1 {
  grid-column: auto/span 1; }

.col-span2 {
  grid-column: auto/span 2; }

.col-span3 {
  grid-column: auto/span 3; }

.col-span4 {
  grid-column: auto/span 4; }

.col-span5 {
  grid-column: auto/span 5; }

.col-span6 {
  grid-column: auto/span 6; }

.col-span7 {
  grid-column: auto/span 7; }

.col-span8 {
  grid-column: auto/span 8; }

.col-span9 {
  grid-column: auto/span 9; }

.col-span10 {
  grid-column: auto/span 10; }

.col-span11 {
  grid-column: auto/span 11; }

.col-span12 {
  grid-column: auto/span 12; }

.col-span13 {
  grid-column: auto/span 13; }

.col-span14 {
  grid-column: auto/span 14; }

.col-span15 {
  grid-column: auto/span 15; }

.row-span1 {
  grid-row: auto/span 1; }

.row-span2 {
  grid-row: auto/span 2; }

.row-span3 {
  grid-row: auto/span 3; }

.row-span4 {
  grid-row: auto/span 4; }

.row-span5 {
  grid-row: auto/span 5; }

.row-span6 {
  grid-row: auto/span 6; }

.row-span7 {
  grid-row: auto/span 7; }

.row-span8 {
  grid-row: auto/span 8; }

.row-span9 {
  grid-row: auto/span 9; }

.row-span10 {
  grid-row: auto/span 10; }

.row-span11 {
  grid-row: auto/span 11; }

.row-span12 {
  grid-row: auto/span 12; }

.row-span13 {
  grid-row: auto/span 13; }

.row-span14 {
  grid-row: auto/span 14; }

.row-span15 {
  grid-row: auto/span 15; }

.hard-grid {
  display: grid; }

.hard-grid-1 {
  --grid-gap: 0;
  --grid-size: 1;
  display: grid;
  grid-template-columns: repeat(1, calc(100% - 0 * var(--grid-gap))); }

.hard-grid-2 {
  --grid-gap: 0;
  --grid-size: 2;
  display: grid;
  grid-template-columns: repeat(2, calc(50% - 0.5 * var(--grid-gap))); }

.hard-grid-3 {
  --grid-gap: 0;
  --grid-size: 3;
  display: grid;
  grid-template-columns: repeat(3, calc(33.33333% - 0.66667 * var(--grid-gap))); }

.hard-grid-4 {
  --grid-gap: 0;
  --grid-size: 4;
  display: grid;
  grid-template-columns: repeat(4, calc(25% - 0.75 * var(--grid-gap))); }

.hard-grid-5 {
  --grid-gap: 0;
  --grid-size: 5;
  display: grid;
  grid-template-columns: repeat(5, calc(20% - 0.8 * var(--grid-gap))); }

.hard-grid-6 {
  --grid-gap: 0;
  --grid-size: 6;
  display: grid;
  grid-template-columns: repeat(6, calc(16.66667% - 0.83333 * var(--grid-gap))); }

.hard-grid-8 {
  --grid-gap: 0;
  --grid-size: 8;
  display: grid;
  grid-template-columns: repeat(8, calc(12.5% - 0.875 * var(--grid-gap))); }

.hard-grid-9 {
  --grid-gap: 0;
  --grid-size: 9;
  display: grid;
  grid-template-columns: repeat(9, calc(11.11111% - 0.88889 * var(--grid-gap))); }

.hard-grid-10 {
  --grid-gap: 0;
  --grid-size: 10;
  display: grid;
  grid-template-columns: repeat(10, calc(10% - 0.9 * var(--grid-gap))); }

.hard-grid-12 {
  --grid-gap: 0;
  --grid-size: 12;
  display: grid;
  grid-template-columns: repeat(12, calc(8.33333% - 0.91667 * var(--grid-gap))); }

.hard-grid-15 {
  --grid-gap: 0;
  --grid-size: 15;
  display: grid;
  grid-template-columns: repeat(15, calc(6.66667% - 0.93333 * var(--grid-gap))); }

.hard-rows-1 {
  --grid-gap: 0;
  --grid-size: 1;
  display: grid;
  grid-template-rows: repeat(1, calc(100% - 0 * var(--grid-gap))); }

.hard-rows-2 {
  --grid-gap: 0;
  --grid-size: 2;
  display: grid;
  grid-template-rows: repeat(2, calc(50% - 0.5 * var(--grid-gap))); }

.hard-rows-3 {
  --grid-gap: 0;
  --grid-size: 3;
  display: grid;
  grid-template-rows: repeat(3, calc(33.33333% - 0.66667 * var(--grid-gap))); }

.hard-rows-4 {
  --grid-gap: 0;
  --grid-size: 4;
  display: grid;
  grid-template-rows: repeat(4, calc(25% - 0.75 * var(--grid-gap))); }

.hard-rows-5 {
  --grid-gap: 0;
  --grid-size: 5;
  display: grid;
  grid-template-rows: repeat(5, calc(20% - 0.8 * var(--grid-gap))); }

.hard-rows-6 {
  --grid-gap: 0;
  --grid-size: 6;
  display: grid;
  grid-template-rows: repeat(6, calc(16.66667% - 0.83333 * var(--grid-gap))); }

.hard-rows-8 {
  --grid-gap: 0;
  --grid-size: 8;
  display: grid;
  grid-template-rows: repeat(8, calc(12.5% - 0.875 * var(--grid-gap))); }

.hard-rows-9 {
  --grid-gap: 0;
  --grid-size: 9;
  display: grid;
  grid-template-rows: repeat(9, calc(11.11111% - 0.88889 * var(--grid-gap))); }

.hard-rows-10 {
  --grid-gap: 0;
  --grid-size: 10;
  display: grid;
  grid-template-rows: repeat(10, calc(10% - 0.9 * var(--grid-gap))); }

.hard-rows-12 {
  --grid-gap: 0;
  --grid-size: 12;
  display: grid;
  grid-template-rows: repeat(12, calc(8.33333% - 0.91667 * var(--grid-gap))); }

.hard-rows-15 {
  --grid-gap: 0;
  --grid-size: 15;
  display: grid;
  grid-template-rows: repeat(15, calc(6.66667% - 0.93333 * var(--grid-gap))); }

.grow-0 {
  transform: scale(1, 1); }

.grow-1 {
  transform: scale(1.05, 1.05); }

.grow-2 {
  transform: scale(1.1, 1.1); }

.grow-3 {
  transform: scale(1.25, 1.25); }

.grow-4 {
  transform: scale(1.5, 1.5); }

.grow-5 {
  transform: scale(2, 2); }

.grow-6 {
  transform: scale(3, 3); }

.shrink-0 {
  transform: scale(1, 1); }

.shrink-1 {
  transform: scale(0.95238, 0.95238); }

.shrink-2 {
  transform: scale(0.90909, 0.90909); }

.shrink-3 {
  transform: scale(0.8, 0.8); }

.shrink-4 {
  transform: scale(0.66667, 0.66667); }

.shrink-5 {
  transform: scale(0.5, 0.5); }

.shrink-6 {
  transform: scale(0.33333, 0.33333); }

.rotate-30 {
  transform: rotate(30deg); }

.rotate-45 {
  transform: rotate(45deg); }

.rotate-60 {
  transform: rotate(60deg); }

.rotate-90 {
  transform: rotate(90deg); }

.rotate-n30 {
  transform: rotate(-30deg); }

.rotate-n45 {
  transform: rotate(-45deg); }

.rotate-n60 {
  transform: rotate(-60deg); }

.rotate-n90 {
  transform: rotate(-90deg); }

.rotate-180 {
  transform: rotate(180deg); }

.grayscale-0 {
  filter: grayscale(0%); }

.grayscale-1 {
  filter: grayscale(5%); }

.grayscale-2 {
  filter: grayscale(10%); }

.grayscale-3 {
  filter: grayscale(25%); }

.grayscale-4 {
  filter: grayscale(50%); }

.grayscale-5 {
  filter: grayscale(75%); }

.grayscale-6 {
  filter: grayscale(90%); }

.grayscale-7 {
  filter: grayscale(95%); }

.grayscale-8 {
  filter: grayscale(100%); }

.sepia-0 {
  filter: sepia(0%); }

.sepia-1 {
  filter: sepia(5%); }

.sepia-2 {
  filter: sepia(10%); }

.sepia-3 {
  filter: sepia(25%); }

.sepia-4 {
  filter: sepia(50%); }

.sepia-5 {
  filter: sepia(75%); }

.sepia-6 {
  filter: sepia(90%); }

.sepia-7 {
  filter: sepia(95%); }

.sepia-8 {
  filter: sepia(100%); }

.invert-0 {
  filter: invert(0%); }

.invert-1 {
  filter: invert(5%); }

.invert-2 {
  filter: invert(10%); }

.invert-3 {
  filter: invert(25%); }

.invert-4 {
  filter: invert(50%); }

.invert-5 {
  filter: invert(75%); }

.invert-6 {
  filter: invert(90%); }

.invert-7 {
  filter: invert(95%); }

.invert-8 {
  filter: invert(100%); }

.contrast-n0 {
  filter: contrast(100%); }

.contrast-n1 {
  filter: contrast(95%); }

.contrast-n2 {
  filter: contrast(90%); }

.contrast-n3 {
  filter: contrast(75%); }

.contrast-n4 {
  filter: contrast(50%); }

.contrast-n5 {
  filter: contrast(25%); }

.contrast-n6 {
  filter: contrast(10%); }

.contrast-n7 {
  filter: contrast(5%); }

.contrast-n8 {
  filter: contrast(0%); }

.contrast-0 {
  filter: contrast(100%); }

.contrast-1 {
  filter: contrast(105%); }

.contrast-2 {
  filter: contrast(110%); }

.contrast-3 {
  filter: contrast(125%); }

.contrast-4 {
  filter: contrast(150%); }

.contrast-5 {
  filter: contrast(175%); }

.contrast-6 {
  filter: contrast(190%); }

.contrast-7 {
  filter: contrast(195%); }

.contrast-8 {
  filter: contrast(200%); }

.brightness-n0 {
  filter: brightness(100%); }

.brightness-n1 {
  filter: brightness(95%); }

.brightness-n2 {
  filter: brightness(90%); }

.brightness-n3 {
  filter: brightness(75%); }

.brightness-n4 {
  filter: brightness(50%); }

.brightness-n5 {
  filter: brightness(25%); }

.brightness-n6 {
  filter: brightness(10%); }

.brightness-n7 {
  filter: brightness(5%); }

.brightness-n8 {
  filter: brightness(0%); }

.brightness-0 {
  filter: brightness(100%); }

.brightness-1 {
  filter: brightness(105%); }

.brightness-2 {
  filter: brightness(110%); }

.brightness-3 {
  filter: brightness(125%); }

.brightness-4 {
  filter: brightness(150%); }

.brightness-5 {
  filter: brightness(175%); }

.brightness-6 {
  filter: brightness(190%); }

.brightness-7 {
  filter: brightness(195%); }

.brightness-8 {
  filter: brightness(200%); }

.saturation-n0 {
  filter: saturate(100%); }

.saturation-n1 {
  filter: saturate(95%); }

.saturation-n2 {
  filter: saturate(90%); }

.saturation-n3 {
  filter: saturate(75%); }

.saturation-n4 {
  filter: saturate(50%); }

.saturation-n5 {
  filter: saturate(25%); }

.saturation-n6 {
  filter: saturate(10%); }

.saturation-n7 {
  filter: saturate(5%); }

.saturation-n8 {
  filter: saturate(0%); }

.saturation-0 {
  filter: saturate(100%); }

.saturation-1 {
  filter: saturate(105%); }

.saturation-2 {
  filter: saturate(110%); }

.saturation-3 {
  filter: saturate(125%); }

.saturation-4 {
  filter: saturate(150%); }

.saturation-5 {
  filter: saturate(175%); }

.saturation-6 {
  filter: saturate(190%); }

.saturation-7 {
  filter: saturate(195%); }

.saturation-8 {
  filter: saturate(200%); }

.transform-center {
  transform-origin: center center 0; }

.transform-top {
  transform-origin: center top 0; }

.transform-bottom {
  transform-origin: center bottom 0; }

.transform-left {
  transform-origin: left center 0; }

.transform-right {
  transform-origin: right center 0; }

.transform-ne {
  transform-origin: right top 0; }

.transform-nw {
  transform-origin: left top 0; }

.transform-se {
  transform-origin: right bottom 0; }

.transform-sw {
  transform-origin: left bottom 0; }

.visible {
  visibility: visible; }

.invisible {
  visibility: hidden; }

.opacity-0 {
  opacity: 0; }

.opacity-1 {
  opacity: 0.05; }

.opacity-2 {
  opacity: 0.1; }

.opacity-3 {
  opacity: 0.25; }

.opacity-4 {
  opacity: 0.5; }

.opacity-5 {
  opacity: 0.75; }

.opacity-6 {
  opacity: 0.9; }

.opacity-7 {
  opacity: 0.95; }

.opacity-full {
  opacity: 1; }

.z-0 {
  z-index: 0; }

.z-1 {
  z-index: 100; }

.z-2 {
  z-index: 200; }

.z-3 {
  z-index: 300; }

.z-4 {
  z-index: 400; }

.z-5 {
  z-index: 500; }

.z-6 {
  z-index: 600; }

.z-7 {
  z-index: 700; }

.z-8 {
  z-index: 800; }

.z-9 {
  z-index: 900; }

.z-10 {
  z-index: 1000; }

.hidden {
  display: none; }

[hidden] {
  display: none; }

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

.bg-fixed {
  background-attachment: fixed; }

.bg-local {
  background-attachment: local; }

.bg-scroll {
  background-attachment: scroll; }

.bg-left {
  background-position-x: left; }

.bg-right {
  background-position-x: right; }

.bg-center-x {
  background-position-x: center; }

.bg-bottom {
  background-position-y: bottom; }

.bg-top {
  background-position-y: top; }

.bg-center-y {
  background-position-y: center; }

.bg-repeat {
  background-repeat: repeat; }

.bg-no-repeat {
  background-repeat: no-repeat; }

.bg-repeat-x {
  background-repeat: repeat-x; }

.bg-repeat-y {
  background-repeat: repeat-y; }

.bg-auto {
  background-size: auto; }

.bg-cover {
  background-size: cover; }

.bg-contain {
  background-size: contain; }

.color-primary {
  color: white;
  background-color: #1800AD; }

.color-secondary {
  color: white;
  background-color: #1800AD; }

.color-action {
  color: white;
  background-color: #FFB703; }

.color-positive {
  color: #1809a7;
  background-color: #16ab39; }

.color-negative {
  color: #fdf2f4;
  background-color: #de011e; }

.color-warning {
  color: #2309a5;
  background-color: #fbbd08; }

.color-white {
  color: #240db1;
  background-color: white; }

.color-black {
  color: white;
  background-color: #1800AD; }

.color-brand {
  color: white;
  background-color: #FFB703; }

.color-brand-lighter {
  color: #240caf;
  background-color: #fff4d9; }

.color-brand-light {
  color: #240bab;
  background-color: #ffdf8e; }

.color-brand-dark {
  color: #2409a5;
  background-color: #b37b3b; }

.color-brand-darker {
  color: #fffbf2;
  background-color: #522e83; }

.color-accent {
  color: white;
  background-color: #1800AD; }

.color-accent-lighter {
  color: #210ab1;
  background-color: #d5cffc; }

.color-accent-light {
  color: #f4f3fc;
  background-color: #240ac4; }

.color-accent-dark {
  color: white;
  background-color: #1800ad; }

.color-accent-darker {
  color: white;
  background-color: #1800ad; }

.bg-primary {
  background-color: #1800AD; }

.bg-secondary {
  background-color: #1800AD; }

.bg-action {
  background-color: #FFB703; }

.bg-positive {
  background-color: #16ab39; }

.bg-negative {
  background-color: #de011e; }

.bg-warning {
  background-color: #fbbd08; }

.bg-white {
  background-color: white; }

.bg-black {
  background-color: #1800AD; }

.bg-brand {
  background-color: #FFB703; }

.bg-brand-lighter {
  background-color: #fff4d9; }

.bg-brand-light {
  background-color: #ffdf8e; }

.bg-brand-dark {
  background-color: #b37b3b; }

.bg-brand-darker {
  background-color: #522e83; }

.bg-accent {
  background-color: #1800AD; }

.bg-accent-lighter {
  background-color: #d5cffc; }

.bg-accent-light {
  background-color: #240ac4; }

.bg-accent-dark {
  background-color: #1800ad; }

.bg-accent-darker {
  background-color: #1800ad; }

.text-primary {
  color: #1800AD; }

.text-secondary {
  color: #1800AD; }

.text-action {
  color: #FFB703; }

.text-positive {
  color: #16ab39; }

.text-negative {
  color: #de011e; }

.text-warning {
  color: #fbbd08; }

.text-white {
  color: white; }

.text-black {
  color: #1800AD; }

.text-brand, .stat-slab dl dt, .description dt {
  color: #FFB703; }

.text-brand-lighter {
  color: #fff4d9; }

.text-brand-light {
  color: #ffdf8e; }

.text-brand-dark {
  color: #b37b3b; }

.text-brand-darker {
  color: #522e83; }

.text-accent, .moderate .comment__author, .conversation-balloon h1, .tabs-container [is-selected], .title, .intro-paragraph h1, .intro-paragraph h2, .intro-paragraph h3, .intro-paragraph h4, .intro-paragraph h5, .intro-paragraph h6, .intro-paragraph .h1, .intro-paragraph .h2, .intro-paragraph .h3, .intro-paragraph .h4, .intro-paragraph .h5, .intro-paragraph .h6 {
  color: #1800AD; }

.text-accent-lighter {
  color: #d5cffc; }

.text-accent-light {
  color: #240ac4; }

.text-accent-dark {
  color: #1800ad; }

.text-accent-darker {
  color: #1800ad; }

.cursor-auto {
  cursor: auto; }

.cursor-default {
  cursor: default; }

.cursor-pointer {
  cursor: pointer; }

.cursor-wait {
  cursor: wait; }

.cursor-move {
  cursor: move; }

.cursor-not-allowed {
  cursor: not-allowed; }

.pointer-events {
  pointer-events: auto; }

.no-pointer-events {
  pointer-events: none; }

.select {
  user-select: text; }

.no-select {
  user-select: none; }

.list-decimal {
  list-style: decimal; }

.list-circluze {
  list-style: circluze; }

.list-disc {
  list-style: disc; }

.list-square {
  list-style: square; }

.list-roman {
  list-style: roman; }

.shadow-1 {
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.25), 0 2px 8px -2px rgba(0, 0, 0, 0.15); }

.shadow-2 {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.12), 0 2px 4px 0 rgba(0, 0, 0, 0.08); }

.shadow-3 {
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.11), 0 4px 8px 0 rgba(0, 0, 0, 0.08); }

.shadow-4 {
  box-shadow: 0 15px 30px 0 rgba(0, 0, 0, 0.11), 0 5px 15px 0 rgba(0, 0, 0, 0.08); }

.inner-shadow {
  box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06); }

.no-shadow {
  box-shadow: none; }

h1,
h2 {
  margin: unset; }

h1 {
  font-size: 1.25em;
  font-weight: 600; }

h2 {
  font-size: 1em; }

label + input + br,
label + textarea + br,
label + select + br {
  display: none; }

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

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

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

.flex--gap-1 {
  gap: 1rem; }

.wrap, .stat-slab {
  flex-wrap: wrap;
  justify-content: space-between !important; }

.float-left {
  float: left; }

.float-right {
  float: right; }

.inline-grid {
  display: inline-grid; }

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

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

.cursor-pointer {
  cursor: pointer; }

@media only screen and (max-width: 900px) {
  .full-width {
    grid-column: 1 / 4 !important; } }

.ej-margin-top {
  margin-top: 1rem; }

.ej-margin-bottom {
  margin-bottom: 1rem; }

input + .helptext,
textarea + .helptext,
select + .helptext,
input + br + .helptext,
textarea + br + .helptext,
select + br + .helptext {
  margin-top: -1.125rem !important;
  margin-bottom: 1.5rem;
  margin-left: 0.75rem; }

.helptext {
  font-size: 1rem;
  text-align: left;
  color: #777777; }
  .helptext-center {
    text-align: center;
    max-width: 50%;
    margin: auto; }

label + ul.errorlist {
  margin-top: -0.75rem;
  margin-bottom: 0; }
  label + ul.errorlist > li:last-child {
    margin-bottom: 0; }

ul.errorlist {
  color: #de011e;
  font-size: 0.75rem;
  font-weight: 600;
  list-style: none;
  margin: 0.375rem;
  text-align: left;
  font-style: italic; }

.terms__content {
  height: 20rem;
  overflow: scroll;
  font-size: 0.9rem;
  border-radius: 0.3125rem;
  height: 6.725rem;
  color: #777777; }

.terms__checkbox {
  font-size: 0.8rem; }
  .terms__checkbox label {
    margin-bottom: 4.145rem; }

.terms label {
  text-transform: unset;
  font-weight: 700;
  font-size: 0.875rem;
  color: #1800AD; }

.register-form {
  max-width: 800px;
  margin: auto; }
  .register-form form {
    margin-bottom: unset !important; }
  .register-form__title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    grid-column: 2/5;
    margin-bottom: 2.1875rem;
    margin-top: 4.5rem; }
  .register-form__image {
    width: 5.4rem;
    height: 4.6rem; }
  .register-form__submit-button {
    width: fit-content;
    padding-left: 5.5rem !important;
    padding-right: 5.5rem !important;
    height: 3.3rem !important;
    border: unset !important; }
    @media (max-width: 414px) {
      .register-form__submit-button {
        margin-bottom: 1.5rem !important; } }
  .register-form__label {
    font-size: 1rem;
    text-transform: initial;
    font-weight: 500;
    color: #1800AD; }
  .register-form__label--margin {
    margin-bottom: 0.75rem; }
  .register-form__buttons {
    display: flex;
    align-items: start;
    float: right;
    margin-top: 3.9rem; }
    @media (max-width: 414px) {
      .register-form__buttons {
        flex-direction: column-reverse;
        align-items: center; }
        .register-form__buttons .login-form__social-button {
          width: 17.5rem; } }
  @media (max-width: 414px) {
    .register-form {
      max-width: unset !important; }
      .register-form input {
        max-width: unset !important;
        min-width: unset !important; } }
.register-form__input input,
.login-form__input input {
  border-radius: 0.625rem !important;
  background-color: #FFF8E199;
  margin-bottom: 2.0625rem; }

.login-form__logo {
  display: flex;
  justify-content: center;
  margin-bottom: 2.0625rem; }

.login-form__label {
  text-transform: initial; }

.login-form__button-container {
  justify-content: space-between;
  align-items: center;
  display: flex;
  margin: 2.0625rem 0 2.0625rem; }

.login-form__submit-button {
  width: 14.0625rem;
  height: 3.3125rem !important;
  margin-bottom: unset !important;
  border: unset !important; }

.login-form__reset-password {
  color: #1800AD;
  font-family: "Work Sans", sans-serif; }

.login-form__reset-password:hover {
  color: #1800AD !important; }

.login-form__social-button {
  width: 17.5rem;
  height: 3.36rem;
  border: 1px solid #BABABA;
  border-radius: 0.3125rem;
  box-shadow: 1px 1px 1px gray;
  display: flex;
  justify-content: center;
  align-items: center; }
  .login-form__social-button span {
    font-weight: 700;
    color: #777777; }
    .login-form__social-button span span {
      text-transform: capitalize; }
  .login-form__social-button a i {
    background: conic-gradient(from -45deg, #ea4335 110deg, #4285f4 90deg 180deg, #34a853 180deg 270deg, #fbbc05 270deg) 73% 55%/150% 150% no-repeat !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    font-size: 1rem !important; }
  .login-form__social-button--padding {
    padding: 0 1.5rem; }

.register-redirection {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 30rem;
  margin: auto;
  padding: 0 1.5rem; }
  .register-redirection__hr {
    margin: 3.0625rem auto !important;
    width: 45%; }
  .register-redirection img {
    width: 9.3525rem;
    height: 7.9375rem; }
  .register-redirection__button {
    display: flex;
    flex-direction: column;
    align-items: center; }
    .register-redirection__button span {
      color: #1800AD;
      font-family: "Work Sans", sans-serif;
      margin-bottom: 1.36rem; }
    .register-redirection__button a {
      border: 0.125rem solid #1800AD;
      background-color: white;
      color: #1800AD;
      height: 3.3125rem;
      line-height: 3.3125rem;
      width: 266px;
      border-radius: 0.3125rem;
      margin-bottom: unset; }
    .register-redirection__button a:hover {
      background-color: white !important;
      color: #1800AD !important; }

legend, .conversation-balloon textarea::placeholder, input + .helptext,
textarea + .helptext,
select + .helptext,
input + br + .helptext,
textarea + br + .helptext,
select + br + .helptext,
textarea,
label,
input {
  max-width: unset !important;
  text-indent: unset !important; }

input:not(.button) {
  border: 1px solid #FFB703;
  border-radius: 0.3125rem; }

legend, .conversation-balloon textarea::placeholder, input + .helptext,
textarea + .helptext,
select + .helptext,
input + br + .helptext,
textarea + br + .helptext,
select + br + .helptext {
  margin: unset !important;
  text-align: unset !important; }

.content-grid, .tools {
  grid-template-columns: minmax(4%, auto) minmax(auto, 1400px) minmax(4%, auto);
  display: grid; }
  .content-grid > *, .tools > * {
    grid-column: 2; }
  .content-grid--padding, .tools {
    padding: 2rem 0 0 0; }
  @media only screen and (max-width: 900px) {
    .content-grid, .tools {
      grid-template-columns: 3% auto 3%;
      grid-template-rows: auto auto; }
    .content-grid--padding, .tools {
      padding: 1rem 0 0 0; } }
.header-space {
  margin-top: 1.5rem; }

.loader {
  width: 18px;
  height: 18px;
  border: 2px solid #1800AD;
  border-bottom-color: transparent;
  border-radius: 50%;
  display: none;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
  margin-top: 2rem; }

.hide {
  display: none !important;
  opacity: 0; }

.show {
  display: block !important;
  opacity: 1; }

.htmx-request .loader {
  display: inline; }

.htmx-request.loader {
  display: inline; }

@keyframes rotation {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@media (max-width: 320px) {
  .terms__content {
    height: 15.4rem; }
  .terms__checkbox label {
    margin-bottom: 2.625rem; }
  .register-form__title {
    grid-column: 2/3;
    flex-direction: column;
    margin-bottom: 0;
    margin-top: 0; }
    .register-form__title h1 {
      margin: 3.375rem 0 1.5rem 0; }
  .register-form__image {
    width: 11.5625rem;
    height: 9.75rem;
    margin-bottom: 1.75rem; }
  .register-redirection {
    flex-direction: column; }
    .register-redirection__hr {
      width: 100%;
      padding: 0 1.5rem; }
    .register-redirection__button span {
      margin-top: 1.58rem; }
  .login-form__input #id_password {
    margin-bottom: 1rem; }
  .login-form__button-container {
    flex-direction: column;
    row-gap: 1.21rem;
    margin-bottom: unset; }
  .login-form__label {
    text-align: center !important; }
  .login-form__social-button {
    width: 100%; }
  .login-form__reset-password {
    margin-bottom: 1.1875rem; }
  .login-form__submit-button {
    margin-bottom: 1.5rem !important; } }

@media (max-width: 900px) and (min-width: 321px) {
  .terms__content {
    height: 15.4rem; }
  .terms__checkbox label {
    margin-bottom: 2.625rem; }
  .register-form__title {
    grid-column: 2/3;
    flex-direction: column;
    margin-bottom: 0;
    margin-top: 0; }
    .register-form__title h1 {
      margin: 3.375rem 0 1.5rem 0; }
  .register-form__image {
    width: 11.5625rem;
    height: 9.75rem;
    margin-bottom: 1.75rem; }
  .register-form__input--margin input {
    margin-bottom: 2.625rem; }
  .register-form__buttons {
    flex-direction: column-reverse;
    align-items: center; }
    .register-form__buttons .login-form__social-button {
      width: 17.5rem; }
  .register-form__submit-button {
    margin-bottom: 0.9rem !important; }
  .register-redirection {
    flex-direction: column; }
    .register-redirection__hr {
      width: 100%;
      padding: 0 1.5rem; }
    .register-redirection__button span {
      margin-top: 1.58rem; }
  .login-form__input #id_password {
    margin-bottom: 1rem; }
  .login-form__button-container {
    flex-direction: column;
    row-gap: 1.21rem;
    margin-bottom: unset; }
  .login-form__label {
    text-align: center !important; }
  .login-form__social-button {
    width: 100%; }
  .login-form__reset-password {
    margin-bottom: 1.1875rem; }
  .login-form__submit-button {
    margin-bottom: 1.5rem !important; } }

body {
  display: flex;
  flex-direction: column; }

.main-container {
  width: 100%;
  text-align: left !important;
  margin: 0 0 0 18.75rem; }
  .main-container--without-margin {
    margin: unset !important; }

.main-header {
  align-items: center;
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  text-align: center;
  position: sticky;
  top: 0;
  color: #240db1;
  background-color: white;
  z-index: 1000;
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.12);
  height: 3rem;
  line-height: 3.5rem;
  order: -1;
  width: 100%; }
  .main-header > * {
    min-width: 0; }
  .main-header > * {
    padding-left: 0.375rem;
    padding-right: 0.375rem;
    display: flex;
    align-items: center; }
  .main-header > a {
    display: flex;
    align-items: center;
    color: #1800AD;
    height: 3rem; }
    .main-header > a i {
      color: #1800AD; }
  .main-header__logo img {
    height: 1.8rem;
    position: relative; }
  .main-header__avatar, .voting-card__comment-avatar img {
    display: flex;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    object-fit: cover; }

@media screen and (min-width: 35rem) {
  .container-temporary {
    max-width: 64vw !important;
    padding: 0;
    text-align: center;
    margin: 0 auto;
    position: relative;
    width: 100%; }
  .measure-wide {
    max-width: 60vw; }
  .main-header {
    line-height: 2.5rem;
    top: 0; } }
  @media screen and (min-width: 35rem) and (min-width: 50rem) {
    .main-header > * {
      padding: 0 0.75rem; } }
@media screen and (min-width: 35rem) {
  .main-header {
    align-items: center;
    justify-content: space-between; }
    .main-header > a {
      text-align: left;
      line-height: 3.75rem; }
      .main-header > a:nth-child(1) {
        display: none; }
    .main-header__user > a {
      display: flex;
      align-items: center; }
    .main-header__user:hover #show-floating-menu {
      opacity: 1 !important;
      visibility: visible !important;
      right: 10px; } }

.nav-divider {
  border-top: 1px solid #C4C4C4;
  margin: 0 0.625rem; }
  .nav-divider--darker {
    border-top: 1px solid #bababa; }

.page-menu {
  max-height: 600px;
  height: 100%;
  z-index: 750;
  position: fixed;
  transition: 0.3s;
  background-color: #F1F1F1;
  border-right: 1px solid rgba(0, 0, 0, 0.05);
  overflow: hidden auto; }
  @media only screen and (max-width: 900px) {
    .page-menu {
      width: 80%;
      min-width: 80%;
      max-width: 80%; } }
  @media only screen and (min-height: 500px) and (max-width: 800px) {
    .page-menu {
      max-height: unset; } }
  .page-menu--disable-overflow {
    height: 100%;
    overflow: hidden; }
  .page-menu h3 {
    font-family: "Work Sans", "sans-serif"; }
  .page-menu__links {
    display: flex;
    gap: 2.219rem;
    padding: 2.25rem 0 1.75rem;
    border-bottom: 1px solid #777777; }
    .page-menu__links a {
      font-weight: 600;
      font-size: 0.75em;
      letter-spacing: 0;
      line-height: 0;
      color: #777777;
      text-transform: uppercase;
      display: flex;
      align-items: center; }
      .page-menu__links a i {
        font-size: 1.188em;
        margin-left: 0; }
  .page-menu .nav-categories {
    padding-top: 1.75rem !important; }
    .page-menu .nav-categories h3 {
      font-size: 1rem;
      letter-spacing: 0; }
    .page-menu .nav-categories li {
      padding-top: 0.313rem; }
    .page-menu .nav-categories a {
      font-size: 1rem; }
  .page-menu .menu-padding {
    padding: 0 1.75rem 1.75rem; }
    .page-menu .menu-padding:first-child {
      padding-top: 1.75rem; }
  .page-menu .section-margin {
    margin-top: 3.125rem; }
  .page-menu[is-open=""] {
    width: 17rem; }
  .page-menu[is-menu] {
    width: 17rem;
    visibility: hidden;
    left: -100%; }
  .page-menu[is-open] {
    visibility: visible;
    left: 0;
    top: 3rem;
    z-index: 750; }
  .page-menu nav h1,
  .page-menu nav h2,
  .page-menu nav h3 {
    margin: 0;
    margin-bottom: 0.75rem; }
  .page-menu nav ul {
    padding: 0;
    margin: 0;
    list-style: none; }
  .page-menu nav:last-child {
    border-bottom: none; }
  .page-menu .add-button {
    color: #FFB703; }
  .page-menu .board-section {
    padding-bottom: 1.5rem;
    margin-top: 2.25rem; }
    .page-menu .board-section__chevron-transition {
      transform: rotate(-90deg); }
    .page-menu .board-section__toggle-section {
      display: flex !important;
      justify-content: space-between;
      cursor: pointer; }
    .page-menu .board-section #board-chevron-icon {
      color: #777777;
      margin: 0; }
  .page-menu .board-list li {
    display: flex;
    gap: 0.31rem;
    height: 1.7rem;
    color: #1800AD; }
    .page-menu .board-list li p {
      margin-right: 0.5rem;
      font-weight: 700; }
  .page-menu .board-list li.selected-board {
    background-color: #C4C4C4;
    margin: 0rem -2rem 0rem -2rem;
    padding: 0rem 2rem 0rem 2rem; }
  .page-menu .report-section .display-reports {
    color: #1800AD; }
    .page-menu .report-section .display-reports label {
      cursor: pointer;
      color: unset;
      text-indent: unset;
      margin-bottom: unset; }
  .page-menu .report-section div {
    display: flex; }
  .page-menu .report-section label i {
    margin-left: unset; }
  .page-menu .report-section ul {
    display: none;
    position: relative; }
    .page-menu .report-section ul li a {
      font-weight: unset; }
  .page-menu .report-section .selected {
    background: #C4C4C4; }
  .page-menu .report-section .show {
    display: block; }
  .page-menu .report-section .hide {
    display: none; }

#isexpanded3,
.isexpanded-cluster-comments {
  display: none !important; }

.isexpanded-cluster-comments--overflow {
  overflow: hidden scroll;
  max-height: 50vh; }

#isexpanded3:checked + label > i,
.isexpanded-cluster-comments:checked + label > i {
  transform: rotate(180deg); }

#show-floating-menu {
  top: 3rem;
  transition: 0.3s; }
  #show-floating-menu.hide {
    right: -20rem;
    display: block !important;
    visibility: hidden; }

.profile-avatar {
  border-radius: 66.5px;
  width: 44px;
  height: 44px;
  margin-right: 0.75rem;
  object-fit: cover; }

.floating-menu {
  position: fixed;
  top: 3rem;
  right: 0;
  background: white;
  box-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, 0.25); }
  .floating-menu a {
    cursor: pointer; }
  .floating-menu a,
  .floating-menu p {
    font-size: 1em;
    font-weight: 500;
    color: #1800AD; }
  @media (max-width: 560px) {
    .floating-menu {
      width: 13.5rem; } }
  .floating-menu__section {
    padding: 0.75rem; }
    .floating-menu__section ul {
      margin-bottom: unset; }
    .floating-menu__section li {
      line-height: 1.1875rem;
      margin-bottom: 0;
      text-align: left;
      list-style-type: none;
      padding-top: 0.75rem;
      padding-bottom: 0.75rem; }
    .floating-menu__section h3 {
      display: none; }
    .floating-menu__section:first-child {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem;
      margin-top: 0;
      height: 5.75rem;
      padding: 0 0.75rem;
      background: #F1F1F1; }
  .floating-menu__username {
    display: flex;
    align-items: center;
    height: 100%;
    min-height: 5rem; }
    .floating-menu__username div {
      overflow: hidden; }
    .floating-menu__username p {
      margin: unset;
      text-align: left;
      overflow: hidden;
      text-overflow: ellipsis; }
  .floating-menu__profile i, .floating-menu__environment i {
    color: #777777; }
  .floating-menu__logout {
    text-align: left;
    background-color: #777777;
    color: white; }
    .floating-menu__logout form {
      margin-bottom: unset; }
    .floating-menu__logout a {
      color: white; }

.menu-section__title {
  margin-bottom: 1.4375rem !important;
  color: #1800AD;
  font-weight: 400;
  font-size: 1em; }

.menu-section__conversation-text {
  margin-top: 2.25rem;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis; }
  .menu-section__conversation-text span {
    max-height: 6rem;
    font-size: 1.25em;
    color: #1800AD;
    line-height: 1.46rem; }

.conversation-menu {
  display: grid;
  grid-template-columns: 0.63rem auto 0.63rem; }
  @media only screen and (max-width: 900px) {
    .conversation-menu {
      grid-template-columns: 5% auto 5%; } }
  .conversation-menu__buttons {
    margin-top: 1.5rem;
    gap: 0.93rem;
    justify-content: space-between; }
  .conversation-menu__edit-button a, .conversation-menu__delete-button a {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0.313rem;
    margin: 0; }
  .conversation-menu__delete-button a {
    width: 3.125rem;
    height: 2.625rem;
    background-color: #C70000;
    border: #C70000; }
  .conversation-menu__edit-button {
    flex-grow: 1; }
    .conversation-menu__edit-button a {
      color: white;
      background-color: #1800AD;
      border: #1800AD;
      height: 2.625rem;
      text-transform: none;
      letter-spacing: 0;
      font-size: 1em;
      line-height: 1.25rem;
      font-weight: 400;
      text-align: center; }
  .conversation-menu__delete-button a {
    background-color: #C70000;
    border: #C70000;
    font-size: 1em; }
    .conversation-menu__delete-button a i {
      font-size: 1.125em;
      color: white; }
  .conversation-menu__links {
    padding: 2.25rem 0 1.75rem;
    border-bottom: 1px solid #C4C4C4; }
  .conversation-menu__avatar {
    width: 3rem;
    height: 3rem;
    max-width: unset !important;
    display: flex;
    border-radius: 50%;
    object-fit: cover;
    border-style: none;
    margin-bottom: 1rem; }
  .conversation-menu__username {
    font-size: 1rem;
    color: #777777;
    line-height: 1.17rem;
    overflow-wrap: anywhere;
    font-weight: 500; }
  .conversation-menu__conversation-text {
    font-size: 1.25em;
    color: #1800AD;
    line-height: 1.46rem;
    max-height: 6rem;
    overflow: hidden;
    margin-top: 2.625rem;
    margin-bottom: 2.375rem; }
  .conversation-menu__conversation-share {
    cursor: pointer; }
    .conversation-menu__conversation-share i {
      color: #1800AD; }
    .conversation-menu__conversation-share span {
      color: #1800AD;
      font-weight: 500;
      margin-left: 0.375rem; }
  .conversation-menu__conversation-info {
    margin-bottom: 1.4375rem;
    line-height: 1.17rem; }
    .conversation-menu__conversation-info i {
      color: #777777; }
    .conversation-menu__conversation-info span {
      text-transform: lowercase;
      color: #777777;
      font-weight: 500; }
  .conversation-menu__user-section {
    margin: 1.76rem 0 4.25rem 0; }

.participant-menu {
  display: grid;
  grid-template-columns: 1.2rem auto 1.2rem; }
  .participant-menu__buttons {
    margin: 2.25rem 0;
    padding: unset !important; }
    .participant-menu__buttons a:last-child button {
      margin: unset !important; }
    .participant-menu__buttons button {
      width: 100%;
      border-radius: 0.3125rem;
      height: 2.625rem;
      text-transform: none;
      background-color: #1800AD;
      border-color: #1800AD;
      font-size: 1em;
      font-weight: 400;
      margin: 0 0 0.625rem 0; }
  .participant-menu__item h3 {
    margin: unset !important; }

.participant-menu__item,
.conversation-menu__item {
  overflow: hidden;
  text-overflow: ellipsis;
  grid-column: 2;
  font-size: 1em;
  padding: 0.32rem 0; }
  .participant-menu__item i,
  .conversation-menu__item i {
    color: #777777; }
  .participant-menu__item li,
  .conversation-menu__item li {
    padding: 0.5rem;
    box-sizing: content-box;
    height: unset; }
  .participant-menu__item--selected,
  .conversation-menu__item--selected {
    background-color: #C4C4C480;
    border-radius: 0.3rem;
    height: 2.25rem; }
  .participant-menu__item--column-2,
  .conversation-menu__item--column-2 {
    grid-column: 2/3;
    padding: unset !important;
    font-weight: 400; }
  .participant-menu__item--margin,
  .conversation-menu__item--margin {
    margin-top: 1.93rem !important; }
    @media only screen and (min-height: 500px) {
      .participant-menu__item--margin:last-child,
      .conversation-menu__item--margin:last-child {
        margin-bottom: 2rem; } }
.participant-menu__welcome-title,
.conversation-menu__welcome-title {
  font-size: 1.5em !important;
  line-height: 1.8rem !important;
  color: #1800AD;
  margin-bottom: unset !important;
  padding: unset !important;
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis; }

.participant-menu__home-divider,
.conversation-menu__home-divider {
  border-bottom: 1px solid #777777;
  grid-column: 2; }
  .participant-menu__home-divider--lighter,
  .conversation-menu__home-divider--lighter {
    border-bottom: 1px solid #C4C4C4; }

.participant-menu__help-section,
.conversation-menu__help-section {
  margin-bottom: 2.8rem !important; }

.participant-menu .nav-divider,
.conversation-menu .nav-divider {
  margin: 1rem 0.625rem 0 0.625rem !important;
  grid-column: 1/4; }

@media screen and (min-width: 35rem) {
  .page-menu {
    z-index: 750;
    background-color: #F1F1F1;
    border-radius: 0;
    flex: 1;
    min-height: calc(100vh - 3rem);
    min-width: 18.75rem;
    max-width: 18.75rem; }
    .page-menu li {
      margin-top: unset;
      margin-bottom: unset; }
    .page-menu, .page-menu[is-menu], .page-menu[is-menu][is-open] {
      display: block;
      width: 20%;
      height: unset;
      visibility: visible;
      left: 0; }
    .page-menu nav {
      border: none;
      padding-top: 0; }
      .page-menu nav h1,
      .page-menu nav h2,
      .page-menu nav h3 {
        display: block;
        line-height: 1.125rem;
        margin-top: 0; }
    .page-menu nav:last-child::after {
      content: none; }
  #page-wrapper {
    display: flex;
    align-items: stretch; }
  #page-wrapper > *:first-child {
    flex: 1; }
  .page-menu + * {
    flex: 5; } }

#first-link {
  tab-index: 0; }
  #first-link :focus {
    background: 0;
    bottom: 0.75rem;
    padding: 0.375rem;
    position: fixed;
    text-align: center;
    z-index: 1002; }

#docs {
  width: 100%;
  height: 100vh;
  display: contents; }
  #docs iframe {
    height: 100vh;
    width: 100%; }

@media (min-width: 560px) {
  #docs iframe {
    height: 100vh;
    width: 100%; } }

#bg-modal {
  opacity: 0; }
  @media screen and (max-width: 559px) {
    #bg-modal {
      background: #000000;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 1005; } }
@media screen and (max-width: 559px) {
  .main-container {
    max-width: unset;
    margin: unset; } }

i.fa, i.fas, i.fab, i.far {
  margin: auto 0.5em; }

.body {
  margin-bottom: 5rem !important; }
  @media screen and (min-width: 50rem) {
    .body {
      margin-bottom: 0 !important; } }
.intro-paragraph p {
  padding-left: 1.5rem;
  padding-right: 1.5rem; }

.tabs div, .tabs a, .categories div, .categories a {
  font-weight: bold;
  color: #777;
  white-space: nowrap; }

.tabs {
  justify-content: flex-start;
  border-bottom: 1px solid #E5E5E5;
  scrollbar-width: none; }
  .tabs::-webkit-scrollbar {
    display: none;
    /* Safari and Chrome */ }
  .tabs-container {
    display: flex;
    padding: unset !important;
    border-bottom: unset !important; }
    .tabs-container [is-selected] {
      border-bottom-color: #1800AD; }
  .tabs a {
    margin-right: 2.625rem;
    padding-bottom: 1.125rem;
    cursor: pointer;
    text-align: center;
    width: 100%;
    border-bottom: 0.25rem solid transparent; }
  .tabs--smaller {
    font-size: 0.75em; }
    .tabs--smaller a {
      padding-bottom: 0.813rem;
      margin-right: 1rem; }
  .tabs--scroll-x {
    overflow-x: scroll; }
  .tabs__tab-content {
    display: none !important; }
    .tabs__tab-content--show {
      display: inherit !important; }

.categories {
  color: #1800AD;
  background-color: #fffaec;
  border-color: #fffaec;
  flex-wrap: wrap; }
  .categories * {
    color: #FFB703; }
  .categories a:hover:not([is-selected]) {
    border-bottom-color: rgba(255, 183, 3, 0.5); }

.popup {
  background-color: white;
  border: 1px solid #1800AD;
  border-radius: 1rem;
  max-width: 30rem;
  overflow-y: auto; }
  .popup__contents {
    flex-grow: 1;
    height: 100%; }
  .popup__close {
    color: #1800AD; }

.overlay {
  background-color: rgba(0, 0, 0, 0.5);
  width: 100vw;
  height: 100vh;
  z-index: 500; }
  .overlay > * {
    margin: 12.5vh auto;
    max-height: 75vh;
    min-height: 40vh;
    max-width: 80%; }

/* The snackbar - position it at the bottom and in the middle of the screen */
#snackbar {
  visibility: hidden;
  /* Hidden by default. Visible on click */
  min-width: 250px;
  /* Set a default minimum width */
  margin-left: -125px;
  /* Divide value of min-width by 2 */
  background-color: #333;
  /* Black background color */
  color: #fff;
  /* White text color */
  text-align: center;
  /* Centered text */
  border-radius: 2px;
  /* Rounded borders */
  padding: 16px;
  /* Padding */
  position: fixed;
  /* Sit on top of the screen */
  z-index: 1;
  /* Add a z-index if needed */
  left: 50%;
  /* Center the snackbar */
  bottom: 30px;
  /* 30px from the bottom */ }

.triangle {
  width: 0;
  height: 0;
  border: 0.46875rem solid transparent;
  border-top: 0;
  border-bottom: 0.8375rem solid #1800AD;
  transform: rotate(-90deg); }
  .triangle--top {
    transform: unset; }
  .triangle--white {
    border-bottom-color: #ffdf8e; }

/* Animations to fade the snackbar in and out */
@keyframes toast-show {
  from {
    top: 0;
    opacity: 0; }
  to {
    top: 2.25rem;
    opacity: 0.75; } }

@keyframes toast-hide {
  from {
    top: 2.25rem;
    opacity: 0.75; }
  to {
    top: 0;
    opacity: 0; } }

.toast {
  color: #240caf;
  background-color: #fff4d9;
  padding: 1.5rem;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.12), 0 2px 4px 0 rgba(0, 0, 0, 0.08);
  font-weight: 600;
  align-items: center;
  animation: toast-show 0.25s 0.25s backwards, toast-hide 0.5s 4s forwards;
  border-radius: 0.75rem;
  display: flex;
  filter: brightness(90%);
  justify-content: center;
  left: 0;
  max-width: 25rem;
  margin: auto;
  opacity: 0.75;
  position: fixed;
  right: 0;
  top: 2.25rem;
  width: 90%;
  z-index: 1001;
  margin-left: 45%; }
  .toast__icon {
    color: #FFB703;
    background-color: white;
    border: 6px solid;
    border-radius: 50rem;
    box-sizing: content-box;
    line-height: 2rem;
    font-size: 2rem;
    height: 2rem;
    width: 2rem; }
  .toast__content > * {
    margin: 0 !important; }
  .toast__content h1 {
    font-size: 1.125rem;
    text-transform: uppercase;
    font-weight: 700;
    color: #FFB703; }
    @media screen and (min-width: 35rem) {
      .toast__content h1 {
        font-size: 1.125rem; } }
    @media screen and (min-width: 50rem) {
      .toast__content h1 {
        font-size: 1.125rem; } }
    @media screen and (min-width: 75rem) {
      .toast__content h1 {
        font-size: 1.1875rem; } }
.toast--hide {
  display: none !important; }

.toast--show {
  display: flex !important; }

dialog.toast--show {
  border: unset; }

@media only screen and (max-width: 1016px) {
  .toast {
    margin-left: auto; } }

.description dd {
  margin: 0 0 2rem 0; }

.stat-slab dl {
  margin: 0 0 1.5rem 0; }
  .stat-slab dl dt {
    width: 5.25rem; }
  .stat-slab dl dd {
    font-size: 2rem;
    line-height: 1.5rem;
    margin: 0 0 2rem 0;
    position: relative;
    top: 2.25rem;
    right: 4.5rem;
    width: 0; }

.square {
  border-radius: 5px;
  margin-top: 25px; }

.tooltip {
  display: contents;
  font-size: 0.875rem;
  text-align: center;
  z-index: 100;
  transition: .3s; }
  .tooltip__content {
    display: inline-block;
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s ease-in-out, visibility .1s;
    max-width: 50%;
    background-color: #d5cffc;
    color: #000000;
    text-transform: none;
    font-family: "Work Sans", sans-serif;
    letter-spacing: 0;
    text-align: left;
    font-size: .625rem; }
  .tooltip__icon {
    color: #777;
    margin-left: 0rem !important; }
  .tooltip:hover .tooltip__content {
    visibility: visible;
    opacity: 1; }

.progress-bar, .voting-card__progress-bar {
  align-items: center;
  display: flex;
  flex-flow: row;
  justify-content: center;
  margin-top: 0.375rem;
  margin-bottom: 0.375rem;
  margin: 0 auto;
  max-width: 18em; }
  .progress-bar > *, .voting-card__progress-bar > * {
    min-width: 0; }
  .progress-bar__progress, .voting-card__progress-bar__fg, .voting-card__progress-bar__progress {
    margin-left: 0.375rem;
    margin-right: 0.375rem;
    display: flex;
    border: 1px solid #FFB703;
    border-radius: 50rem;
    height: 0.5rem;
    width: 100%; }
  .progress-bar--simple {
    margin: 0;
    text-transform: uppercase;
    color: #1800AD;
    font-size: .75rem;
    font-family: Work Sans;
    font-weight: 500;
    line-height: 1.25rem;
    max-width: fit-content; }
    .progress-bar--simple strong {
      font-weight: normal; }
    .progress-bar--simple .progress-bar__progress, .progress-bar--simple .voting-card__progress-bar__fg, .progress-bar--simple .voting-card__progress-bar__progress {
      border: 1px solid #1800AD;
      border-radius: 0.75rem;
      width: 6.188rem;
      margin-left: 0;
      margin-right: .75rem; }
      .progress-bar--simple .progress-bar__progress :first-child, .progress-bar--simple .voting-card__progress-bar__fg :first-child, .progress-bar--simple .voting-card__progress-bar__progress :first-child {
        background-color: #1800AD !important; }

.form-profile--buttons input[type=text] {
  border-radius: 1.5625rem !important; }

.form-profile--buttons__cancel {
  background-color: #777777 !important; }

.form-profile--buttons__save {
  background-color: #1800AD !important; }

.filter {
  display: flex;
  align-items: center; }

.filter__select {
  margin: 0 0.5rem 0 0.5rem;
  border-radius: 5px;
  border: 2px solid #1800AD;
  color: #1800AD;
  font-weight: bold;
  height: 28px; }
  .filter__select--width-sm {
    width: 169px;
    min-width: 169px;
    padding-right: unset; }
  .filter__select--width-md {
    width: 230px;
    min-width: 230px;
    padding-right: unset; }

.filter__container {
  display: flex;
  align-items: center;
  color: #777777;
  font-weight: bold; }

.filter__entries-select {
  width: 4rem;
  min-width: 4rem;
  padding-right: unset; }

.filter__sort {
  display: flex; }
  .filter__sort i {
    color: #bababa;
    margin: unset; }
  .filter__sort .fa-sort-up {
    position: relative;
    top: 0.55rem; }

.filter__input {
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center; }
  .filter__input input {
    padding-left: 2.5rem;
    margin: unset; }
  .filter__input--blue input {
    min-width: 150px;
    height: 28px;
    border: 2px solid #FFB703;
    border-radius: 5px; }
  .filter__input--blue i {
    color: #FFB703; }

.pipe--divider {
  font-weight: bold;
  color: #bababa;
  margin: 0 0.5rem 0 0.5rem; }

.icon--pink {
  color: #1800AD !important; }

@media (max-width: 820px) {
  .pipe--divider {
    display: none; }
  .filter {
    display: block; }
  .filter__container {
    margin-bottom: 0.5rem; } }

:root {
  --theme-color: #FFB703;
  --theme-light-color: #fff4d9; }

.conversation-card {
  text-align: center;
  font-size: 0.875rem;
  align-items: center;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  background-color: var(--theme-color, #FFB703);
  border-radius: 3px;
  color: var(--theme-light-color, #fff4d9);
  width: 100%;
  height: 20rem;
  margin: auto;
  overflow: hidden; }
  @media screen and (min-width: 35rem) {
    .conversation-card {
      font-size: 0.875rem; } }
  @media screen and (min-width: 50rem) {
    .conversation-card {
      font-size: 0.875rem; } }
  @media screen and (min-width: 75rem) {
    .conversation-card {
      font-size: 0.875rem; } }
  .conversation-card > * {
    min-width: 0; }
  @media screen and (max-width: 800px) {
    .conversation-card {
      width: 20rem;
      border-radius: 0.313rem; } }
  .conversation-card__tags {
    font-size: 0.875rem;
    font-weight: 700;
    background-color: #1800AD;
    color: white;
    width: 100%;
    padding: 0.1rem; }
    @media screen and (min-width: 35rem) {
      .conversation-card__tags {
        font-size: 0.875rem; } }
    @media screen and (min-width: 50rem) {
      .conversation-card__tags {
        font-size: 0.875rem; } }
    @media screen and (min-width: 75rem) {
      .conversation-card__tags {
        font-size: 0.875rem; } }
    @media screen and (max-width: 800px) {
      .conversation-card__tags {
        display: flex;
        padding: .4rem 21%;
        height: 6rem; }
        .conversation-card__tags .span-icon {
          display: grid;
          margin: 0 auto; } }
  .conversation-card__statistics {
    padding: 0;
    margin: 0;
    list-style: none;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem; }
    .conversation-card__statistics > li {
      display: inline; }
    .conversation-card__statistics > li {
      padding-left: 0.375rem;
      padding-right: 0.375rem; }
  .conversation-card__text {
    align-items: stretch;
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding: 1.5rem;
    flex-grow: 1;
    padding: 1rem; }
    .conversation-card__text > * {
      min-width: 0; }
    .conversation-card__text a {
      font-size: 1.125rem;
      font-family: "Work Sans";
      color: white;
      font-weight: 600;
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      padding: 0px 3.5px 0px 3.5px; }
      @media screen and (min-width: 35rem) {
        .conversation-card__text a {
          font-size: 1.125rem; } }
      @media screen and (min-width: 50rem) {
        .conversation-card__text a {
          font-size: 1.125rem; } }
      @media screen and (min-width: 75rem) {
        .conversation-card__text a {
          font-size: 1.1875rem; } }
    @media only screen and (max-width: 560px) {
      .conversation-card__text {
        padding: .8rem; } }
  .conversation-card__moderate {
    text-transform: uppercase;
    font-size: 0.875rem;
    margin: 0.75rem;
    font-weight: 700;
    color: #1800AD;
    display: block; }
    @media screen and (min-width: 35rem) {
      .conversation-card__moderate {
        font-size: 0.875rem; } }
    @media screen and (min-width: 50rem) {
      .conversation-card__moderate {
        font-size: 0.875rem; } }
    @media screen and (min-width: 75rem) {
      .conversation-card__moderate {
        font-size: 0.875rem; } }
  .conversation-card__button {
    padding-top: 0.375rem;
    margin-top: 0.375rem;
    padding-top: 0.8rem;
    background: var(--theme-color, #FFB703);
    width: 100%; }
    @media only screen and (max-width: 560px) {
      .conversation-card__button a {
        margin-bottom: 1.5rem; } }
  .conversation-card .progress-bar, .conversation-card .voting-card__progress-bar {
    width: 10rem; }
    .conversation-card .progress-bar__progress, .conversation-card .voting-card__progress-bar__fg, .conversation-card .voting-card__progress-bar__progress {
      border-color: white; }

@media screen and (min-width: 50rem) {
  .alternate-cards {
    align-items: center;
    display: grid;
    grid-gap: 0.75rem;
    grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); }
    .alternate-cards > * {
      justify-self: center;
      width: 100%;
      display: flex; } }
    @media screen and (min-width: 50rem) and (max-width: 65.5rem) {
      .alternate-cards > * {
        max-width: 24rem; } }
@media screen and (min-width: 50rem) {
      .alternate-cards > * > * {
        border-radius: 0.75rem; } }

@media screen and (min-width: 158rem) {
  .alternate-cards {
    max-width: 150rem;
    margin-left: 0;
    grid-template-columns: repeat(6, minmax(calc((100% / 6) - .75rem), 1fr)); } }

.statistics-card-container {
  width: 14.375rem;
  height: 9rem;
  background: #fff4d9;
  border: 1px solid #FFFFFF;
  box-shadow: 0rem 0.25rem 0.25rem rgba(0, 0, 0, 0.25);
  border-radius: 0.3125rem;
  padding-left: 1.125rem; }

.statistics-card-title {
  padding-top: 1.5rem;
  padding-bottom: 1.125rem;
  text-align: start;
  margin-bottom: unset; }

.statistics-card-value {
  text-align: start;
  font-size: 1.5rem;
  line-height: 2.625rem;
  font-weight: bold; }

.cards-divider .cards-divider-body {
  background: white;
  display: flex;
  height: 100%;
  flex-wrap: wrap;
  margin-top: 2.25rem;
  margin-bottom: 1.4375rem;
  row-gap: 1.4375rem;
  column-gap: 2rem; }

.cards-divider .cards-divider-header {
  display: none;
  width: 100%;
  padding: 1rem 1rem 0 1rem;
  flex-direction: column; }
  .cards-divider .cards-divider-header .close-btn {
    display: flex;
    justify-content: flex-end;
    padding: .5rem; }
  .cards-divider .cards-divider-header h2 {
    color: #1800AD;
    text-align: center;
    margin-top: .5rem; }

@media screen and (max-width: 559px) {
  .cards-divider {
    flex-direction: column;
    margin: 0;
    transition: .25s;
    position: fixed;
    bottom: -100%;
    left: 0;
    z-index: 1006;
    border-radius: 0.625rem 0.625rem 0 0;
    background-color: white;
    width: 100%;
    max-height: 80%; }
    .cards-divider .cards-divider-body {
      display: grid;
      justify-content: center;
      overflow-y: auto;
      margin: 0;
      padding: 1.25rem 0; }
    .cards-divider p {
      text-align: center; }
    .cards-divider .statistics-card-container {
      padding: 0; }
    .cards-divider .cards-divider-header {
      display: block; } }

.signature-text {
  font-size: 1em;
  font-style: normal;
  font-weight: 400;
  line-height: 1.3125rem; }

.signature-link {
  line-height: 1.3125rem;
  text-decoration: underline; }

.banner {
  background-position: center;
  height: 225px;
  position: relative; }
  @media (max-width: 900px) and (min-width: 321px) {
    .banner {
      height: 258px; } }
.conversation-header {
  width: 100%;
  margin: auto;
  height: inherit;
  box-sizing: border-box;
  box-shadow: 0px 10px 10px #00000033;
  background-repeat: repeat; }
  @media only screen and (max-width: 320px) {
    .conversation-header {
      padding: 1.875rem 1.625rem 1.938rem 2rem; } }
  @media (max-width: 900px) and (min-width: 321px) {
    .conversation-header {
      padding: 1.875rem 1.625rem 1.938rem 2rem; } }
  .conversation-header--default-img {
    background-image: url("/static/img/comment_card/conversation-title-bg.svg");
    height: 225px; }
    @media (max-width: 900px) and (min-width: 321px) {
      .conversation-header--default-img {
        height: unset; } }
  .conversation-header__gradient {
    background-image: none;
    position: absolute;
    height: inherit;
    box-sizing: border-box; }
  .conversation-header-grid {
    display: grid;
    grid-template-rows: 4.875rem auto 2rem;
    position: relative; }
    @media (max-width: 600px) {
      .conversation-header-grid {
        grid-template-rows: 3rem auto 2rem; } }
  .conversation-header-content {
    position: relative;
    z-index: 2;
    grid-row: 2;
    display: flex;
    row-gap: .5rem;
    flex-flow: column; }
  .conversation-header__gradient, .conversation-header--default-img {
    width: 100%;
    background-size: cover; }
  .conversation-header__label, .conversation-header__label--dark {
    color: white;
    font-weight: 600;
    text-transform: uppercase;
    font-size: .75em;
    font-family: 'Work Sans'; }
  .conversation-header__label--dark {
    color: #000000; }
  .conversation-header__text {
    color: #1800AD;
    font-weight: 400;
    font-family: 'Work Sans';
    font-size: 1.5em;
    text-transform: unset; }
    @media only screen and (max-width: 320px) {
      .conversation-header__text {
        max-height: 64px;
        overflow-y: scroll; } }
    .conversation-header__text--white {
      color: white; }
  .conversation-header__pipe {
    color: #FFB703; }
  .conversation-header__numbers {
    position: absolute;
    top: 2.5rem;
    right: 4rem;
    display: flex;
    gap: 1rem;
    height: 2.625rem;
    background-color: white;
    color: #1800AD;
    border-radius: 1.8rem;
    display: flex;
    padding: .5rem 1rem;
    font-size: .8em;
    font-weight: 500;
    cursor: pointer; }
    .conversation-header__numbers i {
      font-size: 1.25em; }
    .conversation-header__numbers div {
      display: flex;
      align-items: center; }
    @media (max-width: 600px) {
      .conversation-header__numbers {
        top: 0;
        right: 0;
        height: 2rem;
        font-size: 12px; } }
  .conversation-header__tooltip {
    position: absolute;
    display: flex;
    flex-flow: column;
    top: 3.5rem;
    z-index: 2;
    cursor: pointer; }
    .conversation-header__tooltip div:first-child {
      margin-bottom: .2rem; }
    .conversation-header__tooltip div:nth-child(2) {
      padding: .2rem 1rem;
      border-radius: .5rem;
      background-color: #fff4d9;
      color: #1800AD; }
    @media (max-width: 600px) {
      .conversation-header__tooltip {
        top: 2rem; } }
  .conversation-header .conversation-header-btn {
    background-color: white;
    width: 41px;
    height: 41px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    cursor: pointer; }
  .conversation-header .conversation-dashboard div {
    text-align: center; }
  .conversation-header .conversation-dashboard div {
    color: #1800AD; }

.conversation-sharing {
  position: absolute;
  bottom: 0;
  width: calc(100% - 300px);
  height: 3.75rem;
  background-color: #1800AD;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer; }
  .conversation-sharing--full-width {
    width: 100%; }
  .conversation-sharing-content {
    color: white;
    display: flex;
    gap: 1.25rem; }
    .conversation-sharing-content__text {
      display: flex;
      gap: 1rem; }
      .conversation-sharing-content__text div {
        display: flex;
        background-color: white;
        border-radius: 50%;
        width: 1.5rem;
        height: 1.5rem;
        justify-content: center; }
        .conversation-sharing-content__text div i {
          color: #FFB703; }
      .conversation-sharing-content__text span {
        text-transform: uppercase;
        font-weight: bold; }
    @media (max-width: 600px) {
      .conversation-sharing-content {
        flex-flow: column; }
        .conversation-sharing-content__text {
          justify-content: center; } }
  @media (max-width: 600px), (max-height: 800px) {
    .conversation-sharing {
      grid-row: 2;
      grid-column: 1 / 4;
      position: unset !important;
      width: unset;
      font-size: 14px;
      height: 5.375rem;
      text-align: center;
      padding: 1rem; }
      .conversation-sharing-content {
        gap: .5rem; } }
.content-grid.margin-y3, .margin-y3.tools {
  position: relative; }

.conversation-balloon .content-grid, .conversation-balloon .tools {
  grid-template-columns: minmax(4%, auto) minmax(auto, 1400px) minmax(14%, auto); }
  @media (max-width: 875px) {
    .conversation-balloon .content-grid, .conversation-balloon .tools {
      grid-template-columns: 3% auto 3%; } }
.conversation-balloon article {
  background: rgba(255, 183, 3, 0.1);
  text-align: left; }
  .conversation-balloon article #add-more-comments {
    margin-bottom: 1rem;
    color: #1800AD !important;
    text-transform: initial; }

.conversation-balloon h1 {
  font-family: "Work Sans", sans-serif; }

.conversation-balloon__social {
  align-items: stretch;
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  padding-left: 3rem;
  padding-right: 3rem;
  bottom: 1.5rem;
  position: relative; }
  .conversation-balloon__social > * {
    min-width: 0; }
  .conversation-balloon__social i {
    color: #1800AD; }

.conversation-balloon input,
.conversation-balloon textarea {
  background: white;
  border-radius: 0.375rem;
  max-width: 100%; }

.conversation-balloon textarea {
  height: 4.5rem;
  font-size: 1.5rem; }

.conversation-balloon__tags {
  margin-top: 1.5rem; }
  .conversation-balloon__tags label {
    margin-bottom: 0; }

.conversation-balloon__title label {
  margin-bottom: .5rem; }

.conversation-balloon__title input {
  margin-bottom: 0; }

.conversation-balloon__question {
  margin-bottom: 0; }

.conversation-balloon .helptext {
  width: 85%;
  margin-top: 1rem; }

.conversation-balloon .errorlist {
  margin-top: 0.875rem; }

.conversation-balloon label,
.conversation-form label,
.board-form label {
  color: #1800AD;
  font-family: 'Work Sans', sans-serif;
  font-size: 1.1em;
  font-weight: 400; }

.conversation-balloon label span {
  display: inline-block; }

.conversation-balloon label span::first-letter {
  text-transform: capitalize; }

.conversation-balloon label:first-letter,
.conversation-form div label:first-letter {
  text-transform: capitalize !important; }

.conversation-form {
  width: 100%;
  margin-top: 3.188rem;
  display: grid;
  grid-template-columns: minmax(4%, auto) minmax(auto, 1400px) minmax(14%, auto); }
  @media only screen and (max-width: 900px) {
    .conversation-form {
      grid-template-columns: 3% auto 3%;
      padding: 1.5rem; } }
  .conversation-form__h3 {
    font-size: 1.5rem; }
  .conversation-form__h4 {
    font-family: 'Work Sans', sans-serif;
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 0; }
  .conversation-form__duration {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap; }
    .conversation-form__duration input {
      margin-bottom: 0; }
  .conversation-form__custom-richtext {
    margin-top: 1.75rem; }
    .conversation-form__custom-richtext__text {
      margin-top: 0.375rem; }
    .conversation-form__custom-richtext .django-ckeditor-widget {
      width: 100%; }
  .conversation-form .checkbox {
    display: flex;
    gap: 1rem;
    align-items: baseline;
    padding-left: 0.5rem; }
  .conversation-form label {
    margin-top: 1rem; }
  .conversation-form .helptext {
    width: 85%;
    margin-top: 1rem; }
  .conversation-form .block input[type="number"] {
    margin: 0.375rem 0 0.688rem 0; }
  .conversation-form__create-button {
    float: right; }
    @media (max-width: 875px) {
      .conversation-form__create-button {
        text-align: center;
        float: none; } }
    .conversation-form__create-button .is-primary.button {
      padding: 0 3.375rem; }
  .conversation-form label {
    margin-bottom: unset !important; }
  .conversation-form input {
    margin: 0.375rem 0 !important; }
  .conversation-form .form-component__drop-box {
    margin: 0.375rem 0;
    padding: 1.875rem 3.125rem;
    border-radius: 5px;
    border: 2px dashed #E5E7EB;
    background: #F9FAFB;
    text-align: center;
    height: 305px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.875rem; }
    @media only screen and (max-width: 320px) {
      .conversation-form .form-component__drop-box {
        padding: 1.875rem 2rem; } }
  .conversation-form .form-component__drop-box:nth-child(4) {
    margin-top: .813rem; }
  .conversation-form .form-component__image {
    color: #FFB703;
    font-weight: bold;
    display: block; }
  .conversation-form .form-component__image-name {
    color: #6B7280;
    font-size: x-small; }
  .conversation-form .form-component__message {
    margin-top: 1.813rem; }
    .conversation-form .form-component__message__label {
      margin-bottom: .75rem;
      color: #1800AD;
      font-size: 1em;
      font-style: normal;
      font-weight: 700;
      line-height: 1.5rem;
      text-transform: initial; }
  .conversation-form .form-component__upload-buttons {
    display: flex;
    justify-content: center;
    gap: 1.875rem; }
    .conversation-form .form-component__upload-buttons--remove, .conversation-form .form-component__upload-buttons--view {
      text-transform: uppercase; }
    .conversation-form .form-component__upload-buttons--remove {
      color: #1800AD; }
    .conversation-form .form-component__upload-buttons--view {
      color: #777777; }
  .conversation-form .form-component--uploaded {
    display: flex;
    flex-direction: column;
    gap: 0.875rem; }
    @media only screen and (max-width: 320px) {
      .conversation-form .form-component--uploaded {
        width: 90%; } }
.dropzone .upload {
  display: flex;
  padding: .5rem .75rem;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  border-radius: 5px;
  background: #FFB703;
  margin: auto;
  height: 2.5rem;
  text-transform: initial; }

.dropzone label {
  text-align: center;
  margin-bottom: 1rem !important;
  text-transform: initial; }

.dropzone__hint-size {
  color: #6B7280 !important;
  text-align: center;
  font-size: 0.85em;
  font-style: normal;
  font-weight: 700;
  line-height: normal; }

.dropzone--label-margin-0 {
  margin-bottom: 0; }

.dropzone__upload-card-content {
  text-align: center;
  font-size: 1.15em;
  font-style: normal;
  font-weight: 700;
  line-height: 1.5rem;
  color: #6B7280; }
  .dropzone__upload-card-content__field-title {
    color: #6B7280;
    text-align: center;
    font-size: 1em;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5rem; }
  .dropzone__upload-card-content__hint {
    font-weight: 400; }

.comment-form {
  padding: 2.25rem;
  margin-left: 0.75rem;
  margin-right: 0.75rem;
  width: 100%;
  border-radius: 3px; }

.comment-form {
  text-align: center;
  color: #1800AD;
  background: rgba(255, 183, 3, 0.1); }
  .comment-form label {
    font-weight: 400;
    margin-bottom: 0.75rem;
    color: #1800AD;
    text-transform: none; }
  .comment-form textarea {
    margin: 1.5rem 0 0 0;
    min-height: 10em;
    width: 100%; }
  .comment-form form {
    margin: 0; }
  .comment-form__count {
    font-size: 0.75rem;
    bottom: 2rem;
    color: rgba(24, 0, 173, 0.5);
    float: right;
    position: relative;
    right: 0.5rem; }
    @media screen and (min-width: 35rem) {
      .comment-form__count {
        font-size: 0.75rem; } }
    @media screen and (min-width: 50rem) {
      .comment-form__count {
        font-size: 0.75rem; } }
    @media screen and (min-width: 75rem) {
      .comment-form__count {
        font-size: 0.75rem; } }
  .comment-form input[type=submit] {
    background: #FFB703;
    border-color: var(--theme-color, #FFB703);
    margin-bottom: 0; }

.extra-content {
  text-align: center;
  margin: 2rem auto;
  width: 75%; }
  .extra-content h1 {
    font-size: 1.125rem;
    text-transform: uppercase;
    color: #FFB703;
    font-family: "Work Sans";
    font-weight: 700; }
    @media screen and (min-width: 35rem) {
      .extra-content h1 {
        font-size: 1.125rem; } }
    @media screen and (min-width: 50rem) {
      .extra-content h1 {
        font-size: 1.125rem; } }
    @media screen and (min-width: 75rem) {
      .extra-content h1 {
        font-size: 1.1875rem; } }
.voting-card {
  border-radius: 5px;
  background: rgba(255, 183, 3, 0.15);
  padding: 2.875rem 2.625rem 1.531rem 3rem;
  grid-row: 1; }
  @media (max-width: 375px) {
    .voting-card {
      bottom: unset !important; } }
  .voting-card__header {
    display: flex;
    flex-wrap: wrap;
    margin: 1rem 0 3.25rem 0;
    gap: 1rem;
    align-items: center; }
  .voting-card__progress {
    display: flex;
    max-width: 8.5rem; }
    .voting-card__progress-bar {
      margin: unset;
      width: 6.1875rem;
      position: relative; }
      .voting-card__progress-bar__progress, .voting-card__progress-bar__fg {
        border-color: #000000; }
      .voting-card__progress-bar__progress {
        background-color: white; }
      .voting-card__progress-bar__fg {
        position: absolute;
        background-color: #000000;
        left: 0; }
    .voting-card__progress__values {
      color: #000000;
      font-family: Work Sans;
      font-size: 0.75rem;
      font-style: normal;
      font-weight: 500;
      line-height: 1.25rem;
      text-transform: uppercase;
      width: fit-content; }
  .voting-card__label {
    color: #777777;
    font-family: Work Sans;
    text-transform: uppercase;
    font-size: 0.75rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.25rem; }
  .voting-card__label--bold {
    font-weight: 600 !important; }
  .voting-card__label--underline {
    text-decoration: underline; }
  .voting-card__add-comment {
    display: flex;
    width: max-content;
    background-color: #FFB703;
    color: #1800AD;
    border-radius: 0.3125rem;
    padding: 0.375rem; }
    .voting-card__add-comment--summary {
      display: inline;
      margin-right: 1.938rem; }
    .voting-card__add-comment i {
      margin-left: 0rem; }
    .voting-card__add-comment:hover {
      color: #777777; }
  .voting-card hr {
    border: 1px solid white; }
  .voting-card__comment {
    color: #1800AD;
    font-family: "Work Sans";
    font-size: 1.25rem;
    font-style: normal;
    line-height: 125%;
    margin: 0.5rem 0 2.125rem 0;
    transition: opacity 1s;
    display: flex;
    gap: 1rem;
    margin-top: 1.5rem; }
    .voting-card__comment-avatar img {
      width: 48px;
      height: 48px;
      max-width: unset !important; }
    .voting-card__comment--show {
      opacity: 1 !important; }
  .voting-card textarea {
    border-radius: 0;
    border-color: transparent !important;
    max-width: none;
    padding: 1rem 1.125rem;
    margin: 0.75rem 0 1.063rem; }
  .voting-card .comment__buttons {
    display: flex;
    gap: 0.75rem;
    float: right;
    flex-wrap: wrap; }
    @media (max-width: 875px) {
      .voting-card .comment__buttons {
        margin: 1rem 0 0 0; } }
    .voting-card .comment__buttons--white, .voting-card .comment__buttons--blue, .voting-card .comment__buttons--gray {
      display: flex;
      padding: 0.875rem 1.5rem;
      align-items: center;
      justify-content: center;
      border-radius: 25px;
      border-color: transparent; }
    .voting-card .comment__buttons--white {
      background: white;
      color: #1800AD; }
    .voting-card .comment__buttons--blue {
      background: #1800AD;
      color: white; }
    .voting-card .comment__buttons--gray {
      background: #BABABA;
      color: #777777; }
  .voting-card__voting-form {
    margin-bottom: 0; }
    .voting-card__voting-form__back {
      display: none; }
    .voting-card__voting-form__choices {
      display: flex;
      gap: 2.25rem;
      flex-wrap: wrap;
      justify-content: center; }
      .voting-card__voting-form__choices--agree, .voting-card__voting-form__choices--disagree, .voting-card__voting-form__choices--skip {
        display: flex;
        height: 2.375rem;
        width: 8rem;
        justify-content: center;
        align-items: center;
        border-radius: 5px;
        font-size: 1rem;
        font-style: normal;
        line-height: normal;
        text-transform: lowercase;
        padding: 0;
        letter-spacing: 0px; }
        .voting-card__voting-form__choices--agree i, .voting-card__voting-form__choices--disagree i, .voting-card__voting-form__choices--skip i {
          color: white; }
      .voting-card__voting-form__choices--agree {
        background-color: #1800AD;
        border: 1px solid #1800AD; }
      .voting-card__voting-form__choices--disagree {
        background-color: #CC9900;
        border: 1px solid #CC9900; }
      .voting-card__voting-form__choices--skip {
        background-color: transparent;
        border: 1px solid #000000;
        color: #000000; }
        .voting-card__voting-form__choices--skip i {
          color: #000000;
          transform: rotate(45deg); }
      @media (max-width: 430px) {
        .voting-card__voting-form__choices {
          gap: 1rem; } }
  .voting-card__message {
    padding: 1rem 0 2rem 0;
    color: #000000;
    font-family: "Work Sans";
    font-size: 1.5em;
    font-style: normal;
    font-weight: 300;
    line-height: 125%; }
    .voting-card__message p {
      margin: 0; }
  @media (max-width: 600px) {
    .voting-card {
      padding: 1.875rem 1.625rem 0.531rem 2rem;
      grid-column: 1 / 4; }
    .voting-card textarea {
      height: 30vh; }
    .voting-card__comment-avatar {
      display: none; } }
.comment-card {
  max-height: 529px; }
  @media (max-width: 875px) {
    .comment-card {
      max-height: unset; } }
  .comment-card__limit-tooltip {
    color: white;
    font-size: 1rem;
    place-items: center;
    padding: 0 0.75rem;
    border-radius: 5px;
    background: #1800AD;
    width: fit-content;
    min-height: 43px;
    margin-bottom: 21px; }
    .comment-card__limit-tooltip__arrow {
      color: #1800AD;
      width: 0;
      height: 0;
      border-left: 10px solid transparent;
      border-right: 10px solid transparent;
      border-top: 10px solid #1800AD;
      position: relative;
      left: 80%;
      top: 100%; }
  .comment-card__submit-container {
    margin-bottom: 1.3125rem;
    display: grid;
    justify-items: end; }

.no-margin {
  margin: 0; }

.voting-card__voting-form__choices--disagree .loader,
.voting-card__voting-form__choices--agree .loader {
  border: 2px solid white !important; }

.voting-card__voting-form__choices--skip .loader {
  border: 2px solid #000000 !important; }

.voting-card__voting-form__choices--disagree .loader,
.voting-card__voting-form__choices--agree .loader,
.voting-card__voting-form__choices--skip .loader {
  margin-top: unset !important;
  border-bottom-color: transparent !important; }

@media (max-width: 875px) {
  .body {
    margin: unset !important; } }

.moderate label {
  display: grid;
  text-indent: 0;
  grid-gap: .5rem; }

.moderate .hide {
  display: none; }

.moderate textarea {
  max-width: unset;
  border-radius: .3125rem;
  margin-bottom: .375rem !important; }

.moderate .comment-container__error-message {
  transition: .35s;
  height: 0;
  visibility: hidden;
  color: #E20000; }

.moderate .comment-container.active textarea {
  animation: background-alert;
  animation-duration: 3s;
  animation-iteration-count: infinite; }

.moderate .comment-container.active .comment-container__error-message {
  visibility: visible;
  height: inherit; }

.moderate .comments-panel {
  display: grid;
  width: 100%;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .5rem; }
  .moderate .comments-panel__add-btn {
    text-transform: uppercase;
    font-weight: bold;
    justify-self: start;
    grid-row: 1/span 1;
    grid-column: 1/span 2; }
  .moderate .comments-panel__save-btn, .moderate .comments-container__save-btn {
    background-color: #1800AD;
    border-color: #1800AD;
    justify-self: end;
    grid-row: 2/span 1;
    grid-column: 2/span 1; }
  .moderate .comments-panel__error-container {
    transition: opacity .5s linear 0s, height .05s linear .5s;
    color: #E20000;
    opacity: 0;
    height: 0;
    font-size: .75rem;
    margin-top: .5rem;
    text-transform: none; }
    .moderate .comments-panel__error-container.show {
      opacity: 1;
      height: auto; }

.moderate .comments-container__message {
  color: #777; }

.moderate .comments-container__save-btn {
  float: right; }

.moderate .comment {
  background-color: #E5E5E5;
  border-radius: .3125rem; }
  .moderate .comment__text {
    font-size: 1.125rem; }
  .moderate .comment__details {
    padding-top: .5rem;
    font-size: .875rem;
    margin-bottom: .5rem; }
    .moderate .comment__details > * {
      font-weight: bold; }
  .moderate .comment__date {
    color: #777; }
  .moderate .comment__actions {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 2.5rem; }
  .moderate .comment__action {
    background: none;
    border: none;
    letter-spacing: unset;
    line-height: unset;
    height: unset;
    margin: 0;
    border-radius: .3125rem;
    padding: 0.25rem 0.625rem;
    text-transform: lowercase;
    font-weight: bold;
    font-size: 1rem;
    color: #000000; }
    .moderate .comment__action > * {
      transition: 0s; }
    .moderate .comment__action i {
      margin-left: 0; }
    .moderate .comment__action:hover {
      box-shadow: unset; }
  .moderate .comment.rejected .comment__action.reject-btn, .moderate .comment.approved .comment__action.approve-btn {
    color: white;
    background: #000000; }

@keyframes background-alert {
  0%, 100% {
    background-color: rgba(226, 0, 0, 0.05); }
  50% {
    background-color: rgba(226, 0, 0, 0.15); } }

.conversation-welcome {
  font-family: 'Work Sans';
  display: grid;
  grid-template-columns: auto minmax(auto, 800px) auto;
  grid-template-rows: 10vh auto 1fr; }
  @media only screen and (max-width: 900px) {
    .conversation-welcome {
      font-size: 14px;
      grid-template-columns: 5% auto 5%;
      grid-template-rows: 7vh auto 1fr; } }
  @media only screen and (max-width: 500px) {
    .conversation-welcome {
      font-size: 13px;
      grid-template-columns: 5% auto 5%; }
      .conversation-welcome__button {
        max-width: unset !important; } }
  @media only screen and (max-width: 375px) {
    .conversation-welcome {
      font-size: 12px; } }
  .conversation-welcome__item {
    grid-column: 2;
    grid-row: 2; }
  .conversation-welcome__title {
    font-size: 2.25em;
    margin: 0 0 3.125rem;
    font-weight: 600; }
    @media only screen and (max-width: 900px) {
      .conversation-welcome__title {
        font-size: 1.67em;
        margin: 0 0 1.688rem !important; } }
  .conversation-welcome__message {
    font-size: 1.25em;
    color: #1800AD; }
    @media only screen and (max-width: 900px) {
      .conversation-welcome__message {
        font-size: 1.335em; } }
    .conversation-welcome__message--margin-bottom {
      margin: 0 0 1.5rem 0; }
    .conversation-welcome__message__subtitle {
      text-transform: uppercase;
      font-size: 1.25em;
      color: #1800AD; }
      @media only screen and (max-width: 900px) {
        .conversation-welcome__message__subtitle {
          font-size: 1.34em; } }
  .conversation-welcome__button, .conversation-welcome__button:hover {
    background-color: #1800AD !important;
    border-radius: .5rem;
    border: unset !important;
    box-sizing: content-box;
    float: right;
    text-transform: none;
    font-size: 1em;
    margin: 0;
    letter-spacing: 0;
    color: white;
    font-weight: 700;
    width: 253px;
    height: 53px;
    display: flex;
    justify-content: center;
    align-items: center; }
    @media only screen and (max-width: 900px) {
      .conversation-welcome__button, .conversation-welcome__button:hover {
        font-size: 1.335em; } }
  .conversation-welcome__logo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 2.75rem;
    margin-bottom: 3.616rem; }
    @media only screen and (max-width: 900px) {
      .conversation-welcome__logo {
        align-items: center;
        flex-direction: column-reverse;
        gap: 1.535rem;
        margin-bottom: 2.5rem;
        margin-top: 1.5rem; } }
    .conversation-welcome__logo--no-photo {
      display: flex;
      justify-content: end; }
    .conversation-welcome__logo img {
      max-width: 246px;
      max-height: 120px; }

.board-detail .button-container {
  display: flex;
  gap: 2.1875rem;
  margin-top: 1.5rem; }
  .board-detail .button-container__edit-button, .board-detail .button-container__delete-button {
    font-size: 0.75em; }
  .board-detail .button-container__delete-button {
    color: #C70000; }

.board-detail__description {
  color: #777777; }

.board-detail__statistics-container {
  text-align: start; }

@media screen and (max-width: 559px) {
  .board-detail__board-statistics--hide {
    display: none; } }

@media screen and (max-width: 559px) {
  .board-detail__board-statistics--show .cards-divider-header {
    display: flex; } }

.board-detail__title {
  display: flex;
  place-items: baseline;
  justify-content: space-between;
  padding-bottom: 1rem; }
  .board-detail__title--left-side {
    display: flex;
    place-items: baseline; }
    .board-detail__title--left-side h1 {
      margin-bottom: 0.1rem;
      color: #1800AD !important;
      font-weight: 400; }
    .board-detail__title--left-side i {
      font-size: 1em;
      padding-bottom: 0.3125rem; }
  .board-detail__title--right-side {
    display: none; }
    @media screen and (max-width: 559px) {
      .board-detail__title--right-side {
        display: flex;
        place-items: center;
        justify-content: center;
        width: 1.5625rem;
        height: 1.5625rem;
        background: #1800AD;
        border-radius: 50%; }
        .board-detail__title--right-side i {
          color: white; } }
@media screen and (max-width: 559px) {
  .cards-divider.board-detail__board-statistics--show {
    display: flex;
    bottom: 0; } }

#bg-modal.board-detail__board-statistics--show {
  display: block;
  opacity: .7; }

/*
 SPACING
 =========================================================================== */
/*
 FONTS FAMILIES AND SIZES
 ============================================================== */
/*
 SPACING
 =========================================================================== */
.tools {
  max-width: 70vw;
  padding: 2rem 0; }
  .tools label {
    text-indent: unset;
    color: #1800AD; }
  .tools input {
    border-radius: 0.6rem; }
  .tools input[type="radio"]::after {
    bottom: 0.1em;
    right: unset; }
  .tools select {
    border-radius: 0.5rem; }
  .tools .h2, .tools .title, .tools .intro-paragraph h1, .intro-paragraph .tools h1, .tools .intro-paragraph h2, .intro-paragraph .tools h2, .tools .intro-paragraph h3, .intro-paragraph .tools h3, .tools .intro-paragraph h4, .intro-paragraph .tools h4, .tools .intro-paragraph h5, .intro-paragraph .tools h5, .tools .intro-paragraph h6, .intro-paragraph .tools h6, .tools .intro-paragraph .h1, .intro-paragraph .tools .h1, .tools .intro-paragraph .h4, .intro-paragraph .tools .h4, .tools .intro-paragraph .h5, .intro-paragraph .tools .h5, .tools .intro-paragraph .h6, .intro-paragraph .tools .h6, .tools .h3 {
    margin: unset; }
    .tools .h2 a, .tools .title a, .tools .intro-paragraph h1 a, .intro-paragraph .tools h1 a, .tools .intro-paragraph h2 a, .intro-paragraph .tools h2 a, .tools .intro-paragraph h3 a, .intro-paragraph .tools h3 a, .tools .intro-paragraph h4 a, .intro-paragraph .tools h4 a, .tools .intro-paragraph h5 a, .intro-paragraph .tools h5 a, .tools .intro-paragraph h6 a, .intro-paragraph .tools h6 a, .tools .intro-paragraph .h1 a, .intro-paragraph .tools .h1 a, .tools .intro-paragraph .h4 a, .intro-paragraph .tools .h4 a, .tools .intro-paragraph .h5 a, .intro-paragraph .tools .h5 a, .tools .intro-paragraph .h6 a, .intro-paragraph .tools .h6 a, .tools .h3 a {
      color: #1800AD;
      text-decoration: underline; }
  .tools .h3 {
    color: #1800AD; }
  .tools-container-full-width {
    margin-left: 10px;
    margin-right: 10px; }
  .tools-title {
    margin-bottom: 1.5rem; }
    .tools-title span {
      line-height: 1.6; }
  .tools-table td a {
    text-decoration: underline; }
  .tools-table td:last-child {
    line-height: 1.6; }

.tools-section,
.tools-section-2 {
  border-width: 1px;
  border-color: #FFB703;
  border-radius: 1rem;
  padding: 5px; }

.tools-section-2 {
  border-style: solid; }

.tools-section .scrow,
.tools-section-2 .scrow {
  display: flex; }

.tools-section .scrow div:first-child,
.tools-section-2 .scrow div:first-child {
  flex-grow: 2;
  color: #FFB703;
  font-weight: 700; }

.tools-section .tools-content {
  overflow: hidden;
  transition: max-height 0.5s; }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-moz-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@media (max-width: 768px) {
  .tools {
    max-width: unset;
    margin: auto; } }

@media (max-width: 875px) {
  .tools-select {
    flex-grow: 1; }
  .tools-share {
    flex-grow: 1; } }

@media (min-width: 876px) and (max-width: 1300px) {
  .tools-select {
    width: 470px !important; } }

@media (min-width: 1301px) {
  .tools-select {
    flex-grow: 1; } }

@media (max-width: 1210px) {
  .tools-card-expand {
    width: 100% !important; } }

/* Responsive columns */
@media screen and (max-width: 600px) {
  .column {
    width: 100%;
    display: block;
    margin-bottom: 20px; } }

.divider {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  padding-bottom: 0.5rem;
  max-width: 50rem; }

.help-card {
  box-sizing: border-box;
  background: rgba(255, 86, 130, 0.2);
  border-radius: 5px;
  padding: 1rem 1rem 1rem 0;
  display: flex;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  max-width: 375px; }
  .help-card i {
    font-size: x-large; }

#id_authentication_type .tooltip,
#id_template_type .tooltip {
  display: inline; }

#id_authentication_type .tooltip .tooltiptext,
#id_template_type .tooltip .tooltiptext {
  visibility: hidden;
  width: 120px;
  background-color: black;
  opacity: 50%;
  color: white;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  margin-top: 50px;
  font-size: small;
  /* Position the tooltip */
  position: absolute;
  z-index: 1; }

#id_authentication_type .tooltip:hover .tooltiptext,
#id_template_type .tooltip:hover .tooltiptext {
  visibility: visible; }

#id_authentication_type label,
#id_template_type label {
  display: inline-block;
  background-color: aliceblue;
  padding: 15px 40px;
  border-radius: 10px;
  margin: 0;
  border: 1px solid #FFB703;
  text-indent: 0; }

#id_authentication_type label:hover,
#id_template_type label:hover {
  background-color: #ffdf8e; }

#id_authentication_type input[type="radio"]:checked + label,
#id_template_type input[type="radio"]:checked + label {
  background-color: #e5d4a7;
  color: #1800AD; }

#id_authentication_type input[type="radio"]:focus + label,
#id_template_type input[type="radio"]:focus + label {
  border: 2px dashed #e5d4a7; }

#id_authentication_type input[type="radio"],
#id_template_type input[type="radio"] {
  opacity: 0;
  position: fixed;
  width: 0; }

#id_authentication_type li,
#id_template_type li {
  display: inline-block;
  margin-right: 0.8rem; }

.color-choice {
  border-radius: 50%;
  display: inline-block;
  position: relative;
  top: 0.1rem;
  height: 1.2rem;
  width: 1.2rem; }

/* Float four columns side by side */
.column {
  float: left;
  width: 50%;
  padding: 0 10px; }

/* Clear floats after the columns */
.row:after, .tabs:after, .categories:after, .stat-slab:after {
  content: "";
  display: table;
  clear: both; }

.tools-divider {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 1.5rem 0;
  align-items: start;
  margin: 1.313rem 0 0 0; }

.tools-icon-share {
  cursor: pointer; }
  .tools-icon-share img {
    margin: -6px 4px; }

#tools-tip-text {
  width: 150px;
  visibility: hidden;
  font-size: 12px;
  background-color: black;
  color: white;
  text-align: center;
  padding: 5px 5px;
  border-radius: 6px;
  transition: all 0.3s ease;
  transition-delay: 1.2s;
  z-index: 1; }

.tools-tip-text-show {
  visibility: visible !important; }

.tools-tip-text-hidde {
  visibility: hidden; }

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

.hide {
  display: none !important;
  opacity: 0; }

.show {
  display: block !important;
  opacity: 1; }

.tools-card-container {
  border: 1px solid #C4C4C4;
  border-width: 1px;
  box-sizing: border-box;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  margin: 0 auto 0 0;
  max-width: 800px;
  width: 100%;
  transition: 0.3s;
  border-radius: .5rem;
  overflow: auto; }
  .tools-card-container button {
    font-family: 'Work Sans';
    line-height: 0; }

.tools-card-content {
  margin: 0 0 0 1rem;
  padding: 0 1rem 0 0; }
  .tools-card-content .instruction {
    color: rgba(0, 0, 0, 0.8);
    font-size: 1.125rem;
    margin: 0 0 .8rem 0 !important; }
  .tools-card-content p {
    margin: 0 0 1.813rem 0 !important;
    max-width: 450px; }

.tools-card-title {
  font-size: 1.25rem;
  font-weight: bold;
  color: #1800AD; }

.tools-card-body {
  display: flex;
  margin: 12px 0 0 19px; }
  .tools-card-body-img img {
    width: 50px; }
  .tools-card-body-buttons {
    display: flex;
    margin: .7rem 0 1.5rem 0; }
    .tools-card-body-buttons span {
      margin: .5rem .5rem 0 0;
      font-size: .75rem; }

.tools-card-footer {
  float: right;
  margin: 0 0.75rem 0.75rem 0;
  display: flex;
  gap: .3rem; }
  .tools-card-footer button.blue, .tools-card-footer button.grey {
    border-radius: 5px;
    height: 45px;
    width: 145px;
    padding: 0 !important;
    text-transform: capitalize;
    margin: 0 !important; }
  .tools-card-footer button.grey {
    background-color: #bababa;
    border-color: #bababa;
    color: #1800AD;
    font-size: 0.7rem; }
  .tools-card-footer button.blue {
    background-color: #1800AD;
    color: white;
    border-color: white;
    font-size: 0.75rem; }
    .tools-card-footer button.blue a {
      font-weight: bold;
      color: white; }

.tools-card-title {
  font-size: 1.25rem;
  font-weight: bold;
  color: #1800AD; }

button.blue, button.grey {
  border-radius: 5px;
  height: 45px;
  width: 145px;
  padding: 0 !important;
  text-transform: capitalize;
  margin: 0 !important; }

button.grey {
  background-color: #bababa;
  border-color: #bababa;
  color: #1800AD;
  font-size: 0.7rem; }
  button.grey a {
    font-weight: 700;
    font-size: 13px;
    line-height: 15px; }

button.blue {
  background-color: #1800AD;
  color: white;
  border-color: white;
  font-size: 0.75rem; }
  button.blue a {
    font-weight: bold;
    color: white;
    font-size: 13px;
    line-height: 15px; }

.tools-settings-form {
  position: relative;
  margin-bottom: 0.844rem; }
  .tools-settings-form h3 {
    margin-block-start: 0; }
  .tools-settings-form hr {
    color: #e5d4a7; }
  .tools-settings-form ul {
    list-style-type: none;
    max-width: 24rem;
    justify-content: center; }
    .tools-settings-form ul li {
      margin-bottom: 0; }
  .tools-settings-form section {
    margin-bottom: 2rem;
    margin-left: 1rem; }
  .tools-settings-form .section-custom {
    max-width: 66%; }
    .tools-settings-form .section-custom h3 {
      display: flex;
      justify-content: space-between; }
  .tools-settings-form-table-about {
    font-weight: bold; }
  .tools-settings-form-settings-form h3 {
    margin-block-start: 0; }
  .tools-settings-form-settings-form hr {
    color: rgba(0, 0, 0, 0.12); }
  .tools-settings-form-settings-form section {
    margin: 20px 0px 20px 0px; }
    @media only screen and (max-width: 740px) {
      .tools-settings-form-settings-form section {
        left: 2.5rem; } }
  .tools-settings-form-settings-form ul {
    list-style-type: none;
    margin-bottom: 0; }
  .tools-settings-form-settings-form ul:after {
    content: "";
    display: table;
    clear: both; }
  .tools-settings-form-settings-form li {
    float: left;
    margin-right: 3%;
    width: 35%;
    width: auto;
    margin-bottom: 0; }
  .tools-settings-form-submit-button {
    float: left; }

.tools-settings-form:after {
  content: "";
  display: table;
  clear: both; }

.title-theme {
  margin-bottom: 2.313rem; }
  .title-theme .avatar {
    width: 3.438rem;
    margin-top: 0.844rem;
    margin-right: 1.5rem;
    margin-left: 1.219rem; }
  .title-theme h3 {
    width: 70%;
    margin-top: 0.75rem;
    color: #1800AD;
    font-family: "Work Sans";
    font-style: normal;
    font-weight: bold;
    font-size: 20px;
    line-height: 23px; }
  .title-theme h4 {
    color: #1800AD;
    font-family: "Work Sans";
    font-weight: bold;
    line-height: 21px;
    margin: unset !important; }
  @media only screen and (max-width: 760px) {
    .title-theme h3 {
      margin-left: 2rem;
      margin-bottom: 1.5rem; }
    .title-theme h4 {
      left: 2rem; }
    .title-theme span {
      left: 2rem; } }
.modal-tools-content {
  position: relative;
  width: 70%;
  max-width: 1200px;
  background: white;
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  place-items: center;
  justify-content: center;
  gap: .75rem; }
  .modal-tools-content button {
    width: 200px;
    height: 50px;
    background: #1800AD;
    border-radius: 70px;
    padding-top: 10px; }
    .modal-tools-content button span {
      text-transform: capitalize;
      color: white;
      font-family: "Work Sans";
      font-style: normal;
      font-weight: bold;
      font-size: 24px;
      line-height: 28px; }
  @media only screen and (max-width: 760px) {
    .modal-tools-content {
      width: 100%;
      height: 100%;
      max-width: none;
      border-radius: 0px;
      justify-content: flex-start; } }
.modal-tools-close {
  display: none;
  z-index: 9999; }

.modal-tools-open {
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999; }

.close-modal {
  position: absolute;
  right: 5px;
  top: 0px;
  text-align: right;
  font-size: 28px;
  margin-right: 17px;
  cursor: pointer; }

.modal-tools-bg {
  display: grid;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.4);
  place-items: center;
  justify-content: center; }

@media (max-width: 768px) {
  #page-wrapper .modal {
    width: 100vw;
    left: 0;
    margin: 15% auto; }
  .tools {
    width: 100%; }
    .tools-container {
      width: 95%;
      margin: auto; } }

h2.text-accent a {
  color: #1800AD; }

.chatbot-options {
  margin-top: 30px;
  margin-left: -8px;
  /* Style the counter cards */ }
  .chatbot-options .card {
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    padding: 14px;
    border: 1px solid #e5e5e5;
    margin-bottom: 40px;
    cursor: pointer;
    max-width: 500px; }
    .chatbot-options .card h3 {
      margin-top: 20px;
      margin-bottom: 10px;
      color: #042a46;
      font-size: 18px; }
  .chatbot-options .card:hover {
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2); }
  .chatbot-options .imgcard {
    width: 65px;
    height: 65px; }
  .chatbot-options .balance-bigger-margin {
    width: 50px;
    height: 65px; }

.bots-buttons.share-buttons {
  float: right;
  margin: -20px 400px 0px 0px; }

.bots-buttons button {
  height: 34px;
  width: 98px;
  border-radius: 5px;
  font-size: 0.7rem;
  text-transform: capitalize;
  padding: 0 !important; }

.bots-buttons button.grey {
  background-color: #bababa !important;
  border-color: #bababa !important;
  color: #1800AD !important; }

.bots-buttons button:last-child {
  background-color: #bababa;
  border-color: #bababa;
  color: #1800AD; }

.bots-buttons button.pink {
  background-color: #F00000 !important;
  color: white !important;
  border-color: white !important; }

.bots-buttons button:first-child {
  background-color: #F00000;
  color: white;
  border-color: white; }

.poll-bot-instructions {
  max-width: 410px;
  height: 60px; }
  .poll-bot-instructions li {
    color: rgba(0, 0, 0, 0.8);
    margin: 0 0 0.5rem 0; }

.tool-description {
  display: inline-block;
  max-width: 50rem; }

#custom-domain-label {
  margin-bottom: 0.5rem;
  float: left;
  width: 60%;
  text-transform: unset; }

.preview-template {
  position: relative;
  overflow: hidden;
  height: 40vw;
  width: 100%; }
  .preview-template table tbody tr {
    background: none !important; }

#domain-input {
  margin: 0 0 1rem 0; }

.iframe-section {
  height: 100%;
  width: 100%; }

.display-down {
  margin-right: 10px;
  cursor: pointer; }
  .display-down label {
    cursor: pointer;
    color: unset;
    margin-bottom: unset;
    font-size: 1.5rem;
    transition: transform 2s; }
  .display-down #isexpanded1,
  .display-down #isexpanded2 {
    display: none; }

#download-icon {
  font-size: 1.2rem;
  margin: auto 0.3em; }

#isexpanded1:checked + label > i {
  transform: rotate(180deg); }

#isexpanded2:checked + label > i {
  transform: rotate(180deg); }

#custom-field-section,
#mailing-section {
  animation: fadeIn 0.5s;
  -webkit-animation: fadeIn 0.5s;
  -moz-animation: fadeIn 0.5s; }

#custom-field-section label:first-letter {
  text-transform: uppercase; }

#no-comments-helptext {
  display: flex;
  margin-left: -10rem; }

.modal-tools-content.mailing {
  position: absolute;
  height: fit-content;
  border: none; }
  .modal-tools-content.mailing .close-modal {
    color: white; }

.tools-card-content.mailing {
  margin-left: 3rem; }

.tools-card-footer.mailing {
  margin: 0; }

.card-opinion-component {
  display: grid;
  width: 80%;
  height: auto;
  margin-left: 18px;
  padding-right: 1.219rem;
  border: 1px solid #EEEEEE;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  border-radius: 5px; }
  .card-opinion-component button {
    display: flex;
    place-content: center;
    align-items: center;
    justify-content: space-evenly;
    float: right; }

.opinion-component-card-list {
  display: block;
  margin-top: 1rem;
  width: 22rem;
  padding: 0 1rem; }

.h3--space {
  margin: 0 0 .625rem 0 !important; }

.tabs-space {
  margin-top: 1.25rem; }

.tools-divider.opinion-divider {
  margin-top: 2.688rem; }

.opinion-col-1 {
  display: flex;
  gap: 3.188rem; }
  .opinion-col-1__info {
    width: 36%; }
  .opinion-col-1 .tools-card-body-img img {
    height: 3.313rem; }
  .opinion-col-1 .helptext.opinion-helptext {
    color: rgba(0, 0, 0, 0.8);
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 1.25rem; }

.opinion-col-2__subtitle {
  color: rgba(0, 0, 0, 0.8);
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal; }

.opinion-col-2__hint {
  color: #1800AD;
  font-weight: bold; }

.opinion-col-2__hint-generate {
  color: rgba(0, 0, 0, 0.8);
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal; }

.opinion-col-2 .form-component__message {
  margin-top: 0.5rem;
  text-transform: capitalize; }
  .opinion-col-2 .form-component__message__label {
    text-transform: capitalize;
    margin-bottom: 0.5rem; }

.opinion-col-2 .form-component .tools-card-footer.opinion-component {
  margin: .75rem 0 0 0 !important;
  display: block !important;
  float: right; }
  .opinion-col-2 .form-component .tools-card-footer.opinion-component .tools-icon-share__collection-button {
    border-radius: 5px;
    background-color: #1800AD;
    border-color: #1800AD; }
    .opinion-col-2 .form-component .tools-card-footer.opinion-component .tools-icon-share__collection-button img {
      width: 16px;
      height: 16px; }
    .opinion-col-2 .form-component .tools-card-footer.opinion-component .tools-icon-share__collection-button a {
      font-size: .75rem;
      font-style: normal;
      font-weight: 700;
      line-height: normal;
      text-transform: initial;
      color: white; }

.opinion-col-2 #copy-snippet {
  display: flex;
  width: 100%;
  height: 7.688rem;
  padding: .813rem 1.25rem;
  align-items: flex-start;
  border-radius: 0px 0px 8px 8px;
  border-color: #D1D5DB;
  max-width: none;
  margin: 2.063rem 0 1.188rem;
  color: #6B7280;
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400; }

.opinion-col-2__copy-button {
  display: inline-flex;
  height: 2.625rem;
  padding: .5rem 1rem;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
  background: #FFB703;
  gap: .375rem; }

.opinion-col-2__tooltip {
  color: white;
  font-size: 1rem;
  display: inline-flex;
  place-items: center;
  padding: .75rem;
  padding-left: 0;
  border-radius: 5px;
  background: #1800AD;
  max-width: 16.563rem;
  height: 2.75rem;
  position: relative;
  top: 5px; }
  .opinion-col-2__tooltip__arrow {
    color: #1800AD;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #1800AD;
    border-left: 0;
    position: relative;
    right: .563rem; }

.opinion-col-2 #copy-snippet-message {
  display: none; }

.cke_top {
  padding: 0 !important; }

.domain-form {
  display: flex;
  justify-content: space-between;
  margin-bottom: 76px; }
  .domain-form input:first-child {
    margin-right: 10px;
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    margin-bottom: unset;
    margin-top: unset;
    max-width: 565px; }
  .domain-form #domain-submit {
    height: unset;
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; }

.webchat-card {
  box-sizing: border-box;
  max-height: fit-content;
  border: 1px solid #CCCCCC;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  border-radius: 5px;
  margin-top: 9px;
  padding: 1rem 0 0 0; }
  .webchat-card__description {
    display: block;
    max-width: 700px; }
  .webchat-card__section {
    display: flex; }
    .webchat-card__section-content {
      width: 80%; }
  .webchat-card__divider {
    border-bottom: 1px solid #c4c4c4;
    margin-bottom: 25.5px;
    width: 100%; }

.webchat-integrations__title {
  font-size: 18px;
  line-height: 21px;
  margin: 29px 0 12px;
  color: rgba(0, 0, 0, 0.8); }

.webchat-integrations__table {
  margin-top: 0.5rem;
  margin-bottom: 1.5rem; }
  .webchat-integrations__table tbody tr {
    background: none !important; }
  .webchat-integrations__table-row {
    max-width: 530px;
    overflow: hidden; }
    .webchat-integrations__table-row a {
      text-decoration: underline; }
  .webchat-integrations__table-header {
    font-style: normal;
    font-weight: bold;
    font-size: 14.4px;
    line-height: 17px;
    color: #30bfd3;
    padding: 20%;
    background-color: none; }
    .webchat-integrations__table-header th {
      border-bottom: 1px solid #bababa; }

.avatar {
  left: 19px;
  position: relative;
  margin-right: 35px;
  width: 60px;
  height: 60px; }

#form-size {
  margin-bottom: 0 !important; }

.buttons-div {
  display: flex;
  gap: 23px;
  position: relative;
  margin-top: 23px; }

#webchat-help-card {
  display: flex;
  gap: 21px;
  margin-top: 18px; }

.webchat-text-element {
  position: absolute;
  left: -9999px; }

.tip-text-position {
  margin-top: auto;
  height: 45px; }

#domain-label {
  margin-bottom: 0.5rem;
  text-transform: capitalize; }

.width-full-extended {
  margin-bottom: 0.25rem;
  margin-top: 1rem; }

#description-info {
  margin-bottom: 0rem;
  margin-top: 12px;
  display: block; }

#th-remove {
  text-align: end; }

#td-remove {
  text-align: end; }

/*
 SPACING
 =========================================================================== */
/*
 FONTS FAMILIES AND SIZES
 ============================================================== */
/*
 SPACING
 =========================================================================== */
.desative {
  display: none; }

.warning-comments {
  color: #1800AD; }

.group-comments {
  position: fixed;
  /* Stay in place */
  z-index: 1010;
  /* Sit on top */
  left: 0;
  top: 0;
  width: 100%;
  /* Full width */
  height: 100vh;
  /* Full height */
  overflow: unset;
  /* Enable scroll if needed */
  background-color: rgba(0, 0, 0, 0.4);
  /* Black w/ opacity */ }

@media (max-width: 875px) {
  .group-comments-content {
    width: 100% !important;
    height: 100vh; } }

/* group-comments Content/Box */
.group-comments-content {
  background: white;
  opacity: 1 !important;
  box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.35);
  background-color: #fefefe;
  margin: 15% auto;
  /* 15% from the top and centered */
  margin-top: 5vh;
  padding: 1.3rem;
  border: 1px solid #C4C4C4;
  width: 80%;
  /* Could be more or less, depending on screen size */
  max-width: 930px;
  height: 90vh;
  overflow-y: scroll; }
  .group-comments-content table {
    margin-bottom: unset !important;
    border-collapse: collapse;
    table-layout: fixed;
    border: 1px solid #C4C4C4; }
  .group-comments-content td, .group-comments-content th {
    border-bottom: 1px solid #C4C4C4;
    padding: 0.5rem;
    text-align: left;
    white-space: wrap;
    word-break: break-all;
    font-size: 17px;
    font-weight: normal;
    padding-top: 1.1rem !important;
    padding-bottom: 1.3rem !important; }
  .group-comments-content tr {
    color: rgba(0, 0, 0, 0.8);
    background-color: white; }
  .group-comments-content tr:nth-child(odd) {
    background-color: white; }
  .group-comments-content tr:hover, .group-comments-content tr:focus {
    background-color: white; }
  .group-comments-content header {
    padding-bottom: 1.3rem !important;
    padding-top: 1.1rem !important;
    font-family: "Work Sans", sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    line-height: 1.3rem;
    color: #666666; }
  .group-comments-content .comments-table {
    margin-top: 3rem; }
  .group-comments-content .comments-input {
    -webkit-appearance: none !important;
    width: 0.9rem;
    height: 0.9rem;
    border: 2px solid #042A46;
    border-radius: unset;
    display: block !important;
    border-color: unset;
    position: relative;
    z-index: 1013; }
    .group-comments-content .comments-input::after, .group-comments-content .comments-input::before {
      box-sizing: border-box !important; }
    .group-comments-content .comments-input:before {
      border-color: rgba(255, 255, 255, 0) !important; }
    .group-comments-content .comments-input:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      display: none; }
    .group-comments-content .comments-input:checked {
      border: none !important;
      background-color: #042A46; }
    .group-comments-content .comments-input .overflow {
      display: none; }
  .group-comments-content .table-text {
    word-break: break-word; }
  .group-comments-content .footer {
    font-size: 0.9rem;
    line-height: 1rem;
    word-break: keep-all;
    height: 2rem;
    vertical-align: bottom;
    padding-top: 1.8rem !important;
    padding-bottom: 0.8rem !important; }
  .group-comments-content .command {
    font-weight: 700; }

.edit-pool-container {
  position: relative; }

.edit-pool-comments {
  position: absolute;
  bottom: 0px;
  right: 0px;
  font-weight: bold; }

.pools-comments-divider {
  border-top: 1px solid #E5E5E5;
  margin-right: -1.3rem;
  margin-left: -1.3rem;
  width: -moz-available;
  margin-bottom: 1.3rem; }

.pool-text {
  font-size: 0.9rem;
  line-height: 1rem !important;
  width: clamp(30ch, 71ch, 71ch);
  display: inline-block;
  margin-top: 0.5rem; }

.close-report {
  color: #1800AD;
  float: right;
  font-size: 28px;
  font-weight: bold;
  margin: 0 .5rem; }

.close-report:hover,
.close-report:focus {
  color: black;
  text-decoration: none;
  cursor: pointer; }

.modal-tools-title h3 {
  width: 100%;
  color: black;
  margin-top: 1rem;
  font-family: "Work Sans";
  font-style: normal;
  font-weight: bold;
  font-size: 18px;
  line-height: 21px;
  text-align: center;
  text-transform: uppercase; }

.modal-tools-title span {
  display: block;
  padding: 2% 14%;
  font-family: "Work Sans";
  font-style: normal;
  font-weight: normal;
  font-size: 24px;
  line-height: 28px;
  text-align: center; }

@media only screen and (max-width: 760px) {
  .modal-tools-title {
    margin-top: 5rem; }
    .modal-tools-title span {
      padding: 2% 7%; } }

.modal-tools-card {
  overflow: hidden;
  display: flex;
  width: 73%; }
  .modal-tools-card .column {
    width: 100%; }
  .modal-tools-card .card {
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    padding: 1rem;
    border: 1px solid #e5e5e5;
    cursor: pointer;
    display: flex;
    place-items: center;
    justify-content: initial; }
    .modal-tools-card .card .card-text {
      display: flex;
      flex-direction: column;
      place-items: flex-start; }
      .modal-tools-card .card .card-text h3 {
        color: black;
        font-family: "Work Sans";
        font-style: normal;
        font-weight: normal;
        font-size: 24px;
        line-height: 28px;
        text-decoration: underline; }
      .modal-tools-card .card .card-text p {
        font-family: "Work Sans";
        font-style: normal;
        font-weight: normal;
        font-size: 16px;
        line-height: 19px; }
    .modal-tools-card .card .card-icon {
      margin-right: 0.3rem; }
      .modal-tools-card .card .card-icon .imgcard {
        width: 75px;
        height: 65px;
        max-width: unset; }
  .modal-tools-card .card:hover {
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2); }
  .modal-tools-card .balance-bigger-margin {
    width: 50px;
    height: 65px; }
  @media only screen and (max-width: 860px) {
    .modal-tools-card {
      width: 90%; }
      .modal-tools-card .card {
        justify-content: center; }
        .modal-tools-card .card .card-text h3 {
          font-size: 18px;
          line-height: 21px; }
        .modal-tools-card .card .card-icon {
          margin-left: -1rem;
          margin-right: 0rem; } }
.modal-tools-footer p {
  font-family: "Work Sans";
  font-style: normal;
  font-weight: normal;
  font-size: 18px;
  line-height: 21px;
  text-align: center;
  text-decoration-line: underline; }

/* generic classes */
.center-grid {
  grid-column: 2/3; }

.conversation-dashboard-section__title {
  height: 1.875rem;
  margin-bottom: 1.813rem;
  text-transform: capitalize; }

.dashboard-balloon__container {
  margin: 2.5rem 0 3rem 0; }

.dashboard-balloon__title {
  color: #1800AD;
  line-height: 1.375rem;
  margin-top: 0px;
  margin-bottom: 0px; }

.dashboard-balloon__label {
  color: #FFB703;
  margin-bottom: .3rem; }

.dashboard-balloon__label, .dashboard-balloon__title {
  text-transform: uppercase;
  font-weight: 500; }

.report-container .conversation-dashboard .report-card {
  border: 1px solid #FFB703;
  border-radius: 0.5rem;
  width: 100%;
  padding: 0 1.375rem 0 1.1875rem;
  min-height: 4.6875rem;
  background-color: #FFB703;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  .report-container .conversation-dashboard .report-card__label {
    font-size: 1rem;
    color: #1800AD; }
  .report-container .conversation-dashboard .report-card__button {
    padding: 1rem 0 0 0; }
  .report-container .conversation-dashboard .report-card--margin-lg {
    margin-bottom: 3.65rem; }
  .report-container .conversation-dashboard .report-card--margin-sm {
    margin-bottom: 2.56rem; }

.charts-section {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  margin-bottom: 1.875rem; }
  .charts-section__title {
    font-size: 1.1em;
    line-height: 1.3125rem;
    margin: unset;
    display: flex;
    text-transform: capitalize;
    color: #1800AD;
    font-family: "Work Sans", sans-serif;
    font-weight: bold;
    flex-grow: 1; }
  .charts-section #voting-time-chart {
    height: 25rem; }
    .charts-section #voting-time-chart div:first-child {
      width: 100% !important; }
  .charts-section .time-chart {
    width: 100%; }
    .charts-section .time-chart svg {
      margin: 1rem auto auto auto; }
    .charts-section .time-chart .date-picker {
      display: flex;
      flex-wrap: wrap;
      gap: 1rem; }
      .charts-section .time-chart .date-picker__input {
        display: flex;
        gap: .5rem;
        border: 1px solid #777777;
        border-radius: 0.3125rem;
        padding: 0.25rem;
        cursor: pointer;
        color: #777777; }
        .charts-section .time-chart .date-picker__input input {
          min-width: unset !important;
          max-width: 7.5rem !important;
          padding: unset;
          cursor: pointer;
          width: 100%;
          margin: auto;
          height: 1rem;
          border: unset !important;
          border-radius: unset !important;
          font-size: 0.875rem;
          font-weight: 400;
          text-align: center;
          color: #777777; }
        .charts-section .time-chart .date-picker__input input:focus {
          box-shadow: unset !important; }
    .charts-section .time-chart__container {
      position: relative; }
    .charts-section .time-chart--invalid-dates {
      color: red;
      display: none; }
    .charts-section .time-chart--loading {
      text-align: center;
      display: none; }
  .charts-section .channels-chart {
    width: 100%; }
    .charts-section .channels-chart__header {
      display: flex;
      flex-wrap: wrap;
      gap: .85rem;
      justify-content: space-between; }
    .charts-section .channels-chart .participant-filter {
      display: flex;
      gap: .3rem; }
      .charts-section .channels-chart .participant-filter__buttons {
        display: flex;
        gap: .5rem; }
      .charts-section .channels-chart .participant-filter__button {
        border: 1px solid #777777;
        border-radius: 0.3125rem;
        color: #777777;
        background-color: white;
        line-height: 1rem;
        text-transform: capitalize;
        padding: 0 0.5rem;
        margin-right: 0.5625rem;
        text-transform: lowercase;
        height: 1.82rem;
        font-weight: 400;
        font-size: 1rem; }
        .charts-section .channels-chart .participant-filter__button--selected {
          background-color: #777777;
          color: white; }
      .charts-section .channels-chart .participant-filter__button:focus {
        box-shadow: unset; }
      .charts-section .channels-chart .participant-filter__button:active {
        box-shadow: unset; }
  @media (max-width: 1200px) {
    .charts-section {
      flex-wrap: wrap; }
      .charts-section .time-chart,
      .charts-section .channels-chart {
        width: 100% !important; } }
.report-container .conversation-dashboard .voting-section__title {
  align-items: center;
  height: 3.875rem;
  margin-bottom: 0.75rem; }
  .report-container .conversation-dashboard .voting-section__title h2 {
    margin: unset; }

.report-container .conversation-dashboard .voting-section__container {
  margin-bottom: 2.19rem; }

.report-container .conversation-dashboard .dashboard-card {
  flex: 22.5%;
  border: 2px solid #FFB703;
  border-radius: 0.3125rem;
  padding: 1.1875rem 1.5625rem 1.1875rem 1.5625rem; }
  .report-container .conversation-dashboard .dashboard-card--fit-content {
    flex: inherit !important; }
  .report-container .conversation-dashboard .dashboard-card__container {
    gap: 1.25rem;
    flex-wrap: wrap; }
  .report-container .conversation-dashboard .dashboard-card__title {
    font-weight: bold;
    font-size: 1em;
    color: #1800AD; }
  .report-container .conversation-dashboard .dashboard-card__value {
    font-weight: 400;
    font-size: 1.5em;
    color: #FFB703; }
    .report-container .conversation-dashboard .dashboard-card__value--white {
      color: white; }
  .report-container .conversation-dashboard .dashboard-card--blue {
    background-color: #FFB703; }
    .report-container .conversation-dashboard .dashboard-card--blue .dashboard-card__value {
      color: white; }

.report-container .conversation-dashboard .comments-section {
  margin-bottom: 2.19rem; }
  .report-container .conversation-dashboard .comments-section__title {
    margin-bottom: 2.56rem; }

.clusters-section .content-grid > *, .clusters-section .tools > * {
  grid-column: 2/3; }

.clusters-section__container {
  display: flex;
  flex-wrap: wrap;
  padding: 0 0 3rem 0;
  justify-content: center; }
  .clusters-section__container--wide-center {
    align-items: center;
    padding: 3rem 0;
    justify-content: center !important; }

.report-container .conversation-dashboard .clusters-section, .clusters-section {
  background-color: #FFF8E1;
  margin-bottom: 5rem;
  grid-column: 1/4; }
  .report-container .conversation-dashboard .clusters-section__title div span, .clusters-section__title div span {
    text-align: left;
    font-family: "Work Sans", "sans-serif";
    font-size: 1.5rem; }
  .report-container .conversation-dashboard .clusters-section__chart, .clusters-section__chart {
    text-align: center; }
  .report-container .conversation-dashboard .clusters-section__detail h2, .report-container .conversation-dashboard .clusters-section__detail p, .clusters-section__detail h2, .clusters-section__detail p {
    color: #1800AD; }
  .report-container .conversation-dashboard .clusters-section__detail p, .report-container .conversation-dashboard .clusters-section__detail button, .clusters-section__detail p, .clusters-section__detail button {
    font-family: "Work Sans"; }
  .report-container .conversation-dashboard .clusters-section__detail button, .clusters-section__detail button {
    border-radius: 0.5rem;
    background-color: #1800AD;
    color: white;
    height: 2.625rem;
    text-transform: capitalize;
    font-size: 1rem; }
  .report-container .conversation-dashboard .clusters-section__detail--filled, .clusters-section__detail--filled {
    max-width: 20rem; }
    .report-container .conversation-dashboard .clusters-section__detail--filled h2, .clusters-section__detail--filled h2 {
      font-size: 1.5em;
      margin-top: unset;
      text-transform: capitalize; }
  .report-container .conversation-dashboard .clusters-section__detail--null, .clusters-section__detail--null {
    font-size: 2.25rem; }
  .report-container .conversation-dashboard .clusters-section__detail--no-margin, .clusters-section__detail--no-margin {
    margin-bottom: unset !important; }
  .report-container .conversation-dashboard .clusters-section__detail--padding, .clusters-section__detail--padding {
    justify-content: unset; }
  .report-container .conversation-dashboard .clusters-section__comment-percentage, .clusters-section__comment-percentage {
    font-size: 2.25em; }
  .report-container .conversation-dashboard .clusters-section__main-comment, .clusters-section__main-comment {
    font-size: 1em;
    margin-bottom: 1rem; }

.scatter-section {
  display: grid;
  grid-template-columns: 30% auto auto auto;
  grid-template-rows: 25rem; }
  @media (max-width: 414px) {
    .scatter-section {
      grid-template-columns: auto;
      grid-template-rows: auto auto; } }
  .scatter-section__filters {
    grid-column: 1 / 2;
    grid-row: 1;
    display: block !important; }
    @media (max-width: 414px) {
      .scatter-section__filters {
        grid-column: 1;
        grid-row: 1; } }
  .scatter-section__chart {
    grid-column: 2 / 5;
    grid-row: 1;
    height: 400px; }
    @media (max-width: 414px) {
      .scatter-section__chart {
        grid-column: 1;
        grid-row: 2; } }
.report-container .conversation-dashboard .scatter-section {
  gap: 2.5rem;
  margin-bottom: 3rem; }
  .report-container .conversation-dashboard .scatter-section__title {
    display: flex;
    flex-wrap: wrap;
    text-align: left; }
    .report-container .conversation-dashboard .scatter-section__title h2 {
      width: 100%; }
    .report-container .conversation-dashboard .scatter-section__title p {
      color: #1800AD;
      font-family: "Work Sans";
      font-size: 1rem; }
  .report-container .conversation-dashboard .scatter-section__container {
    max-width: 37.5rem;
    min-width: 17.5rem;
    width: 100%;
    height: 25rem; }

.report-container .conversation-dashboard .scatter-filter__button--inactive {
  color: #777777 !important;
  background-color: white !important; }

.report-container .conversation-dashboard .scatter-filter__filter-by-text {
  font-size: 1rem;
  color: #777777; }

.report-container .conversation-dashboard .scatter-filter button {
  color: white;
  background-color: #777777;
  border: 1px solid #777777;
  border-radius: 0.5rem;
  line-height: 1rem;
  padding: 0 0.5rem;
  margin-right: 0.5625rem;
  text-transform: lowercase;
  height: 1.82rem;
  font-size: 1rem; }

.report-container .conversation-dashboard .scatter-filter__categories {
  display: flex;
  max-width: 14.375rem;
  flex-wrap: wrap;
  margin: 1rem 0 0 0; }

.report-container .conversation-dashboard .scatter-filter__no-group-text {
  background-color: #797979;
  width: 13.4375rem;
  border-radius: 0.5rem;
  padding: 0.375rem 0.5625rem 0.375rem 1rem; }
  .report-container .conversation-dashboard .scatter-filter__no-group-text span {
    font-weight: 600;
    color: white;
    font-size: 1.25rem;
    font-family: "Work Sans"; }

.report-container .conversation-dashboard .words-cloud-section__title {
  margin-bottom: 1.75rem; }

.report-container .conversation-dashboard .words-cloud-section__container {
  box-sizing: border-box;
  border: 1px solid #bababa;
  width: 100%;
  height: 24.25rem;
  margin-bottom: 2.625rem;
  position: relative; }
  .report-container .conversation-dashboard .words-cloud-section__container p {
    position: absolute;
    left: 1rem;
    top: 1rem;
    font-size: 1.125rem;
    line-height: 1.3125rem; }

.report-container .conversation-dashboard__button {
  margin-left: auto; }
  .report-container .conversation-dashboard__button a {
    border-radius: 0.313rem;
    text-transform: capitalize;
    font-size: 1rem;
    padding: .2rem .8rem;
    box-sizing: content-box; }

.report-container .conversation-dashboard .title, .report-container .conversation-dashboard .intro-paragraph h1, .intro-paragraph .report-container .conversation-dashboard h1, .report-container .conversation-dashboard .intro-paragraph h2, .intro-paragraph .report-container .conversation-dashboard h2, .report-container .conversation-dashboard .intro-paragraph h3, .intro-paragraph .report-container .conversation-dashboard h3, .report-container .conversation-dashboard .intro-paragraph h4, .intro-paragraph .report-container .conversation-dashboard h4, .report-container .conversation-dashboard .intro-paragraph h5, .intro-paragraph .report-container .conversation-dashboard h5, .report-container .conversation-dashboard .intro-paragraph h6, .intro-paragraph .report-container .conversation-dashboard h6, .report-container .conversation-dashboard .intro-paragraph .h1, .intro-paragraph .report-container .conversation-dashboard .h1, .report-container .conversation-dashboard .intro-paragraph .h2, .intro-paragraph .report-container .conversation-dashboard .h2, .report-container .conversation-dashboard .intro-paragraph .h3, .intro-paragraph .report-container .conversation-dashboard .h3, .report-container .conversation-dashboard .intro-paragraph .h4, .intro-paragraph .report-container .conversation-dashboard .h4, .report-container .conversation-dashboard .intro-paragraph .h5, .intro-paragraph .report-container .conversation-dashboard .h5, .report-container .conversation-dashboard .intro-paragraph .h6, .intro-paragraph .report-container .conversation-dashboard .h6 {
  align-items: baseline; }
  .report-container .conversation-dashboard .title h2, .report-container .conversation-dashboard .intro-paragraph h1 h2, .intro-paragraph .report-container .conversation-dashboard h1 h2, .report-container .conversation-dashboard .intro-paragraph h2 h2, .intro-paragraph .report-container .conversation-dashboard h2 h2, .report-container .conversation-dashboard .intro-paragraph h3 h2, .intro-paragraph .report-container .conversation-dashboard h3 h2, .report-container .conversation-dashboard .intro-paragraph h4 h2, .intro-paragraph .report-container .conversation-dashboard h4 h2, .report-container .conversation-dashboard .intro-paragraph h5 h2, .intro-paragraph .report-container .conversation-dashboard h5 h2, .report-container .conversation-dashboard .intro-paragraph h6 h2, .intro-paragraph .report-container .conversation-dashboard h6 h2, .report-container .conversation-dashboard .intro-paragraph .h1 h2, .intro-paragraph .report-container .conversation-dashboard .h1 h2, .report-container .conversation-dashboard .intro-paragraph .h2 h2, .intro-paragraph .report-container .conversation-dashboard .h2 h2, .report-container .conversation-dashboard .intro-paragraph .h3 h2, .intro-paragraph .report-container .conversation-dashboard .h3 h2, .report-container .conversation-dashboard .intro-paragraph .h4 h2, .intro-paragraph .report-container .conversation-dashboard .h4 h2, .report-container .conversation-dashboard .intro-paragraph .h5 h2, .intro-paragraph .report-container .conversation-dashboard .h5 h2, .report-container .conversation-dashboard .intro-paragraph .h6 h2, .intro-paragraph .report-container .conversation-dashboard .h6 h2 {
    margin: unset; }
  .report-container .conversation-dashboard .title span, .report-container .conversation-dashboard .intro-paragraph h1 span, .intro-paragraph .report-container .conversation-dashboard h1 span, .report-container .conversation-dashboard .intro-paragraph h2 span, .intro-paragraph .report-container .conversation-dashboard h2 span, .report-container .conversation-dashboard .intro-paragraph h3 span, .intro-paragraph .report-container .conversation-dashboard h3 span, .report-container .conversation-dashboard .intro-paragraph h4 span, .intro-paragraph .report-container .conversation-dashboard h4 span, .report-container .conversation-dashboard .intro-paragraph h5 span, .intro-paragraph .report-container .conversation-dashboard h5 span, .report-container .conversation-dashboard .intro-paragraph h6 span, .intro-paragraph .report-container .conversation-dashboard h6 span, .report-container .conversation-dashboard .intro-paragraph .h1 span, .intro-paragraph .report-container .conversation-dashboard .h1 span, .report-container .conversation-dashboard .intro-paragraph .h2 span, .intro-paragraph .report-container .conversation-dashboard .h2 span, .report-container .conversation-dashboard .intro-paragraph .h3 span, .intro-paragraph .report-container .conversation-dashboard .h3 span, .report-container .conversation-dashboard .intro-paragraph .h4 span, .intro-paragraph .report-container .conversation-dashboard .h4 span, .report-container .conversation-dashboard .intro-paragraph .h5 span, .intro-paragraph .report-container .conversation-dashboard .h5 span, .report-container .conversation-dashboard .intro-paragraph .h6 span, .intro-paragraph .report-container .conversation-dashboard .h6 span {
    font-family: "Work Sans"; }

.report-container .conversation-dashboard .flex-align {
  gap: 1.25rem;
  align-items: center; }

.report-container .conversation-dashboard .voting-modal-report {
  display: flex;
  align-items: center; }
  .report-container .conversation-dashboard .voting-modal-report i {
    font-size: 1.125rem;
    color: #1800AD; }
  .report-container .conversation-dashboard .voting-modal-report__card--hide {
    display: none !important; }
  .report-container .conversation-dashboard .voting-modal-report__card {
    display: flex;
    align-items: center;
    width: fit-content; }
  .report-container .conversation-dashboard .voting-modal-report__content {
    display: flex;
    flex-direction: column;
    background-color: #1800AD;
    color: white;
    border-radius: 0.32rem;
    padding-right: 0.75rem;
    padding-left: 0.75rem;
    align-items: center;
    justify-content: center;
    height: 3.875rem; }
    .report-container .conversation-dashboard .voting-modal-report__content span {
      font-size: 1rem; }
    .report-container .conversation-dashboard .voting-modal-report__content a {
      font-weight: bold;
      color: white;
      text-decoration: underline; }
  .report-container .conversation-dashboard .voting-modal-report__triangle {
    width: 0;
    height: 0;
    border: 0.46875rem solid transparent;
    border-top: 0;
    border-bottom: 0.9375rem solid #1800AD;
    transform: rotate(-90deg); }

@media (max-width: 375px) {
  .time-chart,
  .channels-chart {
    width: 100vw !important;
    min-width: unset !important; }
  #channel-chart {
    width: 16.5625rem !important; } }

@media (max-width: 559px) {
  .report-container .conversation-dashboard .report-card {
    padding: 1.875rem 0 1.5rem 0;
    grid-column: 2/3;
    border-radius: 0px; }
    .report-container .conversation-dashboard .report-card--external {
      background-color: #FFB703;
      grid-column: 1/4;
      display: grid;
      grid-template-columns: 3% auto 3%; }
  .report-container .conversation-dashboard .voting-section .dashboard-card {
    flex: 45%; }
  .report-container .conversation-dashboard .voting-section__container {
    grid-column: 1/4;
    margin-right: 0.9375rem;
    margin-left: 0.9375rem; }
  .report-container .conversation-dashboard .comments-section {
    grid-column: 1/4;
    margin-right: 0.9375rem;
    margin-left: 0.9375rem; }
    .report-container .conversation-dashboard .comments-section__title {
      margin-top: 1.56rem; }
  .report-container .conversation-dashboard .clusters-section__container {
    padding: unset !important;
    max-width: unset !important; }
  .report-container .conversation-dashboard .clusters-section__title {
    margin-top: 1.76rem; }
    .report-container .conversation-dashboard .clusters-section__title div {
      max-width: unset !important; }
    .report-container .conversation-dashboard .clusters-section__title span {
      width: 100% !important;
      text-align: left;
      font-family: "Work Sans", "sans-serif";
      font-size: 1.5rem; }
  .report-container .conversation-dashboard .clusters-section__detail--filled {
    margin-bottom: 2rem;
    max-width: 100%;
    width: 100%; }
  .report-container .conversation-dashboard .clusters-section__chart {
    margin: .1rem 0 .1rem 0;
    width: 18rem !important; }
  .report-container .conversation-dashboard .clusters-section__comment-percentage {
    font-size: 1.5rem; }
  .report-container .conversation-dashboard .clusters-section__main-comment,
  .report-container .conversation-dashboard .clusters-section .helptext {
    font-size: 0.875rem;
    margin-bottom: 2rem; }
  .report-container .conversation-dashboard .scatter-section__title {
    max-width: 100%; }
    .report-container .conversation-dashboard .scatter-section__title h2 {
      margin: 0 0 1.75rem 0; }
  .report-container .conversation-dashboard .scatter-section .scatter-filter__categories {
    max-width: unset !important;
    width: 100% !important; }
  .report-container .conversation-dashboard .scatter-section .scatter-filter__button {
    font-size: 0.8rem !important; }
  .report-container .conversation-dashboard .words-cloud-section__title {
    margin-top: unset; }
  .conversation-dashboard .flex-align {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 0px !important; }
  .conversation-dashboard__button a {
    float: right; }
  .report-container .conversation-dashboard.title, .report-container .intro-paragraph h1.conversation-dashboard, .intro-paragraph .report-container h1.conversation-dashboard, .report-container .intro-paragraph h2.conversation-dashboard, .intro-paragraph .report-container h2.conversation-dashboard, .report-container .intro-paragraph h3.conversation-dashboard, .intro-paragraph .report-container h3.conversation-dashboard, .report-container .intro-paragraph h4.conversation-dashboard, .intro-paragraph .report-container h4.conversation-dashboard, .report-container .intro-paragraph h5.conversation-dashboard, .intro-paragraph .report-container h5.conversation-dashboard, .report-container .intro-paragraph h6.conversation-dashboard, .intro-paragraph .report-container h6.conversation-dashboard, .report-container .intro-paragraph .conversation-dashboard.h1, .intro-paragraph .report-container .conversation-dashboard.h1, .report-container .intro-paragraph .conversation-dashboard.h2, .intro-paragraph .report-container .conversation-dashboard.h2, .report-container .intro-paragraph .conversation-dashboard.h3, .intro-paragraph .report-container .conversation-dashboard.h3, .report-container .intro-paragraph .conversation-dashboard.h4, .intro-paragraph .report-container .conversation-dashboard.h4, .report-container .intro-paragraph .conversation-dashboard.h5, .intro-paragraph .report-container .conversation-dashboard.h5, .report-container .intro-paragraph .conversation-dashboard.h6, .intro-paragraph .report-container .conversation-dashboard.h6 {
    width: 90% !important;
    max-width: unset !important; } }

.export-button {
  color: #FFB703; }
  .export-button:hover {
    color: #FFB703 !important; }
  .export-button__title {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1em; }
    @media (max-width: 710px) {
      .export-button__title {
        display: none; } }
  .export-button__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative; }
  .export-button__card {
    position: absolute;
    right: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: end; }
    .export-button__card a {
      color: white;
      text-decoration: underline;
      font-weight: bold;
      text-transform: uppercase; }
    .export-button__card--triangle {
      width: 0;
      height: 0;
      border: 0.375rem solid transparent;
      border-top: 0;
      border-bottom: 0.75rem solid #1800AD;
      margin-right: 0.625rem; }
  .export-button__card-content {
    display: flex;
    flex-direction: column;
    text-align: center;
    width: fit-content;
    padding: 0.75rem;
    background-color: #1800AD;
    border-radius: 0.3125rem;
    line-height: 1.17rem;
    color: white; }
  .export-button i {
    font-size: 1.16em; }

.pagination {
  display: flex;
  gap: 4.313rem;
  float: right;
  align-items: center;
  margin-top: 2.289rem; }
  @media only screen and (max-width: 900px) {
    .pagination {
      flex-direction: column-reverse;
      float: none;
      gap: 0.719rem;
      background-color: #FFF8E1;
      padding: 1.094rem 0;
      margin-top: 0; } }
  .pagination__container {
    display: flex;
    align-items: center; }
    .pagination__container-page {
      color: #1800AD;
      float: left;
      padding: 0.375rem 0.75rem;
      text-decoration: none;
      border: 1px solid #1800AD;
      font-size: 0.875em;
      font-weight: 500; }
      @media only screen and (max-width: 900px) {
        .pagination__container-page {
          border: none;
          display: flex;
          align-items: center;
          justify-content: center;
          width: 23.8px;
          height: 23.8px; } }
      .pagination__container-page--current {
        background-color: #1800AD;
        color: white;
        border: 1px solid #1800AD; }
        @media only screen and (max-width: 900px) {
          .pagination__container-page--current {
            border-radius: 50%; } }
      @media only screen and (max-width: 900px) {
        .pagination__container-page--clear-elipse {
          padding-left: 0;
          padding-right: 0;
          width: unset; } }
    @media only screen and (max-width: 900px) {
      .pagination__container-index {
        display: flex;
        gap: 1.5rem; } }
    .pagination__container-arrow--first {
      border-top-left-radius: 5px;
      border-bottom-left-radius: 5px; }
      @media only screen and (max-width: 900px) {
        .pagination__container-arrow--first {
          padding-left: 0;
          padding-right: 0.844rem; } }
    .pagination__container-arrow--last {
      border-top-right-radius: 5px;
      border-bottom-right-radius: 5px; }
      @media only screen and (max-width: 900px) {
        .pagination__container-arrow--last {
          padding-right: 0;
          padding-left: 0.844rem; } }
  .pagination__info span {
    color: #1800AD;
    font-size: 0.75em; }

::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none; }

.scroll-top {
  display: none; }
  @media only screen and (max-width: 900px) {
    .scroll-top {
      display: flex;
      background-color: #1800AD;
      padding: 2.313rem 0 2.688rem;
      justify-content: center;
      align-items: center;
      gap: 0.813rem; } }
  .scroll-top i {
    color: white;
    margin: 0; }
  .scroll-top a {
    color: white;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600; }
  .scroll-top--full-width {
    grid-column: 1 / 4; }

#report-filters-form {
  margin: unset;
  position: relative; }

#datatables-container {
  overflow-y: scroll;
  max-height: calc(100vh - 290px); }

#report-table-container::-webkit-scrollbar {
  display: none; }

.report__comments--hide, .report__users--hide {
  display: none; }

.report__comments table thead, .report__users table thead {
  position: sticky;
  top: 0; }

.report__comments table thead tr, .report__users table thead tr {
  background-color: #1800AD;
  color: white; }

.report__comments table thead th, .report__users table thead th {
  padding: 1rem !important;
  text-transform: uppercase; }
  .report__comments table thead th i, .report__users table thead th i {
    font-size: 1.2rem; }

.report__comments table tbody tr:nth-child(odd) td:first-child, .report__users table tbody tr:nth-child(odd) td:first-child {
  background-color: #fff4d9; }

.report__comment div:nth-child(2),
.report__comment div:nth-child(3),
.report__comment div:nth-child(4), .report__user div:nth-child(2),
.report__user div:nth-child(3),
.report__user div:nth-child(4) {
  font-size: .9em; }

.report__comment div:nth-child(4), .report__user div:nth-child(4) {
  color: #1800AD;
  font-weight: 600; }

.report__comment, .report__user {
  padding: 1rem;
  box-sizing: content-box; }
  .report__comment div:first-child, .report__user div:first-child {
    color: #1800AD;
    margin-bottom: 1rem; }
  .report__comment div:nth-child(2), .report__user div:nth-child(2) {
    color: #FFB703;
    font-weight: 600; }

.report__comment div:nth-child(3) {
  color: #1800AD;
  font-weight: 600; }

.report__comment-detail {
  display: flex;
  align-items: flex-start;
  gap: 1.375rem;
  justify-content: space-between; }
  .report__comment-detail img {
    background-color: #FFB703;
    border-radius: 50%;
    padding: 0.425rem 0.3rem; }

.report__user div:nth-child(3) {
  color: #FFB703;
  font-weight: 600; }

.report__percentages {
  font-weight: bold;
  color: #1800AD; }

.report__filters {
  background-color: #E5E5E5;
  padding: 1rem 1.5rem;
  box-sizing: content-box; }
  .report__filters input, .report__filters select, .report__filters .ordering span, .report__filters .clusters-container span, .report__filters .clusters {
    font-size: 0.75em; }
  .report__filters-inputs {
    gap: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media (max-width: 1200px) {
      .report__filters-inputs {
        flex-wrap: wrap; } }
  .report__filters .search {
    max-width: 40rem !important;
    width: 100%; }
    .report__filters .search input {
      margin: unset;
      background-image: url("/static/img/icons/gray-search.svg");
      background-size: 1.4rem;
      background-position: .625rem;
      padding: 0 0 0 2.2rem;
      border-color: #E5E5E5 !important;
      border-radius: 10px !important;
      max-width: 40rem !important;
      width: 100%; }
    @media (max-width: 1200px) {
      .report__filters .search {
        max-width: unset !important; }
        .report__filters .search input {
          max-width: unset !important; } }
  .report__filters .ordering span,
  .report__filters .clusters-container span {
    cursor: pointer;
    white-space: nowrap; }
  .report__filters .ordering span, .report__filters .ordering i,
  .report__filters .clusters-container span,
  .report__filters .clusters-container i {
    text-transform: uppercase;
    color: #1800AD;
    font-weight: 600; }
  .report__filters .ordering {
    display: flex;
    align-items: baseline;
    gap: 1rem; }
    .report__filters .ordering select {
      cursor: pointer;
      border: transparent;
      border-radius: .5rem;
      margin: unset;
      min-width: 15em;
      background-color: white;
      padding-right: 1rem;
      border-right: 8px solid transparent; }
      @media (max-width: 500px) {
        .report__filters .ordering select {
          min-width: unset; } }
  .report__filters .clusters-container {
    display: flex; }
  .report__filters .clusters {
    gap: 1rem;
    display: flex;
    flex-wrap: wrap;
    margin-top: 1rem; }
    .report__filters .clusters .cluster {
      padding: .5rem;
      color: #777777;
      background-color: white;
      font-weight: 600;
      text-transform: uppercase;
      border-radius: .5rem;
      cursor: pointer;
      letter-spacing: 0; }
      .report__filters .clusters .cluster--active {
        background-color: #1800AD;
        color: white; }
    .report__filters .clusters select {
      display: none; }
  .report__filters .sorting {
    display: flex;
    align-items: center;
    font-size: 0.75em; }
    .report__filters .sorting #sort-up-icon {
      top: 0.35rem;
      right: -0.05rem; }
    .report__filters .sorting #sort-down-icon {
      margin-left: 0; }
    .report__filters .sorting .icon--blue {
      color: #1800AD !important; }

.comment-detail {
  display: grid;
  grid-template-rows: 4.313rem 5.625rem 5.75rem 5.75rem auto auto;
  color: #1800AD; }
  @media only screen and (max-width: 900px) {
    .comment-detail {
      grid-template-rows: 4.313rem 6rem 10.5rem 5rem auto auto; } }
  .comment-detail__modal-header {
    display: flex;
    gap: 1.013rem;
    margin-bottom: 0;
    align-self: baseline; }
    .comment-detail__modal-header p {
      font-size: 1.5em;
      color: #777777;
      letter-spacing: 0;
      font-weight: 400;
      margin: 0; }
  .comment-detail_container-info {
    display: flex;
    gap: 3rem; }
    @media only screen and (max-width: 900px) {
      .comment-detail_container-info {
        flex-direction: column;
        gap: 1.5rem; } }
  .comment-detail__info {
    font-weight: 600;
    font-size: 0.75em;
    letter-spacing: 0;
    text-transform: uppercase; }
    .comment-detail__info-content {
      font-size: 0.875rem !important;
      letter-spacing: 0;
      text-transform: none;
      font-weight: 400 !important; }
    .comment-detail__info p {
      font-size: 1.67em;
      font-weight: 600;
      letter-spacing: 0;
      margin: 0.75rem 0 0; }
    .comment-detail__info-author {
      text-transform: lowercase;
      color: #1800AD;
      text-decoration: underline; }
  .comment-detail__statistics {
    display: grid;
    grid-template-columns: auto auto auto;
    grid-template-rows: 5rem; }
    @media only screen and (max-width: 900px) {
      .comment-detail__statistics {
        grid-template-columns: auto;
        grid-template-rows: auto;
        row-gap: 1.5rem; } }
  .comment-detail__buttons {
    display: flex;
    justify-content: space-between;
    margin: 3rem 0 0; }
    @media only screen and (max-width: 900px) {
      .comment-detail__buttons {
        margin: 2.375rem 0; } }
    @media only screen and (min-width: 900px) and (max-width: 1350px) {
      .comment-detail__buttons {
        margin: 1.25rem 0 0; } }
    .comment-detail__buttons-link {
      font-weight: 600;
      font-size: 0.75em;
      letter-spacing: 0;
      text-transform: uppercase; }
      .comment-detail__buttons-link--left {
        margin-left: auto; }

.environment {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-bottom: 1.7em; }
  .environment__title--align {
    text-align: start; }

.environment-card {
  border: 2px solid #FFB703;
  border-radius: 5px;
  width: 261px;
  height: 214px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  align-items: center; }
  .environment-card__title {
    text-decoration-line: underline;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.4675rem;
    margin-bottom: 17px; }
  .environment-card__owner {
    width: 90%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    font-weight: bold; }
  .environment-card__owner, .environment-card__conversation-count {
    color: #1800AD;
    margin-bottom: unset; }

.environment-card--large {
  border: 2px solid #FFB703;
  border-radius: 5px;
  width: 416px;
  height: 119px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 26px; }

.environment-statistics {
  margin-bottom: 4.75em; }
  .environment-statistics__cards {
    display: flex;
    gap: 1.7em;
    flex-wrap: wrap;
    margin-top: 36px; }

.recent-boards__filter {
  display: flex;
  margin-bottom: 36px;
  margin-top: 24px; }

.recent-boards__input {
  z-index: unset !important; }

.recent-boards__text {
  display: flex;
  flex-direction: column;
  text-align: start; }
  .recent-boards__text span {
    color: #1800AD; }
  .recent-boards__text span:first-child {
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 0.9025rem; }
  .recent-boards__text span:last-child {
    font-size: 0.75rem;
    line-height: 0.88rem; }

.advanced-search__input--search {
  flex-grow: 1; }
  .advanced-search__input--search input {
    background: white;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 5px !important;
    border-color: white !important;
    height: 36px !important;
    max-width: 100%; }

.advanced-search__select {
  margin-right: 23px; }

.advanced-search__title {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 22px; }
  .advanced-search__title h1, .advanced-search__title .filter {
    margin-bottom: 0; }

.search-table {
  margin-bottom: 0rem; }
  .search-table__container {
    min-height: 500px; }
  .search-table__header {
    height: 44px; }
    .search-table__header th {
      background: #FFB703 !important;
      padding: 0 1.5rem; }
    .search-table__header th:first-child {
      border-top-left-radius: 5px;
      border-bottom-left-radius: 5px; }
    .search-table__header th:last-child {
      border-bottom-right-radius: 5px;
      border-top-right-radius: 5px; }
  .search-table__row {
    background: white !important; }
    .search-table__row td {
      border-bottom: 1px solid #E5E5E5;
      font-size: 1.25rem;
      height: 60px;
      padding: 0 1.5rem; }
    .search-table__row a {
      text-decoration: underline;
      color: #000000; }
    .search-table__row a:hover {
      text-decoration: inherit; }
  .search-table__title {
    font-size: 1.125rem;
    color: white;
    font-weight: 700;
    line-height: 1.3125rem; }
    .search-table__title--width-sm {
      width: 100px; }
    .search-table__title--width-md {
      width: 200px; }
  .search-table__text--align {
    text-align: left; }
  .search-table__text--ellipse {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    line-clamp: 1;
    -webkit-box-orient: vertical; }
  .search-table-favorite-count {
    font-weight: unset; }

.conversation-option--hide {
  display: none; }

.button--favorite,
.button--remove-favorite {
  float: right; }
  .button--favorite i,
  .button--remove-favorite i {
    margin-left: 0; }

.button--remove-favorite i {
  color: #30bfd3; }

.button--remove-favorite .button {
  background-color: white;
  color: #30bfd3; }

.button--remove-favorite a:hover > i {
  color: white; }

.favorite-boards__container {
  display: grid;
  grid-gap: 1.25rem;
  grid-template-rows: repeat(2, 1fr);
  overflow-x: scroll;
  grid-auto-flow: column;
  padding-bottom: 2rem; }

.favorite-boards__count {
  font-family: 'Work Sans'; }

@media (min-width: 1280px) {
  .environment {
    min-width: 840px; } }

@media (max-width: 530px) {
  .environment-card--large {
    width: 260px; }
  .favorite-boards__container {
    grid-template-rows: repeat(3, 1fr); } }

#public-tag-buttons, #my-tag-buttons {
  display: none; }

#public-conversations, #my-conversations {
  grid-column: 1/4; }

.move-icon {
  transform: rotate(-90deg); }

.public-tag-header, .my-tag-header, .comments-tag-header {
  display: flex !important;
  place-items: baseline;
  background-color: #D9D9D9;
  padding: 1rem;
  flex-flow: wrap;
  row-gap: 0.75rem;
  column-gap: 1.25rem; }
  .public-tag-header button, .my-tag-header button, .comments-tag-header button {
    margin-bottom: unset !important; }
  .public-tag-header #public-tag-choice, .my-tag-header #public-tag-choice, .comments-tag-header #public-tag-choice {
    width: auto;
    border-radius: 5px;
    height: 2.25rem;
    min-width: 13rem;
    margin: 0 .438rem 0 0; }
  .public-tag-header #my-tag-choice, .public-tag-header #my-all-tags, .public-tag-header .my-tag-header--add, .my-tag-header #my-tag-choice, .my-tag-header #my-all-tags, .my-tag-header .my-tag-header--add, .comments-tag-header #my-tag-choice, .comments-tag-header #my-all-tags, .comments-tag-header .my-tag-header--add {
    display: none; }
  .public-tag-header .public-tag-header--add--not-allowed, .my-tag-header .public-tag-header--add--not-allowed, .comments-tag-header .public-tag-header--add--not-allowed {
    cursor: not-allowed; }
  .public-tag-header--add, .my-tag-header--add, .comments-tag-header--add {
    color: white;
    background: #FFB703;
    border: 3px solid #FFB703;
    box-sizing: border-box;
    border-radius: 5px;
    width: 2.25rem;
    height: 2.25rem;
    display: flex;
    margin: 0 1.5rem 0 0; }
    .public-tag-header--add i, .my-tag-header--add i, .comments-tag-header--add i {
      margin: auto 0.6em; }
  .public-tag-header__tags, .my-tag-header__tags, .comments-tag-header__tags {
    display: flex;
    gap: .75rem;
    flex-flow: wrap; }
    .public-tag-header__tags--selected, .my-tag-header__tags--selected, .comments-tag-header__tags--selected {
      border: 1px solid #1800AD;
      background-color: #1800AD;
      color: white; }
    .public-tag-header__tags--unselected, .my-tag-header__tags--unselected, .comments-tag-header__tags--unselected {
      background-color: white;
      border: 1px solid white;
      color: #1800AD; }
    .public-tag-header__tags--selected, .public-tag-header__tags--unselected, .my-tag-header__tags--selected, .my-tag-header__tags--unselected, .comments-tag-header__tags--selected, .comments-tag-header__tags--unselected {
      border-radius: 5px;
      font-size: 0.75rem;
      font-weight: 700;
      padding: 0 .75rem;
      height: 1.5rem;
      line-height: 0; }
  .public-tag-header__all--unselected, .my-tag-header__all--unselected, .comments-tag-header__all--unselected {
    border: 1px solid white;
    background-color: white;
    color: #1800AD; }
  .public-tag-header__all--selected, .my-tag-header__all--selected, .comments-tag-header__all--selected {
    border: 1px solid #1800AD;
    background-color: #1800AD;
    color: white; }
  .public-tag-header__all--unselected, .public-tag-header__all--selected, .my-tag-header__all--unselected, .my-tag-header__all--selected, .comments-tag-header__all--unselected, .comments-tag-header__all--selected {
    border-radius: 5px;
    font-weight: 700;
    padding: 0 .75rem;
    height: 1.5rem;
    line-height: 0; }
  .public-tag-header__tooltip, .my-tag-header__tooltip, .comments-tag-header__tooltip {
    color: white;
    font-size: 1rem;
    display: inline-flex;
    place-items: center;
    padding: .75rem;
    padding-left: 0;
    border-radius: 5px;
    background: #1800AD;
    max-width: 16.563rem;
    height: 62px;
    position: relative;
    top: 5px;
    margin-right: 0.313rem; }
    .public-tag-header__tooltip__arrow, .my-tag-header__tooltip__arrow, .comments-tag-header__tooltip__arrow {
      color: #1800AD;
      border-top: 10px solid transparent;
      border-bottom: 10px solid transparent;
      border-right: 10px solid #1800AD;
      border-left: 0;
      position: relative;
      right: .563rem; }

.comments-tag-header {
  background-color: unset !important;
  margin-top: 1.75rem;
  margin-bottom: 1.75rem;
  padding: 0; }
  .comments-tag-header--no-margin {
    margin-left: 0; }
  .comments-tag-header #comments-status-buttons {
    display: contents; }

.home-header--add {
  color: #FFB703 !important;
  font-size: 1rem; }

.my_conversations, .contributions-comments, .contribution-votes {
  margin-bottom: 2.5rem; }
  .my_conversations__message, .contributions-comments__message, .contribution-votes__message {
    margin: 1.75rem;
    color: #777777;
    font-size: 1rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-left: 0; }
    .my_conversations__message--no-margin-top, .contributions-comments__message--no-margin-top, .contribution-votes__message--no-margin-top {
      margin-top: 0; }

#current-votes hr {
  margin-top: 2.281rem; }

#comments-current-cards {
  display: grid;
  grid-template-columns: repeat(2, 50%);
  grid-column-gap: 1.625rem;
  grid-row-gap: 1.5rem;
  color: #1800AD;
  font-weight: 500; }

.contribution-votes__card {
  margin: 1.75rem 0 0 0;
  display: grid;
  grid-template-columns: auto auto;
  grid-column-gap: 1.938rem;
  grid-row-gap: 2.25rem; }

.conversation-summary {
  display: flex;
  margin-bottom: .938rem; }
  .conversation-summary__title {
    color: #1800AD;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal; }
  .conversation-summary .span-icon {
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
    margin-left: -5px;
    color: #FFB703; }

.comment-summary {
  padding: 1.125rem 1.188rem;
  border-radius: 5px;
  background: #E5E5E5;
  max-width: 43.75rem; }
  .comment-summary__status {
    color: #1800AD;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal; }
  .comment-summary__info {
    color: #777777;
    font-family: Work Sans;
    font-size: .75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.25rem;
    text-transform: uppercase;
    display: inline-block; }
  .comment-summary__title {
    margin: 1.25rem 0;
    display: block;
    font-weight: 500;
    line-height: normal; }

.home-tabs {
  display: flex;
  border-bottom: 1px solid #bababa;
  overflow: unset;
  margin-top: 1.5rem; }
  .home-tabs__add {
    display: flex;
    align-items: center;
    white-space: nowrap;
    margin-right: 2.625rem;
    padding-bottom: 1.6rem; }
    .home-tabs__add i {
      color: #F00000;
      margin: 0 0.688rem 0 0; }
    .home-tabs__add a {
      color: #F00000;
      font-size: 1rem;
      font-style: normal;
      font-weight: 700;
      line-height: normal;
      text-transform: uppercase; }
  .home-tabs .tabs {
    border-bottom: none; }

.input-container {
  background-color: #E5E5E5;
  justify-content: space-between;
  display: flex;
  align-items: baseline;
  gap: 1.313rem;
  padding: 1rem; }
  .input-container__filter-theme, .input-container__filter-theme:hover {
    color: #F00000;
    font-family: "Work Sans";
    font-size: 0.75rem;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    text-transform: uppercase;
    display: flex; }
  .input-container__search {
    border-radius: 5px !important;
    border: 1px solid white !important;
    height: 2.25rem !important;
    box-sizing: border-box;
    background-position: 0.5rem 0.563rem !important;
    background-size: 1.25rem !important;
    background-repeat: no-repeat !important;
    padding: 0.6875rem 0px 0.6875rem 2.1875rem !important;
    background: url("/static/img/icons/blue-search.svg");
    width: 51.5% !important;
    color: #1800AD;
    margin: 0px !important;
    font-size: 0.75rem !important; }
    .input-container__search::placeholder {
      color: #777777; }
  .input-container__warn-message {
    color: #C70000;
    font-size: 0.75rem;
    font-weight: 400;
    grid-template-columns: none;
    margin-top: 0.2rem; }
  @media (max-width: 875px) {
    .input-container {
      flex-wrap: wrap;
      gap: 0; }
    .input-container__search {
      min-width: 100% !important;
      margin: 0 0 12px 0 !important; } }
.search-filter-container {
  margin-bottom: 0.5rem; }
  @media (max-width: 875px) {
    .search-filter-container {
      margin-bottom: 0rem;
      grid-column: 1/4; } }
@media only screen and (max-width: 320px) {
  .public-tag-header #public-tag-choice, .my-tag-header #public-tag-choice, .comments-tag-header #public-tag-choice {
    width: 80%;
    margin: 0 .438rem 0 0; }
  .public-tag-header--add, .my-tag-header--add, .comments-tag-header--add {
    margin: 0px 0.7rem 0 0; }
  .comments-tag-header #all-comments-button {
    margin-left: 0; }
  .comment-summary {
    font-size: .75rem; }
  #comments-current-cards {
    grid-template-columns: none; }
  .contribution-votes__card {
    grid-template-columns: none; }
  .home-tabs {
    overflow: scroll hidden; }
    .home-tabs__add {
      padding-bottom: 1.5rem; } }

@media (max-width: 875px) and (min-width: 321px) {
  .public-tag-header__tooltip__arrow, .my-tag-header__tooltip__arrow, .comments-tag-header__tooltip__arrow {
    bottom: 2.1rem;
    transform: rotate(90deg);
    left: 1rem; }
  .home-tabs {
    overflow: scroll hidden;
    scrollbar-width: none; }
    .home-tabs__add {
      padding-bottom: 1.5rem; }
    .home-tabs::-webkit-scrollbar {
      display: none;
      /* Safari and Chrome */ }
  #comments-current-cards {
    grid-template-columns: none; }
  .comment-summary {
    font-size: .75rem; }
  .contribution-votes__card {
    grid-template-columns: none; } }

.visible {
  visibility: visible !important; }

.inputs-min-size input, .inputs-min-size textarea, .inputs-min-size select {
  min-width: unset; }

.profile-photo {
  display: relative; }
  .profile-photo__edit {
    position: absolute;
    top: 45%;
    z-index: 3;
    text-align: center;
    width: 100%;
    cursor: pointer; }
    .profile-photo__edit span {
      color: #1800AD;
      font-weight: bold; }
  .profile-photo__form {
    display: none; }
  .profile-photo--unfocused {
    position: absolute;
    z-index: 1;
    background-color: rgba(196, 196, 196, 0.8);
    width: 12rem;
    height: 12rem;
    border-radius: 50%;
    margin-top: 24px; }

#id_profile_photo {
  visibility: hidden; }

.profile-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: start;
  column-gap: 2rem;
  padding-bottom: 2.5rem; }
  .profile-header__photo {
    position: relative; }
    .profile-header__photo--rounded {
      border-radius: 50%; }
    .profile-header__photo img {
      object-fit: cover; }
  .profile-header h1 {
    font-size: 2.25rem;
    color: #1800AD;
    font-family: "Work Sans";
    font-weight: 400; }
  .profile-header h4 {
    font-size: 1rem;
    color: #777777;
    font-family: "Work Sans";
    font-weight: 700;
    margin: 0.62rem 0px; }
  .profile-header--edit {
    position: relative; }
    .profile-header--edit img {
      opacity: 0.3; }
    .profile-header--edit__options {
      position: absolute;
      left: 34%;
      top: 31%;
      z-index: 1;
      opacity: 1; }
      .profile-header--edit__options input {
        display: none; }
      .profile-header--edit__options label {
        color: #1800AD; }
      .profile-header--edit__options form {
        display: none; }

.form-element {
  width: 100%;
  padding: 0px 0px; }

.form-profile--row-separation {
  grid-row-gap: 2.56rem;
  padding-top: 1.5rem; }

.form-profile--subtitle {
  font-weight: 500;
  font-size: 24px; }

.form-profile {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(6, 1fr);
  grid-column-gap: 1.4rem;
  grid-row-gap: 1rem; }
  .form-profile span {
    font-family: 'Work Sans';
    font-size: 1rem;
    font-weight: 700;
    color: #777777; }
  .form-profile__name {
    grid-area: 1 / 1 / 2 / 3; }
  .form-profile__email {
    grid-area: 1 / 3 / 2 / 5; }
  .form-profile__city {
    grid-area: 2 / 1 / 3 / 2; }
  .form-profile__state {
    grid-area: 2 / 2 / 3 / 3; }
  .form-profile__country {
    grid-area: 2 / 3 / 3 / 4; }
  .form-profile__birth-date {
    grid-area: 3 / 1 / 4 / 2; }
  .form-profile__occupation {
    grid-area: 3 / 2 / 4 / 4; }
  .form-profile__education {
    grid-area: 3 / 4 / 4 / 5; }
  .form-profile__education--detail {
    grid-area: 3 / 3 / 4 / 5; }
  .form-profile__ethnicity {
    grid-area: 4 / 1 / 5 / 2; }
  .form-profile__gender_other {
    grid-area: 4 / 2 / 5 / 4; }
  .form-profile__political_activity {
    grid-area: 5 / 1 / 7 / 3; }
  .form-profile__political_activity--detail {
    grid-area: 5 / 1 / 7 / 2; }
  .form-profile__biography {
    grid-area: 5 / 3 / 7 / 5; }
  .form-profile__biography--detail {
    grid-area: 5 / 2 / 7 / 5; }
  .form-profile__current-password {
    grid-area: 1 / 1 / 1 / 1; }
    .form-profile__current-password input[type='password'] {
      margin: -1.125rem 0 0rem 0; }
  .form-profile__new-password {
    grid-area: 2 / 1 / 2 / 2; }
    .form-profile__new-password input[type='password'] {
      margin: -1.125rem 0 0rem 0; }
  .form-profile__confirm-password {
    grid-area: 2; }
  .form-profile__save {
    grid-area: 2;
    align-items: center;
    display: grid; }
    .form-profile__save input {
      margin: 0;
      width: fit-content; }
  .form-profile__edit {
    grid-area: 6 / 4 / 6 / 4; }
  .form-profile select, .form-profile textarea {
    border-radius: 0.3125rem !important; }
  .form-profile--buttons {
    display: flex;
    flex-direction: row;
    align-items: end;
    justify-content: end;
    column-gap: 2rem; }
    .form-profile--buttons input, .form-profile--buttons a {
      border: none !important;
      border-radius: 1.5625rem !important; }
    .form-profile--buttons a {
      background-color: #1800AD !important; }

@media (max-width: 900px) {
  .profile-header {
    padding: 0px 1.88rem; }
  .form-element {
    padding: 0 0.6rem; }
  .profile-header {
    padding-bottom: 3.6rem; }
  .form-profile--row-separation {
    padding-top: 2.5rem; }
  .form-profile {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap; }
    .form-profile--buttons {
      flex-direction: column;
      align-items: center; }
    .form-profile__save {
      justify-content: center; }
  .profile-header {
    flex-direction: column; }
    .profile-header__text {
      display: flex;
      flex-direction: column;
      align-items: center; }
    .profile-header h1 {
      text-align: center; } }

/*
 COLLAPSIBLE LIST
 ======================================================================== */
:root {
  --dt-row-hover: 48, 191, 211;
  --dt-column-ordering: 48, 191, 211; }

div.dt-container {
  margin-top: -.3rem; }

table.dataTable {
  width: 100% !important; }

#hr-divider {
  border: 1px solid #bababa;
  margin: 1.4rem 0 1.6rem; }

#cluster-filter {
  display: grid;
  grid-template-columns: 2.313rem auto;
  grid-gap: 1rem;
  margin-bottom: 0; }
  #cluster-filter > * {
    overflow: hidden; }

.form-elements {
  display: flex;
  gap: 2.312rem;
  text-align: left; }
  .form-elements > * {
    width: 50%; }

.form-cluster-description form {
  display: grid;
  grid-gap: 1rem;
  grid-template-rows: 1.187rem auto 1.187rem 1fr;
  margin: 0; }

.form-cluster-description label {
  text-indent: unset;
  font-weight: bold;
  font-size: 1rem;
  line-height: 1.188rem;
  margin-bottom: 0; }

.form-cluster-description ul.errorlist {
  position: relative;
  bottom: 0.813rem;
  color: #FF0000;
  font-size: 0.625rem;
  font-weight: 400;
  font-style: italic;
  list-style: none;
  margin: 0;
  text-align: right; }

.form-cluster-description input, .form-cluster-description textarea {
  border: 1px solid #72CAD7;
  box-sizing: border-box;
  border-radius: 0.313rem;
  margin: 0 !important;
  max-width: unset; }

.form-cluster-description textarea {
  height: 100%; }

.form-cluster-description #cluster-name::placeholder, .form-cluster-description #cluster-description::placeholder {
  color: #777777;
  font-size: 0.875rem; }

.form-cluster-personas {
  position: relative;
  display: grid;
  grid-row-gap: 1rem;
  grid-template-rows: 1.187rem 11.5rem auto auto auto; }
  .form-cluster-personas #stereotypes_label {
    font-weight: bold;
    font-size: 1rem;
    line-height: 1.188rem;
    text-indent: unset; }
    .form-cluster-personas #stereotypes_label img {
      height: 13px;
      align-self: center; }
  .form-cluster-personas .disable-tooltip {
    display: none !important; }
  .form-cluster-personas .tooltip-persona {
    width: fit-content;
    height: 1.375rem;
    background: #FFCEDB;
    padding: 0.25rem 0.375rem;
    display: inline-block; }
    .form-cluster-personas .tooltip-persona p {
      font-weight: 600;
      font-size: 0.625rem;
      line-height: 0.75rem;
      color: #000000;
      text-transform: initial; }
  .form-cluster-personas .new-persona-shortcut {
    display: flex;
    gap: 1rem; }
    .form-cluster-personas .new-persona-shortcut #new_persona_check {
      z-index: 0;
      position: absolute;
      left: 0.375rem; }
    .form-cluster-personas .new-persona-shortcut input[type='checkbox']::before {
      height: 0.9em;
      bottom: 0; }
  .form-cluster-personas #new-persona-text {
    display: inline-grid;
    position: relative;
    left: 2.25rem;
    bottom: 0.313rem; }
    .form-cluster-personas #new-persona-text .label-new-persona {
      margin-bottom: 0;
      font-weight: bold;
      font-size: 0.875rem;
      line-height: 1rem;
      color: #000000;
      text-indent: unset;
      text-transform: none; }
    .form-cluster-personas #new-persona-text #text-new-persona {
      font-size: 0.875rem;
      text-align: left; }
  .form-cluster-personas .btn-container {
    display: grid;
    justify-content: flex-end; }

.hint {
  font-style: italic;
  font-size: 0.875rem;
  line-height: 1rem;
  color: #777777;
  text-align: left; }

.title-cluster {
  font-size: 1.5rem;
  line-height: 1.813rem;
  margin: 1.8rem 0 .8rem;
  text-align: left; }

.personas-list select#id_stereotypes {
  padding: .3rem .5rem !important;
  border: 1px solid #72CAD7;
  box-sizing: border-box;
  height: 100%;
  max-width: unset;
  border-radius: 0.313rem;
  scrollbar-width: auto;
  scrollbar-color: #72CAD7 transparent; }
  .personas-list select#id_stereotypes option {
    margin: 0.438rem 0;
    padding: .9rem 0.25rem;
    font-weight: bold;
    color: #777777; }

.personas-list select {
  margin: 0; }

.personas-list select::-webkit-scrollbar {
  width: 0.875rem; }

.personas-list select::-webkit-scrollbar-track {
  background-color: white; }

.personas-list select::-webkit-scrollbar-thumb {
  background-color: #72CAD7;
  border-radius: 0.625rem;
  border: 5px solid white; }

#cluster-select {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  max-height: 6.62rem;
  overflow-y: auto;
  padding-bottom: 0.188rem;
  padding-right: .5rem;
  text-align: left;
  scrollbar-width: auto;
  scrollbar-color: #72CAD7 transparent; }

#cluster-select::-moz-focus-inner {
  border: 0; }

#cluster-select::-webkit-scrollbar {
  width: 0.875rem; }

#cluster-select::-webkit-scrollbar-track {
  background-color: white; }

#cluster-select::-webkit-scrollbar-thumb {
  background-color: #72CAD7;
  border-radius: 0.625rem;
  border: 5px solid white; }

#new-button {
  display: flex;
  place-items: center;
  justify-content: center;
  color: white;
  background: #1800AD;
  border: 3px solid #1800AD;
  box-sizing: border-box; }

.options-groups {
  width: fit-content;
  border: 3px solid #bababa;
  color: #bababa;
  background-color: white;
  text-transform: lowercase;
  padding: 0 0.9rem;
  display: flex;
  place-items: center; }

.select-button {
  height: 2.313rem;
  background-color: #72CAD7;
  color: white;
  border: 3px solid #72CAD7; }

#new-button {
  width: 100%;
  padding: 0; }

#new-button, .options-groups {
  font-size: 1.25rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 0;
  cursor: pointer;
  border-radius: 0.313rem; }

.no-cluster {
  background-color: #bababa;
  color: white;
  cursor: default; }

.close-modal-btn {
  display: none; }

.edit-buttons {
  display: flex;
  gap: 1.875rem;
  justify-content: center; }
  .edit-buttons input {
    line-height: 0; }
  .edit-buttons #save-edit {
    display: flex;
    place-items: center;
    justify-content: center;
    gap: .5rem;
    border-radius: 1.5rem;
    font-size: 0.875rem;
    padding: 1.37rem 1.54rem;
    width: min-content;
    background-color: #1800AD;
    border: 1px solid #1800AD;
    margin-top: 1rem; }
    .edit-buttons #save-edit i {
      font-size: 0.875rem;
      margin: 0; }
  .edit-buttons .delete-group {
    display: flex;
    place-items: center;
    justify-content: center;
    background: #C70000;
    border: 1px solid #C70000;
    border-radius: 1.563rem;
    font-size: 0.875rem;
    padding: 1.37rem .9rem;
    line-height: 1rem;
    margin: 0;
    margin-top: 1rem; }
    .edit-buttons .delete-group i {
      margin: 0.313rem; }
  .edit-buttons .divider-mobile {
    display: none; }

.manage-personas {
  display: flex;
  place-items: center;
  justify-content: center;
  font-size: 0.875rem;
  padding: 1.37rem 1.063rem;
  width: 13.875rem;
  background: #1800AD;
  border: 1px solid #1800AD;
  border-radius: 1.563rem;
  margin: 0;
  margin-top: 1rem; }
  .manage-personas i {
    transform: rotate(45deg);
    margin: 0.5em; }

.manage-personas:hover {
  background-color: #1800AD !important; }

.manage-personas-container {
  position: relative;
  bottom: 4.625rem;
  width: fit-content; }

.create-group-btn {
  display: flex;
  place-items: center;
  justify-content: center;
  gap: .5rem;
  border-radius: 1.5rem;
  font-size: 0.875rem;
  padding: 1.37rem 1.54rem;
  width: min-content;
  background-color: #1800AD;
  border: 1px solid #1800AD; }
  .create-group-btn i {
    font-size: 0.875rem;
    margin: 0; }

.disable-div {
  color: #777777 !important; }

.save-edits-btn {
  background-color: #777777 !important;
  border: 1px solid #777777 !important; }

.form-modal-delete-show {
  display: block; }

.cluster-modal__participants, .cluster-modal__header, .cluster-modal__comments {
  color: #1800AD;
  margin-bottom: 1rem; }

.cluster-modal i {
  margin-left: unset; }

.cluster-modal__header {
  position: relative; }
  .cluster-modal__header i {
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
    font-size: 1.5em;
    color: #1800AD; }
    @media (max-width: 414px) {
      .cluster-modal__header i {
        font-size: 20px; } }
  .cluster-modal__header span {
    font-size: 1.1em !important; }
  @media (max-width: 414px) {
    .cluster-modal__header h1 {
      max-width: 80%; } }
.cluster-modal__comments .comment-stats {
  font-size: 14px;
  color: #6B7280 !important; }

.cluster-modal__comments .comment-content {
  padding: 0 1em 0 0; }

@media (max-width: 875px) {
  .edit-content {
    padding: 0 1.5rem; }
  #new-button, .options-groups {
    font-size: 1rem; }
  .form-elements {
    display: block; }
    .form-elements > * {
      width: auto; }
  .form-cluster-description #cluster-new {
    margin-bottom: 0; }
  .form-cluster-personas {
    margin-top: 1rem; }
    .form-cluster-personas .new-persona-shortcut {
      margin-top: 0; }
      .form-cluster-personas .new-persona-shortcut #new_persona_check {
        left: 0; }
    .form-cluster-personas #new-persona-text {
      left: 1.875rem;
      width: 90%; }
    .form-cluster-personas .tooltip-persona {
      position: absolute;
      height: 30px; }
    .form-cluster-personas .btn-container {
      justify-content: center; }
  .personas-list select[multiple] {
    padding: .3rem .25rem .3rem 0.6rem !important; }
  .new-group-modal {
    left: 15%;
    top: 15%;
    width: 70%; }
  .edit-buttons {
    display: flex;
    flex-wrap: wrap-reverse;
    gap: 0; }
    .edit-buttons #save-edit {
      margin-bottom: 2.625rem; }
    .edit-buttons .delete-group {
      margin-top: 1.938rem;
      margin-bottom: 0.938rem; }
  .divider-mobile {
    border: 1px solid #BABABA;
    display: block;
    width: 100%; }
  .manage-personas-container {
    bottom: .625rem;
    display: flex;
    justify-content: center;
    margin-bottom: 1rem; }
  .confirmation-modal {
    width: 80%;
    padding: 1.5rem;
    left: 66%;
    top: 80%; }
    .confirmation-modal .modal-confirmation-container button.delete, .confirmation-modal .modal-confirmation-container button.return {
      font-size: .75rem; } }

@media (max-width: 996px) and (min-width: 524px) {
  .edit-buttons {
    display: flex;
    place-self: center;
    gap: 0; }
    .edit-buttons .divider-mobile {
      border: 1px solid #BABABA;
      display: block;
      width: 100%; }
  .form-cluster-description form {
    grid-template-rows: 1.187rem auto 1.187rem 18.563rem; }
  .manage-personas-container {
    bottom: 0; } }

@media (max-width: 996px) and (min-width: 876px) {
  .edit-buttons {
    display: flex;
    flex-wrap: wrap-reverse;
    gap: 0; }
    .edit-buttons .divider-mobile {
      border: 1px solid #BABABA;
      display: block;
      width: 100%; }
  .manage-personas-container {
    margin-right: 0.625rem;
    float: right; } }

@media (min-width: 1400px) {
  .new-group-modal {
    left: 22%;
    top: 25%; }
  .confirmation-modal {
    top: 50%; } }

#sort-down-icon, #sort-up-icon {
  width: 1rem;
  height: 0.688rem;
  position: relative;
  color: #C4C4C4; }

#sort-down-icon {
  bottom: 0.25rem;
  margin-right: 0; }

#sort-up-icon {
  margin: 0; }

@media only screen and (max-width: 900px) {
  .select-groups-filter {
    grid-column: 1 / 4; } }

#pagination-create, #pagination-edit {
  display: none; }
  @media only screen and (max-width: 900px) {
    #pagination-create, #pagination-edit {
      display: block;
      height: 1.313rem; }
      #pagination-create ul, #pagination-edit ul {
        list-style: none;
        display: flex;
        gap: 1rem;
        margin-bottom: 0;
        justify-content: center;
        font-size: 0.88em; }
        #pagination-create ul li, #pagination-edit ul li {
          margin-bottom: 0; }
        #pagination-create ul .current, #pagination-edit ul .current {
          color: white;
          border-radius: 1.25rem;
          padding: 0.25rem 0.5625rem;
          background-color: #1800AD; }
        #pagination-create ul .prev, #pagination-create ul .next, #pagination-edit ul .prev, #pagination-edit ul .next {
          background-color: transparent;
          color: #1800AD !important;
          padding: 0;
          font-weight: 700 !important; }
        #pagination-create ul .active, #pagination-create ul .page-link, #pagination-create ul .current, #pagination-edit ul .active, #pagination-edit ul .page-link, #pagination-edit ul .current {
          color: white;
          font-weight: 500; }
        #pagination-create ul .page-link, #pagination-create ul .page-link:hover, #pagination-edit ul .page-link, #pagination-edit ul .page-link:hover {
          color: #1800AD; } }
.footer-stereotypes {
  display: none; }
  @media only screen and (max-width: 900px) {
    .footer-stereotypes {
      display: flex;
      flex-direction: column;
      gap: 0.813rem;
      margin: 1.094rem 0 0; } }
  @media only screen and (max-width: 900px) {
    .footer-stereotypes #pagination-text-create, .footer-stereotypes #pagination-text-edit {
      color: #1800AD;
      font-size: 0.875em;
      font-weight: 500;
      border-radius: 0;
      margin: 0;
      text-align: center; } }
.divider-section {
  border-bottom: 1px solid #bababa;
  padding-bottom: 0;
  display: none; }
  @media (max-width: 320px) {
    .divider-section {
      display: block; } }
  @media (max-width: 875px) and (min-width: 321px) {
    .divider-section {
      display: block; } }
.groups-filter {
  margin-bottom: 0;
  background-color: #D9D9D9;
  padding: 1rem 1rem 0.375rem; }
  @media only screen and (max-width: 900px) {
    .groups-filter {
      background-color: #F0F0F0;
      display: grid;
      grid-template-columns: 3% auto 3%;
      padding: 1rem 0 0.375rem; } }
  .groups-filter__container {
    grid-column: 2; }
  .groups-filter__group, .groups-filter__group:hover {
    background: white;
    border: none;
    box-sizing: border-box;
    border-radius: 0.313rem;
    font-weight: 600;
    font-size: 0.75em;
    line-height: 0;
    color: #1800AD;
    padding: 0 0.75rem;
    margin: 0 0.75rem 0.625rem 0;
    box-shadow: none;
    height: 1.5rem;
    letter-spacing: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 14.375rem;
    min-width: 0; }
  .groups-filter--selected {
    background: #1800AD !important;
    border: none !important;
    color: white !important; }

.manage-stereotypes h2 {
  margin-top: 1.5rem; }

@media only screen and (max-width: 900px) {
  .manage-stereotypes h1 {
    font-size: 1.25em; } }

.manage-stereotypes .helptext {
  margin: 1rem 0 2.125rem; }

.manage-stereotypes__helptext-alt {
  margin: 0 0 1.5rem 0 !important; }

.manage-stereotypes__container {
  background-color: #F1F1F1;
  padding: 0 1.5rem; }
  @media only screen and (max-width: 900px) {
    .manage-stereotypes__container {
      grid-column: 1 / 4;
      background-color: #F0F0F0;
      padding: 0; } }
  .manage-stereotypes__container-header label {
    margin-bottom: 1rem;
    font-size: 1em;
    text-transform: none;
    color: #1800AD;
    font-weight: 400; }
  @media only screen and (max-width: 900px) {
    .manage-stereotypes__container-vote-section {
      display: grid;
      grid-template-columns: 3% auto 3%; }
      .manage-stereotypes__container-vote-section > * {
        grid-column: 2; } }
.manage-stereotypes__form {
  display: flex;
  gap: 1.5rem;
  margin: 2.25rem 0 3.125rem;
  flex-direction: column; }
  @media only screen and (max-width: 900px) {
    .manage-stereotypes__form {
      margin: 0.375rem 0 1.5rem; } }
  .manage-stereotypes__form-input-container input {
    margin: 0;
    margin-top: 0 !important;
    width: 50%; }
    @media only screen and (max-width: 900px) {
      .manage-stereotypes__form-input-container input {
        width: 100%; } }
  .manage-stereotypes__form-input-container textarea {
    margin: 0;
    width: 100%;
    border-radius: 0.3125rem;
    resize: none; }

.manage-stereotypes__actions {
  display: flex;
  gap: 2.25rem;
  margin: 3rem 0;
  justify-content: center; }
  @media only screen and (max-width: 900px) {
    .manage-stereotypes__actions {
      flex-direction: column;
      flex-wrap: wrap;
      align-content: center;
      margin: 1.875rem 0 2.625rem; } }
  .manage-stereotypes__actions-button {
    width: 15.375rem;
    height: 3.25rem;
    border-radius: 4.375rem;
    font-weight: 500;
    letter-spacing: 0;
    font-size: 1em;
    border: none;
    text-transform: lowercase;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0; }
    .manage-stereotypes__actions-button--green {
      background-color: #18AE00; }
    .manage-stereotypes__actions-button--gray {
      background-color: #777777; }
    .manage-stereotypes__actions-button--red {
      background-color: #C70000; }
    .manage-stereotypes__actions-button--blue {
      background-color: #1800AD; }

@media only screen and (max-width: 900px) {
  .manage-stereotypes__grouping {
    display: grid;
    grid-template-columns: 3% auto 3%;
    grid-column: 1 / 4; } }

.votes-container {
  max-height: 30rem;
  overflow-y: scroll;
  padding-right: 1.375rem; }
  @media only screen and (max-width: 900px) {
    .votes-container {
      padding-right: 0;
      overflow-y: unset;
      max-height: unset; } }
@media only screen and (min-width: 900px) {
  .votes-container::-webkit-scrollbar {
    width: 0.438rem; } }

@media only screen and (min-width: 900px) {
  .votes-container::-webkit-scrollbar-track {
    background-color: #D9D9D9; } }

@media only screen and (min-width: 900px) {
  .votes-container::-webkit-scrollbar-thumb {
    background-color: #72CAD7;
    border-radius: 0.438rem; } }

@media only screen and (max-width: 900px) {
  .stereotypes-section {
    grid-column: 2; } }

.stereotypes-section__container {
  margin: 0 0 1.5rem; }
  @media only screen and (max-width: 900px) {
    .stereotypes-section__container {
      grid-column: 2; } }
@media only screen and (max-width: 900px) {
  .stereotypes-section {
    margin-bottom: 0; } }

.stereotypes-section__no-groups {
  font-weight: 600;
  color: #1800AD;
  font-size: 0.75em;
  text-transform: uppercase;
  line-height: 162.6%;
  padding: 9.688rem 8.5rem;
  text-align: center; }
  @media only screen and (max-width: 900px) {
    .stereotypes-section__no-groups {
      height: 18.75rem;
      padding: 5.625rem 0; } }
  .stereotypes-section__no-groups p {
    margin-bottom: 0; }

.stereotype-cards form {
  margin-bottom: 0; }

.stereotype-cards__card-comments {
  height: fit-content;
  background-color: white;
  border-radius: 0.313rem;
  margin-bottom: 0.7543rem;
  text-align: center; }
  @media only screen and (max-width: 900px) {
    .stereotype-cards__card-comments {
      padding: 1.125rem 0.625rem;
      border-radius: 0;
      margin: 0; } }
.stereotype-cards p {
  padding: 1.375rem 1.375rem 1.25rem;
  margin: 0;
  font-size: 1em;
  line-height: 1.438rem;
  overflow-wrap: anywhere; }
  @media only screen and (max-width: 900px) {
    .stereotype-cards p {
      padding: 0 0 1.313rem;
      text-align: left; } }
.stereotype-cards__vote-buttons {
  padding-bottom: 1.438rem;
  display: grid;
  grid-gap: 3rem;
  justify-content: center;
  grid-template-columns: repeat(4, auto); }
  @media only screen and (max-width: 900px) {
    .stereotype-cards__vote-buttons {
      grid-template-columns: repeat(3, auto);
      padding-bottom: 1.655rem;
      grid-row-gap: 0.5rem; } }
  .stereotype-cards__vote-buttons i {
    margin: auto 0.4em; }
  .stereotype-cards__vote-buttons button:hover {
    box-shadow: 0 0; }
  @media only screen and (max-width: 900px) {
    .stereotype-cards__vote-buttons button {
      width: 3.773rem;
      font-size: 0.875em; }
      .stereotype-cards__vote-buttons button i {
        display: block; } }
  .stereotype-cards__vote-buttons__delete {
    background-color: transparent;
    border: 0;
    padding: 0;
    margin: 0;
    font-weight: 500;
    font-size: 1em;
    line-height: 1.188rem;
    text-decoration-line: underline;
    color: #777777;
    text-transform: none; }
    @media only screen and (max-width: 900px) {
      .stereotype-cards__vote-buttons__delete {
        display: none; } }
    .stereotype-cards__vote-buttons__delete--icon-1, .stereotype-cards__vote-buttons__delete--icon--1, .stereotype-cards__vote-buttons__delete--icon-0 {
      display: contents; }
      @media only screen and (min-width: 900px) {
        .stereotype-cards__vote-buttons__delete--icon-1, .stereotype-cards__vote-buttons__delete--icon--1, .stereotype-cards__vote-buttons__delete--icon-0 {
          display: none; } }
      .stereotype-cards__vote-buttons__delete--icon-1 img, .stereotype-cards__vote-buttons__delete--icon--1 img, .stereotype-cards__vote-buttons__delete--icon-0 img {
        width: 1.25rem;
        justify-self: center; }
    .stereotype-cards__vote-buttons__delete--icon-1 img {
      grid-column: 1; }
    .stereotype-cards__vote-buttons__delete--icon-0 img {
      grid-column: 2; }
    .stereotype-cards__vote-buttons__delete--icon--1 img {
      grid-column: 3; }

.stereotype-cards .is-clear {
  text-transform: lowercase; }

.agree-1, .disagree--1, .skip-0 {
  width: 8rem;
  height: 2.375rem !important;
  border-radius: 0.313rem;
  color: white !important;
  text-transform: lowercase !important; }
  @media only screen and (max-width: 900px) {
    .agree-1, .disagree--1, .skip-0 {
      width: 5.188rem !important;
      height: 3.313rem !important; } }
.agree-1 {
  background: rgba(24, 174, 0, 0.8) !important; }

.disagree--1 {
  background-color: #C70000 !important; }

.skip-0 {
  background-color: #72CAD7 !important; }

.pointer-1 .tabs-container {
  cursor: not-allowed; }
  .pointer-1 .tabs-container #see-edit-personas-tab {
    pointer-events: none; }

.modal__overlay {
  display: flex;
  position: fixed;
  place-items: center;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 750;
  justify-content: center;
  background: rgba(0, 0, 0, 0.25); }
  .modal__overlay.hide {
    visibility: hidden; }
  .modal__overlay > * {
    min-height: 0;
    margin: auto; }

.modal__container, .modal__container--lg, .modal__container--md, .modal__container--sm, .modal__container--sm-height {
  position: relative;
  z-index: 1250;
  background-color: #E5E5E5;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  text-align: center;
  border-radius: .5rem;
  max-width: 29.25rem;
  min-height: 14.625rem;
  padding: 3.25rem 5.313rem; }
  @media (max-width: 380px) {
    .modal__container, .modal__container--lg, .modal__container--md, .modal__container--sm, .modal__container--sm-height {
      width: inherit !important; } }
  .modal__container--lighter-bg {
    background-color: #f1f1f1; }
  .modal__container--text-align-unset {
    text-align: unset !important; }
  .modal__container h3, .modal__container--lg h3, .modal__container--md h3, .modal__container--sm h3, .modal__container--sm-height h3 {
    color: #000000;
    font-weight: 500; }
  .modal__container--sm-height {
    max-height: 90vh;
    max-width: 50rem;
    width: 90%; }
    @media (max-width: 414px) {
      .modal__container--sm-height {
        padding: 1rem;
        width: 95%;
        max-height: 80vh;
        transition: height .5s;
        overflow-y: scroll; }
      .modal__container--sm-height-transition {
        height: 70vh; } }
  .modal__container--sm {
    min-width: 20rem; }
  .modal__container--md {
    min-width: 35rem; }
  .modal__container--lg {
    min-width: 45rem; }
  .modal__container form, .modal__container--sm-height form, .modal__container--sm form, .modal__container--md form, .modal__container--lg form {
    margin-bottom: 0; }
  .modal__container--quick-action {
    display: flex;
    gap: 1.875rem;
    margin: 0;
    width: 17.438rem;
    flex-direction: column; }

.modal__icon {
  width: 67px; }
  .modal__icon--alert {
    color: #E20000; }
  .modal__icon--success {
    color: #36C273; }

.modal__title {
  position: relative;
  color: #000000;
  font-size: 1.5rem;
  font-family: "Work Sans", sans-serif;
  margin-bottom: 1rem; }

.modal__subtitle {
  font-size: 1em;
  font-weight: 500;
  letter-spacing: 0;
  color: #1800AD;
  margin-bottom: 1.563rem; }

.modal__close-btn {
  position: absolute;
  right: 0;
  top: 0;
  color: #000000;
  cursor: pointer;
  background: transparent;
  padding: 0;
  margin: 0;
  border: none;
  font-size: 1rem; }
  .modal__close-btn:hover {
    box-shadow: none; }

.modal__buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.313rem; }
  .modal__buttons a {
    color: #777777;
    text-transform: lowercase; }

.modal__btn, .modal__btn--no-fill, .modal__btn--blue, .modal__btn--red {
  width: fit-content;
  cursor: pointer;
  display: flex;
  place-items: center center;
  justify-content: center;
  gap: .5rem;
  border: none !important;
  border-radius: 3rem;
  height: 2.875rem;
  text-transform: lowercase;
  font-size: 1em;
  margin: 0; }
  .modal__btn i, .modal__btn--no-fill i, .modal__btn--blue i, .modal__btn--red i {
    margin: 0; }
  .modal__btn--red {
    background-color: #C70000; }
  .modal__btn--blue {
    background-color: #1800AD; }
  .modal__btn--no-fill {
    color: #777;
    background: none;
    padding: 0;
    margin: auto !important; }
    .modal__btn--no-fill:hover {
      box-shadow: none; }
  .modal__btn--black {
    background-color: #000000;
    color: white;
    border: none; }

.modal__btn-board-delete {
  margin-bottom: 1.30rem !important;
  width: 17.5625rem !important;
  height: 3.25rem !important; }

.modal__btn-alternative {
  display: grid;
  grid-template-columns: auto auto;
  grid-gap: 1.875rem;
  justify-content: center; }
  .modal__btn-alternative--red, .modal__btn-alternative--gray {
    width: 6.313rem;
    height: 2.75em;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    font-size: 0.875em;
    letter-spacing: 0; }
  .modal__btn-alternative--red {
    background-color: #C70000; }
  .modal__btn-alternative--gray {
    background-color: #777777; }

.modal__btn-board a {
  color: #6C6C6C !important; }

.modal__btn-board button {
  text-transform: lowercase;
  font-size: 1em;
  font-weight: 500;
  border-radius: 11.2rem; }

.modal__question {
  margin: unset;
  font-size: 1em;
  font-weight: 500;
  color: #1800AD !important; }

@media (max-width: 414px) {
  .modal--full-screen-mobile {
    position: fixed;
    bottom: 0;
    margin: unset !important; } }

.modal--hide-overflow-y {
  overflow-y: hidden; }

.container-1, .Page-title h1, .container-2, .container-3, .container-4 {
  padding: 0;
  text-align: center; }

.form-container {
  margin: 0 auto;
  max-width: 70rem;
  width: 100%; }
  .form-container label {
    text-align: initial; }
  .form-container form {
    padding: 0 1.5rem;
    max-width: 30rem;
    width: 100%;
    margin: auto; }

.form-container.is-wide {
  max-width: 60rem; }

.form-narrow {
  width: 21rem;
  margin: 0 auto; }

label {
  color: #FFB703;
  text-indent: 1.125rem;
  text-transform: lowercase; }

legend, input + .helptext,
textarea + .helptext,
select + .helptext,
input + br + .helptext,
textarea + br + .helptext,
select + br + .helptext, .conversation-balloon textarea::placeholder {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  text-align: center;
  opacity: 0.75; }

html {
  background-color: white; }

a.button:hover, a.button:focus, a.button:active {
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.25), 0 2px 8px -2px rgba(0, 0, 0, 0.15);
  color: white;
  background-color: #FFB703; }

a.button.is-primary:hover, a.button.is-primary:focus, a.button.is-primary:active {
  color: white;
  background-color: #1800AD; }

.screen-reader, #first-link {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: polygon(0px 0px, 0px 0px, 0px 0px);
  height: 1px;
  overflow: hidden !important;
  position: absolute;
  width: 1px;
  z-index: -1000; }

.lds-ring {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px; }

.lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 64px;
  height: 64px;
  margin: 8px;
  border: 8px solid #fff;
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #30BFD3 transparent transparent transparent; }

.lds-ring div:nth-child(1) {
  animation-delay: -0.45s; }

.lds-ring div:nth-child(2) {
  animation-delay: -0.3s; }

.lds-ring div:nth-child(3) {
  animation-delay: -0.15s; }

@keyframes lds-ring {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.tour-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000000;
  opacity: .8;
  width: 100%;
  height: 100%;
  z-index: 1000; }

.tour-card {
  background: #fff4d9;
  z-index: 1001;
  height: 43.75rem;
  position: absolute;
  top: calc(50% - 43.75rem/2);
  left: calc(50% - 56.25rem/2);
  width: 100%;
  max-width: 56.25rem;
  font-size: 16px; }
  @media only screen and (max-width: 500px) {
    .tour-card {
      font-size: 14px; } }
  @media only screen and (max-width: 400px) {
    .tour-card {
      font-size: 13px; } }
.tour-footer {
  display: flex;
  gap: 8rem;
  flex-wrap: wrap; }
  .tour-footer__snapshot {
    z-index: 999; }

.tour-content {
  padding: 3rem; }
  .tour-content .logo {
    margin-bottom: 4vh; }
    .tour-content .logo img {
      width: 153px; }
  .tour-content .bubbles,
  .tour-content .secondary-bubbles {
    position: absolute; }
  .tour-content .bubbles {
    right: 0;
    top: 0; }
  .tour-content .secondary-bubbles {
    left: 0;
    bottom: 0; }
  .tour-content .welcome {
    width: 50%; }
    .tour-content .welcome--width-100 {
      width: 100%; }
    .tour-content .welcome h1,
    .tour-content .welcome p {
      color: #000000; }
    .tour-content .welcome h1 {
      font-size: 2.25em;
      font-family: 'Work Sans';
      margin-top: unset;
      margin-bottom: 3vh; }
    .tour-content .welcome p {
      font-size: 1.5em;
      margin-bottom: 4vh; }
  .tour-content .buttons {
    display: flex;
    gap: 1rem;
    flex-flow: row-reverse;
    flex-wrap: wrap;
    align-content: end;
    margin-bottom: 2rem;
    z-index: 999; }
    .tour-content .buttons a {
      width: 225px;
      margin: unset;
      padding: .5rem 0;
      box-sizing: content-box; }
    .tour-content .buttons .button--skip {
      color: #1800AD;
      background-color: #fff4d9;
      border: 3px solid #1800AD; }
  .tour-content .snapshot {
    position: absolute; }

.tour-progress {
  height: .25rem;
  position: sticky;
  left: 0;
  top: 0;
  background-color: #E5E7EB;
  max-width: 56.25rem;
  z-index: 998; }

.tour-progress--1 {
  background-color: #1800AD;
  width: 5%;
  z-index: 999;
  height: .25rem; }

.tour-progress--2 {
  background-color: #1800AD;
  width: 50%;
  z-index: 999;
  height: .25rem; }

.tour-progress--3 {
  background-color: #1800AD;
  width: 100%;
  z-index: 999;
  height: .25rem; }

@media only screen and (max-width: 900px) {
  .tour-progress {
    width: 100vw; }
  .tour-content {
    padding: 1% 14%; }
  .tour-content .logo {
    margin-top: 19vh; }
  .tour-content .logo.logo--minor-margin-top {
    margin-top: 5%;
    margin-bottom: 4%; }
  .tour-content .welcome {
    width: 80vw;
    margin: auto; }
  .tour-content .buttons {
    flex-flow: column;
    margin: auto;
    width: 80%;
    max-width: 25rem; }
  .tour-content .buttons a {
    width: 100%; }
  .tour-content .bubbles {
    max-width: 60%; }
  .tour-footer__snapshot {
    width: 80%; }
  .tour-card {
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0; }
  .tour-footer {
    gap: 1rem;
    justify-content: center; } }

@media only screen and (max-height: 700px) {
  .tour-content {
    margin-bottom: 1rem; }
  .tour-card {
    height: fit-content; }
  @supports (-moz-appearance: none) {
    .tour-card {
      height: -moz-max-content; } } }

/*
 FONTS FAMILIES AND SIZES
 ============================================================== */
/*
 SPACING
 =========================================================================== */
/*
 SPACING
 =========================================================================== */
/*
 COLORS ROLES
 =========================================================================== */
/*
 PAGE LAYOUT AND BREAKPOINTS
 =========================================================================== */
/*
 SPACING
 =========================================================================== */
/*
 GENERIC PAGE ELEMENTS
 ======================================================================== */
.Page {
  box-sizing: border-box;
  display: flex;
  flex-flow: column;
  height: 100vh;
  overflow: hidden;
  padding: 45px 0 45px 0; }
  @media screen and (min-width: 35rem) {
    .Page {
      padding: 70px 0 45px 0; } }
  @media screen and (min-width: 35rem) {
    .Page.talks {
      padding: 45px 0 0 0; } }
  .Page-content-container {
    display: flex; }
    .Page-content-container .NavMenu {
      position: fixed; }
  @media only screen and (min-width: 960px) {
    .Page-content.logged-in, .Page #docs {
      padding-left: 400px !important; } }
  @media only screen and (max-width: 960px) {
    .Page .NavMenu-fixed {
      display: none; } }
  .Page-mainContainer {
    background: url(/static/img/page-bg.svg) center no-repeat;
    background-size: contain;
    box-sizing: border-box;
    height: 100vh;
    display: flex;
    flex-flow: column;
    overflow-x: hidden;
    overflow-y: auto; }
  .Page-title {
    background: #1800AD;
    color: white;
    margin: 0 0 32px 0;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2); }
    .Page-title h1 {
      font-size: 23.1px;
      padding: 8px 24px; }
    .Page-title em {
      font-weight: bold;
      font-style: normal; }
  .Page-content {
    flex-grow: 1;
    margin: 0 auto 65px auto;
    padding: 0; }

/*
 PAGE SIDEBAR
 =========================================================================== */
.NavMenu {
  width: 100%;
  min-height: 100vh;
  max-width: 400px;
  box-shadow: 2px 0 4px 0 rgba(18, 48, 102, 0.08);
  box-sizing: border-box;
  font-size: 15px;
  opacity: 1;
  -ms-overflow-style: none;
  overflow: -moz-scrollbars-none;
  color: white;
  padding: 32px; }
  .NavMenu a, .NavMenu button {
    color: white; }
  .NavMenu::-webkit-scrollbar {
    display: none; }
  .NavMenu em {
    font-weight: bold;
    font-style: normal; }
  .NavMenu button {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0px;
    font-weight: bold;
    font-size: 13px; }
  .NavMenu img,
  .NavMenu i {
    height: 1em;
    padding-right: 8px; }
  .NavMenu .icon-stack :first-child {
    font-size: 7.2px;
    padding-right: 0px;
    vertical-align: middle;
    margin-right: -3px;
    margin-bottom: 3px; }
  .NavMenu .icon-stack i + i {
    font-size: 12px; }
  .NavMenu li {
    list-style: none;
    padding: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    font-weight: bold;
    font-size: 13px; }
  .NavMenu li:last-child {
    border: none; }
  .NavMenu ul {
    padding: 0; }
  .NavMenu-DropDown {
    cursor: pointer; }
  .NavMenu-AngleDownIcon {
    float: right; }
  .NavMenu-UserMenu {
    display: none; }
    .NavMenu-UserMenu > li {
      margin-left: 32px; }
  .NavMenu-Accessibility {
    display: none; }
    .NavMenu-Accessibility > li {
      margin-left: 32px; }

/*
CONVERSATIONS
========================================================================

$conversation-vote-circle-size: 18px !default;
$conversation-toast-image-border: $spacing-unit-tiny / 3;
$conversation-button-size: $spacing-unit-small + $spacing-unit-tiny !default;
$icon-arrow-down: url("/static/img/icons/arrow-down.svg") !default;
$conversation-card-font-size-small: 12px !default;
$conversation-card-border-arrow-size: $spacing-unit;
$profile-label-clear-color: #30BFD3 !default;
$modalities-content-width-max: ($page-content-width-max / 2) - 29 !default;
$color-for-unfolding: rgba(2, 16.9, 27.8, 0.6);
$color-background-button-modalities: rgba(255, 255, 255, 0.3);

.ConversationList {
    @extend .container-1;
    max-width: 100%;

    p {
        padding: 0 $spacing-unit / 3;
    }

    &-title {
        text-align: center;
        margin-top: $spacing-unit;

        h1 {
            font-size: $font-size-h2;
            color: $color-accent;;
        }

        .topic {
            display: none;
        }
    }

    &-urls {
        font-size: $font-size-tiny;
        a, i {
            color: $color-content;
        }

        i {
            font-size: $font-size-tiny * 0.8;
        }
        .public {
            float: left;
            margin-left: $spacing-unit-tiny;
        }

        .my-conversations {
            float: right;
            margin-right: $spacing-unit-tiny;
        }
        margin-bottom: $spacing-unit-large;
    }

    &-cardList {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        justify-content: center;
        padding-bottom: $spacing-unit;

        > * {
            margin: $spacing-unit;
        }

        .slick-list {
            margin: 0;
            width: 100vw;
        }

        .slick-track {
            > * {
                margin: $spacing-unit-small;
                position: relative;
                width: 100vw;
            }
        }
    }

    &-link {
        text-align: center;
    }

    img {
        max-width: 245px;
        width: 100%;
        max-height: 60px;
    }
}

.ConversationFooter {
    background-color: #D4F7F5;
    height: 180px;
    width: 100vw;
    align-items: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
    p {
        text-align: center;
    }
}

.ConversationTags {
    font-weight: bold;
    text-align: center;
    padding: $spacing-unit-small + $spacing-unit-tiny $spacing-unit-small $spacing-unit-small $spacing-unit-small;
}

.ConversationCard {
    align-self: stretch;
    box-sizing: border-box;
    border: 0;
    border-radius: $border-radius-round;
    flex-grow: 1;
    margin: 0;
    margin-bottom: $spacing-unit;
    text-align: center;
    width: 100%;
    max-width: 320px;
    height: 320px;
    overflow: hidden;
    position: relative;
    padding: 0;
    h1 {
        font-size: $font-size-h4;
        font-family: $font-stack-paragraph;
        font-weight: 600;
        text-transform: none;
    }

    &-container {
        align-self: stretch;
        text-align: center;
        width: 100%;
        max-width: 320px;
        box-sizing: border-box;
    }

    &-moderation {
        text-transform: uppercase;
        display: block;
        font-weight: bold;
        color: $color-content;
        font-size: $font-size-tiny;
        margin: $spacing-unit / 2 0;
    }

    &-cover {
        display: flex;
        flex-flow: column;
        flex-grow: 1;
        margin: 0;
        padding: 0 $spacing-unit;
        position: relative;
        z-index: 2;
        overflow: hidden;
        max-height: 86px;

        h1 {
            display: flex;
            flex-flow: column;
            margin: 0;
            vertical-align: middle;
            a {
                color: white;
            }
        }

        dl {
            font-size: $font-size-tiny;
            margin: $spacing-unit-tiny 0;

            dt {
                display: inline;
            }
            dd {
                display: inline;
                margin: 0;
            }
        }
    }

    &-cover + .ConversationCard-actions {
        padding: 0 $spacing-unit-small $spacing-unit-small $spacing-unit-small;
        background-size: 30px;
        margin-top: $spacing-unit;
        bottom: 0;
        position: absolute;
        box-sizing: border-box;
        width: 100%;
    }

    &-actions {
        .button.is-primary {
            padding: $spacing-unit-small + $spacing-unit-tiny;
            background: $color-content;
            font-size: $font-size-small;
            padding-top: $font-size-small;
            padding-bottom: $font-size-small;
            i {
                margin-left: $spacing-unit-tiny;
            }
        }
    }

    &-statistics {
        color: $color-hint;
        display: flex;
        justify-content: center;
        padding: $spacing-unit-small;
        margin: $spacing-unit-tiny $spacing-unit;

        li {
            list-style: none;
            display: inline-block;
            margin: 0 $spacing-unit / 2;
        }
    }

    @include breakpoint('sm') {
        margin: $spacing-unit-tiny;
    }
}

.Modalities {
    display: none;
    align-content: center;
    flex-direction: column;
    align-items: center;
    align-self: center;
    background-color: $color-for-unfolding;
    padding-right: 0;
    position: absolute;
    z-index: 4;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    outline: 0;

    //Modalities slider

    .swiper-container {
        margin: auto auto;
        max-width: $spacing-unit-huge * 4;
    }
    .swiper-wrapper {
        align-items: center;
        @include breakpoint('sm') {
            margin: auto 0 auto $spacing-unit - $spacing-unit-tiny;
        }
        @include breakpoint('sm') {
            margin: auto 0 auto $spacing-unit + $spacing-unit-small;
        }
    }
    .style-slide-center {
        margin: auto auto;
        align-items: center;
        margin: auto $spacing-unit-small + $spacing-unit;
    }
    .swiper-slide {
        @include breakpoint('sm') {
            margin: 0px $spacing-unit + $spacing-unit-small 0px 0px;
        }
        @include breakpoint('sm') {
            margin: 0px $spacing-unit-large + $spacing-unit 0px 0px;
        }
        display: flex;
        width: $spacing-unit-huge * 3 - $spacing-unit-small;
        line-height: 1.2;
        bottom: auto;
        background-color: $color-background;
        text-align: center;
        border-radius: $spacing-unit-small;
        position: relative;
        border: 1px solid $color-accent;
        padding: $spacing-unit-tiny * 2;
        flex-direction: column;
        align-items: center;
        -webkit-justify-content: center;
        .append-buttons {
            padding: $spacing-unit-small + $spacing-unit-tiny 0px $spacing-unit-tiny 0px;
            a {
                color: color('primary');
                font-weight: bold;
                font-size: $font-size-default;
            }
        }
        p {
            padding: $spacing-unit 0 $spacing-unit-tiny 0;
            margin: 0;
            font-size: $spacing-unit-small;
            color: $color-content;
        }
        h3 {
            padding: $spacing-unit-small 0 $spacing-unit 0;
            margin: 0;
            font-family: $font-stack-raleway;
            font-weight: bold;
            font-size: $font-size-larger;
            color: $color-accent;
        }
        .swiper-pagination {
            position: relative;
        }
        .swiper-pagination-bullet {
            margin: 0px $font-size-tiny-tiny;
            background: $color-hint;
        }
        .swiper-pagination-bullet-active {
            background: $color-content;
        }
    }
    .swiper-button-next {
        @include breakpoint('sm') {
            margin: -($spacing-unit-small + $spacing-unit-tiny) (-$spacing-unit-small - $spacing-unit-tiny) 0px 0px;
        }
        @include breakpoint('sm') {
            margin: -($spacing-unit-small + $spacing-unit-tiny) 0px 0px 0px;
        }
        width: $spacing-unit;
        color: color('primary');
        border: 1px solid;
        height: $spacing-unit-large - $spacing-unit-tiny;
        padding: 0px $spacing-unit-tiny 0px $spacing-unit-small;
        background-color: $color-background-button-modalities;
        border-radius: $spacing-unit-large;
        font-size: $spacing-unit + $spacing-unit-tiny;
        background-size: $spacing-unit ($spacing-unit + $spacing-unit-tiny);
    }
    .swiper-button-prev {
        @include breakpoint('sm') {
            margin: -($spacing-unit-small + $spacing-unit-tiny) $spacing-unit-tiny 0px $spacing-unit-tiny - $spacing-unit;
        }
        @include breakpoint('sm') {
            margin: -($spacing-unit-small + $spacing-unit-tiny) $spacing-unit-tiny 0px (-$spacing-unit-tiny);
        }
        width: $spacing-unit;
        color: color('primary');
        left: $spacing-unit-small;
        border: 1px solid;
        height: $spacing-unit-large - $spacing-unit-tiny;
        padding: 0px $spacing-unit-tiny 0px $spacing-unit-small;
        background-color: $color-background-button-modalities;
        border-radius: $spacing-unit-large;
        font-size: $spacing-unit + $spacing-unit-tiny;
        background-size: $spacing-unit $spacing-unit + $spacing-unit-tiny;
    }

    .modalities-slider.show {
        visibility: visible;
    }
    @include breakpoint('md') {
        .swiper-container {
            max-width: $spacing-unit-huge * 3 - $spacing-unit-small - $spacing-unit-tiny;
        }
        .swiper-slide {
            max-width: ($spacing-unit-huge * 2) + $spacing-unit-tiny;
        }
        img {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            max-width: 25%;
        }
        .imgpart {
            padding: 0px $spacing-unit-small;
            max-width: 90%;
        }
        .imgponte {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            max-width: 70%;
        }
        .imgopn {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            max-width: 70%;
        }
        .button {
            font-weight: bold;
            font-size: $spacing-unit-small;
            margin: $spacing-unit + $spacing-unit-tiny 0px $spacing-unit-tiny 0px;
            background-color: #30BFD3;
        }
        .fa-times {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            font-size: $spacing-unit - $spacing-unit-tiny;
            color: $color-accent;
        }
        .fa-arrow-right {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            font-size: $spacing-unit - $spacing-unit-tiny;
            color: color('primary');
        }
        .fa-check {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            font-size: $spacing-unit - $spacing-unit-tiny;
            color: $color-content;
        }
    }
    @include breakpoint('sm') {
        .swiper-container {
            max-width: $spacing-unit-huge * 4;
        }
        .swiper-slide {
            max-width: $modalities-content-width-max;
            .button {
                font-weight: bold;
                font-size: 17px;
            }
        }
        img {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            max-width: 20%;
        }
        .imgpart {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            max-width: 77%;
        }
        .imgponte {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            max-width: 77%;
        }
        .imgopn {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            max-width: 77%;
        }
        .fa-times {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            font-size: $spacing-unit - $spacing-unit-tiny;
            color: $color-accent;
        }
        .fa-arrow-right {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            font-size: $spacing-unit - $spacing-unit-tiny;
            color: color('primary');
        }
        .fa-check {
            padding: 0px $spacing-unit - $spacing-unit-tiny;
            font-size: $spacing-unit - $spacing-unit-tiny;
            color: $color-content;
        }
    }

    //Modalities static

    .style-slide {
        margin: 0px;
        width: $spacing-unit-huge * 3;
        line-height: 1.2;
        bottom: auto;
        background-color: $color-background;
        text-align: center;
        border-radius: $spacing-unit-tiny;
        position: relative;
        border: 1px solid $color-accent;
        padding: $spacing-unit-tiny * 2;
        flex-direction: row;
        align-items: center;
        -webkit-justify-content: center;
        .append-buttons {
            padding: $spacing-unit-tiny 0px;
            a {
                color: color('primary');
                font-weight: bold;
            }
        }
        p {
            padding: $spacing-unit-small 0 $spacing-unit-tiny 0;
            margin: 0;
            font-size: $font-size-default;
            color: $color-content;
        }
        h3 {
            padding: $spacing-unit-tiny 0 $spacing-unit-small 0;
            margin: 0;
            font-family: $font-stack-raleway;
            font-weight: bold;
            font-size: $font-size-large;
            color: $color-accent;
        }
        .button-closer {
            background-color: $color-content;
            border: none;
            border-radius: $spacing-unit-large;
            box-sizing: border-box;
            cursor: pointer;
            display: inline-block;
            font-weight: bold;
            padding: 0px;
            text-align: center;
            text-transform: uppercase;
            transition: all 200ms ease-in-out;
            vertical-align: middle;
            .fa-times {
                font-size: $spacing-unit-tiny;
                color: $color-background;
            }
        }
    }

    // Imagens do modal com especificações diferentes

    @include breakpoint('sm') {
        .style-slide {
            max-width: $spacing-unit-huge * 2 - $spacing-unit-small;
        }
        .imgponte {
            margin: -($spacing-unit * 2 + $spacing-unit-tiny) ($spacing-unit-huge - $spacing-unit-tiny) 0px (-$spacing-unit-huge + $spacing-unit - $spacing-unit-tiny);
            max-width: 16%;
        }
        .button-closer {
            margin: 0px 0px (-$spacing-unit-tiny) ($spacing-unit-huge * 2 - $spacing-unit);
            .fa-times {
                padding: $spacing-unit-tiny $spacing-unit-tiny;
            }
        }
    }

    @include breakpoint('sm') {
        .style-slide {
            max-width: $modalities-content-width-max;
        }
        .imgponte {
            margin: -($spacing-unit * 2 + $spacing-unit-tiny) ($spacing-unit-huge * 2 + $spacing-unit-tiny) 0px 0px;
        }
        .button-closer {
            margin: 0px 0px (-$spacing-unit) $spacing-unit-huge * 2.5;
            .fa-times {
                padding: $spacing-unit-tiny;
            }
        }
    }

}

.ConversationDetail-content {
    position: relative;

    .Comment {
        position: relative;
        min-height: 340px !important;
        width: 100% !important;
        display: inline-block;
        float: left;
        max-width: $header-wrapper-max-width;
        margin: 0 auto;
        display: flex;
        flex-direction: column;

        .CommentCard {
            word-wrap: break-word;
            flex: 1;
            flex-basis: auto;
            left: 0;
            right: 0;
            margin: auto;
            box-sizing: border-box;
            border-radius: $border-radius-large;
            font-size: $font-size-h3;
            max-width: $page-content-width-max;
            min-height: 340px !important;
            width: 100% !important;
            z-index: 3;
            padding: ($spacing-unit-large - $spacing-unit-tiny) ($spacing-unit-large - $spacing-unit-small);
            //background-color: color('primary');
            color: $color-content-text;

            &-counter {
                text-align: center;
                p {
                    margin: 0;
                }
            }

            img {
                background: color('primary', contrast);
                border: 1px solid #fff;
                border-radius: $spacing-unit-large;
                padding: 4px $spacing-unit-tiny;
            }

            i.fa {
                background: color('primary', contrast);
                border: 2px solid #fff;
                border-radius: $spacing-unit-large;
                padding: $spacing-unit-tiny;
            }
        }
        #commentform {
            flex: 1;
            flex-basis: auto;
            position: absolute;
            left: 0;
            right: 0;
            margin: auto;
            visibility: hidden;
            max-width: $page-content-width-max;
            min-height: 340px !important;
            height: 100% !important;
            width: 100% !important;
            box-sizing: border-box;
            text-align: center;
            //background: $color-hint;
            border-radius: $border-radius-large;
            padding: (3 * $spacing-unit-tiny) ($spacing-unit-large - $spacing-unit-small);
            z-index: 5;

            p {
                margin: $spacing-unit-small ($spacing-unit + $spacing-unit-tiny);
                color: $color-content;
            }

            textarea {
                width: 100%;
                margin: 0 0 0 0;
                min-height: 3 * $font-size;
                outline: none;
                //border: 2px solid color('primary');
                border: 2px solid;
                background: $color-content-text;
                //color: #333;
                box-shadow: none;
            }
            #characters-count {
                display: block;
                text-align: right;
                @include breakpoint('sm') {
                    padding: 0px;
                }
                @include breakpoint('sm') {
                    padding: 0px ($spacing-unit + $spacing-unit-tiny) 0px 0px;
                }
            }

            &-fakeButton,
            input[type=submit] {
                border-radius: $border-radius;
                color: #fff;
                //background: color('primary');
                padding: $spacing-unit-small $spacing-unit;
                font-size: $spacing-unit / 2;
                box-shadow: none;
                text-transform: uppercase;
                font-weight: bold;
            }

        }
        #commentform.show {
            visibility: visible;
            -webkit-animation: fadeInUp 500ms ease-in-out;
            animation: fadeInUp 500ms ease-in-out;
        }

        @-webkit-keyframes fadeInUp {
            0% {
                opacity: 0;
                -webkit-transform: translateY(40px);
            }
            100% {
                opacity: 1;
                -webkit-transform: translateY(0);
            }
        }
        #commentform.hideanimation {
            visibility: visible;
            -webkit-animation: fadeOutDown 500ms ease-in-out;
            animation: fadeOutDown 500ms ease-in-out;

        }
        &-fakeButton,
        input[type=submit] {
            border-radius: $border-radius;
            color: #fff;
            background: $color-accent;
            border: 0;
            padding: $spacing-unit-small $spacing-unit;
            font-size: $spacing-unit / 2;
            box-shadow: none;
            text-transform: uppercase;
            font-weight: bold;
            margin-top: $spacing-unit-small;
        }
        @-webkit-keyframes fadeOutDown {
            0% {
                opacity: 1;
                -webkit-transform: translateY(0);
            }
            100% {
                opacity: 0;
                -webkit-transform: translateY(40px);
            }
        }

        #toast {
            line-height: 1.2;
            visibility: hidden;
            background-color: $color-hint;
            text-align: left;
            border-radius: $spacing-unit-tiny;
            position: fixed;
            z-index: 3;
            width: 100vw;
            left: 0;
            bottom: 0; //$header-top-nav-height;
            > div {
                padding: $spacing-unit-tiny;
                max-width: 660px;
                margin: 0 auto;
                p {
                    padding: 0 0 $spacing-unit-tiny 0;
                    margin: 0;
                    font-size: $font-size-small;
                    color: $color-content;
                }
                h3 {
                    padding: $spacing-unit-tiny 0 0 0;
                    margin: 0;
                    font-family: $font-stack-raleway;
                    font-weight: bold;
                    font-size: $font-size-default;
                    color: color('primary');
                }
                img {
                    @include breakpoint('sm') {
                        max-width: $spacing-unit;
                        margin: $spacing-unit-tiny $spacing-unit-small auto 0;
                        background-color: #fff;
                        border: ($border-radius-tiny * 4) / 3 solid color('primary');
                        border-radius: $spacing-unit-large;
                        padding: $spacing-unit-tiny;
                    }
                    @include breakpoint('sm') {
                        max-width: $spacing-unit;
                        //margin-right: $spacing-unit-small;
                        margin: auto $spacing-unit-small auto 0;
                        background-color: #fff;
                        border: $border-radius-tiny solid color('primary');
                        border-radius: $spacing-unit-large;
                        padding: $spacing-unit-tiny;
                    }
                }
            }
        }

        #toast.show {
            visibility: visible;
            // -webkit-animation: fade 8s;
            animation: fade 8s both;
        }

        @keyframes fade {
            0% {
                opacity: 0;
                bottom: 0;
            }
            20% {
                opacity: 1;
                bottom: 45px;
            }
            70% {
                opacity: 1;
            }
            90% {
                opacity: 0;
            }
            100% {
                opacity: 0;
            }

        }
    }

    .Comment-create {
        position: relative;
        justify-content: center;
        button {
            padding: $spacing-unit 0px 0px 0px;
            color: $color-accent;
            background: transparent no-repeat;
            border: none;
            cursor: pointer;
            overflow: hidden;
            outline: none;
            font-weight: bold;
        }
        p {
            text-align: center;
        }
    }
}

.CircleButton {
    @include color('content');

    cursor: pointer;
    display: inline-block;
    border-radius: 100%;
    font-size: $font-size-h2;
    height: $conversation-button-size;
    padding: $spacing-unit-tiny;
    text-align: center;
    vertical-align: middle;
    width: $conversation-button-size;

    &-leftConversationSlider,
    &-rightConversationSlider {
        margin: 0;
        position: absolute;
        top: (8 * $line-height + $conversation-button-size) - ($spacing-unit-large - $spacing-unit-small);
        z-index: 10;

        @include breakpoint('sm') {
            visibility: hidden;
            z-index: -1;
        }
    }

    &-leftConversationSlider {
        left: $spacing-unit-tiny;
        z-index: 3;
    }

    &-rightConversationSlider {
        right: $spacing-unit-tiny;
        z-index: 3;
    }
}

.Link {
    display: flex;
    flex-direction: row;
}

.Link-new {
    text-align: center;
    display: block;
    width: 100%;
    text-transform: uppercase;
    font-size: $spacing-unit / 2;
    font-weight: bold;
    border-bottom: 1px solid $color-hint;
    margin: 0;
    padding: $spacing-unit-small 0;
    color: $color-accent;
    i {
        color: $color-accent;
    }
}

.Link-edit {
    text-align: center;
    display: block;
    width: 100%;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: bold;
    border-bottom: 1px solid $color-hint;
    margin: 0;
    padding: $spacing-unit-small 0;
    color: $color-content;
    i {
        color: $color-content;
    }
}

.view-board {
    text-align: center;
    display: block;
    width: 100%;
    font-size: $font-size-tiny;
    // #TODO: box-shadow: $header-box-shadow-upper;
    margin: 0;
    padding: $spacing-unit-small 0;

    select {
        width: 50%;
        border: none;
        font-weight: bold;
        -webkit-appearance: none;
        background: url($icon-arrow-down) no-repeat right;
        background-size: 16px 16px;
        padding: 0;
        margin: 0 10px;
    }
}

.Moderate {
    .ConversationDetail-banner h1 {
        font-family: "Work Sans", sans-serif;
        color: $color-content;
    }

    &-comments-tabs {
        padding: 0;
        background: $color-hint;
        display: flex;
        flex-wrap: wrap;

        li {
            list-style: none;
            flex-grow: 1;
            flex-basis: 0;
            font-size: $spacing-unit / 2;
            font-weight: bold;
            text-align: center;

            a {
                color: color('primary');
                opacity: 0.5;
                border-bottom: 2px solid transparent;
                padding: 5px 0;
                display: inline-block;

                &.active {
                    opacity: 1;
                    border-bottom: 2px solid color('primary');
                }
            }
        }
    }

    &-comments {
        h1 {
            text-align: center;
            color: $color-accent;;
        }

        .Comment {
            background: #fff;
            color: $color-content;
            font-family: "Work Sans", sans-serif;
            font-size: $spacing-unit / 2;
            border: 0;
            border-radius: 0;
            border-bottom: 1px solid $color-hint;
            min-height: 0 !important;
            padding: $spacing-unit;

            p {
                text-align: center;
                font-size: $spacing-unit / 2;
                font-weight: 600;
            }

            &-metadata {
                color: $color-hint;
                font-size: $spacing-unit / 2;
                display: flex;
                justify-content: space-between;
            }
        }
    }

    .ConversationComment-actions {
        padding: 0;
        display: flex;
        justify-content: space-between;

        li {
            list-style: none;

            &:before {
                content: "\f00c";
                font-family: 'Font Awesome\ 5 Free';
                font-weight: 900;
                display: inline-block;
                //color: $color-green-dark;
                padding: 2px 4px;
                font-size: 11px;
                //border: 2px solid $color-green-dark;
                border-radius: 50%;
            }
        }

        li + li:before {
            content: "\f00d";
            color: #9c2715;
            border-color: #9c2715;
            padding: 2px 6px;
        }

        li span {
            display: none;
        }

        .button {
            border: 0;
            border-radius: 0;
            background: #fff;
            font-weight: bold;
            font-size: $spacing-unit / 2;
            color: $color-content;
            box-shadow: none;
            padding-left: 0;
            outline: 0;
            margin: 0;
        }
    }

    .Comment-status-approved .ConversationComment-actions li {
        opacity: 1;
    }

    .Comment-status-approved .ConversationComment-actions li + li {
        opacity: 0.3;
    }

    .Comment-status-rejected .ConversationComment-actions li {
        opacity: 0.3;
    }

    .Comment-status-rejected .ConversationComment-actions li + li {
        opacity: 1;
    }

    .Comment-status-approved .ConversationComment-actions li:hover,
    .Comment-status-rejected .ConversationComment-actions li:hover {
        opacity: 1;
    }

    .Comment-status-rejected .CommentListItem-footer {
        text-align: center;
    }

    .Comment-rejection {
        background: $color-hint;
        border-top: 1px solid $color-hint;
        border-bottom: 1px solid $color-hint;
        text-align: center;

        p {
            font-weight: lighter;
            font-size: $spacing-unit / 2;
        }

        textarea {
            outline: 0;
            border-style: solid;
            box-shadow: inset 0 0 0 0 black;
            border-color: $color-hint;
        }

        .button {
            box-shadow: none;
            box-sizing: border-box;
            width: 90%;
            background: $color-accent;
        }
    }

    .Conversation-edit-field {
        @extend .container-1;

        outline: 0;
        background-color: rgba(255, 255, 255, 0.5);
        border: 0;
        font-family: "Work Sans", sans-serif;
        color: $color-content;
        padding: $spacing-unit;
        text-align: center;
        font-weight: 200 !important;
        font-size: $spacing-unit - $spacing-unit-tiny !important;
        box-shadow: none;
        border: 1px solid color('primary');
        border-radius: $border-radius-small;
        resize: none;
        overflow: hidden;
        min-height: 50px;
        max-height: 300px;
        max-width: none;
        width: 100%;

        &::placeholder {
            color: $color-content;
            opacity: 1;
        }

        @include breakpoint('lg') {
            padding: $spacing-unit;
        }
    }

    .ConversationEdit-actions {
        display: flex;
        padding: $spacing-unit / 2 0;

        span {
            flex: 1;
            text-align: center;

            i {
                border-radius: 50%;
                border: 3px solid $color-content;
                display: inline-block;
                width: 16px;
                height: 16px;
                padding: 4px 2px 0 2px;
                font-size: 11px;
                color: $color-content;
                background: $color-background;
            }
        }

        input {
            border: 0;
            background: #fff;
            padding: $spacing-unit 0;
            box-shadow: none;
            font-family: "Work Sans", sans-serif;
            font-size: $spacing-unit / 2;
            color: $color-content;
            text-transform: uppercase;
            font-weight: bold;
            cursor: pointer;
            width: auto;

            &:before {
                font-weight: lighter;
            }
        }

        span + span i {
            color: $color-content;
            border-color: $color-content;
            background: $color-background;

            &.create-conversation-icon {
                color: $color-accent;
                border-color: $color-accent;
            }
        }
    }
}

.ConversationField {
    display: flex;
    justify-content: center;

    i {
        padding: 0 $spacing-unit * 2;
        align-self: center;
        color: color('primary');
    }

    input, select {
        border: 1px solid color('primary');
        border-radius: $border-radius-small;
        background-color: rgba(255, 255, 255, 0.5);
        box-shadow: none;
        outline: 0;
        padding-top: 8px;
        font-size: $spacing-unit / 2;
        color: $color-content;
        flex-grow: 1;
        margin-right: $spacing-unit;
        max-width: none;

        &::placeholder {
            color: $color-content;
            opacity: 1;
        }
    }

    input + i, select + i {
        color: $color-content;
        font-weight: lighter;
        display: none;
    }
}

.ConversationEdit-attributes {
    padding: $spacing-unit;

    i {
        color: $color-accent;
        margin-right: $spacing-unit;
    }

    span {
        color: $color-content;
        opacity: 0.5;
        font-size: $spacing-unit / 2;
    }

    p {
        text-align: left;
    }
}

.ConversationEdit-promote {
    padding: $spacing-unit;

    input {
        width: auto;
        box-shadow: none;
        border: 1px solid $color-content;
        background: white;
    }

    label {
        color: $color-content;
        font-size: $spacing-unit / 2;
        font-weight: bold;
        display: inline;
    }
}

.Conversation-AddComment {
    text-align: center;
    cursor: pointer;
    text-transform: uppercase;
    font-weight: bold;
    font-size: $spacing-unit / 2;
}
*/
.FileInput {
  padding: 0;
  font-family: "Raleway", sans-serif;
  font-size: 12px;
  overflow: hidden;
  font-weight: 600; }
  .FileInput .PickFileButton {
    border-top-left-radius: 24px;
    border-bottom-left-radius: 24px;
    background: #1800AD;
    height: 45px;
    width: max-content;
    line-height: 45px;
    padding-left: 7px;
    padding-right: 7px;
    float: left;
    position: relative;
    color: white; }
    .FileInput .PickFileButton input[type=file] {
      height: 45px;
      width: 100%;
      position: absolute; }
  .FileInput .FileStatus {
    font-weight: 600;
    width: 100%;
    height: inherit;
    line-height: 45px;
    text-align: center; }

.theme-brand {
  --theme-color: #FFB703;
  --theme-light-color: #fff4d9; }

.bg-theme-brand {
  background: #FFB703; }

.bg-theme-brand-light {
  background: #fff4d9; }

.theme-accent {
  --theme-color: #1800AD;
  --theme-light-color: #d5cffc; }

.bg-theme-accent {
  background: #1800AD; }

.bg-theme-accent-light {
  background: #d5cffc; }

.theme-green {
  --theme-color: #36C273;
  --theme-light-color: #B4FDD4; }

.bg-theme-green {
  background: #36C273; }

.bg-theme-green-light {
  background: #B4FDD4; }

.theme-orange {
  --theme-color: #F68128;
  --theme-light-color: #FFE1CA; }

.bg-theme-orange {
  background: #F68128; }

.bg-theme-orange-light {
  background: #FFE1CA; }

.theme-purple {
  --theme-color: #7758B3;
  --theme-light-color: #E7DBFF; }

.bg-theme-purple {
  background: #7758B3; }

.bg-theme-purple-light {
  background: #E7DBFF; }

.theme-grey {
  --theme-color: #797979;
  --theme-light-color: #EEEEEE; }

.bg-theme-grey {
  background: #797979; }

.bg-theme-grey-light {
  background: #EEEEEE; }

.theme-icd {
  --theme-color: #005BAA;
  --theme-light-color: #F5821F; }

.bg-theme-icd {
  background: #005BAA; }

.bg-theme-icd-light {
  background: #F5821F; }

.theme-votorantim {
  --theme-color: #04082D;
  --theme-light-color: #F14236; }

.bg-theme-votorantim {
  background: #04082D; }

.bg-theme-votorantim-light {
  background: #F14236; }

.theme-osf {
  --theme-color: #1D1088;
  --theme-light-color: #F00000; }

.bg-theme-osf {
  background: #1D1088; }

.bg-theme-osf-light {
  background: #F00000; }

.theme-bocadelobo {
  --theme-color: #83E760;
  --theme-light-color: #161616; }

.bg-theme-bocadelobo {
  background: #83E760; }

.bg-theme-bocadelobo-light {
  background: #161616; }

.theme-brand input[type="text"], .theme-brand textarea, .theme-accent input[type="text"], .theme-accent textarea, .theme-green input[type="text"], .theme-green textarea, .theme-orange input[type="text"], .theme-orange textarea, .theme-purple input[type="text"], .theme-purple textarea, .theme-grey input[type="text"], .theme-grey textarea, .theme-icd input[type="text"], .theme-icd textarea, .theme-votorantim input[type="text"], .theme-votorantim textarea, .theme-osf input[type="text"], .theme-osf textarea {
  border-color: var(--theme-color); }

.theme-brand label, .theme-accent label, .theme-green label, .theme-orange label, .theme-purple label, .theme-grey label, .theme-icd label, .theme-votorantim label, .theme-osf label {
  color: var(--theme-color); }

p a:hover, p a:focus, p a:visited, p a {
  text-decoration: underline; }

hr {
  border-color: rgba(0, 0, 0, 0.12);
  margin: 1rem 1rem 0 0; }
  @media only screen and (max-width: 768px) {
    hr {
      margin: unset; } }

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiLi4vc2Nzcy9tYWluLmNzcyIsCgkic291cmNlUm9vdCI6ICIvYnVpbGQvc3JjL2VqX3RoZW1lL3N0YXRpYy9lal90aGVtZS9jc3MiLAoJInNvdXJjZXMiOiBbCgkJIi4uL3Njc3MvbWFpbi5zY3NzIiwKCQkiLi4vc2Nzcy9fY29uZmlnLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvX2ZuLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvZm4uc2Fzcy9mbi5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2ZuLnNhc3MvX2Z1bmN0aW9ucy5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2ZuLnNhc3MvX2xpc3Quc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9mbi5zYXNzL19saXN0LXBlcmYuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9mbi5zYXNzL19hcnJheS5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2ZuLnNhc3MvX21hcC5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2ZuLnNhc3MvX3N0cmluZy5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2ZuLnNhc3MvX251bWJlcnMuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9mbi5zYXNzL19jb2xvci5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2ZuLnNhc3MvX3Rlc3Rpbmcuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9wcm9maWxlcy9fZGVmYXVsdC5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3Byb2ZpbGVzL19zdGFjay1mb250LnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvcHJvZmlsZXMvX3N0YWNrLWNvbG9yLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvcHJvZmlsZXMvX2Jhc2Uuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9tZW5kZWxlZXYuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9wcmVsdWRlLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvY29uZmlnL19taXhpbnMuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9jb25maWcvX21vZHVsZXMuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9jb25maWcvX2Z1bmN0aW9ucy5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2NvbnN0YW50cy9fc3RhdGljLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvY29uc3RhbnRzL192YWx1ZXMuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9jb25zdGFudHMvX2dyaWRzLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvY29uc3RhbnRzL19jb25maWd1cmFibGUuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9wcmVsdWRlL19zaXplcy5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3ByZWx1ZGUvX2NvbG9yLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvcHJlbHVkZS9fdHlwb2dyYXBoeS5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3ByZWx1ZGUvX3V0aWxpdGllcy5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3JlZ2lzdHJ5L190eXBvZ3JhcGh5LnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvcmVnaXN0cnkvX3NpemluZy5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3JlZ2lzdHJ5L19sYXlvdXQuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9yZWdpc3RyeS9fYm9yZGVycy5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3JlZ2lzdHJ5L19mbGV4LnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvcmVnaXN0cnkvX2dyaWQuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9yZWdpc3RyeS9fdHJhbnNmb3JtYXRpb25zLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvcmVnaXN0cnkvX3Zpc2liaWxpdHkuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9yZWdpc3RyeS9fbWlzYy5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3ByZWx1ZGUvX3V0aWxpdGllcy1jYWNoZS5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2VsZW1lbnRzLnNjc3MiLAoJCSIuLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvZWxlbWVudHMvX2Jhc2Uuc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9lbGVtZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2VsZW1lbnRzL19idXR0b24uc2NzcyIsCgkJIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9lbGVtZW50cy9fZm9ybS5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3V0aWxpdGllcy5zY3NzIiwKCQkiLi4vc2Nzcy9fZWxlbWVudHMuc2NzcyIsCgkJIi4uL3Njc3MvX2NvbXBvbmVudHMuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy9tYWluL19uYXZpZ2F0aW9uLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvbWFpbi9fZWxlbWVudHMuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy9tYWluL19maWx0ZXJzLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvY29udmVyc2F0aW9ucy9fY2FyZC5zY3NzIiwKCQkiLi4vc2Nzcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbnMvX2RldGFpbC5zY3NzIiwKCQkiLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL2NvbXBvbmVudHMvbWl4aW5zL19hcnJvdy5zY3NzIiwKCQkiLi4vc2Nzcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbnMvX2RldGFpbC1oZWFkZXIuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy9jb252ZXJzYXRpb25zL19kZXRhaWwtc2hhcmluZy5zY3NzIiwKCQkiLi4vc2Nzcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbnMvX21vZGVyYXRlLWNvbW1lbnRzLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvY29udmVyc2F0aW9ucy93ZWxjb21lLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvY29udmVyc2F0aW9ucy9fYm9hcmQtZGV0YWlsLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvdG9vbHMvX2NhcmQuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy90b29scy9fdG9vbHMuc2NzcyIsCgkJIi4uL3Njc3MvMV9zZXR0aW5ncy9fc3BhY2luZy5zY3NzIiwKCQkiLi4vc2Nzcy8xX3NldHRpbmdzL190eXBvZ3JhcGh5LnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvdG9vbHMvX2dlbmVyaWMuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy90b29scy9fY2hhdGJvdC5zY3NzIiwKCQkiLi4vc2Nzcy9jb21wb25lbnRzL3Rvb2xzL19tYWlsaW5nLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvdG9vbHMvX29waW5pb24tY29tcG9uZW50LnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvdG9vbHMvX3dlYmNoYXQuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy90b29scy9fc3VydmV5LnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvY29udmVyc2F0aW9ucy9fbGlua3MtbW9kYWwuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy9yZXBvcnRzL19kYXNoYm9hcmQuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy9yZXBvcnRzL19leHBvcnQtZGF0YS5zY3NzIiwKCQkiLi4vc2Nzcy9jb21wb25lbnRzL3JlcG9ydHMvX2dlbmVyaWNzLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvcmVwb3J0cy9fcGFnaW5hdGlvbi5zY3NzIiwKCQkiLi4vc2Nzcy9jb21wb25lbnRzL3JlcG9ydHMvY29tbWVudHMtcmVwb3J0LnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvYWRtaW4vX2Vudmlyb25tZW50LnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvcHJvZmlsZXMvX2hvbWUuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy9wcm9maWxlcy9fcHJvZmlsZS5zY3NzIiwKCQkiLi4vc2Nzcy9jb21wb25lbnRzL19jb2xsYXBzaWJsZS5zY3NzIiwKCQkiLi4vc2Nzcy9jb21wb25lbnRzL19kYXRhdGFibGVzLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvX2NsdXN0ZXJzLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvX3N0ZXJlb3R5cGVzLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvX21vZGFsLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvbWFpbi9fbWVuZGVsZWV2LXNoYW1lLnNjc3MiLAoJCSIuLi9zY3NzL2NvbXBvbmVudHMvX2xvYWRpbmcuc2NzcyIsCgkJIi4uL3Njc3MvY29tcG9uZW50cy9fdG91ci5zY3NzIiwKCQkiLi4vc2Nzcy9fbGVnYWN5LnNjc3MiLAoJCSIuLi9zY3NzLzFfc2V0dGluZ3MvX2NvbG9ycy5zY3NzIiwKCQkiLi4vc2Nzcy8xX3NldHRpbmdzL19sYXlvdXQuc2NzcyIsCgkJIi4uL3Njc3MvNl9jb21wb25lbnRzL2dlbmVyaWMvX3BhZ2Uuc2NzcyIsCgkJIi4uL3Njc3MvNl9jb21wb25lbnRzL2dlbmVyaWMvX3BhZ2UtbWVudS5zY3NzIiwKCQkiLi4vc2Nzcy82X2NvbXBvbmVudHMvX2NvbnZlcnNhdGlvbnMuc2NzcyIsCgkJIi4uL3Njc3MvNl9jb21wb25lbnRzL19maWxlLWlucHV0LnNjc3MiLAoJCSIuLi9zY3NzL191dGlsaXRpZXMuc2NzcyIKCV0sCgkic291cmNlc0NvbnRlbnQiOiBbCgkJIkBpbXBvcnQgJ2NvbmZpZyc7XG5AaW1wb3J0ICdlbGVtZW50cyc7XG5AaW1wb3J0ICdjb21wb25lbnRzJztcbkBpbXBvcnQgJ2xlZ2FjeSc7XG5AaW1wb3J0ICd1dGlsaXRpZXMnO1xuIiwKCQkiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENPTE9SUyBST0xFU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBpbXBvcnQgJy4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9mbic7XG5cbi8vIEJyYW5kIGNvbG9yczogdGhleSBhcmUgdXNlZCBvbiB0aGUgbG9nbyBhbmQgb24gdGhlIG1haW4gZWxlbWVudHMgb24gdGhlIHBhZ2UsXG4vLyBsaWtlIGJ1dHRvbnMsIGNvbnZlcnNhdGlvbiBjYXJkcywgbGlua3MsIGV0Yy5cbiRjb2xvci1icmFuZDogI0ZGQjcwMyAhZGVmYXVsdDsgIC8vIFllbGxvdyAod2FzIGN5YW4pXG4kY29sb3ItYWNjZW50OiAjMTgwMEFEICFkZWZhdWx0OyAgLy8gQmx1ZSAod2FzIHJlZClcblxuLy8gRGVyaXZlZCBicmFuZCBjb2xvcnNcbiRjb2xvci1hY2NlbnQtbGlnaHQ6IHNjYWxlLWNvbG9yKCRjb2xvci1hY2NlbnQsICRzYXR1cmF0aW9uOiAtMTAlLCAkbGlnaHRuZXNzOiAxMCUpICFkZWZhdWx0OyAvLyAjRkY1NzgzXG4kY29sb3ItYWNjZW50LWxpZ2h0ZXI6IHNjYWxlLWNvbG9yKCRjb2xvci1hY2NlbnQsICRsaWdodG5lc3M6IDg1JSwgJHNhdHVyYXRpb246IC0xMCUpICFkZWZhdWx0OyAvLyAjRkZFM0VBXG4kY29sb3ItYnJhbmQtbGlnaHQ6IHNjYWxlLWNvbG9yKCRjb2xvci1icmFuZCwgJGxpZ2h0bmVzczogNTUlLCAkc2F0dXJhdGlvbjogMjAlKSAhZGVmYXVsdDsgLy8gIzlGRTVFQVxuJGNvbG9yLWJyYW5kLWxpZ2h0ZXI6IHNjYWxlLWNvbG9yKCRjb2xvci1icmFuZCwgJGxpZ2h0bmVzczogODUlLCAkc2F0dXJhdGlvbjogMTAlKSAhZGVmYXVsdDsgLy8gI0UwRjdGOFxuJGNvbG9yLWJyYW5kLWFsdGVybmF0ZTogc2NhbGUtY29sb3IoJGNvbG9yLWJyYW5kLCAkbGlnaHRuZXNzOiA1NSUsICRzYXR1cmF0aW9uOiAtNDUlKSAhZGVmYXVsdDsgLy8jQTNEOEREXG5AaWYgJGNvbG9yLWJyYW5kID09ICMzMEJGRDMge1xuICAgICRjb2xvci1icmFuZC1saWdodDogI0ZGRDk2NjsgIC8vIExpZ2h0IHllbGxvd1xuICAgICRjb2xvci1icmFuZC1saWdodGVyOiAjRkZGMENDOyAgLy8gTGlnaHRlciB5ZWxsb3dcbiAgICAkY29sb3ItYnJhbmQtYWx0ZXJuYXRlOiAjRkZFNjk5OyAgLy8gWWVsbG93IGFsdGVybmF0ZVxufVxuXG4vLyBUZXh0IGFuZCBiYWNrZ3JvdW5kXG4kY29sb3ItYmxhY2s6ICMxODAwQUQgIWRlZmF1bHQ7ICAvLyBEYXJrIGJsdWUvcHVycGxlXG4kY29sb3ItYmxhY2stYWx0ZXJuYXRpdmU6ICMwMDAwMDAgIWRlZmF1bHQ7XG4kY29sb3ItYmxhY2stYWx0ZXJuYXRpdmUtbGlnaHQ6IHJnYmEoMCwgMCwgMCwgMC44KSAhZGVmYXVsdDtcbiRjb2xvci13aGl0ZTogd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENvbG9yIHRoZW1lc1xuJGNvbG9yLXRoZW1lLWJyYW5kOiAkY29sb3ItYnJhbmQgIWRlZmF1bHQ7XG4kY29sb3ItdGhlbWUtYnJhbmQtbGlnaHQ6ICRjb2xvci1icmFuZC1saWdodGVyICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLWFjY2VudDogJGNvbG9yLWFjY2VudCAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1hY2NlbnQtbGlnaHQ6ICRjb2xvci1hY2NlbnQtbGlnaHRlciAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1ncmVlbjogIzM2QzI3MyAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1ncmVlbi1saWdodDogI0I0RkRENCAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1vcmFuZ2U6ICNGNjgxMjggIWRlZmF1bHQ7XG4kY29sb3ItdGhlbWUtb3JhbmdlLWxpZ2h0OiAjRkZFMUNBICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLXB1cnBsZTogIzc3NThCMyAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1wdXJwbGUtbGlnaHQ6ICNFN0RCRkYgIWRlZmF1bHQ7XG4kY29sb3ItdGhlbWUtZ3JleTogIzc5Nzk3OSAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1ncmV5LWxpZ2h0OiAjRUVFRUVFICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTogIzE4MDBBRCAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1yZWQ6ICNFMjAwMDAgIWRlZmF1bHQ7XG5cbi8vT3BpbmlvbiBjb21wb25lbnQgY29sb3JzXG4kY29sb3ItdGhlbWUtYm9jYWRlbG9ibzogIzgzRTc2MCAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1ib2NhZGVsb2JvLWxpZ2h0OiAjMTYxNjE2ICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLWljZDogIzAwNUJBQSAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1pY2QtbGlnaHQ6ICNGNTgyMUYgIWRlZmF1bHQ7XG4kY29sb3ItdGhlbWUtdm90b3JhbnRpbTogIzA0MDgyRCAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS12b3RvcmFudGltLWxpZ2h0OiAjRjE0MjM2ICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLW9zZjogIzFEMTA4OCAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1vc2YtbGlnaHQ6ICNGMDAwMDAgIWRlZmF1bHQ7XG4kY29sb3ItbGlnaHQtZ3JheTogcmdiYSgwLCAwLCAwLCAwLjgwKSAhZGVmYXVsdDtcbiRjb2xvci1ncmF5LTIwMDogI0U1RTdFQiAhZGVmYXVsdDtcbiRjb2xvci1ncmF5LTUwOiAjRjlGQUZCICFkZWZhdWx0O1xuJGNvbG9yLWdyYXktNTAwOiAjNkI3MjgwICFkZWZhdWx0O1xuJGNvbG9yLWdyYXktMzAwOiAjRDFENURCICFkZWZhdWx0O1xuXG4vL1JlcG9ydCBjb2xvcnNcbiRjb2xvci10aGVtZS1yZXBvcnQtbGlnaHQtZ3JheTogI0U1RTVFNSAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1yZXBvcnQtZ3JheTogI2JhYmFiYSAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1yZXBvcnQtZGFyay1ncmF5OiAjNzc3Nzc3ICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodGVyOiAjZmVmZWZlICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5LWJsdWU6ICNGRkY4RTEgIWRlZmF1bHQ7ICAvLyBMaWdodCB5ZWxsb3cvZ3JheVxuJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5LWJsdWUtdHJhbnNwYXJlbnQ6ICNGRkY4RTE5OSAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1yZXBvcnQtYmx1ZTogIzE4MDBBRCAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1yZXBvcnQtbGlnaHQtYmx1ZTogI0ZGQjcwMyAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1yZXBvcnQtYmxhY2s6IGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLXJlcG9ydC10cmFuc3BhcmVudC1ibGFjazogcmdiYSgwLCAwLCAwLCAwLjEyKSAhZGVmYXVsdDtcbiRjb2xvci10aGVtZS1yZXBvcnQtcmVkOiByZWQgIWRlZmF1bHQ7XG4kY29sb3ItdGhlbWUtcmVwb3J0LWRhcmstcmVkOiAjRTIwMDAwICFkZWZhdWx0O1xuJGNvbG9yLXRoZW1lLWluZm8tY2FyZC1yZXBvcnQ6ICNGRkNFREIgIWRlZmF1bHQ7XG4kY29sb3ItdGhlbWUtcmVwb3J0LXBpbms6ICMxODAwQUQgIWRlZmF1bHQ7XG4kY29sb3ItdGhlbWUtcmVwb3J0LWdyZWVuOiAjMThBRTAwICFkZWZhdWx0O1xuJGNvbG9yLXJlcG9ydC1pbmZvLXBpbms6ICNmZjU2ODIgIWRlZmF1bHQ7XG5cbi8vQ2x1c3RlcnMgY29sb3JzXG4kY29sb3ItYnJpZ2h0LWJsdWU6ICMzMEMxRDQgIWRlZmF1bHQ7XG4kY29sb3ItY29tcGxlbWVudGFyeS1ncmF5OiAjNzc3Nzc3ICFkZWZhdWx0O1xuJGNvbG9yLXBpbmstbGlnaHQ6ICMxODAwQUQgIWRlZmF1bHQ7XG4kY29sb3ItZ3JheS1icmlndGhlcjogI0U1RTVFNSAhZGVmYXVsdDtcbiRjb2xvci1ncmF5LWRlZXBlcjogI0Q5RDlEOSAhZGVmYXVsdDtcbiRjb2xvci1yZWQtbmVnYXRpdmU6ICNDNzAwMDAgIWRlZmF1bHQ7XG4kY29sb3ItdG9vbHRpcC1yZWQ6ICNGRkNFREIgIWRlZmF1bHQ7XG4kY29sb3QtZXJyb2xpc3QtcmVkOiAjRkYwMDAwICFkZWZhdWx0O1xuXG4vL1BvbGwgYm90XG4kbW9kYWwtdHJhbnNwYXJlbnQtYmFja2dvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4kbW9kYWwtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuXG4vL01hbmFnZSBTdGVyZW90eXBlc1xuJGNvbG9yLWJ1dHRvbi1ncmF5OiAjQkFCQUJBO1xuJGNvbG9yLWNhcmQtZ3JheS1saWdodGVyOiAjRTZFQUVEO1xuJGNvbG9yLWJyaWdodC1ibHVlOiAjNzJDQUQ3O1xuJGNvbG9yLWdyYXktZGFyazogIzZDNkM2QztcbiRjb2xvci1ncmF5LWRhcmtlcjogIzc3Nzc3NztcbiRjb2xvci1hZ3JlZTogcmdiYSgyNCwgMTc0LCAwLCAwLjgpO1xuJGNvbG9yLWRpc2FncmVlOiAjQzcwMDAwO1xuJGNvbG9yLWJhc2UtcGluazogIzE4MDBBRDtcbiRjb2xvci1ncmF5LXdoaXRlOiAjRjBGMEYwO1xuXG4vLyBBY3Rpb24gY29sb3JzXG4kY29sb3ItYWN0aW9uOiAkY29sb3ItYnJhbmQgIWRlZmF1bHQ7XG4kY29sb3ItcHJpbWFyeTogJGNvbG9yLWJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLXNlY29uZGFyeTogJGNvbG9yLWFjY2VudCAhZGVmYXVsdDtcblxuLy8gTmF2aWdhdGlvbiBpdGVtXG4kY29sb3ItbmF2aWdhdGlvbjogJGNvbG9yLXdoaXRlICFkZWZhdWx0O1xuJGNvbG9yLW5hdmlnYXRpb24tdGV4dDogJGNvbG9yLWJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLW5hdmlnYXRpb24taGVhZGVyOiAjQzRDNEM0O1xuJGNvbG9yLW5hdmlnYXRpb24taGVhZGVyLXdpdGgtb3BhY2l0eTogI0M0QzRDNDgwO1xuJGNvbG9yLW5hdmlnYXRpb24taGVhZGVyLXRleHQ6ICM3Nzc7XG4kY29sb3ItbmF2aWdhdGlvbi1tZW51LWJhY2tncm91bmQ6ICNGMUYxRjE7XG5cbi8vIG1vZGFscyBpdGVtc1xuJGNvbG9yLW1vZGFsLWJhY2tncm91bmQ6ICNFNUU1RTU7XG4kY29sb3ItbW9kYWwtYmFja2dyb3VuZC1saWdodGVyOiAjZjFmMWYxO1xuXG4vL0NhcmQgc2hhZG93c1xuJGNvbG9yLWNhcmQtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMjUpICFkZWZhdWx0O1xuLy8gT3ZlcnJpZGUgZGVmYXVsdCBNZW5kZWxlZXYgY29sb3IgcGFsZXR0ZVxuJG1lbmRlbGVldi1jb2xvci1wYWxldHRlOiAoXG4gICAgLy9cbiAgICAvLyBCcmFuZCBjb2xvcnNcbiAgICAnYnJhbmQnOiAkY29sb3ItYnJhbmQsXG4gICAgJ2FjY2VudCc6ICRjb2xvci1hY2NlbnQsXG4gICAgJ2JyYW5kLWxpZ2h0JzogJGNvbG9yLWJyYW5kLWxpZ2h0LFxuICAgICdicmFuZC1saWdodGVyJzogJGNvbG9yLWJyYW5kLWxpZ2h0ZXIsXG4gICAgJ2JyYW5kLWFsdGVybmF0ZSc6ICRjb2xvci1icmFuZC1hbHRlcm5hdGUsXG4gICAgJ2FjY2VudC1saWdodCc6ICRjb2xvci1hY2NlbnQtbGlnaHQsXG4gICAgJ2FjY2VudC1saWdodGVyJzogJGNvbG9yLWFjY2VudC1saWdodGVyLFxuICAgIC8vXG4gICAgLy8gQWN0aW9uIGNvbG9yc1xuICAgICdwcmltYXJ5JzogJGNvbG9yLXByaW1hcnksXG4gICAgJ3NlY29uZGFyeSc6ICRjb2xvci1zZWNvbmRhcnksXG4gICAgJ25hdmlnYXRpb24nOiAkY29sb3ItbmF2aWdhdGlvbixcbiAgICAnbmF2aWdhdGlvbi10ZXh0JzogJGNvbG9yLW5hdmlnYXRpb24tdGV4dCxcbiAgICAvL1xuICAgIC8vIFRleHRcbiAgICAnYmxhY2snOiAkY29sb3ItYmxhY2ssXG4gICAgJ3doaXRlJzogJGNvbG9yLXdoaXRlLFxuICAgICdkYXJrJzogJGNvbG9yLWJsYWNrLFxuICAgICdsaWdodCc6ICRjb2xvci13aGl0ZSxcbiAgICAvL1xuICAgIC8vIFRoZW1lIGNvbG9yc1xuICAgICd0aGVtZS1icmFuZCc6ICRjb2xvci10aGVtZS1icmFuZCxcbiAgICAndGhlbWUtYnJhbmQtbGlnaHQnOiAkY29sb3ItdGhlbWUtYnJhbmQtbGlnaHQsXG4gICAgJ3RoZW1lLWFjY2VudCc6ICRjb2xvci10aGVtZS1hY2NlbnQsXG4gICAgJ3RoZW1lLWFjY2VudC1saWdodCc6ICRjb2xvci10aGVtZS1hY2NlbnQtbGlnaHQsXG4gICAgJ3RoZW1lLWdyZWVuJzogJGNvbG9yLXRoZW1lLWdyZWVuLFxuICAgICd0aGVtZS1ncmVlbi1saWdodCc6ICRjb2xvci10aGVtZS1ncmVlbi1saWdodCxcbiAgICAndGhlbWUtb3JhbmdlJzogJGNvbG9yLXRoZW1lLW9yYW5nZSxcbiAgICAndGhlbWUtb3JhbmdlLWxpZ2h0JzogJGNvbG9yLXRoZW1lLW9yYW5nZS1saWdodCxcbiAgICAndGhlbWUtcHVycGxlJzogJGNvbG9yLXRoZW1lLXB1cnBsZSxcbiAgICAndGhlbWUtcHVycGxlLWxpZ2h0JzogJGNvbG9yLXRoZW1lLXB1cnBsZS1saWdodCxcbiAgICAndGhlbWUtZ3JleSc6ICRjb2xvci10aGVtZS1ncmV5LFxuICAgICd0aGVtZS1ncmV5LWxpZ2h0JzogJGNvbG9yLXRoZW1lLWdyZXktbGlnaHQsXG4gICAgJ3RoZW1lLXJlZCc6ICRjb2xvci10aGVtZS1yZWQsXG5cbiAgICAvL09waW5pb24gY29tcG9uZW50IHRoZW1lc1xuICAgICd0aGVtZS1ib2NhZGVsb2JvJzogJGNvbG9yLXRoZW1lLWJvY2FkZWxvYm8sXG4gICAgJ3RoZW1lLWJvY2FkZWxvYm8tbGlnaHQnOiAkY29sb3ItdGhlbWUtYm9jYWRlbG9iby1saWdodCxcbiAgICAndGhlbWUtaWNkJzogJGNvbG9yLXRoZW1lLWljZCxcbiAgICAndGhlbWUtaWNkLWxpZ2h0JzogJGNvbG9yLXRoZW1lLWljZC1saWdodCxcbiAgICAndGhlbWUtdm90b3JhbnRpbSc6ICRjb2xvci10aGVtZS12b3RvcmFudGltLFxuICAgICd0aGVtZS12b3RvcmFudGltLWxpZ2h0JzogJGNvbG9yLXRoZW1lLXZvdG9yYW50aW0tbGlnaHQsXG4gICAgJ3RoZW1lLW9zZic6ICRjb2xvci10aGVtZS1vc2YsXG4gICAgJ3RoZW1lLW9zZi1saWdodCc6ICRjb2xvci10aGVtZS1vc2YtbGlnaHQsXG4pO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVFlQT0dSQVBIWVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vbm9kZV9tb2R1bGVzL21lbmRlbGVldi5jc3Mvc3JjL3Byb2ZpbGVzL2RlZmF1bHQnO1xuXG4vLyBGb250IHJvbGVzIGFuZCBiYXNlIHN0eWxlc1xuJGZvbnQtc3RhY2stcGFyYWdyYXBoOiBcIldvcmsgU2Fuc1wiICFkZWZhdWx0O1xuJGZvbnQtc3RhY2staGVhZGluZ3M6IFwiV29yayBTYW5zXCIgIWRlZmF1bHQ7XG5cbi8vIFJlc2V0IE1lbmRlbGVldiB2YXJpYWJsZXMgYW5kIHN0eWxlc1xuJG1lbmRlbGVldi10eXBlZmFjZTogJGZvbnQtc3RhY2stcGFyYWdyYXBoO1xuJG1lbmRlbGVldi1jb2xvci1jb250cmFzdDogKCkgIWRlZmF1bHQ7XG4kbWVuZGVsZWV2LWNvbG9yLWNvbnRyYXN0OiBtYXAtbWVyZ2UoJG1lbmRlbGVldi1jb2xvci1jb250cmFzdCwgKFxuICAgICNGRkI3MDM6ICRjb2xvci13aGl0ZSxcbiAgICAjMTgwMEFEOiAkY29sb3Itd2hpdGUsXG4pKTtcblxuLy8gRUogY29uZmlndXJhdGlvbnNcbiRlai1oZWFkaW5nczogKFxuICAgIGZvbnQtd2VpZ2h0OiA0MDAsXG4gICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWhlYWRpbmdzLFxuKSAhZGVmYXVsdDtcbiRlai1idXR0b24tcmFkaXVzOiAzcHggIWRlZmF1bHQ7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNRU5ERUxFRVYgQ09ORklHXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVuZGVsZWV2LWNvbmZpZzogbWFwLW1lcmdlLWRlZXAoXG4gICAgICAgICRtZW5kZWxlZXYtY29uZmlnLCAoXG4gICAgICAgIC8vIEJyZWFraW5nIHBvaW50c1xuICAgICAgICAnYnJlYWtwb2ludHMnOiAoXG4gICAgICAgICAgICAnc20nOiAzNXJlbSxcbiAgICAgICAgKSxcbiAgICAgICAgLy8gVHlwb2dyYXBoeVxuICAgICAgICAndHlwb2dyYXBoeSc6IChcbiAgICAgICAgICAgICdoZWFkaW5ncyc6ICRlai1oZWFkaW5ncyxcbiAgICAgICAgICAgICdzYW5zLXNlcmlmJzogJGZvbnQtc3RhY2stcGFyYWdyYXBoLFxuICAgICAgICAgICAgJ3NpemUnOiAoXG4gICAgICAgICAgICAgICAgJ3N0YXJ0JzogMTYsXG4gICAgICAgICAgICAgICAgJ3NtJzogMTYsXG4gICAgICAgICAgICAgICAgJ21kJzogMTcsXG4gICAgICAgICAgICAgICAgJ2xnJzogMTgsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJ3NjYWxlJzogKFxuICAgICAgICAgICAgICAgICdzdGFydCc6IDkvOCxcbiAgICAgICAgICAgICAgICAnc20nOiA5LzgsXG4gICAgICAgICAgICAgICAgJ21kJzogOC83LFxuICAgICAgICAgICAgICAgICdsZyc6IDcvNixcbiAgICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICAgIC8vIENvbG9yc1xuICAgICAgICAnY29sb3InOihcbiAgICAgICAgICAgICdyb2xlcyc6IChcbiAgICAgICAgICAgICAgICAncHJpbWFyeScsICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICAgICdhY3Rpb24nLCAncG9zaXRpdmUnLCAnbmVnYXRpdmUnLFxuICAgICAgICAgICAgICAgICd3YXJuaW5nJywgJ3doaXRlJywgJ2JsYWNrJyxcbiAgICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICAgIC8vIEZvcm1zXG4gICAgICAgICdpbnB1dCc6IChcbiAgICAgICAgICAgICdib3JkZXItcmFkaXVzJzogJGVqLWJ1dHRvbi1yYWRpdXMsXG4gICAgICAgICAgICAnbWluLXdpZHRoJzogMTVlbSxcbiAgICAgICAgICAgICd3aWR0aCc6IDEwMCUsXG4gICAgICAgICAgICAnbWF4LXdpZHRoJzogMzByZW0sXG4gICAgICAgICksXG4gICAgICAgICdidXR0b24nOiAoXG4gICAgICAgICAgICAnYm9yZGVyLXJhZGl1cyc6ICRlai1idXR0b24tcmFkaXVzLFxuICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogNzAwLFxuICAgICAgICApLFxuICAgICAgICAvLyBFSiBHbG9iYWwgc3R5bGVzIGFuZCBjb21wb25lbnRzXG4gICAgICAgICdlaic6IChcbiAgICAgICAgICAgICdzdHlsZScgOiAoXG4gICAgICAgICAgICAgICAgJ2JvcmRlci1yYWRpdXMnOiAzcHgsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJ2NvbnZlcnNhdGlvbi1jYXJkJzogKFxuICAgICAgICAgICAgICAgICdib3JkZXItcmFkaXVzJzogM3B4LFxuICAgICAgICAgICAgICAgICdoaWdobGlnaHQtdGFncyc6IHRydWUsXG4gICAgICAgICAgICAgICAgJ2JnLWltYWdlJzogJy9zdGF0aWMvaW1nL2JnL2NvbnZlcnNhdGlvbi1jYXJkLnBuZycsXG4gICAgICAgICAgICApLFxuICAgICAgICApXG4gICAgKSk7XG5cbkBpbXBvcnQgJy4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9tZW5kZWxlZXYnO1xuIiwKCQkiLy8gQWxpYXMgdG8gZm4uc2Fzc1xuQGltcG9ydCAnZm4uc2Fzcy9mbic7XG5cbi8vLyBMb2cgZ2l2ZW4gJHZhbHVlcyBhbmQgcmV0dXJuIHRoZSBsYXN0IGFyZ3VtZW50LlxuQGZ1bmN0aW9uIGxvZygkYXJncy4uLikge1xuICAgIEB3YXJuICdMT0c6ICN7JGFyZ3N9JztcbiAgICBAcmV0dXJuIG50aCgkYXJncywgbGVuZ3RoKCRhcmdzKSk7XG59XG5cbkBtaXhpbiB2YXItZmFsbGJhY2soJGRlZnMpIHtcbiAgICBAZWFjaCAkcHJvcCwgJHBhaXIgaW4gJGRlZnMge1xuICAgICAgICAkdmFsdWU6IG50aCgkcGFpciwgMSk7XG4gICAgICAgICR2YXItbmFtZTogbnRoKCRwYWlyLCAyKTtcbiAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgI3skcHJvcH06IHVucXVvdGUoJ3ZhcigtLSN7JHZhci1uYW1lfSknKTtcbiAgICB9XG59XG5cbkBmdW5jdGlvbiBtYXAtc29tZS1rZXlzKCRwcmVkLCAkbWFwLCAkYXJncy4uLikge1xuICAgICRmbjogYXMtZnVuYygkcHJlZCk7XG5cbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICAgIEBpZiBjYWxsKCRmbiwgJGssICRhcmdzLi4uKSB7XG4gICAgICAgICAgICBAcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiBmYWxzZTtcbn1cblxuQGZ1bmN0aW9uIG1hcC1zb21lLXZhbHVlcygkcHJlZCwgJG1hcCwgJGFyZ3MuLi4pIHtcbiAgICAkZm46IGFzLWZ1bmMoJHByZWQpO1xuXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgICBAaWYgY2FsbCgkZm4sICR2LCAkYXJncy4uLikge1xuICAgICAgICAgICAgQHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gZmFsc2U7XG59XG5cbkBmdW5jdGlvbiBtYXAtZXZlcnkta2V5KCRwcmVkLCAkbWFwLCAkYXJncy4uLikge1xuICAgICRmbjogYXMtZnVuYygkcHJlZCk7XG5cbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICAgIEBpZiBub3QgY2FsbCgkZm4sICRrLCAkYXJncy4uLikge1xuICAgICAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuIHRydWU7XG59XG5cbkBmdW5jdGlvbiBtYXAtZXZlcnktdmFsdWUoJHByZWQsICRtYXAsICRhcmdzLi4uKSB7XG4gICAgJGZuOiBhcy1mdW5jKCRwcmVkKTtcblxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgICAgQGlmIG5vdCBjYWxsKCRmbiwgJHYsICRhcmdzLi4uKSB7XG4gICAgICAgICAgICBAcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gdHJ1ZTtcbn1cbiIsCgkJIkBpbXBvcnQgJ2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICdsaXN0JztcbkBpbXBvcnQgJ2FycmF5JztcbkBpbXBvcnQgJ21hcCc7XG5AaW1wb3J0ICdzdHJpbmcnO1xuQGltcG9ydCAnbnVtYmVycyc7XG5AaW1wb3J0ICdjb2xvcic7XG5AaW1wb3J0ICd0ZXN0aW5nJztcbiIsCgkJIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gVVRJTElUWSBGVU5DVElPTlNcbi8vLyBAZ3JvdXAgdXRpbGl0eSBmdW5jdGlvbnNcbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8vIENvbnZlcnQgZnVuY3Rpb24gb3Igc3RyaW5nIHRvIGEgZnVuY3Rpb24gaGFuZGxlLlxuQGZ1bmN0aW9uIGFzLWZ1bmMoJGZuKSB7XG4gICAgQGlmIHR5cGUtb2YoJGZuKSA9PSBmdW5jdGlvbiB7XG4gICAgICAgIEByZXR1cm4gJGZuXG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCRmbikgPT0gc3RyaW5nIHtcbiAgICAgICAgLy9ub2luc3BlY3Rpb24gQ3NzSW52YWxpZEZ1bmN0aW9uXG4gICAgICAgIEByZXR1cm4gZ2V0LWZ1bmN0aW9uKCRmbik7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEBlcnJvciBcIkludmFsaWQgZnVuY3Rpb246ICN7JGZufVwiO1xuICAgIH1cbn1cblxuLy8vIFZlcnNpb24gb2YgY2FsbCguLi4pIHRoYXQgYWNjZXB0cyBuYW1lcyBhbmQgZnVuY3Rpb24gcmVmZXJlbmNlc1xuQGZ1bmN0aW9uIGNhbGwtZm4oJGZuLCAkYXJncy4uLikge1xuICAgIEByZXR1cm4gY2FsbChhcy1mdW5jKCRmbiksICRhcmdzLi4uKTtcbn1cblxuLy8vIFBhc3MgYXJndW1lbnQgdGhyb3VnaCBhIHNlcmllcyBvZiBmdW5jdGlvbnMuXG5AZnVuY3Rpb24gcGlwZSgkeCwgJGZucy4uLikge1xuICAgIEBlYWNoICRmbiBpbiAkZm5zIHtcbiAgICAgICAgJHg6IGNhbGwtZm4oJGZuLCAkeCk7XG4gICAgfVxuICAgIEByZXR1cm4gJHg7XG59XG5cbi8vLyBQYXNzIGFyZ3VtZW50cyBwYWlyd2lzZSB0aHJvdWdoIGEgc2VyaWVzIG9mIGZ1bmN0aW9ucy5cbi8vLyBBbGwgaW50ZXJtZWRpYXRlIGZ1bmN0aW9ucyBtdXN0IHJldHVybiBsaXN0cyBvZiBhcmd1bWVudHMgdG8gdGhlIGZvbGxvd2luZ1xuLy8vIGZ1bmN0aW9ucy4gVGhlIGxhc3QgZnVuY3Rpb24gaW4gdGhlIHBpcGUgY2FuIHJldHVybiBhbnl0aGluZy5cbkBmdW5jdGlvbiBwaXBlLTIoJHgsICR5LCAkZm5zLi4uKSB7XG4gICAgJGFyZ3M6ICgkeCwgJHkpO1xuICAgIEBlYWNoICRmbiBpbiAkZm5zIHtcbiAgICAgICAgJGFyZ3M6IGNhbGwtZm4oJGZuLCAkYXJncy4uLik7XG4gICAgfVxuICAgIEByZXR1cm4gJGFyZ3M7XG59XG5cbi8vLyBGbGlwIHRoZSBvcmRlciBvZiBhIDItZWxlbWVudCBsaXN0XG5AZnVuY3Rpb24gZmxpcCgkeCwgJHkpIHtcbiAgICBAcmV0dXJuICgkeSwgJHgpO1xufVxuXG4vLy8gUmV0dXJuIGl0cyBhcmd1bWVudFxuQGZ1bmN0aW9uIGlkZW50aXR5KCR4KSB7XG4gICAgQHJldHVybiAkeDtcbn1cblxuLy8vIFJldHVybiBmaXJzdCBlbGVtZW50IG9mIGEgbGlzdFxuQGZ1bmN0aW9uIGZpcnN0KCRsc3QpIHtcbiAgICBAcmV0dXJuIG50aCgkbHN0LCAxKTtcbn1cblxuLy8vIFJldHVybiBzZWNvbmQgZWxlbWVudCBvZiBhIGxpc3RcbkBmdW5jdGlvbiBzZWNvbmQoJGxzdCkge1xuICAgIEByZXR1cm4gbnRoKCRsc3QsIDIpO1xufVxuXG4vLy8gUmV0dXJuIGZpcnN0IGFyZ3VtZW50XG5AZnVuY3Rpb24gZmlyc3QtYXJnKCR4LCAkYXJncy4uLikge1xuICAgIEByZXR1cm4gJHg7XG59XG5cbi8vLyBSZXR1cm4gc2Vjb25kIGFyZ3VtZW50XG5AZnVuY3Rpb24gc2Vjb25kLWFyZygkeCwgJHksICRhcmdzLi4uKSB7XG4gICAgQHJldHVybiAkeTtcbn1cblxuLy8vIFJldHVybiB0cnVlIGlmICRhID4gJGJcbi8vLyBAYXJnICRhIC0gRmlyc3QgYXJndW1lbnRcbi8vLyBAYXJnICRiIC0gU2Vjb25kIGFyZ3VtZW50XG5AZnVuY3Rpb24gZ3QoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYSA+ICRiO1xufVxuXG4vLy8gUmV0dXJuIHRydWUgaWYgJGEgPj0gJGJcbi8vLyBAYXJnICRhIC0gRmlyc3QgYXJndW1lbnRcbi8vLyBAYXJnICRiIC0gU2Vjb25kIGFyZ3VtZW50XG5AZnVuY3Rpb24gZ2UoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYSA+PSAkYjtcbn1cblxuLy8vIFJldHVybiB0cnVlIGlmICRhIDwgJGJcbi8vLyBAYXJnICRhIC0gRmlyc3QgYXJndW1lbnRcbi8vLyBAYXJnICRiIC0gU2Vjb25kIGFyZ3VtZW50XG5AZnVuY3Rpb24gbHQoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYSA8ICRiO1xufVxuXG4vLy8gUmV0dXJuIHRydWUgaWYgJGEgPD0gJGJcbi8vLyBAYXJnICRhIC0gRmlyc3QgYXJndW1lbnRcbi8vLyBAYXJnICRiIC0gU2Vjb25kIGFyZ3VtZW50XG5AZnVuY3Rpb24gbGUoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYSA8PSAkYjtcbn1cblxuLy8vIFJldHVybiB0cnVlIGlmICRhICE9ICRiXG4vLy8gQGFyZyAkYSAtIEZpcnN0IGFyZ3VtZW50XG4vLy8gQGFyZyAkYiAtIFNlY29uZCBhcmd1bWVudFxuQGZ1bmN0aW9uIG5lKCRhLCAkYikge1xuICAgIEByZXR1cm4gJGEgIT0gJGI7XG59XG5cbi8vLyBSZXR1cm4gdHJ1ZSBpZiAkYSA9PSAkYlxuLy8vIEBhcmcgJGEgLSBGaXJzdCBhcmd1bWVudFxuLy8vIEBhcmcgJGIgLSBTZWNvbmQgYXJndW1lbnRcbkBmdW5jdGlvbiBlcSgkYSwgJGIpIHtcbiAgICBAcmV0dXJuICRhID09ICRiO1xufVxuXG4vLy8gQWRkIHR3byBudW1iZXJzXG4vLy8gQGFyZyAkYSAtIEZpcnN0IGFyZ3VtZW50XG4vLy8gQGFyZyAkYiAtIFNlY29uZCBhcmd1bWVudFxuQGZ1bmN0aW9uIGFkZCgkYSwgJGIpIHtcbiAgICBAcmV0dXJuICRhICsgJGI7XG59XG5cbi8vLyBSZXZlcnNlIGFkZGl0aW9uICh1c2VmdWwgZm9yIHN0cmluZ3MpXG4vLy8gQGFyZyAkYSAtIEZpcnN0IGFyZ3VtZW50XG4vLy8gQGFyZyAkYiAtIFNlY29uZCBhcmd1bWVudFxuQGZ1bmN0aW9uIHJhZGQoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYiArICRhO1xufVxuXG4vLy8gU3VidHJhY3QgdHdvIG51bWJlcnNcbi8vLyBAYXJnICRhIC0gRmlyc3QgYXJndW1lbnRcbi8vLyBAYXJnICRiIC0gU2Vjb25kIGFyZ3VtZW50XG5AZnVuY3Rpb24gc3ViKCRhLCAkYikge1xuICAgIEByZXR1cm4gJGEgLSAkYjtcbn1cblxuLy8vIEZsaXBwZWQgYXBwbGljYXRpb24gb2Ygc3ViXG5AZnVuY3Rpb24gb3AtcnN1YigkYSwgJGIpIHtcbiAgICBAcmV0dXJuICRiIC0gJGE7XG59XG5cbi8vLyBNdWx0aXBseSB0d28gbnVtYmVyc1xuLy8vIEBhcmcgJGEgLSBGaXJzdCBhcmd1bWVudFxuLy8vIEBhcmcgJGIgLSBTZWNvbmQgYXJndW1lbnRcbkBmdW5jdGlvbiBtdWwoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYSAqICRiO1xufVxuXG4vLy8gUmV2ZXJzZSBtdWx0aXBsaWNhdGlvblxuLy8vIEBhcmcgJGEgLSBGaXJzdCBhcmd1bWVudFxuLy8vIEBhcmcgJGIgLSBTZWNvbmQgYXJndW1lbnRcbkBmdW5jdGlvbiBtdWwoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYiAqICRhO1xufVxuXG4vLy8gRGl2aWRlIHR3byBudW1iZXJzXG4vLy8gQGFyZyAkYSAtIEZpcnN0IGFyZ3VtZW50XG4vLy8gQGFyZyAkYiAtIFNlY29uZCBhcmd1bWVudFxuQGZ1bmN0aW9uIGRpdigkYSwgJGIpIHtcbiAgICBAcmV0dXJuICRhIC8gJGI7XG59XG5cbi8vLyBGbGlwcGVkIGFwcGxpY2F0aW9uIG9mIGRpdlxuQGZ1bmN0aW9uIHJkaXYoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYiAvICRhO1xufVxuXG4vLy8gTW9kdWxvIGRpdmlzaW9uIG9mIHR3byBudW1iZXJzXG4vLy8gQGFyZyAkYSAtIEZpcnN0IGFyZ3VtZW50XG4vLy8gQGFyZyAkYiAtIFNlY29uZCBhcmd1bWVudFxuQGZ1bmN0aW9uIG1vZCgkYSwgJGIpIHtcbiAgICBAcmV0dXJuICRhICUgJGI7XG59XG5cbi8vLyBGbGlwcGVkIGFwcGxpY2F0aW9uIG9mIG1vZFxuQGZ1bmN0aW9uIHJtb2QoJGEsICRiKSB7XG4gICAgQHJldHVybiAkYiAlICRhO1xufVxuXG4vLy8gUmV0dXJuIHRydWUgZm9yIG5vbi1udWxsIHZhbHVlc1xuQGZ1bmN0aW9uIG5vdC1udWxsKCR4KSB7XG4gICAgQHJldHVybiAkeCAhPSBudWxsO1xufVxuXG4vLy8gTXVsdGlwbHkgbnVtYmVyIGJ5IC0xIG9yIGludmVydCBib29sZWFuIHZhbHVlc1xuQGZ1bmN0aW9uIG5lZ2F0ZSgkeCkge1xuICAgIEBpZiAkeCA9PSB0cnVlIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9IEBlbHNlIGlmICR4ID09IGZhbHNlIHtcbiAgICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBAcmV0dXJuIC0xICogJHg7XG59XG5cbi8vLyBSZXR1cm4gdHJ1ZSBmb3IgZXZlbiBudW1iZXJzXG5AZnVuY3Rpb24gaXMtZXZlbigkeCkge1xuICAgIEByZXR1cm4gJHggJSAyID09IDA7XG59XG5cbi8vLyBSZXR1cm4gdHJ1ZSBmb3Igb2RkIG51bWJlcnNcbkBmdW5jdGlvbiBpcy1vZGQoJHgpIHtcbiAgICBAcmV0dXJuICR4ICUgMiA9PSAxO1xufVxuXG4vLy8gUmV0dXJuIHRydWUgaWYgJHggaXMgZGl2aXNpYmxlIGJ5ICRuLlxuLy8vXG4vLy8gQGFyZyAkeCAtIEFyZ3VtZW50XG4vLy8gQGFyZyAkbiAtIERpdmlzb3JcbkBmdW5jdGlvbiBpcy1kaXZpc2libGUtYnkoJHgsICRuKSB7XG4gICAgQHJldHVybiAkeCAlICRuID09IDA7XG59XG5cbi8vLyBSZXR1cm4gdHJ1ZSBpZiBhbGwgdGhlIGdpdmVuIGtleXMgYXJlIHJlcGxpY2F0ZWQgd2l0aCB0aGUgc2FtZSB2YWx1ZXMgaW5cbi8vLyB0aGUgYXJndW1lbnQgbWFwLlxuLy8vXG4vLy8gQGFyZyAkbWFwIC0gSW5wdXQgbWFwXG4vLy8gQGFyZyAka2V5cyAtIEEgbWFwIG9mIGtleXMgdG8gdmFsdWVzIHRvIGNvbXBhcmUgd2l0aCB0aGUgbGhzXG5AZnVuY3Rpb24ga2V5cy1lcXVhbCgkbWFwLCAka2V5cykge1xuICAgIEBlYWNoICRrLCAkdiBpbiAka2V5cyB7XG4gICAgICAgIEBpZiBtYXAtZ2V0KCRtYXAsICRrKSAhPSAkdiB7XG4gICAgICAgICAgICBAcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gdHJ1ZTtcbn1cbiIsCgkJIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gTElOS0VEIExJU1RTXG4vLy8gQGdyb3VwIGxpc3Rcbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgJ2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICdsaXN0LXBlcmYnO1xuXG4kX2ZuLWxpc3Qtbm90LWdpdmVuOiB1bmlxdWUtaWQoKSAhZGVmYXVsdDtcbiRmbi1lbXB0eS1hcnJheTogam9pbigoKSwgKCksIGNvbW1hKSAhZGVmYXVsdDtcbiRmbi1lbXB0eS1tYXA6IG1hcC1yZW1vdmUoKCksIG51bGwpICFkZWZhdWx0O1xuXG4vLyBCQVNJQyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gQ3JlYXRlIGEgbGlzdCBvZiBjb25zIGNlbGxzIGZyb20gYXJndW1lbnRzXG4vLy8gVXNlIGFzIEwoMSwgMiwgMywgNClcbkBmdW5jdGlvbiBMKCR4MTogJF9mbi1saXN0LW5vdC1naXZlbixcbiAgICAgICAgICAgICR4MjogJF9mbi1saXN0LW5vdC1naXZlbixcbiAgICAgICAgICAgICR4MzogJF9mbi1saXN0LW5vdC1naXZlbixcbiAgICAgICAgICAgICR4NDogJF9mbi1saXN0LW5vdC1naXZlbixcbiAgICAgICAgICAgICR4NTogJF9mbi1saXN0LW5vdC1naXZlbixcbiAgICAgICAgICAgICR4NjogJF9mbi1saXN0LW5vdC1naXZlbixcbiAgICAgICAgICAgICRhcmdzLi4uKSB7XG4gICAgQGlmICR4MSA9PSAkX2ZuLWxpc3Qtbm90LWdpdmVuIHtcbiAgICAgICAgQHJldHVybiBudWxsO1xuICAgIH0gQGVsc2UgaWYgJHgyID09ICRfZm4tbGlzdC1ub3QtZ2l2ZW4ge1xuICAgICAgICBAcmV0dXJuICgkeDEgbnVsbCk7XG4gICAgfSBAZWxzZSBpZiAkeDMgPT0gJF9mbi1saXN0LW5vdC1naXZlbiB7XG4gICAgICAgIEByZXR1cm4gKCR4MSAoJHgyIG51bGwpKTtcbiAgICB9IEBlbHNlIGlmICR4NCA9PSAkX2ZuLWxpc3Qtbm90LWdpdmVuIHtcbiAgICAgICAgQHJldHVybiAoJHgxICgkeDIgKCR4MyBudWxsKSkpO1xuICAgIH0gQGVsc2UgaWYgJHg1ID09ICRfZm4tbGlzdC1ub3QtZ2l2ZW4ge1xuICAgICAgICBAcmV0dXJuICgkeDEgKCR4MiAoJHgzICgkeDQgbnVsbCkpKSk7XG4gICAgfSBAZWxzZSBpZiAkeDYgPT0gJF9mbi1saXN0LW5vdC1naXZlbiB7XG4gICAgICAgIEByZXR1cm4gKCR4MSAoJHgyICgkeDMgKCR4NCAoJHg1IG51bGwpKSkpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHJldHVybiAoJHgxICgkeDIgKCR4MyAoJHg0ICgkeDUgKCR4NiBMKCRhcmdzLi4uKSkpKSkpKTtcbiAgICB9XG59XG5cbi8vLyBSZXR1cm5zIGZpcnN0IGVsZW1lbnQgb2YgbGlzdFxuLy8vXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG5AZnVuY3Rpb24gY2FyKCR4cykge1xuICAgIEByZXR1cm4gbnRoKCR4cywgMSk7XG59XG5cbi8vLyBSZXR1cm5zIGxpc3QncyB0YWlsXG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBjZHIoJHhzKSB7XG4gICAgQHJldHVybiBudGgoJHhzLCAyKTtcbn1cblxuLy8vIENvbnN0cnVjdCBsaXN0LCBhZGRpbmcgZmlyc3QgYXJndW1lbnQgJHggaW4gZnJvbnQgb2YgYSBsaXN0IG9mICR4cy5cbi8vL1xuLy8vIEBhcmcgJHggLSBFbGVtZW50XG4vLy8gQGFyZyAkeHMgLSBMaXN0XG5AZnVuY3Rpb24gY29ucygkeCwgJHhzKSB7XG4gICAgQHJldHVybiAoJHggJHhzKTtcbn1cblxuLy8vIFJldHVybiBsaXN0IGxlbmd0aFxuLy8vXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG5AZnVuY3Rpb24gbHN0LWxlbmd0aCgkeHMpIHtcbiAgICAkc2l6ZTogMDtcbiAgICBAd2hpbGUgJHhzIHtcbiAgICAgICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAgICAgJHNpemU6ICRzaXplICsgMTtcbiAgICB9XG4gICAgQHJldHVybiAkc2l6ZTtcbn1cblxuLy8vIFJldHVybiB0aGUgbi10aCBlbGVtZW50IGluIGxpc3Qgb2YgJHhzXG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3Rcbi8vLyBAYXJnICRuIC0gUmVxdWVzdGVkIHBvc2l0aW9uXG5AZnVuY3Rpb24gbHN0LW50aCgkeHMsICRuLCAkZGVmYXVsdDogbnVsbCkge1xuICAgIEBpZiAkeHMgPT0gbnVsbCB7XG4gICAgICAgIEBlcnJvciBcIkxpc3QgZG8gbm90IGhhdmUgZW5vdWdoIGVsZW1lbnRzLlwiXG4gICAgfVxuICAgIEBpZiAkbiA8PSAwIHtcbiAgICAgICAgQGVycm9yIFwiTmVnYXRpdmUgb3IgemVybyBpbmRleGVzIG5vdCBhbGxvd2VkLlwiXG4gICAgfVxuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICBAaWYgJG4gPT0gMSB7XG4gICAgICAgICAgICBAcmV0dXJuIG50aCgkeHMsIDEpO1xuICAgICAgICB9XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgICRuOiAkbiAtIDE7XG4gICAgfVxuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG59XG5cbi8vLyBSZXR1cm4gdGhlIHBvc2l0aW9uIG9mICR2YWx1ZSBpbiBsaXN0IG9mICR4cy5cbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdFxuLy8vIEBhcmcgJHZhbHVlIC0gTG9va3VwIHZhbHVlXG5AZnVuY3Rpb24gbHN0LWluZGV4KCR4cywgJHZhbHVlLCAkZGVmYXVsdDogbnVsbCkge1xuICAgICRpZHg6IDA7XG4gICAgQHdoaWxlICR4cyB7XG4gICAgICAgICRpZHg6ICRpZHggKyAxO1xuICAgICAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgIEBpZiAkeCA9PSAkdmFsdWUge1xuICAgICAgICAgICAgQHJldHVybiAkaWR4O1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG59XG5cbi8vLyBSZXR1cm4gdHJ1ZSBpZiBsaXN0IG9mICR4cyBjb250YWlucyAkdmFsdWVcbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdFxuLy8vIEBhcmcgJHZhbHVlIC0gTG9va3VwIHZhbHVlXG5AZnVuY3Rpb24gbHN0LWNvbnRhaW5zKCR4cywgJHZhbHVlKSB7XG4gICAgQHJldHVybiBsc3QtaW5kZXgoJHhzLCAkdmFsdWUpICE9IG51bGw7XG59XG5cbi8vLyBDYXN0IGxpc3Qgb2JqZWN0IGFzIGEgbGlua2VkIGxpc3QuXG4vLy9cbi8vLyBAYXJnICR4cyAtIGxpc3Qgb3IgbGlzdC1saWtlIG9iamVjdC5cbkBmdW5jdGlvbiB0by1sc3QoJHhzKSB7XG4gICAgLy9ub2luc3BlY3Rpb24gQ3NzSW52YWxpZEZ1bmN0aW9uXG4gICAgQGlmICR4cyA9PSBudWxsIHtcbiAgICAgICAgQHJldHVybiAkeHM7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCR4cykgPT0gJ2xpc3QnIHtcbiAgICAgICAgQGlmIGlzLWJyYWNrZXRlZCgkeHMpIG9yIGxpc3Qtc2VwYXJhdG9yKCR4cykgPT0gJ2NvbW1hJyB7XG4gICAgICAgICAgICBAcmV0dXJuIGxzdC1mcm9tLWFycmF5KCR4cyk7XG4gICAgICAgIH0gQGVsc2UgaWYgbGVuZ3RoKCR4cykgPT0gMiB7XG4gICAgICAgICAgICBAcmV0dXJuICR4cztcbiAgICAgICAgfVxuICAgIH1cbiAgICBAZXJyb3IgXCJJbnB1dCBtdXN0IGJlIGEgbGlua2VkIGxpc3QuXFxuSGludDogY3JlYXRlIG9uZSBmcm9tIGEgcmVndWxhciBTYXNzIGFycmF5IHVzaW5nIEwoJHhzLi4uKVwiXG59XG5cbi8vIEpPSU5JTkcgQU5EIE1FUkdJTkcgTElTVFMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBmdW5jdGlvbiBfbHN0LXJldmVyc2UoJHhzKSB7XG4gICAgJHlzOiBudWxsO1xuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgICR5czogKCR4ICR5cyk7XG4gICAgfVxuICAgIEByZXR1cm4gJHlzO1xufVxuXG4vLy8gUmV2ZXJzZSBvcmRlciBvZiBlbGVtZW50cyBpbiBsaXN0XG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3QtcmV2ZXJzZSgkeHMpIHtcbiAgICBAcmV0dXJuIF9sc3QtcmV2ZXJzZSh0by1sc3QoJHhzKSk7XG59XG5cbi8vLyBaaXAgdHdvIGxpc3RzIHRvZ2V0aGVyIGFuZCByZXR1cm4gYSBsaXN0IG9mIGNvbnNlcy5cbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdFxuLy8vIEBhcmcgJHlzIC0gTGlzdFxuQGZ1bmN0aW9uIGxzdC16aXAoJHhzLCAkeXMsICRyZXZlcnNlOiBmYWxzZSkge1xuICAgICRyZXM6IG51bGw7XG4gICAgQHdoaWxlICR4cyBhbmQgJHlzIHtcbiAgICAgICAgJHJlczogKChudGgoJHhzLCAxKSBudGgoJHlzLCAxKSkgJHJlcyk7XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgICR5czogbnRoKCR5cywgMik7XG4gICAgfVxuICAgIEByZXR1cm4gaWYoJHJldmVyc2UsICRyZXMsIF9sc3QtcmV2ZXJzZSgkcmVzKSk7XG59XG5cbkBmdW5jdGlvbiBfbHN0LXN0aXRjaCgkeHMsICR5cykge1xuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgICR5czogKCR4ICR5cyk7XG4gICAgfVxuICAgIEByZXR1cm4gJHlzO1xufVxuXG4vLy8gQ3JlYXRlIGEgbGlzdCB3aXRoIHJldmVyc2VkICR4cyBmb2xsb3dlZCBieSAkeXMuXG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3Rcbi8vLyBAYXJnICR5cyAtIExpc3RcbkBmdW5jdGlvbiBsc3Qtc3RpdGNoKCR4cywgJHlzKSB7XG4gICAgQHJldHVybiBfbHN0LXN0aXRjaCh0by1sc3QoJHhzKSwgdG8tbHN0KCR5cykpO1xufVxuXG4vLy8gQ3JlYXRlIGEgbGlzdCB3aXRoICR4cyBmb2xsb3dlZCBieSAkeXMuXG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3Rcbi8vLyBAYXJnICR5cyAtIExpc3RcbkBmdW5jdGlvbiBsc3Qtam9pbigkeHMsICR5cykge1xuICAgIEByZXR1cm4gX2xzdC1zdGl0Y2goX2xzdC1yZXZlcnNlKHRvLWxzdCgkeHMpKSwgdG8tbHN0KCR5cykpO1xufVxuXG4vLy8gQXBwZW5kIGFuIGFycmF5IG9mIGxpc3RzIHRvZ2V0aGVyXG4vLy9cbi8vLyBAYXJnICRsaXN0cyAtIEFycmF5IG9mIGxpc3RzXG5AZnVuY3Rpb24gbHN0LWNvbmNhdCgkbGlzdHMpIHtcbiAgICAkeHM6IG50aCgkbGlzdHMsIGxlbmd0aCgkbGlzdHMpKTtcbiAgICBAZm9yICRpIGZyb20gbGVuZ3RoKCRsaXN0cykgLSAxIHRocm91Z2ggMSB7XG4gICAgICAgICR4czogbHN0LWpvaW4obnRoKCRsaXN0cywgJGkpLCAkeHMpO1xuICAgIH1cbiAgICBAcmV0dXJuICR4cztcbn1cblxuLy8vIEludGVyc3BlcnNlICR2YWx1ZSBiZXR3ZWVuIGVsZW1lbnRzIG9mICR4c1xuLy8vICAgICBsc3QtaW50ZXJzcGVyc2UoTCgxLCAyLCAzKSwgMCkgPT0+IEwoMSwgMCwgMiwgMCwgMylcbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdFxuLy8vIEBhcmcgJHZhbHVlIC0gTGlzdFxuQGZ1bmN0aW9uIGxzdC1pbnRlcnNwZXJzZSgkeHMsICR2YWx1ZSwgJHJldmVyc2U6IGZhbHNlKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICBAaWYgJHhzID09IG51bGwge1xuICAgICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICAgICRyZXM6IG51bGw7XG4gICAgJHk6IG50aCgkeHMsIDEpO1xuICAgICR4czogbnRoKCR4cywgMik7XG4gICAgQHdoaWxlICR4cyB7XG4gICAgICAgICR4OiBudGgoJHhzLCAxKTtcbiAgICAgICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAgICAgJHJlczogKCR2YWx1ZSAoJHkgJHJlcykpO1xuICAgICAgICAkeTogJHg7XG4gICAgfVxuICAgICRyZXM6ICgkeSAkcmVzKTtcbiAgICBAcmV0dXJuIGlmKCRyZXZlcnNlLCAkcmVzLCBfbHN0LXJldmVyc2UoJHJlcykpO1xufVxuXG4vLy8gSW50ZXJjYWxhdGUgZWxlbWVudHMgb2YgYm90aCBsaXN0c1xuLy8vXG4vLy8gQGFyZyAkeHMgLSBGaXJzdCBsaXN0XG4vLy8gQGFyZyAkeXMgLSBTZWNvbmQgbGlzdFxuQGZ1bmN0aW9uIGxzdC1pbnRlcmNhbGF0ZSgkeHMsICR5cywgJHJldmVyc2U6IGZhbHNlKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICAkeXM6IHRvLWxzdCgkeXMpO1xuICAgICRyZXM6IG51bGw7XG4gICAgQHdoaWxlICR4cyBhbmQgJHlzIHtcbiAgICAgICAgJHg6IG50aCgkeHMsIDEpO1xuICAgICAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgICAgICAkeTogbnRoKCR5cywgMSk7XG4gICAgICAgICR5czogbnRoKCR5cywgMik7XG4gICAgICAgICRyZXM6ICgkeSAoJHggJHJlcykpO1xuICAgICAgICBAaWYgbm90ICR4cyB7XG4gICAgICAgICAgICBAcmV0dXJuIF9sc3Qtc3RpdGNoKCRyZXMsICR5cylcbiAgICAgICAgfVxuICAgICAgICBAaWYgbm90ICR5cyB7XG4gICAgICAgICAgICBAcmV0dXJuIF9sc3Qtc3RpdGNoKCRyZXMsICR4cylcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuIGlmKCRyZXZlcnNlLCAkcmVzLCBfbHN0LXJldmVyc2UoJHJlcykpO1xufVxuXG4vLyBDUkVBVElPTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gQ3JlYXRlIGxpc3Qgd2l0aCAkbiByZXBldGl0aW9uIG9mICR4XG4vLy9cbi8vLyBAYXJnICR4IC0gVmFsdWVcbi8vLyBAYXJnICRuIC0gTnVtYmVyIG9mIHJlcGV0aXRpb25zXG5AZnVuY3Rpb24gbHN0LXJlcGVhdCgkeCwgJG46IDEpIHtcbiAgICAkeXM6IG51bGw7XG4gICAgQHdoaWxlICRuID4gMCB7XG4gICAgICAgICR5czogKCR4ICR5cyk7XG4gICAgICAgICRuOiAkbiAtIDE7XG4gICAgfVxuICAgIEByZXR1cm4gJHlzO1xufVxuXG4vLy8gUmV0dXJuIGEgcmFuZ2Ugb2YgbnVtYmVycyBmcm9tICRhIHRvICRiIChpbmNsdXNpdmUpXG4vLy9cbi8vLyBAYXJnICRhIC0gU3RhcnRpbmcgb2YgcmFuZ2Vcbi8vLyBAYXJnICRiIC0gRW5kIG9mIHJhbmdlXG4vLy8gQGFyZyAkc3RlcCAob3B0aW9uYWwpIC0gU3RlcCBiZXR3ZWVuIHN1Y2Nlc3NpdmUgdmFsdWVzLlxuQGZ1bmN0aW9uIGxzdC1yYW5nZSgkYSwgJGIsICRzdGVwOiAxKSB7XG4gICAgQGlmICRiIDwgJGEge1xuICAgICAgICBAcmV0dXJuIGxzdC1yYW5nZSgkYiwgJGEsIC0kc3RlcCk7XG4gICAgfVxuXG4gICAgJHlzOiBudWxsO1xuICAgIEB3aGlsZSAkYSA8PSAkYiB7XG4gICAgICAgICR5czogKCRhICR5cyk7XG4gICAgICAgICRhOiAkYSArICRzdGVwO1xuICAgIH1cbiAgICBAcmV0dXJuIF9sc3QtcmV2ZXJzZSgkeXMpO1xufVxuXG4vLyBUUkFOU0ZPUk1BVElPTlMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AZnVuY3Rpb24gX2xzdC1tYXAoJGZuLCAkeHMsICRhcmdzKSB7XG4gICAgJHlzOiBudWxsO1xuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgICR5czogKGNhbGwoJGZuLCAkeCwgJGFyZ3MuLi4pICR5cyk7XG4gICAgfVxuICAgIEByZXR1cm4gJHlzO1xufVxuXG4vLy8gQ3JlYXRlIGEgbGlzdCBvZiBmbigkeCkgZm9yIGVhY2ggJHggaW4gJHhzLlxuLy8vXG4vLy8gQW55IGFkZGl0aW9uYWwgYXJndW1lbnRzIGFyZSBwYXNzZWQgdG8gdGhlIGZ1bmN0aW9uIGR1cmluZyBmdW5jdGlvblxuLy8vIGFwcGxpY2F0aW9uLiBJZiBvcmRlciBvZiBlbGVtZW50cyBpcyBub3QgaW1wb3J0YW50LCB1c2UgbHN0LXJldm1hcCwgc2luY2UgaXRcbi8vLyBpcyBmYXN0ZXIuXG4vLy9cbi8vLyBAYXJnICRmbiAtIEZ1bmN0aW9uIG5hbWUgb3IgaGFuZGxlXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG5AZnVuY3Rpb24gbHN0LW1hcCgkZm4sICR4cywgJGFyZ3MuLi4pIHtcbiAgICBAcmV0dXJuIF9sc3QtcmV2ZXJzZShfbHN0LW1hcChhcy1mdW5jKCRmbiksIHRvLWxzdCgkeHMpLCAkYXJncykpO1xufVxuXG4vLy8gTGlrZSBtYXAsIGJ1dCByZXR1cm4gYSByZXZlcnNlZCBjb3B5IG9mIHRoZSBtYXBwZWQgbGlzdC5cbi8vL1xuLy8vIEBhcmcgJGZuIC0gRnVuY3Rpb24gbmFtZSBvciBoYW5kbGVcbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3QtcmV2bWFwKCRmbiwgJHhzLCAkYXJncy4uLikge1xuICAgIEByZXR1cm4gX2xzdC1tYXAoYXMtZnVuYygkZm4pLCB0by1sc3QoJHhzKSwgJGFyZ3MpO1xufVxuXG4vLy8gQ3JlYXRlIGEgbGlzdCBvZiBmbigkeCkgZm9yIGVhY2ggJHggaW4gJHhzLlxuLy8vIERpZmZlcmVudGx5IGZyb20gbHN0LW1hcCwgdGhpcyBmdW5jdGlvbiBhcHBsaWVzICR4ICoqYWZ0ZXIqKiB0aGUgZXh0cmFcbi8vLyBhcmd1bWVudHMuXG4vLy9cbi8vLyBBbnkgYWRkaXRpb25hbCBhcmd1bWVudHMgYXJlIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24gZHVyaW5nIGZ1bmN0aW9uXG4vLy8gYXBwbGljYXRpb24uXG4vLy9cbi8vLyBAYXJnICRmbiAtIEZ1bmN0aW9uIG5hbWUgb3IgaGFuZGxlXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG5AZnVuY3Rpb24gbHN0LXJtYXAoJGZuLCAkeHMsICRhcmdzLi4uKSB7XG4gICAgQGlmIGxlbmd0aCgkYXJncykgPT0gMCB7XG4gICAgICAgIEByZXR1cm4gbHN0LW1hcCgkZm4sICR4cyk7XG4gICAgfVxuICAgICRmbjogYXMtZnVuYygkZm4pO1xuICAgICR4czogdG8tbHN0KCR4cyk7XG4gICAgJHlzOiBudWxsO1xuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgICRhcmdzLWFsbDogYXBwZW5kKCRhcmdzLCAkeCk7XG4gICAgICAgICR5czogKGNhbGwoJGZuLCAkYXJncy1hbGwuLi4pICR5cyk7XG4gICAgfVxuICAgIEByZXR1cm4gX2xzdC1yZXZlcnNlKCR5cyk7XG59XG5cbi8vLyBDcmVhdGUgYSBsaXN0IG9mIGZuKCRwb3NpdGlvbiwgJHgpIGZvciBlYWNoICR4IGluICR4cy4gUG9zaXRpb24gc3RhcnRzXG4vLy8gY291bnRpbmcgYXQgMS5cbi8vL1xuLy8vIEFueSBhZGRpdGlvbmFsIGFyZ3VtZW50cyBhcmUgcGFzc2VkIHRvIHRoZSBmdW5jdGlvbiBkdXJpbmcgZnVuY3Rpb25cbi8vLyBhcHBsaWNhdGlvbi5cbi8vL1xuLy8vIEBhcmcgJGZuIC0gRnVuY3Rpb24gbmFtZSBvciBoYW5kbGVcbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3QtaW5kZXgtbWFwKCRmbiwgJHhzLCAkYXJncy4uLikge1xuICAgICRmbjogYXMtZnVuYygkZm4pO1xuICAgICR4czogdG8tbHN0KCR4cyk7XG4gICAgJHlzOiBudWxsO1xuICAgICRpZHg6IDE7XG4gICAgQHdoaWxlICR4cyB7XG4gICAgICAgICR4OiBudGgoJHhzLCAxKTtcbiAgICAgICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAgICAgJHlzOiAoY2FsbCgkZm4sICRpZHgsICR4LCAkYXJncy4uLikgJHlzKTtcbiAgICAgICAgJGlkeDogJGlkeCArIDE7XG4gICAgfVxuICAgIEByZXR1cm4gX2xzdC1yZXZlcnNlKCR5cyk7XG59XG5cbi8vLyBGaWx0ZXIgbGlzdCBieSBwcmVkaWNhdGUgZnVuY3Rpb24uXG4vLy9cbi8vLyBBbnkgYWRkaXRpb25hbCBhcmd1bWVudHMgYXJlIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24gZHVyaW5nIGZ1bmN0aW9uXG4vLy8gYXBwbGljYXRpb24uXG4vLy9cbi8vLyBAYXJnICRwcmVkIC0gUHJlZGljYXRlIGZ1bmN0aW9uIChpLmUuLCBmdW5jdGlvbiB0aGF0IHJldHVybiBib29sZWFucylcbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3QtZmlsdGVyKCRwcmVkLCAkeHMsICRhcmdzLi4uKSB7XG4gICAgJHByZWQ6IGFzLWZ1bmMoJHByZWQpO1xuICAgICR4czogdG8tbHN0KCR4cyk7XG4gICAgJHlzOiBudWxsO1xuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgIEBpZiBjYWxsKCRwcmVkLCAkeCwgJGFyZ3MuLi4pIHtcbiAgICAgICAgICAgICR5czogKCR4ICR5cyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiBfbHN0LXJldmVyc2UoJHlzKTtcbn1cblxuLy8vIFJldHVybiAyIGxpc3RzLCB3aXRoIGVsZW1lbnRzIHNlcGFyYXRlZCBieSBwcmVkaWNhdGUgZnVuY3Rpb24uXG4vLy9cbi8vLyBBbnkgYWRkaXRpb25hbCBhcmd1bWVudHMgYXJlIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24gZHVyaW5nIGZ1bmN0aW9uXG4vLy8gYXBwbGljYXRpb24uXG4vLy9cbi8vLyBAYXJnICRwcmVkIC0gUHJlZGljYXRlIGZ1bmN0aW9uIChpLmUuLCBmdW5jdGlvbiB0aGF0IHJldHVybiBib29sZWFucylcbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3Qtc2VwYXJhdGUoJHByZWQsICR4cywgJGFyZ3MuLi4pIHtcbiAgICAkeHM6IHRvLWxzdCgkeHMpO1xuICAgICRsZWZ0OiBudWxsO1xuICAgICRyaWdodDogbnVsbDtcbiAgICAkcHJlZDogYXMtZnVuYygkcHJlZCk7XG4gICAgQHdoaWxlICR4cyB7XG4gICAgICAgICR4OiBudGgoJHhzLCAxKTtcbiAgICAgICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAgICAgQGlmIGNhbGwoJHByZWQsICR4LCAkYXJncy4uLikge1xuICAgICAgICAgICAgJGxlZnQ6ICgkeCAkbGVmdCk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJHJpZ2h0OiAoJHggJHJpZ2h0KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuIChfbHN0LXJldmVyc2UoJGxlZnQpIF9sc3QtcmV2ZXJzZSgkcmlnaHQpKTtcbn1cblxuLy8vIERyb3AgdGhlIGZpcnN0ICRuIGVsZW1lbnRzIG9mIGxpc3QuXG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3Rcbi8vLyBAYXJnICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzXG5AZnVuY3Rpb24gbHN0LWRyb3AoJHhzLCAkbikge1xuICAgICR4czogdG8tbHN0KCR4cyk7XG4gICAgQHdoaWxlICR4cyBhbmQgJG4gPiAwIHtcbiAgICAgICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAgICAgJG46ICRuIC0gMTtcbiAgICB9XG4gICAgQHJldHVybiAkeHM7XG59XG5cbi8vLyBLZWVwIGF0IG1vc3QgdGhlIGZpcnN0IG4gZWxlbWVudHMgb2YgbGlzdFxuLy8vXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG4vLy8gQGFyZyAkbiAtIE51bWJlciBvZiBlbGVtZW50c1xuQGZ1bmN0aW9uIGxzdC10YWtlKCR4cywgJG4pIHtcbiAgICAkeHM6IHRvLWxzdCgkeHMpO1xuICAgIEBpZiAkbiA8PSAwIG9yICR4cyA9PSBudWxsIHtcbiAgICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgICBAcmV0dXJuIChudGgoJHhzLCAxKSBsc3QtdGFrZShudGgoJHhzLCAyKSwgJG4gLSAxKSk7XG59XG5cbi8vLyBRdWljayBzb3J0IGFsZ29yaXRobVxuLy8vXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG5AZnVuY3Rpb24gbHN0LXNvcnQoJHhzKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICBAaWYgJHhzID09IG51bGwge1xuICAgICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICAgICR4OiBudGgoJHhzLCAxKTtcbiAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgICRwYWlyOiBsc3Qtc2VwYXJhdGUobHQsICR4cywgJHgpO1xuICAgIEByZXR1cm4gbHN0LWpvaW4obHN0LXNvcnQobnRoKCRwYWlyLCAxKSksICgkeCBsc3Qtc29ydChudGgoJHBhaXIsIDIpKSkpO1xufVxuXG4vLy8gSXRlcmF0ZSBpbiBjaHVua3Mgb2Ygc2l6ZSAkbi5cbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdFxuLy8vIEBhcmcgJG4gLSBNYXhpbXVtIG51bWJlciBvZiBlbGVtZW50cyBpbiBlYWNoIGNodW5rXG5AZnVuY3Rpb24gbHN0LWNodW5rcygkeHMsICRuKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICAkY2h1bms6IG51bGw7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbiB7XG4gICAgICAgIEBpZiAkeHMgIT0gbnVsbCB7XG4gICAgICAgICAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgICAgICAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgICAgICAgICAgJGNodW5rOiAoJHggJGNodW5rKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuIGlmKCRjaHVuayA9PSBudWxsLCBudWxsLCAoX2xzdC1yZXZlcnNlKCRjaHVuaykgbHN0LWNodW5rcygkeHMsICRuKSkpO1xufVxuXG4vLy8gSXRlcmF0ZSBpbiBjaHVua3Mgb2YgMi5cbi8vLyBTaW1pbGFyIHRvIGxzdC1jaHVua3MsIGJ1dCBlbGVtZW50cyBhcmUgY29ucyBjZWxscyBhbmQgaXQgaXMgc2xpZ2h0bHkgbW9yZVxuLy8vIGVmZmljaWVudC5cbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdC5cbi8vLyBAYXJnICRyZXZlcnNlIC0gSWYgdHJ1ZSwgcmV2ZXJzZSByZXN1bHQuXG5AZnVuY3Rpb24gbHN0LXBhaXJ3aXNlKCR4cywgJHJldmVyc2U6IGZhbHNlKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICAkeXM6IG51bGw7XG4gICAgQHdoaWxlICR4cyB7XG4gICAgICAgICRhOiBudGgoJHhzLCAxKTtcbiAgICAgICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAgICAgQGlmICR4cyB7XG4gICAgICAgICAgICAkYjogbnRoKCR4cywgMSk7XG4gICAgICAgICAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgICAgICAgICAgJHlzOiAoKCRhICRiKSAkeXMpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICR5czogKGFwcGVuZCgoKSwgJGEpICR5cyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiBpZigkcmV2ZXJzZSwgJHlzLCBfbHN0LXJldmVyc2UoJHlzKSk7XG59XG5cbi8vLyBDcmVhdGUgYSBsaXN0IG9mIHBhaXJzIG9mIChwb3NpdGlvbiB2YWx1ZSkuXG4vLy9cbi8vLyBAYXJnICR4cyAtIElucHV0IGxpc3Rcbi8vLyBAYXJnICRzdGFydCAtIE9wdGlvbmFsIHN0YXJ0aW5nIHZhbHVlIChiZWdpbnMgd2l0aCAxKVxuLy8vIEBhcmcgJHN0ZXAgLSBPcHRpb25hbCBzdGVwICgxIGlmIG5vdCBnaXZlbilcbkBmdW5jdGlvbiBsc3QtZW51bWVyYXRlKCR4cywgJHN0YXJ0OiAxLCAkc3RlcDogMSwgJHJldmVyc2U6IGZhbHNlKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICAkcmVzOiBudWxsO1xuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgICAgICRyZXM6IGNvbnMoKCRzdGFydCAkeCksICRyZXMpO1xuICAgICAgICAkc3RhcnQ6ICRzdGFydCArICRzdGVwO1xuICAgIH1cbiAgICBAcmV0dXJuIGlmKCRyZXZlcnNlLCAkcmVzLCBfbHN0LXJldmVyc2UoJHJlcykpO1xufVxuXG4vLyBGT0xEUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AZnVuY3Rpb24gX2xzdC1yZWR1Y2UoJGZuLCAkeHMsICRpbml0LCAkYXJncykge1xuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICAkaW5pdDogY2FsbCgkZm4sIG50aCgkeHMsIDEpLCAkaW5pdCwgJGFyZ3MuLi4pO1xuICAgICAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgIH1cbiAgICBAcmV0dXJuICRpbml0O1xufVxuXG4vLy8gUmVkdWNlIG5vbi1lbXB0eSBsaXN0IGJ5IGZ1bmN0aW9uICRmbi5cbi8vL1xuLy8vIEFyZ3VtZW50cyBhcmUgcGFzc2VkIGluIHRoZSBzYW1lIG9yZGVyIHRoYXQgdGhleSBhcHBlYXIgaW4gdGhlIHRoZSBmdW5jdGlvblxuLy8vIHNpZ25hdHVyZSwgaS5lLiwgZm4oJHgsICRpbml0LCAuLi4pXG4vLy9cbi8vLyBAYXJnICRmbiAtIEEgYmluYXJ5IG9wZXJhdG9yIGZ1bmN0aW9uXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG4vLy8gQGFyZyAkaW5pdCAtIEluaXRpYWwgdmFsdWUgb2YgcmVkdWN0aW9uXG5AZnVuY3Rpb24gbHN0LXJlZHVjZSgkZm4sICR4cywgJGluaXQ6ICRfZm4tbGlzdC1ub3QtZ2l2ZW4sICRhcmdzLi4uKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICBAaWYgJGluaXQgPT0gJF9mbi1saXN0LW5vdC1naXZlbiB7XG4gICAgICAgIEBpZiAkeHMge1xuICAgICAgICAgICAgJGluaXQ6IG50aCgkeHMsIDEpO1xuICAgICAgICAgICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAZXJyb3IgXCJDYW5ub3QgcmVkdWNlIGFuIGVtcHR5IGxpc3RcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuIF9sc3QtcmVkdWNlKGFzLWZ1bmMoJGZuKSwgJHhzLCAkaW5pdCwgJGFyZ3MpO1xufVxuXG4vLy8gU3VtIGFsbCBlbGVtZW50cyBvZiBsaXN0LlxuLy8vXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG5AZnVuY3Rpb24gbHN0LXN1bSgkeHMpIHtcbiAgICBAcmV0dXJuIGxzdC1yZWR1Y2UoYWRkLCAkeHMsIDApO1xufVxuXG4vLy8gTXVsdGlwbHkgYWxsIGVsZW1lbnRzIG9mIGxpc3QuXG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3QtcHJvZCgkeHMpIHtcbiAgICBAcmV0dXJuIGxzdC1yZWR1Y2UobXVsLCAkeHMsIDEpO1xufVxuXG4vLy8gVHJ1ZSBpZiBhbGwgZWxlbWVudHMgYXJlIHRydWUuXG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3QtYWxsKCR4cykge1xuICAgICR4czogdG8tbHN0KCR4cyk7XG4gICAgQGlmICR4cyA9PSBudWxsIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBAd2hpbGUgJHhzIHtcbiAgICAgICAgQGlmIG5vdCBudGgoJHhzLCAxKSB7XG4gICAgICAgICAgICBAcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgICR4czogbnRoKCR4cywgMik7XG4gICAgfVxuICAgIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vIFRydWUgaWYgYW55IGVsZW1lbnQgaXMgdHJ1ZS5cbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdFxuQGZ1bmN0aW9uIGxzdC1hbnkoJHhzKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICBAaWYgJHhzID09IG51bGwge1xuICAgICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBAd2hpbGUgJHhzIHtcbiAgICAgICAgQGlmIG50aCgkeHMsIDEpIHtcbiAgICAgICAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgIH1cbiAgICBAcmV0dXJuIGZhbHNlO1xufVxuXG4vLy8gUmV0dXJuIHRydWUgaWYgc29tZSBlbGVtZW50cyBwYXNzIHByZWRpY2F0ZS5cbi8vL1xuLy8vIEBhcmcgJHByZWQgLSBQcmVkaWNhdGUgZnVuY3Rpb24gKGkuZS4sIGZ1bmN0aW9uIHRoYXQgcmV0dXJuIGJvb2xlYW5zKVxuLy8vIEBhcmcgJHhzIC0gTGlzdFxuQGZ1bmN0aW9uIGxzdC1zb21lKCRwcmVkLCAkeHMsICRhcmdzLi4uKSB7XG4gICAgJHByZWQ6IGFzLWZ1bmMoJHByZWQpO1xuICAgICR4czogdG8tbHN0KCR4cyk7XG4gICAgQHdoaWxlICR4cyB7XG4gICAgICAgICR4OiBudGgoJHhzLCAxKTtcbiAgICAgICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAgICAgQGlmIGNhbGwoJHByZWQsICR4LCAkYXJncy4uLikge1xuICAgICAgICAgICAgQHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gZmFsc2U7XG59XG5cbi8vLyBSZXR1cm4gdHJ1ZSBpZiBhbGwgZWxlbWVudHMgcGFzcyBwcmVkaWNhdGUuXG4vLy9cbi8vLyBAYXJnICRwcmVkIC0gUHJlZGljYXRlIGZ1bmN0aW9uIChpLmUuLCBmdW5jdGlvbiB0aGF0IHJldHVybiBib29sZWFucylcbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3QtZXZlcnkoJHByZWQsICR4cywgJGFyZ3MuLi4pIHtcbiAgICAkcHJlZDogYXMtZnVuYygkcHJlZCk7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICBAd2hpbGUgJHhzIHtcbiAgICAgICAgJHg6IG50aCgkeHMsIDEpO1xuICAgICAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgICAgICBAaWYgbm90IGNhbGwoJHByZWQsICR4LCAkYXJncy4uLikge1xuICAgICAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuIHRydWU7XG59XG5cbi8vLyBSZXR1cm4gbWF4aW11bSB2YWx1ZSBpbiBsaXN0XG4vLy9cbi8vLyBAYXJnICR4cyAtIExpc3RcbkBmdW5jdGlvbiBsc3QtbWF4KCR4cykge1xuICAgICR4OiBudGgoJHhzLCAxKTtcbiAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgICR5OiBpZigkeHMgPT0gbnVsbCwgJHgsIGxzdC1tYXgoJHhzKSk7XG4gICAgQHJldHVybiBpZigkeCA+ICR5LCAkeCwgJHkpO1xufVxuXG4vLy8gUmV0dXJuIG1pbmltdW0gdmFsdWUgaW4gbGlzdFxuLy8vXG4vLy8gQGFyZyAkeHMgLSBMaXN0XG5AZnVuY3Rpb24gbHN0LW1pbigkeHMpIHtcbiAgICAkeDogbnRoKCR4cywgMSk7XG4gICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICAkeTogaWYoJHhzID09IG51bGwsICR4LCBsc3QtbWluKCR4cykpO1xuICAgIEByZXR1cm4gaWYoJHggPCAkeSwgJHgsICR5KTtcbn1cblxuLy8vIEdlbmVyYWxpemVkIGpvaW4uIFJlZHVjZSBsaXN0IHdpdGggJGZuIGJ5IGFwcGx5aW5nIGJpbmFyeSBwYXJ0aXRpb25zLlxuLy8vXG4vLy8gQGFyZyAkZm4gLSBCaW5hcnkgb3BlcmF0b3IgdXNlZCB0byBqb2luIGNvbnNlY3V0aXZlIGVsZW1lbnRzLlxuLy8vIEBhcmcgJGVtcHR5IC0gTmV1dHJhbCBlbGVtZW50IHRvICRmbiAoaS5lLiwgZm4oJHgsICRlbXB0eSkgPT0+ICR4LlxuLy8vIEBhcmcgJHhzIC0gTGlzdC5cbkBmdW5jdGlvbiBsc3Qtam9pbi1ieSgkZm4sICRlbXB0eSwgJHhzKSB7XG4gICAgJHhzOiB0by1sc3QoJHhzKTtcbiAgICAkZm46IGFzLWZ1bmMoJGZuKTtcbiAgICBAaWYgbm90ICR4cyB7XG4gICAgICAgIEByZXR1cm4gJGVtcHR5O1xuICAgIH1cbiAgICBAd2hpbGUgbnRoKCR4cywgMikge1xuICAgICAgICAkeXM6IG51bGw7XG4gICAgICAgICRwYWlyczogbHN0LXBhaXJ3aXNlKCR4cywgdHJ1ZSk7XG4gICAgICAgIEB3aGlsZSAkcGFpcnMgIT0gbnVsbCB7XG4gICAgICAgICAgICAkcGFpcjogbnRoKCRwYWlycywgMSk7XG4gICAgICAgICAgICAkcGFpcnM6IG50aCgkcGFpcnMsIDIpO1xuICAgICAgICAgICAgQGlmIGxlbmd0aCgkcGFpcikgPT0gMSB7XG4gICAgICAgICAgICAgICAgJHlzOiAoY2FsbCgkZm4sIG50aCgkcGFpciwgMSksICRlbXB0eSkgJHlzKTtcbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICR5czogKGNhbGwoJGZuLCBudGgoJHBhaXIsIDEpLCBudGgoJHBhaXIsIDIpKSAkeXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICR4czogJHlzO1xuICAgIH1cbiAgICBAcmV0dXJuIG50aCgkeHMsIDEpO1xufVxuXG4vLyBDT05WRVJTSU9OUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gQ3JlYXRlIGxpc3QgZnJvbSBzdGFuZGFyZCBsaXN0cy9hcnJheVxuLy8vXG4vLy8gQGFyZyAkYXJyIC0gQSByZWd1bGFyIFNhc3MgYXJyYXkuXG5AZnVuY3Rpb24gbHN0LWZyb20tYXJyYXkoJGFyciwgJHJldmVyc2U6IGZhbHNlKSB7XG4gICAgJHhzOiBudWxsO1xuICAgIEBlYWNoICR4IGluICRhcnIge1xuICAgICAgICAkeHM6ICgkeCAkeHMpO1xuICAgIH1cbiAgICBAcmV0dXJuIGlmKCRyZXZlcnNlLCAkeHMsIF9sc3QtcmV2ZXJzZSgkeHMpKTtcbn1cblxuLy8vIENyZWF0ZSBsaXN0IGZyb20gbWFwXG4vLy9cbi8vLyBAYXJnICRtYXAgLSBBIHJlZ3VsYXIgU2FzcyBtYXAuXG5AZnVuY3Rpb24gbHN0LWZyb20tbWFwKCRtYXAsICRyZXZlcnNlOiBmYWxzZSkge1xuICAgICR4czogbnVsbDtcbiAgICBAZWFjaCAkeCwgJHkgaW4gJG1hcCB7XG4gICAgICAgICR4czogKCgkeCAkeSkgJHhzKTtcbiAgICB9XG4gICAgQHJldHVybiBpZigkcmV2ZXJzZSwgJHhzLCBfbHN0LXJldmVyc2UoJHhzKSk7XG59XG5cbi8vLyBGbGF0dGVuIGEgbGlzdCBvZiBhcnJheXNcbi8vL1xuLy8vIEBhcmcgJGFzIC0gTGlzdCBvZiBhcnJheXNcbkBmdW5jdGlvbiBsc3QtZmxhdHRlbigkYXJycywgJF9qb2luLXNpemU6IDEyOCkge1xuICAgIEBpZiAkYXJycyA9PSBudWxsIHtcbiAgICAgICAgQHJldHVybiAkZm4tZW1wdHktYXJyYXk7XG4gICAgfSBAZWxzZSBpZiBudGgoJGFycnMsIDIpID09IG51bGwge1xuICAgICAgICBAcmV0dXJuIG50aCgkYXJycywgMSk7XG4gICAgfVxuXG4gICAgJHJlczogbnVsbDtcbiAgICAkYWNjOiAkZm4tZW1wdHktYXJyYXk7XG4gICAgJHNpemU6IDA7XG5cbiAgICBAd2hpbGUgJGFycnMge1xuICAgICAgICAkYTogbnRoKCRhcnJzLCAxKTtcbiAgICAgICAgJGFycnM6IG50aCgkYXJycywgMik7XG4gICAgICAgICRuOiBsZW5ndGgoJGEpO1xuICAgICAgICBAaWYgJG4gKyAkc2l6ZSA8PSAkX2pvaW4tc2l6ZSB7XG4gICAgICAgICAgICAkc2l6ZTogJHNpemUgKyAkbjtcbiAgICAgICAgICAgICRhY2M6IGpvaW4oJGFjYywgJGEpO1xuICAgICAgICB9IEBlbHNlIGlmICRzaXplID49ICRfam9pbi1zaXplIHtcbiAgICAgICAgICAgICRyZXM6ICgkYWNjICgkYSAoJHJlcykpKTtcbiAgICAgICAgICAgICRzaXplOiAwO1xuICAgICAgICAgICAgJGFjYzogJGZuLWVtcHR5LWFycmF5O1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRyZXM6ICgkYWNjICgkcmVzKSk7XG4gICAgICAgICAgICAkc2l6ZTogJG47XG4gICAgICAgICAgICAkYWNjOiAkYTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaWYgbGVuZ3RoKCRhY2MpICE9IDAge1xuICAgICAgICAkcmVzOiAoJGFjYyAkcmVzKTtcbiAgICB9XG4gICAgQHJldHVybiBsc3QtZmxhdHRlbihfbHN0LXJldmVyc2UoJHJlcyksICRfam9pbi1zaXplOiAyICogJF9qb2luLXNpemUpO1xufVxuXG4vLy8gQ29udmVydCBsaXN0IG9mICR4cyBpbnRvIGEgU2FzcyBhcnJheS5cbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdFxuQGZ1bmN0aW9uIGxzdC10by1hcnJheSgkeHMpIHtcbiAgICBAaWYgJHhzID09IG51bGwge1xuICAgICAgICBAcmV0dXJuICgpO1xuICAgIH0gQGVsc2UgaWYgbnRoKCR4cywgMikgPT0gbnVsbCB7XG4gICAgICAgIEByZXR1cm4gKG50aCgkeHMsIDEpLCk7XG4gICAgfVxuXG4gICAgLy8gQ29sbGVjdCBwYXJ0aWFsIHN1Yi1hcnJheXNcbiAgICAkYXJyYXlzOiBudWxsO1xuICAgIEB3aGlsZSAkeHMge1xuICAgICAgICAkYXV4OiBfbHN0LWNvbnN1bWUoJHhzKTtcbiAgICAgICAgJGFycjogbnRoKCRhdXgsIDEpO1xuICAgICAgICAkeHM6IG50aCgkYXV4LCAyKTtcbiAgICAgICAgQGlmICR4cyB7XG4gICAgICAgICAgICAkYXV4OiBfbHN0LWNvbnN1bWUoJHhzKTtcbiAgICAgICAgICAgICRhcnI6IGpvaW4oJGFyciwgbnRoKCRhdXgsIDEpKTtcbiAgICAgICAgICAgICR4czogbnRoKCRhdXgsIDIpO1xuICAgICAgICAgICAgQGlmICR4cyB7XG4gICAgICAgICAgICAgICAgJGF1eDogX2xzdC1jb25zdW1lKCR4cyk7XG4gICAgICAgICAgICAgICAgJGFycjogam9pbigkYXJyLCBudGgoJGF1eCwgMSkpO1xuICAgICAgICAgICAgICAgICR4czogbnRoKCRhdXgsIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICRhcnJheXM6ICgkYXJyICRhcnJheXMpO1xuICAgIH1cbiAgICBAcmV0dXJuIGxzdC1mbGF0dGVuKF9sc3QtcmV2ZXJzZSgkYXJyYXlzKSk7XG59XG5cbi8vLyBGbGF0dGVuIGEgbGlzdCBvZiBtYXBzXG4vLy9cbi8vLyBAYXJnICRtYXBzIC0gTGlzdCBvZiBtYXBzXG5AZnVuY3Rpb24gbHN0LWZsYXR0ZW4tbWFwKCRtYXBzLCAkX2pvaW4tc2l6ZTogNjQpIHtcbiAgICBAaWYgbm90ICRtYXBzIHtcbiAgICAgICAgQHJldHVybiAkZm4tZW1wdHktbWFwO1xuICAgIH1cbiAgICBAd2hpbGUgbnRoKCRtYXBzLCAyKSB7XG4gICAgICAgICRuZXc6IG51bGw7XG4gICAgICAgIEB3aGlsZSAkbWFwcyB7XG4gICAgICAgICAgICAkbWFwOiBudGgoJG1hcHMsIDEpO1xuICAgICAgICAgICAgJG1hcHM6IG50aCgkbWFwcywgMik7XG4gICAgICAgICAgICBAaWYgJG1hcHMge1xuICAgICAgICAgICAgICAgICRtYXA6IG1hcC1tZXJnZSgkbWFwLCBudGgoJG1hcHMsIDEpKTtcbiAgICAgICAgICAgICAgICAkbWFwczogbnRoKCRtYXBzLCAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRuZXc6ICgkbWFwICRuZXcpO1xuICAgICAgICB9XG4gICAgICAgICRtYXBzOiBfbHN0LXJldmVyc2UoJG5ldyk7XG4gICAgfVxuICAgIEByZXR1cm4gbnRoKCRtYXBzLCAxKTtcbn1cblxuLy8vIFRyYW5zZm9ybSBsaXN0IG9mIHBhaXJzIGludG8gYSBtYXBcbi8vL1xuLy8vIEBhcmcgJHhzIC0gTGlzdFxuQGZ1bmN0aW9uIGxzdC10by1tYXAoJHhzKSB7XG4gICAgJG1hcHM6IG51bGw7XG4gICAgQHdoaWxlICR4cyB7XG4gICAgICAgICRhdXg6IF9sc3QtY29uc3VtZS1wYWlycygkeHMsIDE2KTtcbiAgICAgICAgJG1hcDogbnRoKCRhdXgsIDEpO1xuICAgICAgICAkeHM6IG50aCgkYXV4LCAyKTtcbiAgICAgICAgJG1hcHM6ICgkbWFwICRtYXBzKTtcbiAgICB9XG4gICAgQHJldHVybiBsc3QtZmxhdHRlbi1tYXAoJG1hcHMpO1xufVxuXG4vLy8gQ29lcmNlIG9iamVjdCB0byBsaXN0LiBMaXN0cyBhcmUgcmV0dXJuZWQgYXMgaXMuXG4vLy9cbi8vLyBJdCBpcyBtb3JlIGFnZ3Jlc3NpdmUgdGhhbiB0by1sc3QgdG8gY2FzdCBvYmplY3RzIHRvIGxpc3QuXG4vLy8gICAgICogU2NhbGFycyBhcmUgY29udmVydGVkIHRvIHNpbmdsZSBhcmd1bWVudCBsaXN0cy5cbi8vLyAgICAgKiBBcnJheXMgYXJlIGNvbnZlcnRlZCB0byBsaXN0cyAoZXhjZXB0IHdoZW4gaXQgY2F1c2VzIGFtYmlndWl0eSlcbkBmdW5jdGlvbiBjb2VyY2UtdG8tbHN0KCR4cykge1xuICAgIC8vbm9pbnNwZWN0aW9uIENzc0ludmFsaWRGdW5jdGlvblxuICAgIEBpZiAkeHMgPT0gbnVsbCB7XG4gICAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9IEBlbHNlIGlmIHR5cGUtb2YoJHhzKSA9PSAnbGlzdCcge1xuICAgICAgICBAaWYgaXMtYnJhY2tldGVkKCR4cykgb3IgbGlzdC1zZXBhcmF0b3IoJHhzKSA9PSAnY29tbWEnIHtcbiAgICAgICAgICAgIEByZXR1cm4gbHN0LWZyb20tYXJyYXkoJHhzKTtcbiAgICAgICAgfSBAZWxzZSBpZiBsZW5ndGgoJHhzKSA9PSAyIHtcbiAgICAgICAgICAgIEByZXR1cm4gJHhzO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEB3YXJuICdQbGVhc2UgYXZvaWQgdXNpbmcgc3BhY2VkLXNlcGFyYXRlZCBsaXN0cyBpbiBwbGFjZXMgdGhhdCBleHBlY3QgbGlua2VkLWxpc3RzJztcbiAgICAgICAgICAgIEByZXR1cm4gbHN0LWZyb20tYXJyYXkoJHhzKTtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgdHlwZS1vZigkeHMpID09ICdtYXAnIHtcbiAgICAgICAgQHJldHVybiBsc3QtZnJvbS1tYXAoJHhzKTtcbiAgICB9XG4gICAgQHJldHVybiAoJHhzIG51bGwpO1xufVxuIiwKCQkiLy8vIFVnbHkgcGVyZm9ybWFuY2UtZW5oYW5jaW5nIGZ1bmN0aW9ucyBmb3IgbGlzdHNcbiRmbi1lbXB0eS1tYXA6IG1hcC1yZW1vdmUoKCksIG51bGwpICFkZWZhdWx0O1xuXG4vLyBDb25zdW1lIDggZWxlbWVudHMgb2YgbGlzdCBhbmQgcmV0dXJuIChlbGVtLWFycmF5LCB0YWlsKVxuQGZ1bmN0aW9uIF9sc3QtY29uc3VtZSgkeHMpIHtcbiAgICBAaWYgbm90ICR4cyB7XG4gICAgICAgIEByZXR1cm4gKCksIG51bGw7XG4gICAgfVxuXG4gICAgLy8gTGVuZ3RoIDFcbiAgICAkeDE6IG50aCgkeHMsIDEpO1xuICAgICR4czogbnRoKCR4cywgMik7XG4gICAgQGlmIG5vdCAkeHMge1xuICAgICAgICBAcmV0dXJuICgkeDEsKSwgbnVsbDtcbiAgICB9XG5cbiAgICAvLyBMZW5ndGggMlxuICAgICR4MjogbnRoKCR4cywgMSk7XG4gICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICBAaWYgbm90ICR4cyB7XG4gICAgICAgIEByZXR1cm4gKCR4MSwgJHgyKSwgbnVsbDtcbiAgICB9XG5cbiAgICAvLyBMZW5ndGggM1xuICAgICR4MzogbnRoKCR4cywgMSk7XG4gICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICBAaWYgbm90ICR4cyB7XG4gICAgICAgIEByZXR1cm4gKCR4MSwgJHgyLCAkeDMpLCBudWxsO1xuICAgIH1cblxuICAgIC8vIExlbmd0aCA0XG4gICAgJHg0OiBudGgoJHhzLCAxKTtcbiAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgIEBpZiBub3QgJHhzIHtcbiAgICAgICAgQHJldHVybiAoJHgxLCAkeDIsICR4MywgJHg0KSwgbnVsbDtcbiAgICB9XG5cbiAgICAvLyBMZW5ndGggNVxuICAgICR4NTogbnRoKCR4cywgMSk7XG4gICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICBAaWYgbm90ICR4cyB7XG4gICAgICAgIEByZXR1cm4gKCR4MSwgJHgyLCAkeDMsICR4NCwgJHg1KSwgbnVsbDtcbiAgICB9XG5cbiAgICAvLyBMZW5ndGggNlxuICAgICR4NjogbnRoKCR4cywgMSk7XG4gICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICBAaWYgbm90ICR4cyB7XG4gICAgICAgIEByZXR1cm4gKCR4MSwgJHgyLCAkeDMsICR4NCwgJHg1LCAkeDYpLCBudWxsO1xuICAgIH1cblxuICAgIC8vIExlbmd0aCA3XG4gICAgJHg3OiBudGgoJHhzLCAxKTtcbiAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgIEBpZiBub3QgJHhzIHtcbiAgICAgICAgQHJldHVybiAoJHgxLCAkeDIsICR4MywgJHg0LCAkeDUsICR4NiwgJHg3KSwgbnVsbDtcbiAgICB9XG5cbiAgICAvLyBMZW5ndGggOFxuICAgICR4ODogbnRoKCR4cywgMSk7XG4gICAgJHhzOiBudGgoJHhzLCAyKTtcbiAgICBAcmV0dXJuICgkeDEsICR4MiwgJHgzLCAkeDQsICR4NSwgJHg2LCAkeDcsICR4OCksICR4cztcbn1cblxuLy8gQ29uc3VtZSBuIGVsZW1lbnRzIGZyb20gYSBsaXN0IG9mIHBhaXJzIGFuZCByZXR1cm4gKGVsZW0tbWFwLCB0YWlsKVxuQGZ1bmN0aW9uIF9sc3QtY29uc3VtZS1wYWlycygkeHMsICRuOiAxNikge1xuICAgICRyZXM6ICRmbi1lbXB0eS1tYXA7XG4gICAgQHdoaWxlICR4cyBhbmQgJG4gPiAwIHtcbiAgICAgICAgJHg6IG50aCgkeHMsIDEpO1xuICAgICAgICAkeHM6IG50aCgkeHMsIDIpO1xuICAgICAgICAkcmVzOiBtYXAtbWVyZ2UoJHJlcywgKG50aCgkeCwgMSk6IG50aCgkeCwgMikpKTtcbiAgICAgICAgJG46ICRuIC0gMTtcbiAgICB9XG4gICAgQHJldHVybiAkcmVzLCAkeHM7XG59XG5cbiIsCgkJIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gTElTVCBGVU5DVElPTlNcbi8vLyBAZ3JvdXAgYXJyYXlcbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgJ2Z1bmN0aW9ucyc7XG5cbiRmbi1hcnJheS1ub3QtZ2l2ZW46IHVuaXF1ZS1pZCgpICFkZWZhdWx0O1xuJGZuLWVtcHR5LWFycmF5OiBqb2luKCgpLCAoKSwgY29tbWEpICFkZWZhdWx0O1xuXG4vLyBCQVNJQyBGVU5DVElPTlMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gUmV0dXJuIGFycmF5IG9mIGEgc2luZ2xlIGVsZW1lbnQuXG4vLy9cbi8vLyBAYXJnICR4IC0gU2luZ2xlIGVsZW1lbnQgb2YgcmVzdWx0aW5nIGFycmF5LlxuQGZ1bmN0aW9uIHNpbmdsZXRvbigkeCwgJHNlcGFyYXRvcjogc3BhY2UpIHtcbiAgICBAcmV0dXJuIGFwcGVuZCgoKSwgJHgsICRzZXBhcmF0b3IpO1xufVxuXG4vLy8gUmV0dXJuIHRydWUgaWYgJGFyciBjb250YWlucyAkdmFsdWUuXG4vLy9cbi8vLyBAYXJnICRhcnIgLSBJbnB1dCBhcnJheVxuLy8vIEBhcmcgJHZhbHVlIC0gVmFsdWVcbkBmdW5jdGlvbiBjb250YWlucygkYXJyLCAkdmFsdWUpIHtcbiAgICBAZWFjaCAkeCBpbiAkYXJyIHtcbiAgICAgICAgQGlmICR4ID09ICR2YWx1ZSB7XG4gICAgICAgICAgICBAcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiBmYWxzZTtcbn1cblxuLy8vIFJldHVybiBhbiBhcnJheSBzbGljZS5cbi8vL1xuLy8vIEBhcmcgJGFyciAtIElucHV0IGFycmF5XG4vLy8gQGFyZyAkc3RhcnQgLSBTdGFydGluZyBpbmRleFxuLy8vIEBhcmcgJGVuZCAtIEVuZGluZyBpbmRleCAob3IgbnVsbCwgdG8gc2xpY2UgdXAgdG8gdGhlIGVuZClcbkBmdW5jdGlvbiBzbGljZSgkYXJyLCAkc3RhcnQsICRlbmQ6IG51bGwpIHtcbiAgICAvLyBVZ2x5IFwicGVyZm9ybWF0aWNcIiBTYXNzIGNvZGUgOy0pXG4gICAgLy8gSG9tZXdvcms6IG1heWJlIHdlIGNhbiBrZWVwIHBlcmZvcm1hbmNlIGFuZCB3aXRoIGFuIGVsZWdhbnQgY29kZSBiYXNlZFxuICAgIC8vIG9uIGxzdC1qb2luLWJ5XG4gICAgJG46IGxlbmd0aCgkYXJyKTtcbiAgICAkZW5kOiBpZigkZW5kID09IG51bGwsICRuLCAkZW5kKTtcbiAgICAkc2l6ZTogJGVuZCAtICRzdGFydCArIDE7XG5cbiAgICBAaWYgJHNpemUgPD0gMzIge1xuICAgICAgICAkcmVzdWx0OiAoKTtcbiAgICAgICAgQHdoaWxlICRzaXplID4gOCB7XG4gICAgICAgICAgICAkcmVzdWx0OiBqb2luKCRyZXN1bHQsIChcbiAgICAgICAgICAgICAgICBudGgoJGFyciwgJHN0YXJ0KSwgbnRoKCRhcnIsICRzdGFydCArIDEpLCBudGgoJGFyciwgJHN0YXJ0ICsgMiksXG4gICAgICAgICAgICAgICAgbnRoKCRhcnIsICRzdGFydCArIDMpLCBudGgoJGFyciwgJHN0YXJ0ICsgNCksIG50aCgkYXJyLCAkc3RhcnQgKyA1KSxcbiAgICAgICAgICAgICAgICBudGgoJGFyciwgJHN0YXJ0ICsgNiksIG50aCgkYXJyLCAkc3RhcnQgKyA3KVxuICAgICAgICAgICAgKSk7XG4gICAgICAgICAgICAkc2l6ZTogJHNpemUgLSA4O1xuICAgICAgICAgICAgJHN0YXJ0OiAkc3RhcnQgKyA4O1xuICAgICAgICB9XG4gICAgICAgIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGFyciwgJGkpKTtcbiAgICAgICAgfVxuICAgICAgICBAcmV0dXJuICRyZXN1bHQ7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgICRmaXJzdC1lbmQ6ICRzdGFydCArIGZsb29yKCRzaXplIC8gMikgLSAxO1xuICAgICAgICBAcmV0dXJuIGpvaW4oXG4gICAgICAgICAgICAgICAgc2xpY2UoJGFyciwgJHN0YXJ0LCAkZmlyc3QtZW5kKSxcbiAgICAgICAgICAgICAgICBzbGljZSgkYXJyLCAkZmlyc3QtZW5kICsgMSwgJGVuZClcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbi8vIENMQVNTSUMgRlAgRlVOQ1RJT05TIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBBcHBseSBmdW5jdGlvbiB0byBldmVyeSBlbGVtZW50IG9mIGFycmF5LlxuLy8vXG4vLy8gQGFyZyAkZm4gLSBBIGJpbmFyeSBvcGVyYXRvciBmdW5jdGlvblxuLy8vIEBhcmcgJGFyciAtIEFycmF5XG5AZnVuY3Rpb24gbWFwKCRmbiwgJGFyciwgJGFyZ3MuLi4pIHtcbiAgICAkZm46IGFzLWZ1bmMoJGZuKTtcbiAgICAkeXM6ICRmbi1lbXB0eS1hcnJheTtcbiAgICBAZWFjaCAkeCBpbiAkYXJyIHtcbiAgICAgICAgJHlzOiBhcHBlbmQoJHlzLCBjYWxsKCRmbiwgJHgsICRhcmdzLi4uKSk7XG4gICAgfVxuICAgIEByZXR1cm4gJHlzO1xufVxuXG4vLy8gS2VlcCBvbmx5IGVsZW1lbnRzIG9mIGFycmF5IHRoYXQgcGFzcyBwcmVkaWNhdGUgZnVuY3Rpb24uXG4vLy9cbi8vLyBAYXJnICRmbiAtIEEgYmluYXJ5IG9wZXJhdG9yIGZ1bmN0aW9uXG4vLy8gQGFyZyAkYXJyIC0gQXJyYXlcbkBmdW5jdGlvbiBmaWx0ZXIoJGZuLCAkYXJyLCAkYXJncy4uLikge1xuICAgICRmbjogYXMtZnVuYygkZm4pO1xuICAgICR5czogJGZuLWVtcHR5LWFycmF5O1xuICAgIEBlYWNoICR4IGluICRhcnIge1xuICAgICAgICBAaWYgY2FsbCgkZm4sICR4LCAkYXJncy4uLikge1xuICAgICAgICAgICAgJHlzOiBhcHBlbmQoJHlzLCAkeCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiAkeXM7XG59XG5cbi8vLyBSZWR1Y2UgYXJyYXkgYnkgZnVuY3Rpb25cbi8vL1xuLy8vIEFyZ3VtZW50cyBhcmUgcGFzc2VkIGluIHRoZSBzYW1lIG9yZGVyIHRoYXQgdGhleSBhcHBlYXIgaW4gdGhlIHRoZSBmdW5jdGlvblxuLy8vIHNpZ25hdHVyZSwgaS5lLiwgZm4oJHgsICRpbml0LCAuLi4pXG4vLy9cbi8vLyBAYXJnICRmbiAtIEEgYmluYXJ5IG9wZXJhdG9yIGZ1bmN0aW9uXG4vLy8gQGFyZyAkYXJyIC0gTGlzdFxuLy8vIEBhcmcgJGluaXQgLSBJbml0aWFsIHZhbHVlIG9mIHJlZHVjdGlvblxuQGZ1bmN0aW9uIHJlZHVjZSgkZm4sICRhcnIsICRpbml0OiAkZm4tYXJyYXktbm90LWdpdmVuLCAkYXJncy4uLikge1xuICAgICRmbjogYXMtZnVuYygkZm4pO1xuICAgICR5OiAkaW5pdDtcbiAgICBAZWFjaCAkeCBpbiAkYXJyIHtcbiAgICAgICAgJHk6IGlmKCR5ID09ICRmbi1hcnJheS1ub3QtZ2l2ZW4sICR4LCBjYWxsKCRmbiwgJHgsICR5LCAkYXJncy4uLikpO1xuICAgIH1cbiAgICBAaWYgJHkgPT0gJGZuLWFycmF5LW5vdC1naXZlbiB7XG4gICAgICAgIEBlcnJvciBcIkVtcHR5IGFycmF5XCI7XG4gICAgfVxuICAgIEByZXR1cm4gJHk7XG59XG5cbi8vLyBLZWVwIG9ubHkgZWxlbWVudHMgb2YgYXJyYXkgdGhhdCBwYXNzIHByZWRpY2F0ZSBmdW5jdGlvbi5cbi8vL1xuLy8vIEBhcmcgJGZuIC0gQSBiaW5hcnkgb3BlcmF0b3IgZnVuY3Rpb25cbi8vLyBAYXJnICRhcnIgLSBBcnJheVxuQGZ1bmN0aW9uIHNlcGFyYXRlKCRmbiwgJGFyciwgJGFyZ3MuLi4pIHtcbiAgICAkZm46IGFzLWZ1bmMoJGZuKTtcbiAgICAkYXM6ICRmbi1lbXB0eS1hcnJheTtcbiAgICAkYnM6ICRmbi1lbXB0eS1hcnJheTtcbiAgICBAZWFjaCAkeCBpbiAkYXJyIHtcbiAgICAgICAgQGlmIGNhbGwoJGZuLCAkeCwgJGFyZ3MuLi4pIHtcbiAgICAgICAgICAgICRhczogYXBwZW5kKCRhcywgJHgpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRiczogYXBwZW5kKCRicywgJHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gKCRhcywgJGJzKTtcbn1cblxuLy8gQ0hVTktFRCBJVEVSQVRJT04gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoaXMgd2lsbCBiZSB0aGUgYmFzaXMgb2YgYSBzZXJpZXMgb2Ygb3B0aW1pemF0aW9ucyBmb3IgbWFwLCBmaWx0ZXIsIGV0Yy5cbi8vIENodW5rZWQgaXRlcmF0aW9uIGFsbG93IHVzIHRvIGxpbWl0IHRoZSBPKG5eMikgYmVoYXZpb3Igb2YgdGhvc2UgZnVuY3Rpb25zXG4vLyB0byBhIG1vcmUgc2NhbGFibGUgbGluZWFyIGJlaGF2aW9yLiBGb3Igc21hbGwgYXJyYXlzIChidXQgaG93IHNtYWxsPyksXG4vLyBxdWFkcmF0aWMgYmVoYXZpb3IgaXMgZmFzdGVyIHRoYW4gbGluZWFyLlxuXG4vLy8gQ29udmVydCBhcnJheSB0byBhIChsaW5rZWQtKWxpc3Qgb2YgYXJyYXkgY2h1bmtzLlxuLy8vXG4vLy8gQGFyZyAkYXJyIC0gQXJyYXlcbi8vLyBAYXJnICRuIC0gQ2h1bmsgc2l6ZVxuLy8vIEBhcmcgJHJldmVyc2UgLSBUcnVlIHRvIGluY2x1ZGUgY2h1bmtzIGluIHJldmVyc2Ugb3JkZXIgKGZhc3RlcilcbkBmdW5jdGlvbiBjaHVua3MoJGFyciwgJG4sICRyZXZlcnNlOiBmYWxzZSkge1xuICAgICRzaXplLXBsdXMtb25lOiBsZW5ndGgoJGFycikgKyAxO1xuICAgICRjaHVua3M6IG51bGw7XG4gICAgJGVuZDogMTtcbiAgICBAd2hpbGUgJGVuZCA8ICRzaXplLXBsdXMtb25lIHtcbiAgICAgICAgJGNodW5rOiAkZm4tZW1wdHktYXJyYXk7XG4gICAgICAgIEBpZiAkbiA9PSA4IGFuZCAkc2l6ZS1wbHVzLW9uZSA+PSAkZW5kICsgOCB7XG4gICAgICAgICAgICAkY2h1bms6IChcbiAgICAgICAgICAgICAgICBudGgoJGFyciwgJGVuZCksXG4gICAgICAgICAgICAgICAgbnRoKCRhcnIsICRlbmQgKyAxKSxcbiAgICAgICAgICAgICAgICBudGgoJGFyciwgJGVuZCArIDIpLFxuICAgICAgICAgICAgICAgIG50aCgkYXJyLCAkZW5kICsgMyksXG4gICAgICAgICAgICAgICAgbnRoKCRhcnIsICRlbmQgKyA0KSxcbiAgICAgICAgICAgICAgICBudGgoJGFyciwgJGVuZCArIDUpLFxuICAgICAgICAgICAgICAgIG50aCgkYXJyLCAkZW5kICsgNiksXG4gICAgICAgICAgICAgICAgbnRoKCRhcnIsICRlbmQgKyA3KSxcbiAgICAgICAgICAgIClcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAZm9yICRpIGZyb20gJGVuZCB0byBtaW4oJGVuZCArICRuLCAkc2l6ZS1wbHVzLW9uZSkge1xuICAgICAgICAgICAgICAgICRjaHVuazogYXBwZW5kKCRjaHVuaywgbnRoKCRhcnIsICRpKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJGNodW5rczogKCRjaHVuayAkY2h1bmtzKTtcbiAgICAgICAgJGVuZDogJGVuZCArICRuO1xuICAgIH1cbiAgICBAcmV0dXJuIGlmKCRyZXZlcnNlLCAkY2h1bmtzLCBsc3QtcmV2ZXJzZSgkY2h1bmtzKSk7XG59XG5cbi8vLyBKb2luIGEgKGxpbmtlZC0pIGxpc3Qgb2YgY2h1bmtzIGNyZWF0ZWQgYnkgdGhlIGNodW5rcyBmdW5jdGlvbi5cbi8vL1xuLy8vIEBhcmcgJGNodW5rcyAtIExpc3Qgb2YgY2h1bmtzXG4vLy8gQGFyZyAkcmV2ZXJzZSAtIFRydWUgaWYgY2h1bmtzIGFyZSBpbmNsdWRlZCBpbiByZXZlcnNlIG9yZGVyXG5AZnVuY3Rpb24gam9pbi1jaHVua3MoJGNodW5rcywgJHJldmVyc2U6IGZhbHNlKSB7XG4gICAgQGlmIG5vdCAkY2h1bmtzIHtcbiAgICAgICAgQHJldHVybiAkZm4tZW1wdHktYXJyYXk7XG4gICAgfVxuXG4gICAgJGExOiBudGgoJGNodW5rcywgMSk7XG4gICAgJGNodW5rczogbnRoKCRjaHVua3MsIDIpO1xuICAgIEBpZiBub3QgJGNodW5rcyB7XG4gICAgICAgIEByZXR1cm4gJGExO1xuICAgIH1cblxuICAgICRhMjogbnRoKCRjaHVua3MsIDEpO1xuICAgICRjaHVua3M6IG50aCgkY2h1bmtzLCAyKTtcbiAgICBAaWYgbm90ICRjaHVua3Mge1xuICAgICAgICBAcmV0dXJuIGlmKCRyZXZlcnNlLCBqb2luKCRhMiwgJGExKSwgam9pbigkYTEsICRhMikpO1xuICAgIH1cblxuICAgICRhMzogbnRoKCRjaHVua3MsIDEpO1xuICAgICRjaHVua3M6IG50aCgkY2h1bmtzLCAyKTtcbiAgICBAaWYgbm90ICRjaHVua3Mge1xuICAgICAgICBAcmV0dXJuIGlmKCRyZXZlcnNlLCBqb2luKGpvaW4oJGEzLCAkYTIpLCAkYTEpLCBqb2luKGpvaW4oJGExLCAkYTIpLCAkYTMpKTtcbiAgICB9XG5cbiAgICAkYTQ6IG50aCgkY2h1bmtzLCAxKTtcbiAgICAkY2h1bmtzOiBudGgoJGNodW5rcywgMik7XG4gICAgJHByZWZpeDogaWYoJHJldmVyc2UsXG4gICAgICAgIGpvaW4oam9pbigkYTQsICRhMyksIGpvaW4oJGEyLCAkYTEpKSxcbiAgICAgICAgam9pbihqb2luKCRhMSwgJGEyKSwgam9pbigkYTMsICRhNCkpXG4gICAgKTtcbiAgICBAaWYgbm90ICRjaHVua3Mge1xuICAgICAgICBAcmV0dXJuICRwcmVmaXg7XG4gICAgfVxuICAgIEByZXR1cm4gaWYoJHJldmVyc2UsXG4gICAgICAgIGpvaW4oam9pbi1jaHVua3MoJGNodW5rcyksICRwcmVmaXgsIGNvbW1hKSxcbiAgICAgICAgam9pbigkcHJlZml4LCBqb2luLWNodW5rcygkY2h1bmtzKSwgY29tbWEpKTtcbn1cblxuLy8gQ09OVkVSU0lPTlMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8vIENvbnZlcnQgdmFsdWUgdG8gbGlzdC5cbi8vLyBMaXN0cyBhcmUgcmV0dXJuZWQgYXMtaXMsIG1hcHMgYmVjb21lIGxpc3Qgb2YgMi10dXBsZXMgYW5kIG90aGVyIGVsZW1lbnRzXG4vLy8gYmVjb21lIGEgbGlzdCB3aXRoIGEgc2luZ2xlIHZhbHVlXG4vLy9cbi8vLyBAYXV0aG9yIC0gaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTQvMDQvMjgvY2FzdGluZy1tYXAtaW50by1saXN0L1xuLy8vIEBhcmcgJHZhbHVlIC0gb2JqZWN0IHRvIGJlIGNvbnZlcnRlZFxuLy8vIEBhcmcgJGtlZXAgLSBjYW4gYmUgJ2tleXMnLCAndmFsdWVzJyBvciAnYm90aCcgKGRlZmF1bHQpLiBJdCBhZmZlY3RzIGNvbnZlcnNpb24gb2YgbWFwcy5cbkBmdW5jdGlvbiB0by1hcnJheSgkdmFsdWUsICRrZWVwOiAnYm90aCcpIHtcbiAgICAka2VlcDogaWYoaW5kZXgoJ2tleXMnICd2YWx1ZXMnLCAka2VlcCksICRrZWVwLCAnYm90aCcpO1xuXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbWFwJyB7XG4gICAgICAgICRrZXlzOiAoKTtcbiAgICAgICAgJHZhbHVlczogKCk7XG5cbiAgICAgICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkdmFsdWUge1xuICAgICAgICAgICAgJGtleXM6IGFwcGVuZCgka2V5cywgJGtleSk7XG4gICAgICAgICAgICAkdmFsdWVzOiBhcHBlbmQoJHZhbHVlcywgJHZhbCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgJGtlZXAgPT0gJ2tleXMnIHtcbiAgICAgICAgICAgIEByZXR1cm4gJGtleXM7XG4gICAgICAgIH0gQGVsc2UgaWYgJGtlZXAgPT0gJ3ZhbHVlcycge1xuICAgICAgICAgICAgQHJldHVybiAkdmFsdWVzO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEByZXR1cm4gemlwKCRrZXlzLCAkdmFsdWVzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gaWYodHlwZS1vZigkdmFsdWUpICE9ICdsaXN0JywgKCR2YWx1ZSwpLCAkdmFsdWUpO1xufVxuXG4iLAoJCSIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vIEZVTkNUSU9OUyBUSEFUIE9QRVJBVEUgT04gQkFTSUMgU0FTUyBEQVRBVFlQRVNcbi8vLyBAZ3JvdXAgbWFwIGZ1bmN0aW9uc1xuLy8vIEBhdXRob3IgRsOhYmlvIE1hY8OqZG8gTWVuZGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCAnbGlzdCc7XG5cbiRmbi1lbXB0eS1tYXA6IG1hcC1yZW1vdmUoKCksIG51bGwpO1xuXG4vLy8gUmV0dXJuIHZhbHVlIGlmIGtleSBleGlzdHMgb24gbWFwLCBvdGhlcndpc2UgcmV0dXJuIGRlZmF1bHQuXG4vLy9cbi8vLyBAYXJnICRtYXAgLSBtYXAgdG8gb3BlcmF0ZSBmcm9tXG4vLy8gQGFyZyAka2V5IC0ga2V5XG4vLy8gQGFyZyAkZGVmYXVsdCAtIGRlZmF1bHQgdmFsdWUuIElmIG5vdCBnaXZlbiBhbmQga2V5IG5vdCBwcmVzZW50LCByZXR1cm4gbnVsbDtcbkBmdW5jdGlvbiBtYXAtcmVhZCgkbWFwLCAka2V5LCAkZGVmYXVsdDogbnVsbCkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkbWFwLCAka2V5KTtcbiAgICBAcmV0dXJuIGlmKCR2YWx1ZSA9PSBudWxsLCAkZGVmYXVsdCwgJHZhbHVlKTtcbn1cblxuLy8vIEpvaW4gYSAobGlua2VkLSlsaXN0IG9mIG1hcHMgdG9nZXRoZXIuIEVudHJpZXMgaW4gbGF0ZXIgbWFwcyBvdmVycmlkZVxuLy8vIHByZXZpb3VzbHkgZGVmaW5lZCB2YWx1ZXMuXG4vLy9cbi8vLyBAYXJnICRtYXBzIC0gYSBsaXN0IG9mIG1hcHNcbkBmdW5jdGlvbiBtYXAtam9pbigkbWFwcykge1xuICAgICRtYXBzOiB0by1sc3QoJG1hcHMpO1xuICAgICRyZXN1bHQ6IG1hcC1yZW1vdmUoKCksIG51bGwpO1xuICAgIEB3aGlsZSAkbWFwcyAhPSBudWxsIHtcbiAgICAgICAgJG1hcDogY2FyKCRtYXBzKTtcbiAgICAgICAgJG1hcHM6IGNkcigkbWFwcyk7XG4gICAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAkbWFwKTtcbiAgICB9XG4gICAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8gQ29udmVydCBhcmd1bWVudCB0byBtYXAuIFdvcmtzIGZvciBsaXN0cyBvZiAyLXR1cGxlcyBhbmQgbWFwcy5cbi8vL1xuLy8vIEBhcmcgJG9iaiAtIEEgbWFwIG9yIGxpc3Qgb2JqZWN0LlxuQGZ1bmN0aW9uIHRvLW1hcCgkb2JqKSB7XG4gICAgQGlmIHR5cGUtb2YoJG9iaikgPT0gbGlzdCB7XG4gICAgICAgICRyZXN1bHQ6ICgpO1xuICAgICAgICBAZWFjaCAkaywgJHYgaW4gJG9iaiB7XG4gICAgICAgICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKCRrOiAkdikpXG4gICAgICAgIH1cbiAgICAgICAgQHJldHVybiAkcmVzdWx0XG4gICAgfSBAZWxzZSBpZiAodHlwZS1vZigkb2JqKSA9PSBtYXApIHtcbiAgICAgICAgQHJldHVybiAkb2JqO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBAZXJyb3IgXCJDYW5ub3QgY29udmVydCBhcmd1bWVudCB0byBtYXAuXCJcbiAgICB9XG59XG5cbi8vLyBNZXJnZSB0d28gbWFwcyB1cCB0byBvbmUgbGV2ZWwgb2YgbmVzdGluZy5cbi8vL1xuLy8vIEBhcmcgJG1hcDFcbi8vLyBAYXJnICRtYXAyXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAgIG1hcC1tZXJnZS1uZXN0ZWQoKGZvbzogKHg6IDEsIHk6IDMpKSxcbi8vLyAgICAgICAgICAgICAgICAgICAgICAoZm9vOiAoeTogMiwgejogMyksIGJhcjogYmF6KSk7XG4vLy8gICAgIC8vIChmb286ICh4OiAxLCB5OiAyLCB6OiAzKSwgYmFyOiBiYXopXG5AZnVuY3Rpb24gbWFwLW1lcmdlLW5lc3RlZCgkbWFwMSwgJG1hcDIpIHtcbiAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJG1hcDEsICRtYXAyKTtcblxuICAgIC8vIE1lcmdlIHN1Yi1tYXBzIGZyb20gbWFwMVxuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwMSB7XG4gICAgICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbWFwIGFuZCBtYXAtaGFzLWtleSgkbWFwMiwgJGtleSkge1xuICAgICAgICAgICAgJHZhbHVlOiBtYXAtbWVyZ2UoJHZhbHVlLCBtYXAtZ2V0KCRtYXAyLCAka2V5KSk7XG4gICAgICAgICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKCRrZXk6ICR2YWx1ZSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vIE1lcmdlIHR3byBtYXBzIHdpdGggYXJiaXRyYXJ5IG5lc3RpbmcuXG4vLy9cbi8vLyBNYXBzIGFyZSBtZXJnZWQuIElmIGEgdmFsdWUgaXMgYSBtYXAgaW4gb25lIGRpY3Rpb25hcnksIGJ1dCBub3QgaW4gdGhlXG4vLy8gb3RoZXIsIGl0IGlzIG1lcmdlZCBhbmQgc2F2ZWQgaW50byB0aGUgKCRrZXktbmFtZTogJHZhbHVlKS4gTnVsbCB2YWx1ZXNcbi8vLyBhcmUgb21pdHRlZC5cbi8vL1xuLy8vIEBhcmcgJG1hcDFcbi8vLyBAYXJnICRtYXAyXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAgIG1hcC1tZXJnZS1uZXN0ZWQoKGZvbzogKHg6IDEsIHk6ICh6OiAzKSksXG4vLy8gICAgICAgICAgICAgICAgICAgICAgKGZvbzogKHk6ICh3OiA0KSwgYmFyOiBiYXopKTtcbi8vLyAgICAgLy8gKGZvbzogKHg6IDEsIHk6ICh6OiAzLCB3OiA0KSwgYmFyOiBiYXopXG5AZnVuY3Rpb24gbWFwLW1lcmdlLWRlZXAoJG1hcDEsICRtYXAyLCAka2V5OiB2YWx1ZSkge1xuICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkbWFwMSwgJG1hcDIpO1xuXG4gICAgLy8gTWVyZ2Ugc3ViLW1hcHMgZnJvbSBtYXAxXG4gICAgQGVhY2ggJGssICR2MSBpbiAkbWFwMSB7XG4gICAgICAgICR2MjogbWFwLWdldCgkbWFwMiwgJGspO1xuICAgICAgICBAaWYgdHlwZS1vZigkdjEpID09IG1hcCBhbmQgdHlwZS1vZigkdjIpID09IG1hcCB7XG4gICAgICAgICAgICAkdmFsdWU6IG1hcC1tZXJnZS1kZWVwKCR2MSwgJHYyLCAka2V5KTtcbiAgICAgICAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoJGs6ICR2YWx1ZSkpO1xuICAgICAgICB9IEBlbHNlIGlmIHR5cGUtb2YoJHYxKSA9PSBtYXAge1xuICAgICAgICAgICAgQGlmICR2MiAhPSBudWxsIGFuZCAka2V5ICE9IG51bGwge1xuICAgICAgICAgICAgICAgICR2YWx1ZTogbWFwLW1lcmdlKCR2MSwgKCRrZXk6ICR2MikpO1xuICAgICAgICAgICAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoJGs6ICR2YWx1ZSkpO1xuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgJHJlc3VsdDogbWFwLW1lcmdlKCRyZXN1bHQsICgkazogJHYxKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2UgaWYgdHlwZS1vZigkdjIpID09IG1hcCBhbmQgJHYxICE9IG51bGwgYW5kICRrZXkgIT0gbnVsbCB7XG4gICAgICAgICAgICAkdmFsdWU6IG1hcC1tZXJnZSgoJGtleTogJHYxKSwgJHYyKTtcbiAgICAgICAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoJGs6ICR2YWx1ZSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vIEZldGNoIGtleXMgaW4gcGF0aCByZWN1cnNpdmVseS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICAgbWFwLXBhdGgoKCdmb28nOiAoJ2Jhcic6ICdiYXonKSksIEwoJ2ZvbycsICdiYXInKSkgPT0+ICdiYXonXG4vLy9cbi8vLyBAYXJnICRtYXAgLSBhIG1hcCB0byBleHRyYWN0IHRoZSB2YWx1ZSBmcm9tXG4vLy8gQGFyZyAkcGF0aCAtIChsaW5rZWQtKWxpc3Qgb2YgdmFsdWVzXG4vLy8gQGFyZyAkZGVmYXVsdCAtIGZhbGxiYWNrIHZhbHVlIGlmIGtleSBpcyBub3QgcHJlc2VudFxuQGZ1bmN0aW9uIG1hcC1wYXRoKCRtYXAsICRwYXRoLCAkZGVmYXVsdDogbnVsbCkge1xuICAgICRwYXRoOiBjb2VyY2UtdG8tbHN0KCRwYXRoKTtcbiAgICBAaWYgJHBhdGggPT0gbnVsbCB7XG4gICAgICAgIEBlcnJvciAnRW1wdHkgcGF0aCc7XG4gICAgfVxuICAgICRrZXk6IGNhcigkcGF0aCk7XG4gICAgQHdoaWxlIGNkcigkcGF0aCkgIT0gbnVsbCB7XG4gICAgICAgICRwYXRoOiBjZHIoJHBhdGgpO1xuICAgICAgICAkbWFwOiBtYXAtZ2V0KCRtYXAsICRrZXkpO1xuICAgICAgICBAaWYgJG1hcCA9PSBudWxsIHtcbiAgICAgICAgICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgJGtleTogY2FyKCRwYXRoKTtcbiAgICB9XG4gICAgQHJldHVybiBtYXAtcmVhZCgkbWFwLCAka2V5LCAkZGVmYXVsdCk7XG59XG5cbi8vLyBSZXR1cm4gdHJ1ZSBpZiBtYXAgaGFzIGFsbCBrZXlzIGluIHRoZSAobGlua2VkLSlsaXN0XG4vLy9cbi8vLyBAYXJnICRtYXAgLSBBIG1hcHBpbmdcbi8vLyBAYXJnICRrZXlzIC0gQSAobGlua2VkLSlsaXN0IG9mIHRlc3Qga2V5cy5cbkBmdW5jdGlvbiBtYXAtaGFzLWtleXMoJG1hcCwgJGtleXMpIHtcbiAgICAka2V5czogdG8tbHN0KCRrZXlzKTtcbiAgICBAd2hpbGUgJGtleXMgIT0gbnVsbCB7XG4gICAgICAgICRrZXk6IGNhcigka2V5cyk7XG4gICAgICAgICRrZXlzOiBjZHIoJGtleXMpO1xuICAgICAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiB0cnVlO1xufVxuXG4vLy8gS2VlcCBvbmx5IHRoZSBnaXZlbiBrZXlzIG9uIG1hcC5cbi8vL1xuLy8vIEBhcmcgJG1hcCAtIEEgbWFwcGluZ1xuLy8vIEBhcmcgJGtleXMgLSBBIChsaW5rZWQtKWxpc3Qgb2YgdGVzdCBrZXlzLlxuQGZ1bmN0aW9uIG1hcC1zZWxlY3QoJG1hcCwgJGtleXMpIHtcbiAgICAka2V5czogdG8tbHN0KCRrZXlzKTtcbiAgICAkcmVzdWx0OiBtYXAtcmVtb3ZlKCgpLCBudWxsKTtcblxuICAgIEB3aGlsZSAka2V5cyAhPSBudWxsIHtcbiAgICAgICAgJGtleTogY2FyKCRrZXlzKTtcbiAgICAgICAgJGtleXM6IGNkcigka2V5cyk7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKCRrZXk6IG1hcC1nZXQoJG1hcCwgJGtleSkpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vLyBSZW1vdmUgdGhlIGdpdmVuIGtleXMgZnJvbSBtYXBcbi8vL1xuLy8vIEBhcmcgJG1hcCAtIEEgbWFwcGluZ1xuLy8vIEBhcmcgJGtleXMgLSBBIChsaW5rZWQtKWxpc3Qgb2YgdGVzdCBrZXlzLlxuQGZ1bmN0aW9uIG1hcC1leGNsdWRlKCRtYXAsICRrZXlzKSB7XG4gICAgJGtleXM6IHRvLWxzdCgka2V5cyk7XG4gICAgJHJlc3VsdDogJG1hcDtcblxuICAgIEB3aGlsZSAka2V5cyAhPSBudWxsIHtcbiAgICAgICAgJGtleTogY2FyKCRrZXlzKTtcbiAgICAgICAgJGtleXM6IGNkcigka2V5cyk7XG4gICAgICAgICRyZXN1bHQ6IG1hcC1yZW1vdmUoJHJlc3VsdCwgJGtleSk7XG4gICAgfVxuICAgIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vIFNlbGVjdCBmaXJzdCBlbGVtZW50IHRoYXQgbWF0Y2hlcyBvbmUgZWxlbWVudCBmcm9tIGFuIGFycmF5IG9mIGtleXMgb3IgcmV0dXJuXG4vLy8gdGhlIGdpdmVuIGRlZmF1bHRcbi8vL1xuLy8vIEBhcmcgJG1hcCAtIG1hcCB0byBvcGVyYXRlIGZyb21cbi8vLyBAYXJnICRrZXlzIC0gYXJyYXkgb2Yga2V5c1xuLy8vIEBhcmcgJGRlZmF1bHQgLSBkZWZhdWx0IHZhbHVlLlxuQGZ1bmN0aW9uIG1hcC1nZXQtZmlyc3QoJG1hcCwgJGtleXMsICRkZWZhdWx0OiBudWxsKSB7XG4gICAgJGtleXM6IHRvLWxzdCgka2V5cyk7XG5cbiAgICBAd2hpbGUgJGtleXMgIT0gbnVsbCB7XG4gICAgICAgICRrZXk6IGNhcigka2V5cyk7XG4gICAgICAgICRrZXlzOiBjZHIoJGtleXMpO1xuICAgICAgICAkdmFsdWU6IG1hcC1nZXQoJG1hcCwgJGtleSk7XG4gICAgICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICAgICBAcmV0dXJuICR2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuICRkZWZhdWx0O1xufVxuXG4vLy8gRmlsdGVyIG1hcCB0byBpbmNsdWRlIG9ubHkgaXRlbXMgaW4gd2hpY2ggdGhlIHZhbHVlIHBhc3NlcyBhIHByZWRpY2F0ZVxuLy8vXG4vLy8gQGFyZyAkcHJlZCAtIEZ1bmN0aW9uIG9yIG5hbWUgb2YgYm9vbGVhbiBmdW5jdGlvbiB0aGF0IGlzIHVzZWQgdG8gZmlsdGVyIGl0ZW1zLlxuLy8vIEBhcmcgJG1hcCAtIElucHV0IG1hcFxuQGZ1bmN0aW9uIG1hcC1maWx0ZXItdmFsdWVzKCRwcmVkLCAkbWFwLCAkYXJncy4uLikge1xuICAgICRwcmVkOiBhcy1mdW5jKCRwcmVkKTtcbiAgICAkcmVzdWx0OiAoKTtcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAgIEBpZiBjYWxsKCRwcmVkLCAkdmFsdWUsICRhcmdzLi4uKSB7XG4gICAgICAgICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKCRrZXk6ICR2YWx1ZSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vIEFwcGx5IGZ1bmN0aW9uIHRvIGFsbCB2YWx1ZXMgaW4gbWFwXG4vLy9cbi8vLyBAYXJnICRmbiAtIEZ1bmN0aW9uXG4vLy8gQGFyZyAkbWFwIC0gSW5wdXQgbWFwXG5AZnVuY3Rpb24gbWFwLWFwcGx5LXZhbHVlcygkZm4sICRtYXAsICRhcmdzLi4uKSB7XG4gICAgJGZ1bmM6IGFzLWZ1bmMoJGZuKTtcbiAgICAkcmVzdWx0OiAoKTtcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoJGtleTogY2FsbCgkZnVuYywgJHZhbHVlLCAkYXJncy4uLikpKTtcbiAgICB9XG4gICAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8gQXBwbHkgZnVuY3Rpb24gdG8gdGhlIGtleXMgb2YgYSBnaXZlbiBtYXAuXG4vLy9cbi8vLyBAYXJnICRmbiAtIEZ1bmN0aW9uXG4vLy8gQGFyZyAkbWFwIC0gSW5wdXQgbWFwXG5AZnVuY3Rpb24gbWFwLWFwcGx5LWtleXMoJGZuLCAkbWFwLCAkYXJncy4uLikge1xuICAgICRmbjogYXMtZnVuYygkZm4pO1xuICAgICRhY2M6ICRmbi1lbXB0eS1tYXA7XG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgICAkYWNjOiBtYXAtbWVyZ2UoJGFjYywgKGNhbGwoJGZuLCAkaywgJGFyZ3MuLi4pOiAkdikpO1xuICAgIH1cbiAgICBAcmV0dXJuICRhY2M7XG59XG5cbkBmdW5jdGlvbiBfZm4td2l0aC1wcmVmaXgoJHgsICRwcmVmaXgpIHtcbiAgICBAcmV0dXJuICcjeyRwcmVmaXh9I3skeH0nO1xufVxuXG4vLy8gQWRkIHByZWZpeGVzIHRvIGFsbCBrZXlzIG9mIG1hcFxuLy8vXG4vLy8gQGFyZyAkbWFwIC0gSW5wdXQgbWFwXG4vLy8gQGFyZyAkcHJlZml4ZXMuLi4gLSBTdHJpbmdzIHRvIGFkZCBhcyBwcmVmaXhcbkBmdW5jdGlvbiBtYXAtcHJlZml4LWtleXMoJG1hcCwgJHByZWZpeGVzLi4uKSB7XG4gICAgJHJlczogbWFwLXJlbW92ZSgoKSwgbnVsbCk7XG4gICAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgICAgICAkcmVzOiBtYXAtbWVyZ2UoJHJlcywgbWFwLWFwcGx5LWtleXMoX2ZuLXdpdGgtcHJlZml4LCAkbWFwLCAkcHJlZml4KSk7XG4gICAgfVxuICAgIEByZXR1cm4gJHJlcztcbn1cblxuLy8vIEV4dHJhY3QgaW5mb3JtYXRpb24gb24gJHBhdGggZnJvbSBhIChsaW5rZWQtKWxpc3Qgb2YgbXVsdGlwbGUgJG1hcHMuXG4vLy9cbi8vLyBUaGlzIGZ1bmN0aW9uIGlzIHVzZWZ1bCB0byBpbXBsZW1lbnQgYWNjZXNzIHRvIG5lc3RlZCBjb25maWd1cmF0aW9uIG1hcHMsXG4vLy8gd2hlbiB3ZSB3YW50IHRvIG1lcmdlIHRoZSByZXN1bHRzIG9mIGRpZmZlcmVudCBzb3VyY2VzIHRvIHdvcmsgYXMgYSBzaW5nbGVcbi8vLyBuZXN0ZWQgbWFwcGluZy5cbi8vL1xuLy8vIEBhcmcgJG1hcHMgLSBhIChsaW5rZWQtKWxpc3Qgb2YgbWFwcy5cbi8vLyBAYXJnICRwYXRoIC0gYSAobGlua2VkLSlsaXN0IGxvY2F0aW9uIG9mIGVudHJ5IG9uIG1hcHMuXG4vLy8gQGFyZyAkZGVmYXVsdCAtIHJlc3VsdCB0aGlzIHZhbHVlLCBpZiBnaXZlbiwgd2hlbiByZXF1ZXN0ZWQgZGF0YSBpcyBub3Rcbi8vLyAgICAgICAgICAgICAgICAgcHJlc2VudCBvbiBtYXBzXG5AZnVuY3Rpb24gbWFwLXBhdGgtbWVyZ2UoJG1hcHMsICRwYXRoLCAkZGVmYXVsdDogbnVsbCkge1xuICAgICRtYXBzOiB0by1sc3QoJG1hcHMpO1xuICAgIEBpZiAkbWFwcz09IG51bGwge1xuICAgICAgICBAZXJyb3IgJ01hcHMgY2Fubm90IGJlIGVtcHR5JztcbiAgICB9XG5cbiAgICAvL25vaW5zcGVjdGlvbiBDc3NJbnZhbGlkRnVuY3Rpb25cbiAgICBAd2hpbGUgJG1hcHMge1xuICAgICAgICAkbWFwOiBudGgoJG1hcHMsIDEpO1xuICAgICAgICAkbWFwczogbnRoKCRtYXBzLCAyKTtcbiAgICAgICAgJGRlZmF1bHQ6IF9mbi1tZXJnZS1kZWZhdWx0KCRkZWZhdWx0LCBtYXAtcGF0aCgkbWFwLCAkcGF0aCkpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG59XG5cbkBmdW5jdGlvbiBfZm4tbWVyZ2UtZGVmYXVsdCgkdmFsdWUsICRuZXcpIHtcbiAgICBAaWYgJG5ldyA9PSBudWxsIHtcbiAgICAgICAgQHJldHVybiAkdmFsdWU7XG4gICAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gbnVsbCB7XG4gICAgICAgIEByZXR1cm4gJG5ldztcbiAgICB9IEBlbHNlIGlmIHR5cGUtb2YoJG5ldykgPT0gbWFwIGFuZCB0eXBlLW9mKCR2YWx1ZSkgPT0gbWFwIHtcbiAgICAgICAgQHJldHVybiBtYXAtbWVyZ2UtbmVzdGVkKCR2YWx1ZSwgJG5ldyk7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCRuZXcpID09IG1hcCB7XG4gICAgICAgIEByZXR1cm4gbWFwLW1lcmdlKCh2YWx1ZTogJHZhbHVlKSwgJG5ldyk7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbWFwIHtcbiAgICAgICAgQHJldHVybiBtYXAtbWVyZ2UoJHZhbHVlLCAodmFsdWU6ICRuZXcpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHJldHVybiAkbmV3O1xuICAgIH1cbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEF1eGlsaWFyeSBub24tYXBpIGZ1bmN0aW9uc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBmdW5jdGlvbiBfbWFwLWdldDIoJG1hcCwgJGtleTEsICRrZXkyKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJG1hcCwgJGtleTEpLCAka2V5Mik7XG59XG4iLAoJCSIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vIFNUUklORyBGVU5DVElPTlNcbi8vLyBAZ3JvdXAgc3RyaW5nIGZ1bmN0aW9uc1xuLy8vIEBhdXRob3IgRsOhYmlvIE1hY8OqZG8gTWVuZGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCAnbGlzdCc7XG5cbi8vLyBQYXJ0aXRpb24gc3RyaW5nIGludG8gc2VwYXJhdG9yIGFuZCByZXR1cm4gYW4gYXJyYXkgb2YgKHByZWZpeCwgc2VwLCBwb3N0Zml4KS5cbi8vLyBJZiBlbGVtZW50IGlzIG5vdCBmb3VuZCBvbiBzdHJpbmcsIHJldHVybiAoc3QsICcnLCAnJykuIEluIGFsbCBjYXNlcyxcbi8vLyBgJHN0ID09IHN0ci5qb2luKEwoc3RyLXBhcnRpdGlvbigkc3QpLi4uKSlgLlxuLy8vXG4vLy8gQGFyZyAkc3QgLSBTdHJpbmdcbi8vLyBAYXJnICRzZXAgLSBTZXBhcmF0b3JcbkBmdW5jdGlvbiBzdHItcGFydGl0aW9uKCRzdCwgJHNlcCkge1xuICAgICRpZHg6IHN0ci1pbmRleCgkc3QsICRzZXApO1xuICAgIEBpZiAkaWR4ID09IG51bGwge1xuICAgICAgICBAcmV0dXJuICgkc3QsICcnLCAnJyk7XG4gICAgfVxuICAgICRwcmU6IHN0ci1zbGljZSgkc3QsIDEsICRpZHggLSAxKTtcbiAgICAkcG9zdDogc3RyLXNsaWNlKCRzdCwgJGlkeCArIHN0ci1sZW5ndGgoJHNlcCkpO1xuICAgIEByZXR1cm4gKCRwcmUsICRzZXAsICRwb3N0KTtcbn1cblxuLy8vIFNwbGl0IHN0cmluZyBpbnRvIHNlcGFyYXRvciBhbmQgcmV0dXJuIGEgKGxpbmtlZC0pbGlzdCBvZiBzdHJpbmdzXG4vLy9cbi8vLyBAYXJnICRzdCAtIEluaXRpYWwgc3RyaW5nXG4vLy8gQGFyZyAkc2VwIC0gU2VwYXJhdG9yXG5AZnVuY3Rpb24gc3RyLXNwbGl0KCRzdCwgJHNlcCkge1xuICAgICRpZHg6IHN0ci1pbmRleCgkc3QsICRzZXApO1xuICAgIEBpZiAkaWR4ID09IG51bGwge1xuICAgICAgICBAcmV0dXJuICgkc3QgbnVsbCk7XG4gICAgfVxuICAgICRwcmU6IHN0ci1zbGljZSgkc3QsIDEsICRpZHggLSAxKTtcbiAgICAkcG9zdDogc3RyLXNsaWNlKCRzdCwgJGlkeCArIHN0ci1sZW5ndGgoJHNlcCkpO1xuICAgIEByZXR1cm4gKCRwcmUgc3RyLXNwbGl0KCRwb3N0LCAkc2VwKSk7XG59XG5cbi8vLyBKb2luIGFsbCB2YWx1ZXMgaW4gYSAobGlua2VkLSlsaXN0IG9mIHN0cmluZ3MgaW50byBhIHNpbmdsZSBzdHJpbmcuXG4vLy9cbi8vLyBAYXJnICR4cyAtIElucHV0IGxpc3Rcbi8vLyBAYXJnICRzZXAgLSBPcHRpb25hbCBzZXBhcmF0b3JcbkBmdW5jdGlvbiBzdHItam9pbigkeHMsICRzZXA6ICcnKSB7XG4gICAgJHhzOiBjb2VyY2UtdG8tbHN0KCR4cyk7XG4gICAgJHhzOiBpZigkc2VwID09ICcnLCAkeHMsIGxzdC1pbnRlcnNwZXJzZSgkeHMsICRzZXApKTtcbiAgICBAcmV0dXJuIGxzdC1qb2luLWJ5KGFkZCwgJycsICR4cyk7XG59XG5cbi8vLyBSZXBsYWNlIGAkc3ViYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdGBcbi8vL1xuLy8vIEBhcmcgJHN0IC0gSW5pdGlhbCBzdHJpbmdcbi8vLyBAYXJnICRzdWIgLSBTdWJzdHJpbmdcbi8vLyBAYXJnICRyZXBsYWNlIC0gUmVwbGFjZW1lbnQgKGRlZmF1bHRzIHRvIGVtcHR5IHN0cmluZylcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3QsICRzdWIsICRyZXBsYWNlOiAnJykge1xuICAgIEByZXR1cm4gc3RyLWpvaW4oc3RyLXNwbGl0KCRzdCwgJHN1YiksICRyZXBsYWNlKTtcbn1cblxuLy8vIENoZWNrcyBpZiBzdHJpbmcgc3RhcnRzIHdpdGggZ2l2ZW4gc3ViLXN0cmluZ1xuLy8vXG4vLy8gQGFyZyAkc3RyIC0gaW5wdXQgc3RyaW5nXG4vLy8gQGFyZyAkcHJlZml4IC0gc3Vic3RyaW5nIHByZWZpeFxuQGZ1bmN0aW9uIHN0ci1zdGFydHMtd2l0aCgkc3RyLCAkcHJlZml4KSB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0ciwgMSwgc3RyLWxlbmd0aCgkcHJlZml4KSkgPT0gJHByZWZpeDtcbn1cblxuLy8vIENoZWNrcyBpZiBzdHJpbmcgZW5kcyB3aXRoIGdpdmVuIHN1Yi1zdHJpbmdcbi8vL1xuLy8vIEBhcmcgJHN0ciAtIGlucHV0IHN0cmluZ1xuLy8vIEBhcmcgJHN1ZmZpeC0gc3Vic3RyaW5nIHN1ZmZpeFxuQGZ1bmN0aW9uIHN0ci1lbmRzLXdpdGgoJHN0ciwgJHN1ZmZpeCkge1xuICAgICRuOiBzdHItbGVuZ3RoKCRzdWZmaXgpO1xuICAgIEBpZiAkbiA+IHN0ci1sZW5ndGgoJHN0cikge1xuICAgICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAkZW5kOiBzdHItc2xpY2UoJHN0ciwgLSRuKTtcbiAgICBAcmV0dXJuICRlbmQgPT0gJHN1ZmZpeDtcbn1cblxuXG4vLy8gSW50ZXJwb2xhdGUgYWxsIHN1YnN0aXR1dGlvbiBlbGVtZW50cyBpbiB0aGUgZ2l2ZW4gdGVtcGxhdGUgc3RyaW5nLlxuLy8vIEludGVycG9sYXRpb24gcG9pbnRzIGluIHRoZSB0ZW1wbGF0ZSBzdHJpbmcgYXJlIGlkZW50aWZpZWQgYXMgJDEsICQyLCAkMywgZXRjXG4vLy8gYW5kICRzdWJzIGlzIGEgKGxpbmtlZC0pIGxpc3Qgb2YgdmFsdWVzLlxuLy8vXG4vLy8gQGFyZyAkc3QgLSBUZW1wbGF0ZSBzdHJpbmcuXG4vLy8gQGFyZyAkc3VicyAtIChsaW5rZWQtKWxpc3Qgb2Ygc3Vic3RpdHV0aW9uIHZhbHVlcy5cbkBmdW5jdGlvbiBzdHItaW50ZXJwb2xhdGUoJHN0LCAkc3Vicykge1xuICAgICRzdWJzOiBjb2VyY2UtdG8tbHN0KCRzdWJzKTtcbiAgICAkaWR4OiAxO1xuICAgIEB3aGlsZSAkc3VicyB7XG4gICAgICAgICRzdWI6IGNhcigkc3Vicyk7XG4gICAgICAgICRzdWJzOiBjZHIoJHN1YnMpO1xuICAgICAgICAkc3Q6IHN0ci1yZXBsYWNlKCRzdCwgJyQjeyRpZHh9JywgJHN1Yik7XG4gICAgICAgICRpZHg6ICRpZHggKyAxO1xuICAgIH1cbiAgICBAcmV0dXJuICRzdDtcbn1cblxuIiwKCQkiLy8vL1xuLy8vIE5VTUJFUiBGVU5DVElPTlNcbi8vLyBAZ3JvdXAgbnVtZXJpYyBmdW5jdGlvbnNcbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgJ2xpc3QnO1xuXG4vLy8gQ29udmVydCBhcmd1bWVudCB0byBwZXJjZW50YWdlLlxuLy8vIEBhcmcgJHZhbHVlIC0gQSBudW1iZXIgaW5wdXRcbkBmdW5jdGlvbiBwYygkdmFsdWUpIHtcbiAgICBAaWYgdW5pdCgkdmFsdWUpID09ICcnIHtcbiAgICAgICAgQHJldHVybiAkdmFsdWUgKiAxMDAlO1xuICAgIH0gQGVsc2UgaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgICAgIEByZXR1cm4gJHZhbHVlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBAZXJyb3IgJ0Nhbm5vdCBjb252ZXJ0ICN7dW5pdCgkdmFsdWUpfSB0byBwZXJjZW50Lic7XG4gICAgfVxufVxuXG4vLy8gUmFpc2UgdmFsdWUgdG8gaW50ZWdlciBwb3dlci5cbi8vLyBAYXJnICR2YWx1ZSAtIEEgbnVtYmVyIGlucHV0XG4vLy8gQGFyZyAkbiAtIEV4cG9uZW50XG5AZnVuY3Rpb24gcG93KCR2YWx1ZSwgJG4pIHtcbiAgICAkcmVzdWx0OiAxO1xuICAgIEBpZiAkbiA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRuIHtcbiAgICAgICAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAkdmFsdWU7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRuIDwgMCB7XG4gICAgICAgICRuOiAtJG47XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG4ge1xuICAgICAgICAgICAgJHJlc3VsdDogJHJlc3VsdCAvICR2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vLyBSZXR1cm4gYSAobGlua2VkLSlsaXN0IHdpdGggYW4gZXhwb25lbnRpYWwgcHJvZ3Jlc3Npb24gb2YgbnVtYmVycyBmb3JtaW5nXG4vLy8gdGhlIGdpdmVuIHJhdGlvLlxuLy8vXG4vLy8gQGFyZyAkcmF0aW8gLSBSYXRpbyBiZXR3ZWVuIHR3byBzdWNjZXNzaXZlIG51bWJlcnNcbi8vLyBAYXJnICRzaXplIC0gU2l6ZSBvZiB0aGUgcmVzdWx0aW5nIGxpc3Rcbi8vLyBAYXJnICRpbml0aWFsIC0gSW5pdGlhbCB2YWx1ZSAoZGVmYXVsdHMgdG8gMSlcbkBmdW5jdGlvbiBleHBvbmVudGlhbC1wcm9ncmVzc2lvbigkcmF0aW8sICRzaXplLCAkaW5pdDogMSwgJHJldmVyc2U6IGZhbHNlKSB7XG4gICAgJHhzOiAoJGluaXQgbnVsbCk7XG4gICAgQGZvciAkaSBmcm9tIDEgdG8gJHNpemUge1xuICAgICAgICAkaW5pdDogJGluaXQgKiAkcmF0aW87XG4gICAgICAgICR4czogKCRpbml0ICR4cyk7XG4gICAgfVxuICAgIEByZXR1cm4gaWYoJHJldmVyc2UsICR4cywgbHN0LXJldmVyc2UoJHhzKSk7XG59XG5cbi8vLyBDb21wdXRlcyB0aGUgc3F1YXJlIHJvb3Qgb2YgYSBudW1iZXIgdXNpbmcgdGhlIEJhYnlsb25pYW4vTmV3dG9uJ3MgbWV0aG9kLlxuQGZ1bmN0aW9uIHNxcnQoJHgpIHtcbiAgICBAaWYgJHggPCAwIHtcbiAgICAgICAgQGVycm9yICdDYW5ub3QgY29tcHV0ZSB0aGUgc3F1YXJlIHJvb3Qgb2YgYSBuZWdhdGl2ZSBudW1iZXInO1xuICAgIH1cbiAgICAkc3FydDogMTtcbiAgICBAd2hpbGUgYWJzKCRzcXJ0ICogJHNxcnQgLSAkeCkgPiAwLjAwMDAwMDEge1xuICAgICAgICAkc3FydDogMC41ICogKCRzcXJ0ICsgJHggLyAkc3FydCk7XG4gICAgfVxuICAgIEByZXR1cm4gJHNxcnQ7XG59XG5cbi8vLyBSZXR1cm4gLTEsIDAgb3IgMSBhY2NvcmRpbmcgd2l0aCB0aGUgc2lnbiBvZiBhIG51bWVyaWNhbCBpbnB1dC5cbkBmdW5jdGlvbiBzaWduKCR4KSB7XG4gICAgQGlmICR4ID4gMCB7XG4gICAgICAgIEByZXR1cm4gMTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHJldHVybiBpZigkeCA9PSAwLCAwLCAtMSk7XG4gICAgfVxufVxuXG4vLy8gQWRkIGAkdW5pdGAgdG8gYCR2YWx1ZWBcbi8vL1xuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vIEBhcmcgJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cbi8vLyBAYXJnICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG5AZnVuY3Rpb24gdG8tbGVuZ3RoKCR2YWx1ZSwgJHVuaXQpIHtcbiAgICAkdW5pdHM6IChcbiAgICAgICAgJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsXG4gICAgICAgICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dyxcbiAgICAgICAgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcbiAgICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgICAgIEBlcnJvciAnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJztcbiAgICB9XG4gICAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xufVxuXG4vLy8gQ29udmVydCB2YWx1ZSB0byBudW1iZXJcbi8vLyBTZWU6IGh0dHBzOi8vd3d3LnNhc3NtZWlzdGVyLmNvbS9naXN0LzlmYTE5ZDI1NDg2NGYzM2Q0YTgwXG4vLy9cbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYXJnICR2YWx1ZSAtIElucHV0IHN0cmluZ1xuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICAgQHJldHVybiAkdmFsdWU7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ3N0cmluZycge1xuICAgICAgICBAZXJyb3IgJ1ZhbHVlIGZvciBgdG8tbnVtYmVyYCBzaG91bGQgYmUgYSBudW1iZXIgb3IgYSBzdHJpbmcuJztcbiAgICB9XG5cbiAgICAkcmVzdWx0OiAwO1xuICAgICRkaWdpdHM6IDA7XG4gICAgJG1pbnVzOiBzdHItc2xpY2UoJHZhbHVlLCAxLCAxKSA9PSAnLSc7XG4gICAgJG51bWJlcnM6ICgnMCc6IDAsICcxJzogMSwgJzInOiAyLCAnMyc6IDMsICc0JzogNCwgJzUnOiA1LCAnNic6IDYsICc3JzogNywgJzgnOiA4LCAnOSc6IDkpO1xuXG4gICAgQGZvciAkaSBmcm9tIGlmKCRtaW51cywgMiwgMSkgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xuICAgICAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAkaSwgJGkpO1xuXG4gICAgICAgIEBpZiBub3QgKGluZGV4KG1hcC1rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcbiAgICAgICAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpXG4gICAgICAgIH1cbiAgICAgICAgQGlmICRjaGFyYWN0ZXIgPT0gJy4nIHtcbiAgICAgICAgICAgICRkaWdpdHM6IDE7XG4gICAgICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRkaWdpdHM6ICRkaWdpdHMgKiAxMDtcbiAgICAgICAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKSAvICRkaWdpdHM7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiBpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KTtcbn1cblxuIiwKCQkiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLyBDT0xPUiBUUkFOU0ZPUk1BVElPTlMgQU5EIFVUSUxJVElFU1xuLy8vIEBncm91cCBDb2xvclxuLy8vIEBhdXRob3IgRsOhYmlvIE1hY8OqZG8gTWVuZGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4kZm4tY29udHJhc3QtY29sb3Itd2hpdGU6IHdoaXRlICFkZWZhdWx0O1xuJGZuLWNvbnRyYXN0LWNvbG9yLWJsYWNrOiBibGFjayAhZGVmYXVsdDtcbiRmbi1sdW1pbmFuY2UtaW50ZXJwb2xhdGlvbjogbnVsbDtcblxuLy8vIENhbGN1bGF0ZSBsdW1pbmFuY2Ugb2YgYXJndW1lbnQuIFJldHVybnMgYSB2YWx1ZSBiZXR3ZWVuIDAgYW5kIDEuXG4vLy9cbi8vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC1URUNIUy9HMTcuaHRtbCNHMTctdGVzdHMgYW5kXG4vLy8gaHR0cHM6Ly9tZWRpdW0uY29tL2Rldi1jaGFubmVsL3VzaW5nLXNhc3MtdG8tYXV0b21hdGljYWxseS1waWNrLXRleHQtY29sb3JzLTRiYTc2NDVkMjc5NlxuLy8vXG4vLy8gQGFyZyAkY29sb3IgLSBDb2xvciBhcmd1bWVudC5cbkBmdW5jdGlvbiBsdW1pbmFuY2UoJGNvbG9yKSB7XG4gICAgJHJlZDogbnRoKCRmbi1sdW1pbmFuY2UtaW50ZXJwb2xhdGlvbiwgcmVkKCRjb2xvcikgKyAxKTtcbiAgICAkZ3JlZW46IG50aCgkZm4tbHVtaW5hbmNlLWludGVycG9sYXRpb24sIGdyZWVuKCRjb2xvcikgKyAxKTtcbiAgICAkYmx1ZTogbnRoKCRmbi1sdW1pbmFuY2UtaW50ZXJwb2xhdGlvbiwgYmx1ZSgkY29sb3IpICsgMSk7XG4gICAgQHJldHVybiAuMjEyNiAqICRyZWQgKyAuNzE1MiAqICRncmVlbiArIC4wNzIyICogJGJsdWU7XG59XG5cbi8vLyBDYWxjdWxhdGUgdGhlIGNvbnRyYXN0IHJhdGlvIGJldHdlZW4gdHdvIGNvbG9ycyBpbiBhIHNjYWxlIG9mIDAgdG8gMS5cbi8vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC1URUNIUy9HMTcuaHRtbCNHMTctdGVzdHNcbi8vL1xuLy8vIEBhcmcgJGNvbG9yIC0gQ29sb3IgYXJndW1lbnQuXG4vLy8gQGFyZyAkb3RoZXIgLSBDb2xvciB0byBjb250cmFzdCB3aXRoICRjb2xvclxuQGZ1bmN0aW9uIGNvbnRyYXN0LXJhdGlvKCRjb2xvciwgJG90aGVyKSB7XG4gICAgJGJhY2stbHVtOiBsdW1pbmFuY2UoJGNvbG9yKSArIDAuMDE7XG4gICAgJGZvcmUtbHVtOiBsdW1pbmFuY2UoJG90aGVyKSArIDAuMDE7XG4gICAgQHJldHVybiAobWF4KCRiYWNrLWx1bSwgJGZvcmUtbHVtKSAvIG1pbigkYmFjay1sdW0sICRmb3JlLWx1bSkgLSAxKSAvIDEwMDtcbn1cblxuLy8vIENob29zZSB0aGUgY29sb3IgdGhhdCBtYWtlcyBhIGJldHRlciBjb250cmFzdCB3aXRoIHRoZSBmaXJzdCBhcmd1bWVudCBhbW9uZ1xuLy8vIHR3byBvcHRpb25zIGAkb3B0MWAgYW5kIGAkb3B0MmAuXG4vLy9cbi8vLyBAYXJnICRjb2xvciAtIFJlZmVyZW5jZSBjb2xvclxuLy8vIEBhcmcgJGNvbG9yLTEgLSBGaXJzdCBvdXRwdXQgb3B0aW9uXG4vLy8gQGFyZyAkY29sb3ItMiAtIFNlY29uZCBvdXRwdXQgb3B0aW9uXG4vLy8gQGFyZyAkYmlhcyAtIEEgZmFjdG9yIGJldHdlZW4gLTEgYW5kIDEgdG8gYXJ0aWZpY2lhbGx5IGZhdm9yICRjb2xvci0xIG92ZXIgJGNvbG9yLTJcbkBmdW5jdGlvbiBjaG9vc2UtY29udHJhc3QtY29sb3IoJGNvbG9yLCAkY29sb3ItMTogbnVsbCwgJGNvbG9yLTI6IG51bGwsICRiaWFzOiAwKSB7XG4gICAgQGlmIG5vdCAkY29sb3Ige1xuICAgICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgJGNvbG9yLTE6ICRjb2xvci0xIG9yICRmbi1jb250cmFzdC1jb2xvci13aGl0ZTtcbiAgICAkY29sb3ItMjogJGNvbG9yLTIgb3IgJGZuLWNvbnRyYXN0LWNvbG9yLWJsYWNrO1xuXG4gICAgQGlmICRjb2xvciA9PSB0cmFuc3BhcmVudCB7XG4gICAgICAgIEByZXR1cm4gaWYobGlnaHRuZXNzKCRjb2xvci0xKSA8IGxpZ2h0bmVzcygkY29sb3ItMiksICRjb2xvci0xLCAkY29sb3ItMik7XG4gICAgfVxuICAgIEBpZiAoY29udHJhc3QtcmF0aW8oJGNvbG9yLCAkY29sb3ItMSkgKiAoMSArICRiaWFzKVxuICAgICAgICAgICAgPiBjb250cmFzdC1yYXRpbygkY29sb3IsICRjb2xvci0yKSAqICgxIC0gJGJpYXMpKSB7XG4gICAgICAgIEByZXR1cm4gJGNvbG9yLTE7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gJGNvbG9yLTI7XG4gICAgfVxufVxuXG4vLyBJbnRlcnBvbGF0ZSBsdW1pbmFuY2UgZnVuY3Rpb25cbiRmbi1sdW1pbmFuY2UtaW50ZXJwb2xhdGlvbjogKFxuICAgIDAuMCxcbiAgICAwLjAwMDMwMzUyNjk4MzU0ODgzNzUsXG4gICAgMC4wMDA2MDcwNTM5NjcwOTc2NzUsXG4gICAgMC4wMDA5MTA1ODA5NTA2NDY1MTI1LFxuICAgIDAuMDAxMjE0MTA3OTM0MTk1MzUsXG4gICAgMC4wMDE1MTc2MzQ5MTc3NDQxODc0LFxuICAgIDAuMDAxODIxMTYxOTAxMjkzMDI1LFxuICAgIDAuMDAyMTI0Njg4ODg0ODQxODYyNixcbiAgICAwLjAwMjQyODIxNTg2ODM5MDcsXG4gICAgMC4wMDI3MzE3NDI4NTE5Mzk1MzczLFxuICAgIDAuMDAzMDM1MjY5ODM1NDg4Mzc1LFxuICAgIDAuMDAzMzQ2NTM1NzYzODk5MTYxLFxuICAgIDAuMDAzNjc2NTA3MzI0MDQ3NDM2LFxuICAgIDAuMDA0MDI0NzE3MDE4NDk2MzA3LFxuICAgIDAuMDA0MzkxNDQyMDM3NDEwMjkzLFxuICAgIDAuMDA0Nzc2OTUzNDgwNjkzNzI5LFxuICAgIDAuMDA1MTgxNTE2NzAyMzM4Mzg2LFxuICAgIDAuMDA1NjA1MzkxNjI0MjAyNzIzLFxuICAgIDAuMDA2MDQ4ODMzMDIyODU3MDU0LFxuICAgIDAuMDA2NTEyMDkwNzkyNTk0NDc1LFxuICAgIDAuMDA2OTk1NDEwMTg3MjY1Mzg3LFxuICAgIDAuMDA3NDk5MDMyMDQzMjI2MTc1LFxuICAgIDAuMDA4MDIzMTkyOTg1Mzg0OTk0LFxuICAgIDAuMDA4NTY4MTI1NjE4MDY5MzA3LFxuICAgIDAuMDA5MTM0MDU4NzAyMjIwNzg3LFxuICAgIDAuMDA5NzIxMjE3MzIwMjM3ODUsXG4gICAgMC4wMTAzMjk4MjMwMjk2MjY5MzYsXG4gICAgMC4wMTA5NjAwOTQwMDY0ODgyNDYsXG4gICAgMC4wMTE2MTIyNDUxNzk3NDM4ODUsXG4gICAgMC4wMTIyODY0ODgzNTY5MTU4NzIsXG4gICAgMC4wMTI5ODMwMzIzNDIxNzMwMTIsXG4gICAgMC4wMTM3MDIwODMwNDcyODk2ODYsXG4gICAgMC4wMTQ0NDM4NDM1OTYwOTI1NDUsXG4gICAgMC4wMTUyMDg1MTQ0MjI5MTI3MSxcbiAgICAwLjAxNTk5NjI5MzM2NTUwOTYzLFxuICAgIDAuMDE2ODA3Mzc1NzUyODg3Mzg0LFxuICAgIDAuMDE3NjQxOTU0NDg4Mzg0MDc4LFxuICAgIDAuMDE4NTAwMjIwMTI4Mzc5Njk3LFxuICAgIDAuMDE5MzgyMzYwOTU2OTM1NzIzLFxuICAgIDAuMDIwMjg4NTYzMDU2NjUyNCxcbiAgICAwLjAyMTIxOTAxMDM3NjAwMzU1NSxcbiAgICAwLjAyMjE3Mzg4NDc5MzM4NzM4NSxcbiAgICAwLjAyMzE1MzM2NjE3ODExMDQxLFxuICAgIDAuMDI0MTU3NjMyNDQ4NTA0NzU2LFxuICAgIDAuMDI1MTg2ODU5NjI3MzYxNjMsXG4gICAgMC4wMjYyNDEyMjE4OTQ4NDk4OTgsXG4gICAgMC4wMjczMjA4OTE2MzkwNzQ4OTQsXG4gICAgMC4wMjg0MjYwMzk1MDQ0MjA3OTMsXG4gICAgMC4wMjk1NTY4MzQ0Mzc4MDg4LFxuICAgIDAuMDMwNzEzNDQzNzMyOTkzNjM1LFxuICAgIDAuMDMxODk2MDMzMDczMDExNTMsXG4gICAgMC4wMzMxMDQ3NjY1NzA4ODUwNTUsXG4gICAgMC4wMzQzMzk4MDY4MDg2ODIxNyxcbiAgICAwLjAzNTYwMTMxNDg3NTAyMDM0LFxuICAgIDAuMDM2ODg5NDUwNDAxMTAwMDQsXG4gICAgMC4wMzgyMDQzNzE1OTUzNDY1LFxuICAgIDAuMDM5NTQ2MjM1Mjc2NzMyODQsXG4gICAgMC4wNDA5MTUxOTY5MDY4NTMxOSxcbiAgICAwLjA0MjMxMTQxMDYyMDgwOTY3NSxcbiAgICAwLjA0MzczNTAyOTI1Njk3MzQ2NSxcbiAgICAwLjA0NTE4NjIwNDM4NTY3NTU0LFxuICAgIDAuMDQ2NjY1MDg2MzM2ODgwMDk1LFxuICAgIDAuMDQ4MTcxODI0MjI2ODg5NDIsXG4gICAgMC4wNDk3MDY1NjU5ODQxMjcyMyxcbiAgICAwLjA1MTI2OTQ1ODM3NDA0MzI0LFxuICAgIDAuMDUyODYwNjQ3MDIzMTgwMjQ2LFxuICAgIDAuMDU0NDgwMjc2NDQyNDQyMzcsXG4gICAgMC4wNTYxMjg0OTAwNDk2MDAwOSxcbiAgICAwLjA1NzgwNTQzMDE5MTA2NzIzLFxuICAgIDAuMDU5NTExMjM4MTYyOTgxMixcbiAgICAwLjA2MTI0NjA1NDIzMTYxNzYxLFxuICAgIDAuMDYzMDEwMDE3NjUzMTY3NjcsXG4gICAgMC4wNjQ4MDMyNjY2OTI5MDU3NyxcbiAgICAwLjA2NjYyNTkzODY0Mzc3Mjg5LFxuICAgIDAuMDY4NDc4MTY5ODQ0NDAwMTcsXG4gICAgMC4wNzAzNjAwOTU2OTY1OTU4OCxcbiAgICAwLjA3MjI3MTg1MDY4MjMxNzQ4LFxuICAgIDAuMDc0MjEzNTY4MzgwMTQ5NjMsXG4gICAgMC4wNzYxODUzODE0ODEzMDc4NSxcbiAgICAwLjA3ODE4NzQyMTgwNTE4NjMzLFxuICAgIDAuMDgwMjE5ODIwMzE0NDY4MzIsXG4gICAgMC4wODIyODI3MDcxMjk4MTQ4LFxuICAgIDAuMDg0Mzc2MjExNTQ0MTQ4ODIsXG4gICAgMC4wODY1MDA0NjIwMzY1NDk3NixcbiAgICAwLjA4ODY1NTU4NjI4NTc3Mjk0LFxuICAgIDAuMDkwODQxNzExMTgzNDA3NjgsXG4gICAgMC4wOTMwNTg5NjI4NDY2ODc0NSxcbiAgICAwLjA5NTMwNzQ2NjYzMDk2NDcsXG4gICAgMC4wOTc1ODczNDcxNDE4NjI0NixcbiAgICAwLjA5OTg5ODcyODI0NzExMzg5LFxuICAgIDAuMTAyMjQxNzMzMDg4MTAxMzIsXG4gICAgMC4xMDQ2MTY0ODQwOTExMDQxOSxcbiAgICAwLjEwNzAyMzEwMjk3ODI2NzYxLFxuICAgIDAuMTA5NDYxNzEwNzc4Mjk5MzMsXG4gICAgMC4xMTE5MzI0Mjc4MzY5MDU2LFxuICAgIDAuMTE0NDM1MzczODI2OTczNzMsXG4gICAgMC4xMTY5NzA2Njc3NTg1MTA4NCxcbiAgICAwLjExOTUzODQyNzk4ODM0NTYyLFxuICAgIDAuMTIyMTM4NzcyMjI5NjAxODcsXG4gICAgMC4xMjQ3NzE4MTc1NjA5NTA0OSxcbiAgICAwLjEyNzQzNzY4MDQzNTY0NzQzLFxuICAgIDAuMTMwMTM2NDc2NjkwMzY0MyxcbiAgICAwLjEzMjg2ODMyMTU1MzgxNzk4LFxuICAgIDAuMTM1NjMzMzI5NjU1MjA1NjYsXG4gICAgMC4xMzg0MzE2MTUwMzI0NTE4MyxcbiAgICAwLjE0MTI2MzI5MTE0MDI3MTY0LFxuICAgIDAuMTQ0MTI4NDcwODU4MDU3NzcsXG4gICAgMC4xNDcwMjcyNjY0OTc1OTQ5OCxcbiAgICAwLjE0OTk1OTc4OTgxMDYwODU2LFxuICAgIDAuMTUyOTI2MTUxOTk2MTUwMTcsXG4gICAgMC4xNTU5MjY0NjM3MDc4Mjc0LFxuICAgIDAuMTU4OTYwODM1MDYwODgwNCxcbiAgICAwLjE2MjAyOTM3NTYzOTExMSxcbiAgICAwLjE2NTEzMjE5NDUwMTY2NzYsXG4gICAgMC4xNjgyNjk0MDAxODk2OTA3NSxcbiAgICAwLjE3MTQ0MTEwMDczMjgyMjYsXG4gICAgMC4xNzQ2NDc0MDM2NTU1ODUwNCxcbiAgICAwLjE3Nzg4ODQxNTk4MzYyOTEyLFxuICAgIDAuMTgxMTY0MjQ0MjQ5ODYwMjIsXG4gICAgMC4xODQ0NzQ5OTQ1MDA0NDEsXG4gICAgMC4xODc4MjA3NzIzMDA2Nzc4NyxcbiAgICAwLjE5MTIwMTY4Mjc0MDc5MTM4LFxuICAgIDAuMTk0NjE3ODMwNDQxNTc1OCxcbiAgICAwLjE5ODA2OTMxOTU1OTk0ODg2LFxuICAgIDAuMjAxNTU2MjUzNzk0Mzk3MDcsXG4gICAgMC4yMDUwNzg3MzYzOTAzMTY5MyxcbiAgICAwLjIwODYzNjg3MDE0NTI1NTc1LFxuICAgIDAuMjEyMjMwNzU3NDE0MDU1MjMsXG4gICAgMC4yMTU4NjA1MDAxMTM4OTkyNixcbiAgICAwLjIxOTUyNjE5OTcyOTI2OTIsXG4gICAgMC4yMjMyMjc5NTczMTY4MDg1LFxuICAgIDAuMjI2OTY1ODczNTEwMDk4MzYsXG4gICAgMC4yMzA3NDAwNDg1MjQzNDkxNSxcbiAgICAwLjIzNDU1MDU4MjE2MTAwNTIyLFxuICAgIDAuMjM4Mzk3NTczODEyMjcxLFxuICAgIDAuMjQyMjgxMTIyNDY1NTU0ODYsXG4gICAgMC4yNDYyMDEzMjY3MDc4MzU0OCxcbiAgICAwLjI1MDE1ODI4NDcyOTk1MzQ0LFxuICAgIDAuMjU0MTUyMDk0MzMwODI2NzUsXG4gICAgMC4yNTgxODI4NTI5MjE1OTU4LFxuICAgIDAuMjYyMjUwNjU3NTI5Njk2MjMsXG4gICAgMC4yNjYzNTU2MDQ4MDI4NjI0NyxcbiAgICAwLjI3MDQ5Nzc5MTAxMzA2NTgsXG4gICAgMC4yNzQ2NzczMTIwNjAzODQ2NSxcbiAgICAwLjI3ODg5NDI2MzQ3NjgxMDQsXG4gICAgMC4yODMxNDg3NDA0Mjk5OTIxLFxuICAgIDAuMjg3NDQwODM3NzI2OTE3NSxcbiAgICAwLjI5MTc3MDY0OTgxNzUzNTg3LFxuICAgIDAuMjk2MTM4MjcwNzk4MzIxMSxcbiAgICAwLjMwMDU0Mzc5NDQxNTc3NjUsXG4gICAgMC4zMDQ5ODczMTQwNjk4ODYzLFxuICAgIDAuMzA5NDY4OTIyODE3NTA4NTQsXG4gICAgMC4zMTM5ODg3MTMzNzU3MTc1NCxcbiAgICAwLjMxODU0Njc3ODEyNTA5MTg2LFxuICAgIDAuMzIzMTQzMjA5MTEyOTUwNzUsXG4gICAgMC4zMjc3NzgwOTgwNTY1NDIyLFxuICAgIDAuMzMyNDUxNTM2MzQ2MTc5MzUsXG4gICAgMC4zMzcxNjM2MTUwNDgzMzAzNyxcbiAgICAwLjM0MTkxNDQyNDkwODY2MDksXG4gICAgMC4zNDY3MDQwNTYzNTUwMjk2LFxuICAgIDAuMzUxNTMyNTk5NTAwNDM5MzYsXG4gICAgMC4zNTY0MDAxNDQxNDU5NDM1LFxuICAgIDAuMzYxMzA2Nzc5NzgzNTA5NSxcbiAgICAwLjM2NjI1MjU5NTU5ODgzOTUsXG4gICAgMC4zNzEyMzc2ODA0NzQxNDkxLFxuICAgIDAuMzc2MjYyMTIyOTkwOTA2NSxcbiAgICAwLjM4MTMyNjAxMTQzMjUzMDE0LFxuICAgIDAuMzg2NDI5NDMzNzg3MDQ5LFxuICAgIDAuMzkxNTcyNDc3NzQ5NzIzMjYsXG4gICAgMC4zOTY3NTUyMzA3MjU2MjY4NSxcbiAgICAwLjQwMTk3Nzc3OTgzMjE5NTgsXG4gICAgMC40MDcyNDAyMTE5MDE3MzY3LFxuICAgIDAuNDEyNTQyNjEzNDgzOTAzNzUsXG4gICAgMC40MTc4ODUwNzA4NDgxMzc1LFxuICAgIDAuNDIzMjY3NjY5OTg2MDcxNyxcbiAgICAwLjQyODY5MDQ5NjYxMzkwNjYsXG4gICAgMC40MzQxNTM2MzYxNzQ3NDg5NSxcbiAgICAwLjQzOTY1NzE3Mzg0MDkxODgsXG4gICAgMC40NDUyMDExOTQ1MTYyMjc4NixcbiAgICAwLjQ1MDc4NTc4MjgzODIyMzQ2LFxuICAgIDAuNDU2NDExMDIzMTgwNDA0NjYsXG4gICAgMC40NjIwNzY5OTk2NTQ0MDcxLFxuICAgIDAuNDY3NzgzNzk2MTEyMTU5LFxuICAgIDAuNDczNTMxNDk2MTQ4MDA5NTUsXG4gICAgMC40NzkzMjAxODMxMDA4MjY4LFxuICAgIDAuNDg1MTQ5OTQwMDU2MDcwNCxcbiAgICAwLjQ5MTAyMDg0OTg0NzgzNTYsXG4gICAgMC40OTY5MzI5OTUwNjA4NzA0LFxuICAgIDAuNTAyODg2NDU4MDMyNTY4NyxcbiAgICAwLjUwODg4MTMyMDg1NDkzMzgsXG4gICAgMC41MTQ5MTc2NjUzNzY1MjE0LFxuICAgIDAuNTIwOTk1NTczMjA0MzU0MyxcbiAgICAwLjUyNzExNTEyNTcwNTgxMzEsXG4gICAgMC41MzMyNzY0MDQwMTA1MDUyLFxuICAgIDAuNTM5NDc5NDg5MDEyMTA3MixcbiAgICAwLjU0NTcyNDQ2MTM3MDE4NjYsXG4gICAgMC41NTIwMTE0MDE1MTIwMDAxLFxuICAgIDAuNTU4MzQwMzg5NjM0MjY3OSxcbiAgICAwLjU2NDcxMTUwNTcwNDkyOTIsXG4gICAgMC41NzExMjQ4Mjk0NjQ4NzMxLFxuICAgIDAuNTc3NTgwNDQwNDI5NjUwNixcbiAgICAwLjU4NDA3ODQxNzg5MTE2NDEsXG4gICAgMC41OTA2MTg4NDA5MTkzMzY5LFxuICAgIDAuNTk3MjAxNzg4MzYzNzYzNCxcbiAgICAwLjYwMzgyNzMzODg1NTMzNzgsXG4gICAgMC42MTA0OTU1NzA4MDc4NjQ4LFxuICAgIDAuNjE3MjA2NTYyNDE5NjUxMSxcbiAgICAwLjYyMzk2MDM5MTY3NTA3NjEsXG4gICAgMC42MzA3NTcxMzYzNDYxNDY4LFxuICAgIDAuNjM3NTk2ODczOTk0MDMyNixcbiAgICAwLjY0NDQ3OTY4MTk3MDU4MjEsXG4gICAgMC42NTE0MDU2Mzc0MTk4MjQyLFxuICAgIDAuNjU4Mzc0ODE3Mjc5NDQ4NSxcbiAgICAwLjY2NTM4NzI5ODI4MjI3MixcbiAgICAwLjY3MjQ0MzE1Njk1NzY4NzUsXG4gICAgMC42Nzk1NDI0Njk2MzMwOTM4LFxuICAgIDAuNjg2Njg1MzEyNDM1MzEzNSxcbiAgICAwLjY5Mzg3MTc2MTI5MTk4OTksXG4gICAgMC43MDExMDE4OTE5MzI5NzMxLFxuICAgIDAuNzA4Mzc1Nzc5ODkxNjg2OCxcbiAgICAwLjcxNTY5MzUwMDUwNjQ4MDcsXG4gICAgMC43MjMwNTUxMjg5MjE5NjkzLFxuICAgIDAuNzMwNDYwNzQwMDkwMzUzNyxcbiAgICAwLjczNzkxMDQwODc3MjczMDgsXG4gICAgMC43NDU0MDQyMDk1NDAzODc0LFxuICAgIDAuNzUyOTQyMjE2Nzc2MDc3OSxcbiAgICAwLjc2MDUyNDUwNDY3NTI5MjQsXG4gICAgMC43NjgxNTExNDcyNDc1MDcsXG4gICAgMC43NzU4MjIyMTgzMTc0MjM2LFxuICAgIDAuNzgzNTM3NzkxNTI2MTkzNSxcbiAgICAwLjc5MTI5Nzk0MDMzMjYzMDIsXG4gICAgMC43OTkxMDI3MzgwMTQ0MDksXG4gICAgMC44MDY5NTIyNTc2NjkyNTE2LFxuICAgIDAuODE0ODQ2NTcyMjE2MTAxMixcbiAgICAwLjgyMjc4NTc1NDM5NjI4MzUsXG4gICAgMC44MzA3Njk4NzY3NzQ2NTQ2LFxuICAgIDAuODM4Nzk5MDExNzQwNzQsXG4gICAgMC44NDY4NzMyMzE1MDk4NTgsXG4gICAgMC44NTQ5OTI2MDgxMjQyMzM4LFxuICAgIDAuODYzMTU3MjEzNDU0MTAyMyxcbiAgICAwLjg3MTM2NzExOTE5ODc5NzIsXG4gICAgMC44Nzk2MjIzOTY4ODc4MzE3LFxuICAgIDAuODg3OTIzMTE3ODgxOTY2MyxcbiAgICAwLjg5NjI2OTM1MzM3NDI2NjQsXG4gICAgMC45MDQ2NjExNzQzOTExNDk2LFxuICAgIDAuOTEzMDk4NjUxNzkzNDE5MixcbiAgICAwLjkyMTU4MTg1NjI3NzI5NDYsXG4gICAgMC45MzAxMTA4NTgzNzU0MjM3LFxuICAgIDAuOTM4Njg1NzI4NDU3ODg4LFxuICAgIDAuOTQ3MzA2NTM2NzMzMTk5OSxcbiAgICAwLjk1NTk3MzM1MzI0OTI4NjEsXG4gICAgMC45NjQ2ODYyNDc4OTQ0NjUxLFxuICAgIDAuOTczNDQ1MjkwMzk4NDEyNSxcbiAgICAwLjk4MjI1MDU1MDMzMzExNzEsXG4gICAgMC45OTExMDIwOTcxMTM4Mjk4LFxuICAgIDEuMCxcbik7XG4iLAoJCSIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vIFRFU1RJTkcgRlVOQ1RJT05TXG4vLy8gQGdyb3VwIHRlc3Rpbmdcbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8vIEFzc2VydCBlcXVhbGl0eSBvbiB1bml0IHRlc3RzXG4vLy9cbi8vLyBAYXJnICRmc3QgLSBGaXJzdCBhcmd1bWVudFxuLy8vIEBhcmcgJHNuZCAtIFNlY29uZCBhcmd1bWVudFxuLy8vIEBhcmcgJG1zZyAtIE9wdGlvbmFsIG1lc3NhZ2Vcbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAgICRkbzogYXNzZXJ0LWVxKGpvaW4oaGVsbG8sIHdvcmxkKSwgaGVsbG8gd29ybGQpO1xuQGZ1bmN0aW9uIGFzc2VydC1lcSgkZnN0LCAkc25kLCAkbXNnOiAnQXNzZXJ0aW9uIGVycm9yJykge1xuICAgIEBpZiAkZnN0ICE9ICRzbmQge1xuICAgICAgICBAZXJyb3IgJyN7JG1zZ306IGV4cGVjdCBcIiN7aW5zcGVjdCgkc25kKX1cIiwgYnV0IGdvdCBcIiN7aW5zcGVjdCgkZnN0KX1cIi4nO1xuICAgIH1cbiAgICBAcmV0dXJuICRmc3Q7XG59XG5cbi8vLyBBc3NlcnQgZm4gcmV0dXJucyB0cnVlIHdoZW4gY2FsbGVkIHdpdGggYm90aCBhcmd1bWVudHMuXG4vLy9cbi8vLyBAYXJnICRmbiAtIEZ1bmN0aW9uXG4vLy8gQGFyZyAkZnN0IC0gRmlyc3QgYXJndW1lbnRcbi8vLyBAYXJnICRzbmQgLSBTZWNvbmQgYXJndW1lbnRcbi8vLyBAYXJnICRtc2cgLSBPcHRpb25hbCBtZXNzYWdlXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgICAkZG86IGFzc2VydC1mbihndCwgMiwgMyk7XG5AZnVuY3Rpb24gYXNzZXJ0LWZuKCRmbiwgJGZzdCwgJHNuZCwgJG1zZzogJ0Fzc2VydGlvbiBlcnJvcicpIHtcbiAgICBAaWYgY2FsbC1mbigkZm4sICRmc3QsICRzbmQpIHtcbiAgICAgICAgQHJldHVybiAkZnN0O1xuICAgIH1cbiAgICBAZXJyb3IgJyN7JG1zZ306IGNvbmRpdGlvbiAjeyRmbn0gbm90IG1ldCB3aXRoIFwiI3tpbnNwZWN0KCRmc3QpfVwiIGFuZCBcIiN7aW5zcGVjdCgkc25kKX1cIi4nO1xufVxuXG5AZnVuY3Rpb24gYXNzZXJ0LWd0KCRmc3QsICRzbmQsICRtc2c6J0Fzc2VydGlvbiBlcnJvcicpIHtcbiAgICBAcmV0dXJuIGFzc2VydC1mbihndCwgJGZzdCwgJHNuZCwgJG1zZylcbn1cblxuQGZ1bmN0aW9uIGFzc2VydC1sdCgkZnN0LCAkc25kLCAkbXNnOidBc3NlcnRpb24gZXJyb3InKSB7XG4gICAgQHJldHVybiBhc3NlcnQtZm4obHQsICRmc3QsICRzbmQsICRtc2cpXG59XG5cbkBmdW5jdGlvbiBhc3NlcnQtZ2UoJGZzdCwgJHNuZCwgJG1zZzonQXNzZXJ0aW9uIGVycm9yJykge1xuICAgIEByZXR1cm4gYXNzZXJ0LWZuKGdlLCAkZnN0LCAkc25kLCAkbXNnKVxufVxuXG5AZnVuY3Rpb24gYXNzZXJ0LWxlKCRmc3QsICRzbmQsICRtc2c6J0Fzc2VydGlvbiBlcnJvcicpIHtcbiAgICBAcmV0dXJuIGFzc2VydC1mbihsZSwgJGZzdCwgJHNuZCwgJG1zZylcbn1cblxuLy8vIEFzc2VydCBhcHByb3hpbWF0ZSBudW1lcmljYWwgZXF1YWxpdHlcbi8vL1xuLy8vIEBhcmcgJGZzdCAtIEZpcnN0IGFyZ3VtZW50XG4vLy8gQGFyZyAkc25kIC0gU2Vjb25kIGFyZ3VtZW50XG4vLy8gQGFyZyAkdG9sIC0gTWF4aW11bSB0b2xlcmFuY2Vcbi8vLyBAYXJnICRtc2cgLSBPcHRpb25hbCBtZXNzYWdlXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgICAkZG86IGFzc2VydC1lcShqb2luKGhlbGxvLCB3b3JsZCksIGhlbGxvIHdvcmxkKTtcbkBmdW5jdGlvbiBhc3NlcnQtc2ltZXEoJGZzdCwgJHNuZCwgJHRvbDogMC4wMDAwMDEsICRtc2c6ICdBc3NlcnRpb24gZXJyb3InKSB7XG4gICAgQGlmIGFicygkZnN0IC0gJHNuZCkgPiAkdG9sIHtcbiAgICAgICAgQGVycm9yICcjeyRtc2d9OiBleHBlY3QgXCIje2luc3BlY3QoJHNuZCl9XCIsIGJ1dCBnb3QgXCIje2luc3BlY3QoJGZzdCl9XCIuJztcbiAgICB9XG4gICAgQHJldHVybiAkZnN0O1xufVxuIiwKCQkiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLyBEZWZhdWx0IGNvbmZpZ3VyYXRpb24gbWFwXG4vLy8gQGF1dGhvciBGw6FiaW8gTWFjw6pkbyBNZW5kZXNcbi8vLyBAZ3JvdXAgQ29uZmlnXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCAnc3RhY2stZm9udCc7XG5AaW1wb3J0ICdzdGFjay1jb2xvcic7XG5AaW1wb3J0ICdiYXNlJztcbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGT05UIFNUQUNLU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRk9OVCBOQU1FU1xuXG4vLyBTeXN0ZW0gZm9udHNcbiRmb250LXN0YWNrLXN5c3RlbS1mb250OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIOKAnFNlZ29lIFVJ4oCdLCDigJxPeHlnZW7igJ0sIOKAnFVidW50deKAnSwg4oCcQ2FudGFyZWxs4oCdLCDigJxSb2JvdG/igJ0sIOKAnEZpcmEgU2Fuc+KAnSwg4oCcRHJvaWQgU2Fuc+KAnSwg4oCcSGVsdmV0aWNhIE5ldWXigJ0sIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFNhbnMtc2VyaWZcbiRmb250LXN0YWNrLXN5c3RlbS1zYW5zOiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtc3RhY2stcm9ib3RvOiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIOKAnFNlZ29lIFVJ4oCdLCDigJxPeHlnZW7igJ0sIOKAnFVidW50deKAnSwg4oCcQ2FudGFyZWxs4oCdLCDigJxGaXJhIFNhbnPigJ0sIOKAnERyb2lkIFNhbnPigJ0sIOKAnEhlbHZldGljYSBOZXVl4oCdLCAkZm9udC1zdGFjay1zeXN0ZW0tc2FucyAhZGVmYXVsdDtcbiRmb250LXN0YWNrLW9wZW4tc2FuczogXCJPcGVuIFNhbnNcIiwgJGZvbnQtc3RhY2stc3lzdGVtLXNhbnMgIWRlZmF1bHQ7XG4kZm9udC1zdGFjay1leG86IFwiRXhvXCIsICRmb250LXN0YWNrLXN5c3RlbS1zYW5zICFkZWZhdWx0O1xuJGZvbnQtc3RhY2stcmFsZXdheTogXCJSYWxld2F5XCIsICRmb250LXN0YWNrLXN5c3RlbS1zYW5zICFkZWZhdWx0O1xuJGZvbnQtc3RhY2stbGF0bzogXCJMYXRvXCIsICRmb250LXN0YWNrLXN5c3RlbS1zYW5zICFkZWZhdWx0O1xuJGZvbnQtc3RhY2stcGF0dWEtb25lOiBcIlBhdHVhIE9uZVwiLCAkZm9udC1zdGFjay1zeXN0ZW0tc2FucyAhZGVmYXVsdDtcbiRmb250LXN0YWNrLWlibS1wbGV4LXNhbnM6ICdJQk0gUGxleCBTYW5zJywgJGZvbnQtc3RhY2stc3lzdGVtLXNhbnMgIWRlZmF1bHQ7XG5cbi8vIFNhbnMgQ29uZGVuc2VkXG4kZm9udC1zdGFjay1zeXN0ZW0tc2Fucy1jb25kZW5zZWQ6ICRmb250LXN0YWNrLXN5c3RlbS1zYW5zICFkZWZhdWx0O1xuJGZvbnQtc3RhY2stb3Blbi1zYW5zLWNvbmRlbnNlZDogXCJPcGVuIFNhbnMgQ29uZGVuc2VkXCIsICRmb250LXN0YWNrLXN5c3RlbS1zYW5zLWNvbmRlbnNlZCAhZGVmYXVsdDtcbiRmb250LXN0YWNrLWlibS1wbGV4LXNhbnMtY29uZGVuc2VkOiAnSUJNIFBsZXggU2FucyBDb25zZW5zZWQnLCAkZm9udC1zdGFjay1zeXN0ZW0tc2FucyAhZGVmYXVsdDtcblxuLy8gU2VyaWZcbiRmb250LXN0YWNrLXN5c3RlbS1zZXJpZjogc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1zdGFjay1nZW9yZ2lhOiBcIkdlb3JnaWFcIiwgJGZvbnQtc3RhY2stc3lzdGVtLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtc3RhY2stdGltZXM6IFwiVGltZXMgTmV3IFJvbWFuXCIsICRmb250LXN0YWNrLXN5c3RlbS1zZXJpZiAhZGVmYXVsdDtcbiRmb250LXN0YWNrLWlibS1wbGV4LXNlcmlmOiAnSUJNIFBsZXggU2VyaWYnLCAkZm9udC1zdGFjay1zeXN0ZW0tc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIEN1cnNpdmVcbiRmb250LXN0YWNrLXN5c3RlbS1jdXJzaXZlOiBjdXJzaXZlICFkZWZhdWx0O1xuJGZvbnQtc3RhY2stY29taWMtc2FuczogXCJDb21pYyBTYW5zXCIsICRmb250LXN0YWNrLXN5c3RlbS1jdXJzaXZlICFkZWZhdWx0O1xuXG4vLyBNb25vc3BhY2VcbiRmb250LXN0YWNrLXN5c3RlbS1tb25vc3BhY2U6IG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LXN0YWNrLWlibS1wbGV4LW1vbm86IFwiSUJNIFBsZXggTW9ub1wiLCAkZm9udC1zdGFjay1zeXN0ZW0tbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLyBJY29uc1xuJGZvbnQtc3RhY2stZm9udC1hd2Vzb21lOiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIiAhZGVmYXVsdDtcbiRmb250LXN0YWNrLW1hdGVyaWFsLWljb25zOiBcIk1hdGVyaWFsIEljb25zXCIgIWRlZmF1bHQ7XG5cbiRtZW5kZWxlZXYtdHlwZWZhY2U6IG51bGwgIWRlZmF1bHQ7XG4kbWVuZGVsZWV2LWN1cnNpdmU6ICRmb250LXN0YWNrLXN5c3RlbS1jdXJzaXZlICFkZWZhdWx0O1xuJG1lbmRlbGVldi1tb25vc3BhY2U6ICRmb250LXN0YWNrLWlibS1wbGV4LW1vbm8gIWRlZmF1bHQ7XG4kbWVuZGVsZWV2LXNhbnMtc2VyaWY6ICRmb250LXN0YWNrLWV4byAhZGVmYXVsdDtcbiRtZW5kZWxlZXYtc2VyaWY6ICRmb250LXN0YWNrLWlibS1wbGV4LXNlcmlmICFkZWZhdWx0O1xuIiwKCQkiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENPTE9SIE5BTUVTIEFORCBERUZBVUxUIFZBTFVFU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gV2hpdGVzXG4kY29sb3ItYmxhY2s6ICMxNTE1MTUgIWRlZmF1bHQ7XG4kY29sb3Itd2hpdGU6IHdoaXRlICFkZWZhdWx0O1xuJGNvbG9yLWRhcms6ICRjb2xvci1ibGFjayAhZGVmYXVsdDtcbiRjb2xvci1saWdodDogJGNvbG9yLXdoaXRlICFkZWZhdWx0O1xuJGNvbG9yLWdyZXk6ICNhNzlkOTYgIWRlZmF1bHQ7XG5cbiRjb2xvci1yZWd1bGFyLXRleHQ6ICRjb2xvci1ibGFjayAhZGVmYXVsdDtcbiRjb2xvci1pbnZlcnNlLXRleHQ6ICRjb2xvci13aGl0ZSAhZGVmYXVsdDtcbiRjb2xvci1iYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGUgIWRlZmF1bHQ7XG4kY29sb3ItaW52ZXJzZS1iYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2sgIWRlZmF1bHQ7XG5cbiRjb2xvci1tdXRlZC10ZXh0OiBtaXgoJGNvbG9yLXJlZ3VsYXItdGV4dCwgJGNvbG9yLWdyZXksIDUwJSkgIWRlZmF1bHQ7XG4kY29sb3ItbXV0ZWQtYmFja2dyb3VuZDogbWl4KCRjb2xvci1iYWNrZ3JvdW5kLCAkY29sb3ItZ3JleSwgOTAlKSAhZGVmYXVsdDtcbiRjb2xvci1tdXRlZC1pbnZlcnNlLXRleHQ6IG1peCgkY29sb3ItaW52ZXJzZS10ZXh0LCAkY29sb3ItZ3JleSwgNTAlKSAhZGVmYXVsdDtcbiRjb2xvci1tdXRlZC1pbnZlcnNlLWJhY2tncm91bmQ6IG1peCgkY29sb3ItaW52ZXJzZS1iYWNrZ3JvdW5kLCAkY29sb3ItZ3JleSwgOTAlKSAhZGVmYXVsdDtcblxuLy8gQ29sb3JzXG4kY29sb3ItcmVkOiAjZGUwMTFlICFkZWZhdWx0O1xuJGNvbG9yLW9yYW5nZTogI2YyNjIwMiAhZGVmYXVsdDtcbiRjb2xvci15ZWxsb3c6ICNmYmJkMDggIWRlZmF1bHQ7XG4kY29sb3Itb2xpdmU6ICNiNWNjMTggIWRlZmF1bHQ7XG4kY29sb3ItZ3JlZW46ICMxNmFiMzkgIWRlZmF1bHQ7XG4kY29sb3ItdGVhbDogIzAwYjVhZCAhZGVmYXVsdDtcbiRjb2xvci1ibHVlOiAjMDA2ZDkzICFkZWZhdWx0O1xuJGNvbG9yLXZpb2xldDogIzFjMDA1MiAhZGVmYXVsdDtcbiRjb2xvci1wdXJwbGU6ICM5NjI3YmEgIWRlZmF1bHQ7XG4kY29sb3ItcGluazogI2UwMzk5NyAhZGVmYXVsdDtcbiRjb2xvci1icm93bjogI2E1NjczZiAhZGVmYXVsdDtcblxuLy8gUm9sZXNcbi8vJGNvbG9yLWJyYW5kOiAkY29sb3ItdmlvbGV0ICFkZWZhdWx0O1xuJGNvbG9yLWJyYW5kOiAkY29sb3ItcmVkICFkZWZhdWx0O1xuJGNvbG9yLWFjY2VudDogJGNvbG9yLXZpb2xldCAhZGVmYXVsdDtcbiRjb2xvci1hY3Rpb246IG1peCgkY29sb3ItZ3JleSwgJGNvbG9yLXdoaXRlKSAhZGVmYXVsdDtcbiRjb2xvci1wcmltYXJ5OiAkY29sb3ItYnJhbmQgIWRlZmF1bHQ7XG4kY29sb3Itc2Vjb25kYXJ5OiAkY29sb3ItYWNjZW50ICFkZWZhdWx0O1xuJGNvbG9yLXBvc2l0aXZlOiAkY29sb3ItZ3JlZW4gIWRlZmF1bHQ7XG4kY29sb3ItbmVnYXRpdmU6ICRjb2xvci1yZWQgIWRlZmF1bHQ7XG4kY29sb3Itd2FybmluZzogJGNvbG9yLXllbGxvdyAhZGVmYXVsdDtcblxuLy8gRGVmYXVsdCBjb2xvciBwYWxldHRlXG4kbWVuZGVsZWV2LWNvbG9yLXBhbGV0dGU6ICgpICFkZWZhdWx0O1xuJG1lbmRlbGVldi1jb2xvci1wYWxldHRlOiBtYXAtbWVyZ2UoKFxuICAgIC8vXG4gICAgLy8gV2hpdGVzXG4gICAgJ2JsYWNrJzogJGNvbG9yLWJsYWNrLFxuICAgICd3aGl0ZSc6ICRjb2xvci13aGl0ZSxcbiAgICAnbGlnaHQnOiAkY29sb3ItbGlnaHQsXG4gICAgJ2RhcmsnOiAkY29sb3ItZGFyayxcbiAgICAnZ3JleSc6ICRjb2xvci1ncmV5LFxuICAgICdyZWd1bGFyLXRleHQnOiAkY29sb3ItcmVndWxhci10ZXh0LFxuICAgICdpbnZlcnNlLXRleHQnOiAkY29sb3ItaW52ZXJzZS10ZXh0LFxuICAgICdiYWNrZ3JvdW5kJzogJGNvbG9yLWJhY2tncm91bmQsXG4gICAgJ2ludmVyc2UtYmFja2dyb3VuZCc6ICRjb2xvci1pbnZlcnNlLWJhY2tncm91bmQsXG4gICAgJ211dGVkLXRleHQnOiAkY29sb3ItbXV0ZWQtdGV4dCxcbiAgICAnbXV0ZWQtaW52ZXJzZS10ZXh0JzogJGNvbG9yLW11dGVkLWludmVyc2UtdGV4dCxcbiAgICAnbXV0ZWQtYmFja2dyb3VuZCc6ICRjb2xvci1tdXRlZC1iYWNrZ3JvdW5kLFxuICAgICdtdXRlZC1pbnZlcnNlLWJhY2tncm91bmQnOiAkY29sb3ItbXV0ZWQtaW52ZXJzZS1iYWNrZ3JvdW5kLFxuICAgIC8vXG4gICAgLy8gQ29sb3JzXG4gICAgJ3JlZCc6ICRjb2xvci1yZWQsXG4gICAgJ29yYW5nZSc6ICRjb2xvci1vcmFuZ2UsXG4gICAgJ3llbGxvdyc6ICRjb2xvci15ZWxsb3csXG4gICAgJ29saXZlJzogJGNvbG9yLW9saXZlLFxuICAgICdncmVlbic6ICRjb2xvci1ncmVlbixcbiAgICAndGVhbCc6ICRjb2xvci10ZWFsLFxuICAgICdibHVlJzogJGNvbG9yLWJsdWUsXG4gICAgJ3Zpb2xldCc6ICRjb2xvci12aW9sZXQsXG4gICAgJ3B1cnBsZSc6ICRjb2xvci1wdXJwbGUsXG4gICAgJ3BpbmsnOiAkY29sb3ItcGluayxcbiAgICAnYnJvd24nOiAkY29sb3ItYnJvd24sXG4gICAgLy9cbiAgICAvLyAgUm9sZXNcbiAgICAnYnJhbmQnOiAkY29sb3ItYnJhbmQsXG4gICAgJ2FjY2VudCc6ICRjb2xvci1hY2NlbnQsXG4gICAgJ2FjdGlvbic6ICRjb2xvci1hY3Rpb24sXG4gICAgJ3ByaW1hcnknOiAkY29sb3ItcHJpbWFyeSxcbiAgICAnc2Vjb25kYXJ5JzogJGNvbG9yLXNlY29uZGFyeSxcbiAgICAncG9zaXRpdmUnOiAkY29sb3ItcG9zaXRpdmUsXG4gICAgJ25lZ2F0aXZlJzogJGNvbG9yLW5lZ2F0aXZlLFxuICAgICd3YXJuaW5nJzogJGNvbG9yLXdhcm5pbmcsXG4pLCAkbWVuZGVsZWV2LWNvbG9yLXBhbGV0dGUpO1xuXG4vLyBEZWZhdWx0IGNvbnRyYXN0IG92ZXJyaWRlc1xuJG1lbmRlbGVldi1jb2xvci1jb250cmFzdDogKFxuICAgICMzM2MzZjA6ICRjb2xvci13aGl0ZSxcbiAgICAjMDBiNWFkOiAkY29sb3Itd2hpdGUsXG4gICAgI2I1Y2MxODogJGNvbG9yLXdoaXRlLFxuKSAhZGVmYXVsdDtcblxuJG1lbmRlbGVldi1jb2xvci1icmFuZDogJGNvbG9yLWJyYW5kO1xuIiwKCQkiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLyBCYXNlIGNvbmZpZ3VyYXRpb25cbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vIEBncm91cCBDb25maWdcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0ICcuLi9mbic7XG5cbiRtZW5kZWxlZXYtY29sb3ItY29udHJhc3Q6ICRmbi1lbXB0eS1tYXAgIWRlZmF1bHQ7XG4kbWVuZGVsZWV2LWNvbG9yLXBhbGV0dGU6ICRmbi1lbXB0eS1tYXAgIWRlZmF1bHQ7XG4kbWVuZGVsZWV2LXR5cGVmYWNlOiBudWxsICFkZWZhdWx0O1xuJG1lbmRlbGVldi1jdXJzaXZlOiBjdXJzaXZlICFkZWZhdWx0O1xuJG1lbmRlbGVldi1tb25vc3BhY2U6IG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRtZW5kZWxlZXYtc2Fucy1zZXJpZjogc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRtZW5kZWxlZXYtc2VyaWY6IHNlcmlmICFkZWZhdWx0O1xuJG1lbmRlbGVldi1jb2xvci1icmFuZDogYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDT05GSUdVUkFUSU9OIERJQ1RJT05BUllcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBNYWluIGNvbmZpZ3VyYXRpb24gZGljdGlvbmFyeS4gWW91IGN1c3RvbWl6ZSBNZW5kZWxlZXYgYnkgc2V0dGluZyB2YWx1ZXNcbi8vLyB0byB0aGlzIGRpY3Rpb25hcnkuXG4kY29uZmlnOiAoKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29uZmlndXJhdGlvbiBvcHRpb25zLlxuLy8vIFRoaXMgbWFwIGNvbnRhaW5zIGFsbCBkZWZhdWx0IHZhbHVlcyBmb3IgY29uZmlndXJhdGlvbnMgdGhhdCBjYW4gYmVcbi8vLyBvdmVycmlkZGVuIGJ5IHRoZSBgJGNvbmZpZ2Agb3IgYCRjb25maWctZGVmYXVsdHNgIG1hcHBpbmdzLlxuJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlOiB0cnVlICFkZWZhdWx0O1xuJG1lbmRlbGVldi1jb25maWc6IChcbiAgICAvL1xuICAgIC8vIEdMT0JBTFxuICAgICdicmVha3BvaW50cyc6IChcbiAgICAgICAgJ3NtJzogMzByZW0sXG4gICAgICAgICdtZCc6IDUwcmVtLFxuICAgICAgICAnbGcnOiA3NXJlbSxcbiAgICApLFxuICAgICd1dGlsaXRpZXMnOiAoXG4gICAgICAgICdpbXBvcnRhbnQnOiB0cnVlLFxuICAgICAgICAnZW1pdCc6ICdyZXNwZWN0JyxcbiAgICApLFxuICAgIC8vXG4gICAgLy8gVFlQT0dSQVBIWVxuICAgICd0eXBvZ3JhcGh5JzogKFxuICAgICAgICAvL1xuICAgICAgICAvLyBHZW5lcmljXG4gICAgICAgICdtb2R1bGVzJzogKFxuICAgICAgICAgICAgJ2hlYWRpbmdzJzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICAgICAgICAgJ3BhcmFncmFwaCc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAgICAgICAgICdzY2FsZSc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAgICAgICAgICdsZWFkaW5nJzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICAgICAgICAgJ21lYXN1cmUnOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgICAgICAgICAnaW5kZW50JzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICAgICAgICAgJ2FsaWdubWVudCc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAgICAgICAgICdzdHlsZXMnOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgICAgICAgICAnd2VpZ2h0cyc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAgICAgICAgICdmb250cyc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAgICAgICAgICdkaXJlY3Rpb24nOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgICAgICAgICAnd2hpdGUtc3BhY2UnOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgICAgICksXG4gICAgICAgIC8vXG4gICAgICAgIC8vIFR5cGVmYWNlc1xuICAgICAgICAndHlwZWZhY2UnOiAkbWVuZGVsZWV2LXR5cGVmYWNlLFxuICAgICAgICAnY3Vyc2l2ZSc6ICRtZW5kZWxlZXYtY3Vyc2l2ZSxcbiAgICAgICAgJ21vbm9zcGFjZSc6ICRtZW5kZWxlZXYtbW9ub3NwYWNlLFxuICAgICAgICAnc2Fucy1zZXJpZic6ICRtZW5kZWxlZXYtc2Fucy1zZXJpZixcbiAgICAgICAgJ3NlcmlmJzogJG1lbmRlbGVldi1zZXJpZixcbiAgICAgICAgLy9cbiAgICAgICAgLy8gVmVydGljYWwgcmh5dGhtIGFuZCBtb2R1bGFyIHNjYWxlXG4gICAgICAgICdzaXplJzogKFxuICAgICAgICAgICAgJ3N0YXJ0JzogMTYsXG4gICAgICAgICAgICAnbWQnOiAxNyxcbiAgICAgICAgICAgICdsZyc6IDE4LFxuICAgICAgICApLFxuICAgICAgICAnbGVhZCc6IDEuNSxcbiAgICAgICAgJ2hlYWRpbmctbGVhZCc6IDEuMjUwLFxuICAgICAgICAnc2NhbGUnOiAoXG4gICAgICAgICAgICAnc3RhcnQnOiA5LzgsXG4gICAgICAgICAgICAnc20nOiAoOS80ICsgNS80KSAvIDMsXG4gICAgICAgICAgICAnbWQnOiAoOS84ICsgNS8yKSAvIDMsXG4gICAgICAgICAgICAnbGcnOiA1LzQsXG4gICAgICAgICksXG4gICAgICAgIC8vXG4gICAgICAgIC8vIE92ZXJyaWRkZW4gcHJvcGVydGllc1xuICAgICAgICAnYm9keSc6ICgpLFxuICAgICAgICAncGFyYWdyYXBoJzogKCksXG4gICAgICAgICdoZWFkaW5ncyc6IChcbiAgICAgICAgICAgICdsZXR0ZXItc3BhY2luZyc6IC0wLjAzZW0sXG4gICAgICAgICAgICAnZm9udC13ZWlnaHQnOiA5MDAsXG4gICAgICAgICAgICAnY29sb3InOiAkbWVuZGVsZWV2LWNvbG9yLWJyYW5kLFxuICAgICAgICApLFxuICAgICksXG4gICAgLy9cbiAgICAvLyBDT0xPUlNcbiAgICAncGFsZXR0ZSc6ICRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZSxcbiAgICAnY29udHJhc3QnOiAkbWVuZGVsZWV2LWNvbG9yLWNvbnRyYXN0LFxuICAgICdjb2xvcic6IChcbiAgICAgICAgJ2NvbnRyYXN0LWJpYXMnOiAwLjEyNSxcbiAgICAgICAgJ3JvbGVzJzogKFxuICAgICAgICAgICAgJ3ByaW1hcnknLCAnc2Vjb25kYXJ5JywgJ2FjdGlvbicsXG4gICAgICAgICAgICAncG9zaXRpdmUnLCAnbmVnYXRpdmUnLCAnd2FybmluZycsXG4gICAgICAgICAgICAnYmxhY2snLCAnd2hpdGUnLCAnZ3JleScsICdyZWQnLCAnb3JhbmdlJywgJ3llbGxvdycsICdvbGl2ZScsXG4gICAgICAgICAgICAnZ3JlZW4nLCAndGVhbCcsICdibHVlJywgJ3Zpb2xldCcsICdwdXJwbGUnLCAncGluaycsICdicm93bicsXG4gICAgICAgICksXG4gICAgICAgICd0ZXh0JzogKFxuICAgICAgICAgICAgJ2ludmVyc2UnLCAnbXV0ZWQnLCAnbXV0ZWQtaW52ZXJzZScsXG4gICAgICAgICksXG4gICAgICAgICd2YXJpYW50cyc6IChcbiAgICAgICAgICAgICdjb2xvcnMnOiAoXG4gICAgICAgICAgICAgICAgJ2JyYW5kJywgJ2FjY2VudCcsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJ2NvbnRyYXN0JzogKFxuICAgICAgICAgICAgICAgICdsaWdodCc6ICgnd2hpdGUnLCA5NSUpLFxuICAgICAgICAgICAgICAgICdkYXJrJzogKCdibGFjaycsIDk1JSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJ2xldmVscyc6IChcbiAgICAgICAgICAgICAgICAnbGlnaHRlcic6ICgnd2hpdGUnLCA3NSUpLFxuICAgICAgICAgICAgICAgICdsaWdodCc6ICgnd2hpdGUnLCAzMyUpLFxuICAgICAgICAgICAgICAgICdkYXJrJzogKCdibGFjaycsIDMzJSksXG4gICAgICAgICAgICAgICAgJ2Rhcmtlcic6ICgnYmxhY2snLCA3NSUpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICApLFxuICAgIC8vXG4gICAgLy8gQU5JTUFUSU9OU1xuICAgICdhbmltYXRpb24nOiAoXG4gICAgICAgICdkdXJhdGlvbic6IDMwMG1zLFxuICAgICAgICAndGltaW5nLWZ1bmN0aW9uJzogZWFzZSxcbiAgICApLFxuICAgIC8vXG4gICAgLy8gRk9STSBJVEVNU1xuICAgICdpbnB1dCc6IChcbiAgICAgICAgJ2NvbG9yLXJvbGUnOiAnd2hpdGUnLFxuICAgICAgICAnYm9yZGVyJzogMXB4IHNvbGlkLFxuICAgICAgICAnYm9yZGVyLWNvbG9yJzogJ2FjdGlvbicsXG4gICAgICAgICdib3JkZXItcmFkaXVzJzogMC4yNSxcbiAgICApLFxuICAgICdidXR0b24nOiAoXG4gICAgICAgICdjb2xvci1yb2xlJzogJ2FjdGlvbicsXG4gICAgICAgICdib3JkZXInOiAxcHggc29saWQsXG4gICAgICAgICdib3JkZXItY29sb3InOiAnYWN0aW9uJyxcbiAgICAgICAgJ2JvcmRlci1yYWRpdXMnOiAwLjI1LFxuICAgICAgICAnZm9udC13ZWlnaHQnOiBib2xkLFxuICAgICksXG4gICAgLy9cbiAgICAvLyBMQVlPVVRcbiAgICAnbGF5b3V0JzogKFxuICAgICAgICAnZGlzcGxheSc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAgICAgJ2Zsb2F0JzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICAgICAncG9zaXRpb24nOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgICAgICdjb250YWluZXInOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgICAgICdvdmVyZmxvdyc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICApLFxuICAgIC8vXG4gICAgLy8gT1RIRVIgTU9EVUxFU1xuICAgICdiYWNrZ3JvdW5kJzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICdib3JkZXInOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgJ2NvbG9ycyc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAnZmxleCc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAnZmxleC1ncmlkJzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICdncmlkJzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICdoYXJkLWdyaWQnOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgJ2ludGVyYWN0aXZpdHknOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgJ2xpc3QnOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgJ21hcmdpbic6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAncGFkZGluZyc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAncm91bmRlZCc6ICRtZW5kZWxlZXYtZW5hYmxlLW1vZHVsZSxcbiAgICAnc2hhZG93JzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICdzaXppbmcnOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgJ3NpemVzJzogJG1lbmRlbGVldi1lbmFibGUtbW9kdWxlLFxuICAgICd0cmFuc2Zvcm0nOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgJ3Zpc2liaWxpdHknOiAkbWVuZGVsZWV2LWVuYWJsZS1tb2R1bGUsXG4gICAgLy9cbiAgICAvLyBFTEVNRU5UIE9WRVJSSURFU1xuICAgICdlbGVtZW50cyc6ICgpLFxuKSAhZGVmYXVsdDtcblxuIiwKCQkiQGltcG9ydCAncHJvZmlsZXMvZGVmYXVsdCc7XG5AaW1wb3J0ICdwcmVsdWRlJztcbkBpbXBvcnQgJ2VsZW1lbnRzJztcbkBpbXBvcnQgJ3V0aWxpdGllcyc7XG4iLAoJCSIvLyBDb25maWd1cmF0aW9uXG5AaW1wb3J0ICdmbic7XG5AaW1wb3J0ICdwcm9maWxlcy9iYXNlJztcbkBpbXBvcnQgJ2NvbmZpZy9taXhpbnMnO1xuQGltcG9ydCAnY29uZmlnL21vZHVsZXMnO1xuQGltcG9ydCAnY29uZmlnL2Z1bmN0aW9ucyc7XG5cbi8vIENvbnN0YW50c1xuQGltcG9ydCAnY29uc3RhbnRzL3N0YXRpYyc7XG5AaW1wb3J0ICdjb25zdGFudHMvdmFsdWVzJztcbkBpbXBvcnQgJ2NvbnN0YW50cy9ncmlkcyc7XG5AaW1wb3J0ICdjb25zdGFudHMvY29uZmlndXJhYmxlJztcblxuLy8gTG9hZCBwcmVsdWRlIGZ1bmN0aW9uc1xuQGltcG9ydCAncHJlbHVkZS9zaXplcyc7XG5AaW1wb3J0ICdwcmVsdWRlL2NvbG9yJztcbkBpbXBvcnQgJ3ByZWx1ZGUvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdwcmVsdWRlL3V0aWxpdGllcyc7XG5cbi8vIExvYWQgZGF0YSBpbnRvIHJlZ2lzdHJ5XG4kbWVuZGVsZWV2LXJlZ2lzdGVyaW5nLXV0aWxpdGllczogdHJ1ZSAhZGVmYXVsdDtcblxuQGltcG9ydCAncmVnaXN0cnkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdyZWdpc3RyeS9zaXppbmcnO1xuQGltcG9ydCAncmVnaXN0cnkvbGF5b3V0JztcbkBpbXBvcnQgJ3JlZ2lzdHJ5L2JvcmRlcnMnO1xuQGltcG9ydCAncmVnaXN0cnkvZmxleCc7XG5AaW1wb3J0ICdyZWdpc3RyeS9ncmlkJztcbkBpbXBvcnQgJ3JlZ2lzdHJ5L3RyYW5zZm9ybWF0aW9ucyc7XG5AaW1wb3J0ICdyZWdpc3RyeS92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3JlZ2lzdHJ5L21pc2MnO1xuQGltcG9ydCAncHJlbHVkZS91dGlsaXRpZXMtY2FjaGUnO1xuXG4kbWVuZGVsZWV2LXJlZ2lzdGVyaW5nLXV0aWxpdGllczogZmFsc2U7XG4kbWVuZGVsZWV2LXByZWx1ZGUtbG9hZGVkOiB0cnVlO1xuXG4vLyBObyBDU1MgZ2VuZXJhdGVkIHVwIHRvIHRoaXMgcG9pbnRcblxuIiwKCQkiLy8vIEluY2x1ZGUgZGVjbGFyYXRpb25zIG9ubHkgZm9yIHRoZSBnaXZlbiBicmVha3BvaW50LlxuLy8vXG4vLy8gQGFyZyAkYnAgLSBCcmVha3BvaW50IG5hbWUgKGUuZy4sIHN0YXJ0LCBzbSwgbWQsIGxnLCBldGMpXG4vLy8gQGFyZyAkcHJvcGVydGllcyAtIEEgbWFwIG9mIHByb3BlcnRpZXNcbi8vLyBAYXJnICRzdWZmaXggLSBPcHRpb25hbCBzdWZmaXggKGUuZy4sICFpbXBvcnRhbnQpO1xuQG1peGluIGJyZWFrcG9pbnQoJGJwLCAkcHJvcGVydGllczogKCksICRzdWZmaXg6IG51bGwpIHtcbiAgICBAaWYgJGJwID09ICdzdGFydCcge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICAgQGluY2x1ZGUgb3B0aW9ucygkcHJvcGVydGllcywgJHN1ZmZpeDogJHN1ZmZpeCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IGNvbmZpZygnYnJlYWtwb2ludHMuI3skYnB9JykpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgQGluY2x1ZGUgb3B0aW9ucygkcHJvcGVydGllcywgJHN1ZmZpeDogJHN1ZmZpeCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBJbmNsdWRlIGFsbCBwYWlycyBvZiAoa2V5OiB2YWx1ZSkgaW4gbWFwIGFzIENTUyBkZWNsYXJhdGlvbnMuIElmIHZhbHVlIGlzXG4vLy8gYW5vdGhlciBtYXAsIGluY2x1ZGUgbmVzdGVkIHZhbHVlcy5cbkBtaXhpbiBmcm9tLW1hcCgkbWFwLCAkc3VmZml4OiBudWxsKSB7XG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgICBAaWYgdHlwZS1vZigkdikgPT0gbWFwIHtcbiAgICAgICAgICAgIEBpZiB0eXBlLW9mKCRrKSA9PSBsaXN0IGFuZCBudGgoJGssIDEpID09ICdAbWVkaWEnIHtcbiAgICAgICAgICAgICAgICAkbWluOiBtYXAtZ2V0KG50aCgkaywgMiksIG1pbi13aWR0aCk7XG4gICAgICAgICAgICAgICAgQGlmIG5vdCAkbWluIHtcbiAgICAgICAgICAgICAgICAgICAgQGVycm9yICdJbnZhbGlkIG1lZGlhIHNwZWNpZmljYXRpb246ICN7bnRoKCRrLCAyKX0nO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRtaW59KSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZyb20tbWFwKCR2LCAkc3VmZml4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAjeyRrfSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZyb20tbWFwKCR2LCAkc3VmZml4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2UgaWYgJHYge1xuICAgICAgICAgICAgI3ska306ICR2ICRzdWZmaXg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBJbmNsdWRlIHdpdGggdGhlIGdpdmVuIHNlbGVjdG9yIGFuZCBkZWZpbmVkIGJ5IGEgbWFwcGluZyBvZiBwcm9wZXJ0eSB0b1xuLy8vIHZhbHVlcy5cbkBtaXhpbiBzaW1wbGUtdXRpbGl0eS1kZWNsYXJhdGlvbigkc2VsZWN0b3IsICRkYXRhLCAkbW9kZSkge1xuICAgIEBpZiBtb2RlID09IHJlc3BvbnNpdmUge1xuICAgICAgICBAZXJyb3IgJ05vdCBpbXBsZW1lbnRlZCc7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmcm9tLW1hcCgkZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBMaWtlIHNpbXBsZS11dGlsaXR5LWRlY2xhcmF0aW9uLCBidXQgcmVjZWl2ZXMgYSBtYXBwaW5nIG9mIHNlbGVjdG9ycyB0b1xuLy8vIGRlY2xhcmF0aW9ucy5cbkBtaXhpbiBtdWx0aXBsZS11dGlsaXRpZXMtZGVjbGFyYXRpb24oJGRhdGEsICRtb2RlKSB7XG4gICAgQGVhY2ggJG5hbWUsICRkZWNsYXJhdGlvbnMgaW4gJGRhdGEge1xuICAgICAgICBAaW5jbHVkZSBzaW1wbGUtdXRpbGl0eS1kZWNsYXJhdGlvbigkbmFtZSwgJGRlY2xhcmF0aW9ucywgJG1vZGUpO1xuICAgIH1cbn1cblxuJG1lbmRlbGVldi1yZWdpc3RlcmVkLXV0aWxpdGllczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBNaXhpbiB0aGF0IGluY2x1ZGVzIGFsbCByZWdpc3RlcmVkIHV0aWxpdGllcy4gVGhpcyBtaXhpbiBpcyBhdXRvbWF0aWNhbGx5XG4vLy8gRXhlY3V0ZWQgd2hlbiB0aGUgbWVuZGVsZWV2IHV0aWxpdGllcyBtb2R1bGUgaXMgaW1wb3J0ZWQuXG4vLy9cbkBtaXhpbiBtZW5kZWxlZXYtcmVnaXN0ZXItdXRpbGl0aWVzKCkge1xuICAgIEBpZiBub3QgJG1lbmRlbGVldi1yZWdpc3RlcmVkLXV0aWxpdGllcyB7XG5cbiAgICAgICAgJGxzdDogbHN0LXJldmVyc2UoJG1lbmRlbGVldi1jc3MpO1xuICAgICAgICAkbHN0OiBsc3Qtc3RpdGNoKCRtZW5kZWxlZXYtY3NzLWNsYXNzZXMsICRsc3QpO1xuXG4gICAgICAgIEB3aGlsZSAkbHN0IHtcbiAgICAgICAgICAgICRpbmZvOiBudGgoJGxzdCwgMSk7XG4gICAgICAgICAgICAkbHN0OiBudGgoJGxzdCwgMik7XG5cbiAgICAgICAgICAgICR0eXBlOiBtYXAtZ2V0KCRpbmZvLCB0eXBlKTtcbiAgICAgICAgICAgICRlbWl0OiBtYXAtZ2V0KCRpbmZvLCBlbWl0KTtcbiAgICAgICAgICAgICRkYXRhOiBtYXAtZ2V0KCRpbmZvLCBkYXRhKTtcblxuICAgICAgICAgICAgQGlmICRlbWl0IHtcbiAgICAgICAgICAgICAgICBAaWYgJHR5cGU9PSBtdWx0aXBsZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG11bHRpcGxlLXV0aWxpdGllcy1kZWNsYXJhdGlvbigkZGF0YSwgJG1vZGU6ICRlbWl0KTtcbiAgICAgICAgICAgICAgICB9IEBlbHNlIGlmICR0eXBlID09IHNpbXBsZSB7XG4gICAgICAgICAgICAgICAgICAgICRuYW1lOiBtYXAtZ2V0KCRpbmZvLCBuYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc2ltcGxlLXV0aWxpdHktZGVjbGFyYXRpb24oJG5hbWUsICRkYXRhLCAkbW9kZTogJGVtaXQpO1xuICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBAZXJyb3IgJ0ludmFsaWQgdHlwZTogI3skdHlwZX0nXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICRtZW5kZWxlZXYtcmVnaXN0ZXJlZC11dGlsaXRpZXM6IHRydWUgIWdsb2JhbDtcbn1cblxuIiwKCQkiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIERFQ0xBUkUgTUVOREVMRUVWIE1PRFVMRVNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIERlZmF1bHQgZGljdGlvbmFyeSB3aXRoIE1lbmRlbGVldiBzdGF0ZS5cbiRtZW5kZWxlZXYtY3NzOiBudWxsICFkZWZhdWx0O1xuJG1lbmRlbGVldi1jc3MtY2xhc3NlczogbnVsbCAhZGVmYXVsdDtcblxuLy8vIERlY2xhcmUgYSBNZW5kZWxlZXYgbW9kdWxlIG9mIENTUyBkZWNsYXJhdGlvbnMuXG4vLy9cbi8vLyBAYXJnICRjZmcgLSBTdHJpbmcgcGF0aCBmb3IgdGhlIGNvbmZpZ3VyYXRpb24gb3B0aW9uIGluIHRoZSBnbG9iYWxcbi8vLyAgICAgICAgICAgICBNZW5kZWxlZXYgY29uZmlnXG4vLy8gQGFyZyAkc3BlYyAtIERpY3Rpb25hcnkgb2YgZGVjbGFyYXRpb25zIG1hcHBpbmcgQ1NTIHNlbGVjdG9yIHdpdGggQ1NTXG4vLy8gICAgICAgICAgICAgIGRlZmluaXRpb25zXG5AZnVuY3Rpb24gbWVuZGVsZWV2LW1vZHVsZSgkY2ZnLCAkc3BlYywgJGlzLWNsYXNzOiBmYWxzZSkge1xuICAgICRlbWl0OiBjb25maWcoJGNmZyk7XG4gICAgJHJlczogbnVsbDtcblxuICAgIEBlYWNoICRzZWxlY3RvciwgJGRhdGEgaW4gJHNwZWMge1xuICAgICAgICBAaWYgdHlwZS1vZigkZGF0YSkgPT0gbWFwIHtcbiAgICAgICAgICAgICRpbmZvOiAobmFtZTogJHNlbGVjdG9yLCBkYXRhOiAkZGF0YSwgZW1pdDogJGVtaXQsIHR5cGU6IHNpbXBsZSk7XG4gICAgICAgICAgICBAaWYgJGlzLWNsYXNzIHtcbiAgICAgICAgICAgICAgICAkbWVuZGVsZWV2LWNzcy1jbGFzc2VzOiAoJGluZm8gJG1lbmRlbGVldi1jc3MtY2xhc3NlcykgIWdsb2JhbDtcbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICRtZW5kZWxlZXYtY3NzOiAoJGluZm8gJG1lbmRlbGVldi1jc3MpICFnbG9iYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAkcmVzOiAoJGluZm8gJHJlcyk7XG5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAZXJyb3IgXCJJbnZhbGlkIGNvbnRlbnQgZm9yICN7JHNlbGVjdG9yfS5cIlxuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gJHJlcztcbn1cblxuLy8vIERlY2xhcmUgYSBNZW5kZWxlZXYgbW9kdWxlIG9mIENTUyB1dGlsaXRpZXMuIEEgdXRpbGl0eSBpcyB1bmRlcnN0b29kIGFzIGFcbi8vLyBDU1MgZGVjbGFyYXRpb24gdGhhdCBkZWZpbmVzIGEgc2luZ2xlIENTUyBwcm9wZXJ0eS5cbi8vL1xuLy8vIFRoaXMgZnVuY3Rpb24gbWFrZXMgaXQgZWFzaWVyIHRvIGRlY2xhcmUgbG90cyBvZiBjbGFzc2VzIGluIGJhdGNoLCBidXQgaXNcbi8vLyBmYXIgbGVzcyBmbGV4aWJsZSBvbiB0aGUga2luZCBvZiBkZWNsYXJhdGlvbnMgdGhhdCBjYW4gYmUgbWFkZS5cbi8vL1xuLy8vIEBhcmcgJGNmZyAtIFN0cmluZyBwYXRoIGZvciB0aGUgY29uZmlndXJhdGlvbiBvcHRpb24gaW4gdGhlIGdsb2JhbFxuLy8vICAgICAgICAgICAgIE1lbmRlbGVldiBjb25maWdcbi8vLyBAYXJnICRzcGVjIC0gRGljdGlvbmFyeSBvZiBkZWNsYXJhdGlvbnMgbWFwcGluZyBDU1Mgc2VsZWN0b3Igd2l0aCBDU1Ncbi8vLyAgICAgICAgICAgICAgZGVmaW5pdGlvbnNcbkBmdW5jdGlvbiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoJGNmZywgJHNwZWMpIHtcbiAgICAkZW1pdDogY29uZmlnKCRjZmcpO1xuICAgICRyZXM6IG51bGw7XG4gICAgQGVhY2ggJHByb3AsICRkYXRhIGluICRzcGVjIHtcbiAgICAgICAgJHByZWZpeDogbnRoKCRkYXRhLCAxKTtcbiAgICAgICAgJGNvbnRlbnQ6IG50aCgkZGF0YSwgMik7XG5cbiAgICAgICAgQGlmIHR5cGUtb2YoJGNvbnRlbnQpID09IG1hcCB7XG4gICAgICAgICAgICAkZGF0YTogKCk7XG4gICAgICAgICAgICBAZWFjaCAkc3VmZml4LCAkdmFsdWUgaW4gJGNvbnRlbnQge1xuICAgICAgICAgICAgICAgICRzdWZmaXg6IGlmKHR5cGUtb2YoJHN1ZmZpeCkgPT0gc3RyaW5nLCAkc3VmZml4LCBpbnNwZWN0KCRzdWZmaXgpKTtcbiAgICAgICAgICAgICAgICAkbmFtZTogJHByZWZpeCArICRzdWZmaXg7XG4gICAgICAgICAgICAgICAgJGRhdGE6IG1hcC1tZXJnZSgkZGF0YSwgKCRuYW1lOiAoI3skcHJvcH06ICR2YWx1ZSkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRpbmZvOiAocHJlZml4OiAkcHJlZml4LCBkYXRhOiAkZGF0YSwgdHlwZTogbXVsdGlwbGUsIGVtaXQ6ICRlbWl0KTtcbiAgICAgICAgICAgICRyZXM6ICgkaW5mbyAkcmVzKTtcbiAgICAgICAgICAgICRtZW5kZWxlZXYtY3NzOiAoJGluZm8gJG1lbmRlbGVldi1jc3MpICFnbG9iYWw7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgQGVycm9yIFwiSW52YWxpZCBzcGVjaWZpY2F0aW9uIGZvciAjeyRwcm9wfS5cIlxuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gJHJlcztcbn1cblxuLy8vIERlY2xhcmVzIGEgY29tcGxldGUgc2NhbGUgb2YgdmFsdWVzLlxuLy8vXG4vLy8gQGFyZyAkc2NhbGUgLSBBIG1hcCBvciBsaXN0IG9mIDItdHVwbGVzIGZyb20gbmFtZXMgdG8gdmFsdWVzLlxuLy8vIEBhcmcgJGNzcyAtIEEgbWFwIG9mIChwcm9wOiB2YWx1ZSkgcGFpcnMuIElmIHZhbHVlIGlzIG51bGwsIGl0IGlzIHJlcGxhY2VkXG4vLy8gICAgICAgICAgICAgYnkgZWFjaCB2YWx1ZSBpbiB0aGUgZ2l2ZW4gc2NhbGUuXG4vLy8gQGFyZyAkaW50ZXJwb2xhdGUgLSBMaWtlICRjc3MsIGJ1dCBlYWNoIHZhbHVlIGlzIHRyZWF0ZWQgYXMgYW4gaW50ZXJwb2xhdGlvblxuLy8vICAgICAgICAgICAgICAgICAgICAgc3RyaW5nIGluIHdoaWNoIGFsbCBvY2N1cnJlbmNlcyBvZiAkMSBhcmUgcmVwbGFjZSBieVxuLy8vICAgICAgICAgICAgICAgICAgICAgdGhlIHZhbHVlIGdpdmVuIGJ5IHRoZSBzY2FsZS5cbkBmdW5jdGlvbiBzY2FsZS1vZigkc2NhbGUsICRjc3M6ICgpLCAkaW50ZXJwb2xhdGU6IG51bGwsICRwcmVmaXg6ICcmJykge1xuICAgICRtYXA6ICRmbi1lbXB0eS1tYXA7XG4gICAgJGNzcy10ZW1wbGF0ZTogJGNzcztcbiAgICBAZWFjaCAkaywgJHYgaW4gJHNjYWxlIHtcbiAgICAgICAgJGNzczogJGZuLWVtcHR5LW1hcDtcblxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRjc3MtdGVtcGxhdGUge1xuICAgICAgICAgICAgJGNzczogbWFwLW1lcmdlKCRjc3MsICgkcHJvcDogJHZhbHVlIG9yICR2KSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgJGludGVycG9sYXRlIHtcbiAgICAgICAgICAgIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJGludGVycG9sYXRlIHtcbiAgICAgICAgICAgICAgICAkcHJvcDogaWYodHlwZS1vZigkcHJvcCkgPT0gc3RyaW5nLCAkcHJvcCwgaW5zcGVjdCgkcHJvcCkpO1xuICAgICAgICAgICAgICAgICR2YWx1ZTogdW5xdW90ZShzdHItcmVwbGFjZSgkdmFsdWUsICckMScsICR2KSk7XG4gICAgICAgICAgICAgICAgJGNzczogbWFwLW1lcmdlKCRjc3MsICgkcHJvcDogJHZhbHVlKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAkbWFwOiBtYXAtbWVyZ2UoJG1hcCwgKCcjeyRwcmVmaXh9I3ska30nOiAkY3NzKSk7XG4gICAgfVxuICAgIEByZXR1cm4gJG1hcDtcbn1cbiIsCgkJIkBpbXBvcnQgJy4uL3Byb2ZpbGVzL2Jhc2UnO1xuXG4vLy8gRmV0Y2ggY29uZmlndXJhdGlvbiB2YWx1ZSBmcm9tIGRlZmF1bHQgY29uZmlnIGRpY3Rpb25hcnkuXG4vLy9cbi8vLyBAYXJnICRwYXRoIC0gTGlzdCB3aXRoIHRoZSBwYXRoIHRvIGNvbmZpZ3VyYXRpb25cbi8vLyBAYXJnICRkZWZhdWx0IC0gRGVmYXVsdCByZXN1bHQgaWYgZGF0YSBpcyBub3QgZm91bmQgaW4gcGF0aC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICAgY29uZmlnKCdwYWxldHRlLmJsYWNrJylcbi8vLyAgICAgLy8gIzFhMWExYVxuQGZ1bmN0aW9uIGNvbmZpZygkcGF0aCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgICBAaWYgbm90IHR5cGUtb2YoJHBhdGgpID09IHN0cmluZyB7XG4gICAgICAgIEBlcnJvciAnUGF0aCBtdXN0IGJlIGdpdmVuIGFzIGEgc3RyaW5nJztcbiAgICB9XG4gICAgQHJldHVybiBtYXAtcGF0aC1tZXJnZShMKCRtZW5kZWxlZXYtY29uZmlnLCAkY29uZmlnKSwgc3RyLXNwbGl0KCRwYXRoLCAnLicpLCAkZGVmYXVsdCk7XG59XG5cbi8vLyBJbmNsdWRlIGEgY29uZmlndXJhdGlvbi5cbkBtaXhpbiBjb25maWcoJHBhdGgsICRkZWZhdWx0OiAoKSwgJGZvcjogbnVsbCwgJGV4dHJhOiAoKSkge1xuICAgIEBpZiAkZm9yIHtcbiAgICAgICAgI3skZm9yfTogY29uZmlnKCRwYXRoLCAkZGVmYXVsdCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEBlYWNoICRrLCAkdiBpbiBtYXAtbWVyZ2UoJGV4dHJhLCBjb25maWcoJHBhdGgsICRkZWZhdWx0KSkge1xuICAgICAgICAgICAgQGlmIHR5cGUtb2YoJHYpID09IHN0cmluZyB7XG4gICAgICAgICAgICAgICAgI3ska306IHVucXVvdGUoJHYpO1xuICAgICAgICAgICAgfSBAZWxzZSBpZiAkdiAhPSAoKSB7XG4gICAgICAgICAgICAgICAgI3ska306ICR2O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwKCQkiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLyBHTE9CQUwgTUVOREVMRUVWIFNDQUxFU1xuLy8vIEBncm91cCBzY2FsZXNcbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vXG4vLy8gQWxsIGdsb2JhbCBzdGF0aWMgc2NhbGVzIHVzZWQgaW4gTWVuZGVsZWV2IChpbiBhbHBoYWJldGljYWwgb3JkZXIpXG4vLy8gICogU2l6ZSBzY2FsZSAoZGVmYXVsdC9udW1iZXJlZClcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vLyBNYXBzIHNpemVzIGluIHRvIHVuaXQtbGVzcyB2YWx1ZXMuIFJlYWwgc2l6ZSBhcmUgY29tcHV0ZWQgbXVsdGlwbHlpbmdcbi8vLyAkbWVuZGVsZWV2LXNpemUtdW5pdC5cbiRtZW5kZWxlZXYtc2l6ZS1zY2FsZTogKFxuICAgICcwJzogMCxcbiAgICAnMHAnOiAwLjEyNSxcbiAgICAnMSc6IDAuMjUsXG4gICAgJzFwJzogMC4zNzUsXG4gICAgJzInOiAwLjUsXG4gICAgJzJwJzogMC43NSxcbiAgICAnMyc6IDEsXG4gICAgJzNwJzogMS41LFxuICAgICc0JzogMixcbiAgICAnNHAnOiAzLFxuICAgICc1JzogNCxcbiAgICAnNXAnOiA2LFxuICAgICc2JzogOCxcbiAgICAnNnAnOiAxMixcbiAgICAnNyc6IDE2LFxuICAgICc3cCc6IDI0LFxuICAgICc4JzogMzIsXG4gICAgJzhwJzogNDgsXG4gICAgJzknOiA2NCxcbiAgICAnOXAnOiA5NixcbiAgICAnMTAnOiAxMjgsXG4gICAgJzEwcCc6IDE5MixcbiAgICAnMTEnOiAyNTYsXG4gICAgJzExcCc6IDM4NCxcbiAgICAnMTInOiA1MTIsXG4gICAgJzEycCc6IDc2OCxcbiAgICAnMTMnOiAxMDI0LFxuICAgICcxM3AnOiAxNTM2LFxuKSAhZGVmYXVsdDtcblxuXG4vLy8gTGlrZSBzaXplLXNjYWxlLCBidXQga2V5cyBhcmUgbnVtZXJpYy5cbiRtZW5kZWxlZXYtc2l6ZS1zY2FsZS1udW1lcmljOiAoXG4gICAgMDogMCxcbiAgICAxOiAwLjI1LFxuICAgIDI6IDAuNSxcbiAgICAzOiAxLFxuICAgIDQ6IDIsXG4gICAgNTogNCxcbiAgICA2OiA4LFxuICAgIDc6IDE2LFxuICAgIDg6IDMyLFxuICAgIDk6IDY0LFxuICAgIDEwOiAxMjgsXG4gICAgMTE6IDI1NixcbiAgICAxMjogNTEyLFxuICAgIDEzOiAxMDI0LFxuKSAhZGVmYXVsdDtcbiIsCgkJIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gR0xPQkFMIE1FTkRFTEVFViBWQUxVRVNcbi8vLyBAZ3JvdXAgY29uc3RhbnRzXG4vLy8gQGF1dGhvciBGw6FiaW8gTWFjw6pkbyBNZW5kZXNcbi8vL1xuLy8vIEdsb2JhbCBjb25zdGFudHMgY29tcHV0ZWQgZnJvbSB1c2VyIGNvbmZpZ3VyYXRpb25zLlxuLy8vICAqIGNvbnRhaW5lclxuLy8vICAqIGxlYWRcbi8vLyAgKiB1bml0LXNpemVcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vLyBCYXNpYyBsZWFkaW5nIHZhbHVlXG4kbWVuZGVsZWV2LWxlYWQ6IGNvbmZpZygndHlwb2dyYXBoeS5sZWFkJywgMS41KSAhZGVmYXVsdDtcblxuLy8vIEJhc2ljIHNpemUgcmVmZXJlbmNlIChzcGVjaWZpZWQgaW4gcmVtcyk7XG4kbWVuZGVsZWV2LXVuaXQtc2l6ZTogJG1lbmRlbGVldi1sZWFkICogMXJlbSAhZGVmYXVsdDtcblxuLy8vIENvbnRhaW5lciBjb25maWd1cmF0aW9uXG4kbWVuZGVsZWV2LWNvbnRhaW5lcjogKFxuICAgIG1hcmdpbjogMCBhdXRvLFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSxcbiAgICB3aWR0aDogMTAwJSxcbiAgICBwYWRkaW5nOiAwICRtZW5kZWxlZXYtdW5pdC1zaXplLFxuICAgIG1heC13aWR0aDogNTByZW0sXG4pICFkZWZhdWx0O1xuIiwKCQkiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLyBNRU5ERUxFRVYgR1JJRCBTWVNURU1TXG4vLy8gQGdyb3VwIGdyaWQgc3lzdGVtc1xuLy8vIEBhdXRob3IgRsOhYmlvIE1hY8OqZG8gTWVuZGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBEZWZpbmUgYWxsIHVzZWZ1bCBncmlkIHN5c3RlbSBmcm9tIHRoZSB0cml2aWFsIGdyaWQtMSB1cCB0byBncmlkLTE1LlxuQGZ1bmN0aW9uIF9tZW5kZWxlZXYtbWFrZS1ncmlkLXN5c3RlbXMoKSB7XG4gICAgJGdyaWQtMTogKFxuICAgICAgICAnMCc6IDAsXG4gICAgICAgICdmdWxsJzogMTAwLFxuICAgICk7XG4gICAgJGdyaWQtMjogbWFwLW1lcmdlKCRncmlkLTEsIChcbiAgICAgICAgJzFcXFxcLzInOiA1MCxcbiAgICApKTtcbiAgICAkZ3JpZC0zOiBtYXAtbWVyZ2UoJGdyaWQtMSwgKFxuICAgICAgICAnMVxcXFwvMyc6IDEwMCAvIDMsXG4gICAgICAgICcyXFxcXC8zJzogMjAwIC8gMyxcbiAgICApKTtcbiAgICAkZ3JpZC00OiBtYXAtbWVyZ2UoJGdyaWQtMiwgKFxuICAgICAgICAnMVxcXFwvNCc6IDI1LFxuICAgICAgICAnM1xcXFwvNCc6IDc1LFxuICAgICkpO1xuICAgICRncmlkLTU6IG1hcC1tZXJnZSgkZ3JpZC0xLCAoXG4gICAgICAgICcxXFxcXC81JzogMjAsXG4gICAgICAgICcyXFxcXC81JzogNDAsXG4gICAgICAgICczXFxcXC81JzogNjAsXG4gICAgICAgICc0XFxcXC81JzogODAsXG4gICAgKSk7XG4gICAgJGdyaWQtNjogbWFwLW1lcmdlKG1hcC1tZXJnZSgkZ3JpZC0yLCAkZ3JpZC0zKSwgKFxuICAgICAgICAnMVxcXFwvNic6IDEwMCAvIDYsXG4gICAgICAgICc1XFxcXC82JzogNTAwIC8gNixcbiAgICApKTtcbiAgICAkZ3JpZC04OiBtYXAtbWVyZ2UoJGdyaWQtNCwgKFxuICAgICAgICAnMVxcXFwvOCc6IDEwMCAvIDgsXG4gICAgICAgICczXFxcXC84JzogMzAwIC8gOCxcbiAgICAgICAgJzVcXFxcLzgnOiA1MDAgLyA4LFxuICAgICAgICAnN1xcXFwvOCc6IDcwMCAvIDgsXG4gICAgKSk7XG4gICAgJGdyaWQtNzogJ0dyaWQgNywgcmVhbGx5PyEnO1xuICAgICRncmlkLTk6IG1hcC1tZXJnZSgkZ3JpZC0zLCAoXG4gICAgICAgICcxXFxcXC85JzogMTAwIC8gOSxcbiAgICAgICAgJzJcXFxcLzknOiAyMDAgLyA5LFxuICAgICAgICAnNFxcXFwvOSc6IDQwMCAvIDksXG4gICAgICAgICc1XFxcXC85JzogNTAwIC8gOSxcbiAgICAgICAgJzdcXFxcLzknOiA3MDAgLyA5LFxuICAgICAgICAnOFxcXFwvOSc6IDgwMCAvIDksXG4gICAgKSk7XG4gICAgJGdyaWQtMTA6IG1hcC1tZXJnZShtYXAtbWVyZ2UoJGdyaWQtMiwgJGdyaWQtNSksIChcbiAgICAgICAgJzFcXFxcLzEwJzogMTAsXG4gICAgICAgICczXFxcXC8xMCc6IDMwLFxuICAgICAgICAnN1xcXFwvMTAnOiA3MCxcbiAgICAgICAgJzlcXFxcLzEwJzogOTAsXG4gICAgKSk7XG4gICAgJGdyaWQtMTE6ICdHcmlkIDExLCByZWFsbHk/ISc7XG4gICAgJGdyaWQtMTI6IG1hcC1tZXJnZShtYXAtbWVyZ2UoJGdyaWQtNCwgJGdyaWQtNiksIChcbiAgICAgICAgJzFcXFxcLzEyJzogMTAwIC8gMTIsXG4gICAgICAgICc1XFxcXC8xMic6IDUwMCAvIDEyLFxuICAgICAgICAnN1xcXFwvMTInOiA3MDAgLyAxMixcbiAgICAgICAgJzExXFxcXC8xMic6IDExMDAgLyAxMixcbiAgICApKTtcbiAgICAkZ3JpZC0xNTogbWFwLW1lcmdlKG1hcC1tZXJnZSgkZ3JpZC0zLCAkZ3JpZC01KSwgKFxuICAgICAgICAnMVxcXFwvMTUnOiAxMDAgLyAxNSxcbiAgICAgICAgJzJcXFxcLzE1JzogMjAwIC8gMTUsXG4gICAgICAgICc0XFxcXC8xNSc6IDQwMCAvIDE1LFxuICAgICAgICAnN1xcXFwvMTUnOiA3MDAgLyAxNSxcbiAgICAgICAgJzhcXFxcLzE1JzogODAwIC8gMTUsXG4gICAgICAgICcxMVxcXFwvMTUnOiAxMTAwIC8gMTUsXG4gICAgICAgICcxM1xcXFwvMTUnOiAxMzAwIC8gMTUsXG4gICAgICAgICcxNFxcXFwvMTUnOiAxNDAwIC8gMTUsXG4gICAgKSk7XG4gICAgQHJldHVybiAoXG4gICAgICAgIDE6ICRncmlkLTEsXG4gICAgICAgIDI6ICRncmlkLTIsXG4gICAgICAgIDM6ICRncmlkLTMsXG4gICAgICAgIDQ6ICRncmlkLTQsXG4gICAgICAgIDU6ICRncmlkLTUsXG4gICAgICAgIDY6ICRncmlkLTYsXG4gICAgICAgIDg6ICRncmlkLTgsXG4gICAgICAgIDk6ICRncmlkLTksXG4gICAgICAgIDEwOiAkZ3JpZC0xMCxcbiAgICAgICAgMTI6ICRncmlkLTEyLFxuICAgICAgICAxNTogJGdyaWQtMTUsXG4gICAgKTtcbn1cblxuJG1lbmRlbGVldi1ncmlkLXN5c3RlbXM6IF9tZW5kZWxlZXYtbWFrZS1ncmlkLXN5c3RlbXMoKSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSBncmlkIHN5c3RlbSBiYXNlZCBvbiBhIHByZS1kZWZpbmVkIHNldCBvZiBzdWItZGl2aXNpb25zXG5AZnVuY3Rpb24gZ3JpZC1zeXN0ZW0oJGFyZ3MuLi4pIHtcbiAgICAkcmVzdWx0OiAoKTtcbiAgICBAZWFjaCAkbiBpbiAkYXJncyB7XG4gICAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZShtYXAtZ2V0KCRtZW5kZWxlZXYtZ3JpZC1zeXN0ZW1zLCAkbiksICRyZXN1bHQpO1xuICAgIH1cbiAgICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vLyBBZGQgc2l6aW5nIHVuaXRzIG9mICUsIHZ3IGFuZCB2aCBmb3IgZ2l2ZW4gdW5pdC1sZXNzIHNjYWxlXG5AZnVuY3Rpb24gYWRkLXNpemluZy11bml0cygkc2NhbGUpIHtcbiAgICAkcmVzOiBudWxsO1xuICAgIEBlYWNoICRrLCAkdiBpbiAkc2NhbGUge1xuICAgICAgICAkcmVzOiAoKCRrICgkdiAqIGlmKCR2ID09IDAsIDAsIDElKSkpICRyZXMpO1xuICAgICAgICBAaWYgJHYgIT0gMCB7XG4gICAgICAgICAgICAkcmVzOiAoKCcjeyRrfXZ3JyAoJHYgKiAxdncpKSAkcmVzKTtcbiAgICAgICAgICAgICRyZXM6ICgoJyN7JGt9dmgnICgkdiAqIDF2aCkpICRyZXMpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gbHN0LXRvLW1hcCgkcmVzKTtcbn1cbiIsCgkJIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gR0xPQkFMIE1FTkRFTEVFViBDT05GSUdVUkFCTEUgU0NBTEVTXG4vLy8gQGdyb3VwIHNjYWxlc1xuLy8vIEBhdXRob3IgRsOhYmlvIE1hY8OqZG8gTWVuZGVzXG4vLy9cbi8vLyBHbG9iYWwgc2NhbGVzIGFuZCBjb25zdGFudHMgY29tcHV0ZWQgZnJvbSB1c2VyIGNvbmZpZ3VyYXRpb25zLlxuLy8vXG4vLy8gU2NhbGVzOlxuLy8vICAqIGJvcmRlci1zY2FsZVxuLy8vICAqIHJhZGl1cy1zY2FsZS0ocmVtKVxuLy8vICAqIHNpemUtc2NhbGUtKHJlbXxwb3MtcmVtfGF1dG98cG9zLWF1dG8pXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCAnc3RhdGljJztcbkBpbXBvcnQgJ3ZhbHVlcyc7XG5AaW1wb3J0ICdncmlkcyc7XG5cbi8vIEJPUkRFUiBTQ0FMRSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbWVuZGVsZWV2LWJvcmRlci1zY2FsZTogKFxuICAgICcxJzogdW5xdW90ZSgnMXB4IHNvbGlkJyksXG4gICAgJzInOiB1bnF1b3RlKCcycHggc29saWQnKSxcbiAgICAnNCc6IHVucXVvdGUoJzRweCBzb2xpZCcpLFxuICAgICc4JzogdW5xdW90ZSgnOHB4IHNvbGlkJyksXG4pICFkZWZhdWx0O1xuXG4vLyBTSVpFL1JBRElVUyBTQ0FMRSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVuZGVsZWV2LXNpemUtc2NhbGUtbWF4LXNpemU6IGNvbmZpZygnbWVuZGVsZWV2LnNjYWxlcy5tYXgtc2l6ZScsIDY0KSAhZGVmYXVsdDtcbiRtZW5kZWxlZXYtc2l6ZS1zY2FsZS1yZW06IG51bGwgIWRlZmF1bHQ7XG5AaWYgbm90ICRtZW5kZWxlZXYtc2l6ZS1zY2FsZS1yZW0ge1xuICAgICRuZXc6ICgpO1xuICAgIEBlYWNoICRrLCAkdiBpbiAkbWVuZGVsZWV2LXNpemUtc2NhbGUge1xuICAgICAgICBAaWYgJHYgPCAkbWVuZGVsZWV2LXNpemUtc2NhbGUtbWF4LXNpemUge1xuICAgICAgICAgICAgJHY6IGlmKCR2ID09IDAsIDAsICR2ICogJG1lbmRlbGVldi11bml0LXNpemUpO1xuICAgICAgICAgICAgJG5ldzogbWFwLW1lcmdlKCRuZXcsICgkazogJHYpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaWYgbm90ICAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtIHtcbiAgICAgICAgJG1lbmRlbGVldi1zaXplLXNjYWxlLXJlbTogJG5ldyAhZ2xvYmFsO1xuICAgIH1cbn1cblxuJG1lbmRlbGVldi1yYWRpdXMtc2NhbGUtcmVtOiBtYXAtYXBwbHktdmFsdWVzKGRpdiwgJG1lbmRlbGVldi1zaXplLXNjYWxlLXJlbSwgMik7XG5cbi8vIEdSSUQgU0laSU5HIFNDQUxFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRtZW5kZWxlZXYtZ3JpZC1zaXplLXNjYWxlLW5vLXVuaXQ6IGdyaWQtc3lzdGVtKDUsIDEyKSAhZGVmYXVsdDtcbiRtZW5kZWxlZXYtZ3JpZC1zaXplLXNjYWxlOiBhZGQtc2l6aW5nLXVuaXRzKCRtZW5kZWxlZXYtZ3JpZC1zaXplLXNjYWxlLW5vLXVuaXQpICFkZWZhdWx0O1xuJG1lbmRlbGVldi1ncmlkLXNjYWxlOiAoXG4gICAgJzEnOiAxLFxuICAgICcyJzogMixcbiAgICAnMyc6IDMsXG4gICAgJzQnOiA0LFxuICAgICc1JzogNSxcbiAgICAnNic6IDYsXG4gICAgJzgnOiA4LFxuICAgICc5JzogOSxcbiAgICAnMTAnOiAxMCxcbiAgICAnMTInOiAxMixcbiAgICAnMTUnOiAxNSxcbikgIWRlZmF1bHQ7XG4kbWVuZGVsZWV2LWdyaWQtZ2FwLXNjYWxlOiAoXG4gICAgJzEnOiAwLjI1ICogJG1lbmRlbGVldi11bml0LXNpemUsXG4gICAgJzInOiAwLjUwICogJG1lbmRlbGVldi11bml0LXNpemUsXG4gICAgJzMnOiAxLjAwICogJG1lbmRlbGVldi11bml0LXNpemUsXG4gICAgJzQnOiAyLjAwICogJG1lbmRlbGVldi11bml0LXNpemUsXG4pICFkZWZhdWx0O1xuJG1lbmRlbGVldi1ncmlkLXNwYW4tZGF0YTogKFxuICAgIDE6IGF1dG8gLyBzcGFuIDEsXG4gICAgMjogYXV0byAvIHNwYW4gMixcbiAgICAzOiBhdXRvIC8gc3BhbiAzLFxuICAgIDQ6IGF1dG8gLyBzcGFuIDQsXG4gICAgNTogYXV0byAvIHNwYW4gNSxcbiAgICA2OiBhdXRvIC8gc3BhbiA2LFxuICAgIDc6IGF1dG8gLyBzcGFuIDcsXG4gICAgODogYXV0byAvIHNwYW4gOCxcbiAgICA5OiBhdXRvIC8gc3BhbiA5LFxuICAgIDEwOiBhdXRvIC8gc3BhbiAxMCxcbiAgICAxMTogYXV0byAvIHNwYW4gMTEsXG4gICAgMTI6IGF1dG8gLyBzcGFuIDEyLFxuICAgIDEzOiBhdXRvIC8gc3BhbiAxMyxcbiAgICAxNDogYXV0byAvIHNwYW4gMTQsXG4gICAgMTU6IGF1dG8gLyBzcGFuIDE1LFxuKTtcblxuLy8gVFJBTlNGT1JNQVRJT05TIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRtZW5kZWxlZXYtdHJhbnNmb3JtLXNjYWxlOiAoXG4gICAgMDogMCUsIDE6IDUlLCAyOiAxMCUsIDM6IDI1JSwgNDogNTAlLCA1OiA3NSUsIDY6IDkwJSwgNzogOTUlLCA4OiAxMDAlLFxuKTtcbiRtZW5kZWxlZXYtdHJhbnNmb3JtLWRvdWJsZS1zY2FsZTogKFxuICAgIG4wOiAxMDAlLCBuMTogOTUlLCBuMjogOTAlLCBuMzogNzUlLCBuNDogNTAlLCBuNTogMjUlLCBuNjogMTAlLCBuNzogNSUsIG44OiAwJSxcbiAgICAwOiAxMDAlLCAxOiAxMDUlLCAyOiAxMTAlLCAzOiAxMjUlLCA0OiAxNTAlLCA1OiAxNzUlLCA2OiAxOTAlLCA3OiAxOTUlLCA4OiAyMDAlLFxuKTtcbiRtZW5kZWxlZXYtZ3Jvdy1zY2FsZTogKFxuICAgIDA6IDEsIDE6IDEuMDUsIDI6IDEuMTAsIDM6IDEuMjUsIDQ6IDEuNTAsIDU6IDIsIDY6IDMsXG4pO1xuJG1lbmRlbGVldi1zaHJpbmstc2NhbGU6IChcbiAgICAwOiAxLCAxOiAxIC8gMS4wNSwgMjogMSAvIDEuMTAsIDM6IDEgLyAxLjI1LCA0OiAxIC8gMS41MCwgNTogMSAvIDIsIDY6IDEgLyAzLFxuKTtcbiIsCgkJIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gTUFOSVBVTEFURSBTSVpFU1xuLy8vIEBncm91cCBzaXppbmdcbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8vIENvbnZlcnQgdW5pdGxlc3MgbnVtYmVyIHRvIHNpemUgYnkgbXVsdGlwbHlpbmcgaXQgYnkgbGVhZCAqIDFyZW0uXG4vLy9cbi8vLyBJZiBpbnB1dCBpcyBhIG51bWJlciB3aXRoIHVuaXRzLCBpdCBpcyByZXR1cm5lZCB1bmNoYW5nZWQuXG4vLy9cbi8vLyBAYXJnICR4IC0gTnVtYmVyXG5AZnVuY3Rpb24gc2l6ZSgkeCkge1xuICAgIEBpZiB0eXBlLW9mKCR4KSA9PSBudW1iZXIgYW5kIHVuaXQoJHgpID09ICcnIHtcbiAgICAgICAgQHJldHVybiAkeCAqICRtZW5kZWxlZXYtdW5pdC1zaXplO1xuICAgIH1cbiAgICBAcmV0dXJuICR4O1xufVxuXG4vLy8gQ29udmVydCB2YWx1ZSB0byBhIHVuaXQgb24gdGhlIHNpemUgc2NhbGUuXG4vLy9cbi8vLyBAYXJnICR4IC0gaW5wdXQgdmFsdWVcbkBmdW5jdGlvbiBzaXplLXNjYWxlKCR4KSB7XG4gICAgQGlmIHR5cGUtb2YoJHgpID09IG51bWJlciB7XG4gICAgICAgIEBpZiB1bml0KCR4KSAhPSAnJyB7XG4gICAgICAgICAgICBAZXJyb3IgJ09ubHkgdW5pdGxlc3MgbnVtYmVycyBhcmUgdmFsaWQgc2l6ZSBzY2FsZXMuJ1xuICAgICAgICB9XG4gICAgICAgICRzOiBzaWduKCR4KTtcbiAgICAgICAgJHY6IGFicygkeCk7XG4gICAgICAgICRzaXplOiBtYXAtZ2V0KCRtZW5kZWxlZXYtc2l6ZS1zY2FsZS1udW1lcmljLCAkdik7XG4gICAgICAgICRzaXplOiBpZigkc2l6ZSA9PSBudWxsLCBwb3coMiwgYWJzKCR4KSAtIDMpLCAkc2l6ZSk7XG4gICAgICAgIEByZXR1cm4gJHMgKiAkc2l6ZSAqICRtZW5kZWxlZXYtdW5pdC1zaXplO1xuICAgIH0gQGVsc2UgaWYgdHlwZS1vZigkeCkgPT0gc3RyaW5nIHtcbiAgICAgICAgJHg6IG1hcC1nZXQoJG1lbmRlbGVldi1zaXplLXNjYWxlLCAkeCk7XG4gICAgICAgIEBpZiAkeCA9PSBudWxsIHtcbiAgICAgICAgICAgIEBlcnJvciAnSW52YWxpZCBzaXplICN7JHh9Lic7XG4gICAgICAgIH1cbiAgICAgICAgQHJldHVybiBzaXplLXNjYWxlKCR4KTtcbiAgICB9IEBlbHNlIGlmICR4ID09IG51bGwge1xuICAgICAgICBAcmV0dXJuIG51bGw7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEBlcnJvciAnSW52YWxpZCBzaXplICN7JHh9Lic7XG4gICAgfVxufVxuXG4vLy8gUmV0dXJuIGEgbWFwIG9mIHNpemluZ3Mgd2l0aCBwcm9wZXJ0eS0obGVmdC9yaWdodC90b3ApIGV0YyB0byB0aGUgdmFsdWVzXG4vLy8gZGVmaW5lZCBpbiB2bWFwLlxuQGZ1bmN0aW9uIHNpemluZy1tYXAoJHByb3AsICR2bWFwKSB7XG4gICAgQHJldHVybiAoXG4gICAgICAgICN7JHByb3B9LWxlZnQ6IG1hcC1nZXQtZmlyc3QoJHZtYXAsIEwobGVmdCwgbCwgeCwgaG9yaXpvbnRhbCwgYWxsKSksXG4gICAgICAgICN7JHByb3B9LXJpZ2h0OiBtYXAtZ2V0LWZpcnN0KCR2bWFwLCBMKHJpZ2h0LCByLCB4LCBob3Jpem9udGFsLCBhbGwpKSxcbiAgICAgICAgI3skcHJvcH0tdG9wOiBtYXAtZ2V0LWZpcnN0KCR2bWFwLCBMKHRvcCwgdCwgeSwgdmVydGljYWwsIGFsbCkpLFxuICAgICAgICAjeyRwcm9wfS1ib3R0b206IG1hcC1nZXQtZmlyc3QoJHZtYXAsIEwoYm90dG9tLCBiLCB5LCB2ZXJ0aWNhbCwgYWxsKSksXG4gICAgKTtcbn1cblxuLy8vIFJldHVybiBhIG1hcCB3aXRoIHNpemluZyB2YWx1ZXMgZm9yIHRoZSBnaXZlbiBwcm9wZXJ0eS5cbi8vL1xuLy8vIEBhcmcgJHByb3BlcnR5IC0gUHJvcGVydHkgbmFtZVxuLy8vIEBhcmcgJHZhbHVlIC0gVmFsdWUgYXNzaWduZWQgdG8gcHJvcGVydHkuIFdpbGwgYmUgY29udmVydGVkIHRvIGEgc2l6aW5nLlxuQGZ1bmN0aW9uIHNpemluZygkcHJvcGVydHksICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIG9yIHR5cGUtb2YoJHZhbHVlKSA9PSBzdHJpbmcge1xuICAgICAgICBAcmV0dXJuICgkcHJvcGVydHk6IHNpemUoJHZhbHVlKSk7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbGlzdCB7XG4gICAgICAgIEByZXR1cm4gKCRwcm9wZXJ0eTogbWFwKHNpemUsICR2YWx1ZSkpO1xuICAgIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpID09IG1hcCB7XG4gICAgICAgICR2YWx1ZTogc2l6aW5nLW1hcCgkcHJvcGVydHksICR2YWx1ZSk7XG4gICAgICAgIEByZXR1cm4gbWFwLWFwcGx5LXZhbHVlcyhzaXplLCBtYXAtZmlsdGVyLXZhbHVlcyhub3QtbnVsbCwgJHZhbHVlKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gKCRwcm9wZXJ0eTogJHZhbHVlKTtcbiAgICB9XG59XG5cbi8vLyBSZXR1cm4gYSBtYXAgd2l0aCBzaXppbmcgdmFsdWVzIGluIHRoZSBzaXppbmcgc2NhbGUgZm9yIHRoZSBnaXZlbiBwcm9wZXJ0eS5cbi8vL1xuLy8vIEBhcmcgJHByb3BlcnR5IC0gUHJvcGVydHkgbmFtZVxuLy8vIEBhcmcgJHZhbHVlIC0gVmFsdWUgYXNzaWduZWQgdG8gcHJvcGVydHkuIFdpbGwgYmUgY29udmVydGVkIHRvIGEgdmFsdWUgb24gdGhlXG4vLy8gICAgICAgICAgICAgICBzaXplIHNjYWxlLlxuQGZ1bmN0aW9uIHNpemluZy1zY2FsZSgkcHJvcGVydHksICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIG9yIHR5cGUtb2YoJHZhbHVlKSA9PSBzdHJpbmcge1xuICAgICAgICBAcmV0dXJuICgkcHJvcGVydHk6IHNpemUtc2NhbGUoJHZhbHVlKSk7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbGlzdCB7XG4gICAgICAgIEByZXR1cm4gKCRwcm9wZXJ0eTogbWFwKHNpemUtc2NhbGUsICR2YWx1ZSkpO1xuICAgIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpID09IG1hcCB7XG4gICAgICAgICR2YWx1ZTogc2l6aW5nLW1hcCgkcHJvcGVydHksICR2YWx1ZSk7XG4gICAgICAgIEByZXR1cm4gbWFwLWFwcGx5LXZhbHVlcyhzaXplLXNjYWxlLCBtYXAtZmlsdGVyLXZhbHVlcyhub3QtbnVsbCwgJHZhbHVlKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gKCRwcm9wZXJ0eTogJHZhbHVlKTtcbiAgICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNSVhJTlNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBJbmNsdWRlIHNvbWUgc2l6aW5nIHByb3BlcnR5LlxuLy8vXG4vLy8gVmFsdWUgY2FuIGJlIGEgc2l6ZSBvciBhIG1hcCBmcm9tIGRpcmVjdGlvbnMgdG8gc2l6ZXMuIEl0IHVuZGVyc3RhbmRzIHRoZVxuLy8vIGZvbGxvd2luZyBkaXJlY3Rpb25zOiB0b3AsIGJvdHRvbSwgbGVmdCBhbmQgcmlnaHQgYW5kIHRoZSBwc2V1ZG8gZGlyZWN0aW9uczpcbi8vLyBob3Jpem9udGFsLCB4LCB2ZXJ0aWNhbCwgeSwgYW5kIGFsbC5cbi8vL1xuLy8vIEBhcmcgJHByb3BlcnR5IC0gUHJvcGVydHkgbmFtZS5cbi8vLyBAYXJnICR2YWx1ZSAtIFNpemUgb3IgbWFwcGluZyBvZiBzaXplcy5cbi8vLyBAYXJnICRzdWZmaXggLSBTdWZmaXggdG8gYWRkIHRvIHByb3BlcnR5IGRlY2xhcmF0aW9uIChlLmcuLiAhaW1wb3J0YW50KTtcbkBtaXhpbiBzaXppbmcoJHByb3BlcnR5LCAkdmFsdWUsICRzdWZmaXg6IG51bGwpIHtcbiAgICAkZGF0YTogc2l6aW5nKCRwcm9wZXJ0eSwgJHZhbHVlKTtcbiAgICBAaW5jbHVkZSBmcm9tLW1hcCgkZGF0YSwgJHN1ZmZpeDogJHN1ZmZpeCk7XG59XG5cbkBtaXhpbiBzaXppbmctc2NhbGUoJHByb3BlcnR5LCAkdmFsdWUsICRzdWZmaXg6IG51bGwpIHtcbiAgICAkZGF0YTogc2l6aW5nLXNjYWxlKCRwcm9wZXJ0eSwgJHZhbHVlKTtcbiAgICBAaW5jbHVkZSBmcm9tLW1hcCgkZGF0YSwgJHN1ZmZpeDogJHN1ZmZpeCk7XG59XG5cbi8vLyBBIHNpemluZyBmdW5jdGlvbiBmb3Igd2lkdGhzLlxuQG1peGluIHdpZHRoKCR2YWx1ZSwgJHN1ZmZpeDogbnVsbCkge1xuICAgIEBpbmNsdWRlIHNpemluZyh3aWR0aCwgJHZhbHVlLCAkc3VmZml4KTtcbn1cblxuQG1peGluIHdpZHRoLXNjYWxlKCR2YWx1ZSwgJHN1ZmZpeDogbnVsbCkge1xuICAgIEBpbmNsdWRlIHNpemluZy1zY2FsZSh3aWR0aCwgJHZhbHVlLCAkc3VmZml4KTtcbn1cblxuLy8vIEEgc2l6aW5nIGZ1bmN0aW9uIGZvciBoZWlnaHRzLlxuQG1peGluIGhlaWdodCgkdmFsdWUsICRzdWZmaXg6IG51bGwpIHtcbiAgICBAaW5jbHVkZSBzaXppbmcoaGVpZ2h0LCAkdmFsdWUsICRzdWZmaXgpO1xufVxuXG5AbWl4aW4gaGVpZ2h0LXNjYWxlKCR2YWx1ZSwgJHN1ZmZpeDogbnVsbCkge1xuICAgIEBpbmNsdWRlIHNpemluZy1zY2FsZShoZWlnaHQsICR2YWx1ZSwgJHN1ZmZpeCk7XG59XG5cbi8vLyBBIHNpemluZyBmdW5jdGlvbiBmb3IgbWFyZ2lucy5cbkBtaXhpbiBtYXJnaW4oJHZhbHVlLCAkc3VmZml4OiBudWxsKSB7XG4gICAgQGluY2x1ZGUgc2l6aW5nKG1hcmdpbiwgJHZhbHVlLCAkc3VmZml4KTtcbn1cblxuQG1peGluIG1hcmdpbi1zY2FsZSgkdmFsdWUsICRzdWZmaXg6IG51bGwpIHtcbiAgICBAaW5jbHVkZSBzaXppbmctc2NhbGUobWFyZ2luLCAkdmFsdWUsICRzdWZmaXgpO1xufVxuXG4vLy8gQSBzaXppbmcgZnVuY3Rpb24gZm9yIHBhZHMuXG5AbWl4aW4gcGFkKCR2YWx1ZSwgJHN1ZmZpeDogbnVsbCkge1xuICAgIEBpbmNsdWRlIHNpemluZyhwYWRkaW5nLCAkdmFsdWUsICRzdWZmaXgpO1xufVxuXG5AbWl4aW4gcGFkLXNjYWxlKCR2YWx1ZSwgJHN1ZmZpeDogbnVsbCkge1xuICAgIEBpbmNsdWRlIHNpemluZy1zY2FsZShwYWRkaW5nLCAkdmFsdWUsICRzdWZmaXgpO1xufVxuXG4vLy8gQWxpYXMgdG8gdGhlIHBhZCBtaXhpbi5cbkBtaXhpbiBwYWRkaW5nKCR2YWx1ZSwgJHN1ZmZpeDogbnVsbCkge1xuICAgIEBpbmNsdWRlIHBhZCgkdmFsdWUsICRzdWZmaXgpO1xufVxuXG5AbWl4aW4gcGFkZGluZy1zY2FsZSgkdmFsdWUsICRzdWZmaXg6IG51bGwpIHtcbiAgICBAaW5jbHVkZSBwYWQtc2NhbGUoJHZhbHVlLCAkc3VmZml4KTtcbn1cbiIsCgkJIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gQ09MT1IgVFJBTlNGT1JNQVRJT05TIEFORCBVVElMSVRJRVNcbi8vLyBAZ3JvdXAgQ29sb3Jcbi8vLyBAYXV0aG9yIEbDoWJpbyBNYWPDqmRvIE1lbmRlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8gQ29uZmlndXJhdGlvbiBvcHRpb25zXG4kbWVuZGVsZWV2LWNvbG9yLWJpYXM6IGNvbmZpZygnY29sb3IuY29udHJhc3QtYmlhcycpICFkZWZhdWx0O1xuJG1lbmRlbGVldi1jb2xvci1yb2xlczogJGZuLWVtcHR5LW1hcCAhZGVmYXVsdDtcbiRtZW5kZWxlZXYtdmFyaWFudC1sZXZlbHM6IG1hcC1rZXlzKGNvbmZpZygnY29sb3IudmFyaWFudHMubGV2ZWxzJykpICFkZWZhdWx0O1xuXG4vLyBGZXRjaCBkYXJrIGFuZCBsaWdodCBjb250cmFzdCBtaXhlcyB0byBjcmVhdGUgY29udHJhc3QgdmFyaWFudHNcbiRtZW5kZWxlZXYtdmFyaWFudC1saWdodC1jb250cmFzdDogY29uZmlnKCdjb2xvci52YXJpYW50cy5jb250cmFzdC5saWdodCcpICFkZWZhdWx0O1xuJG1lbmRlbGVldi12YXJpYW50LWRhcmstY29udHJhc3Q6IGNvbmZpZygnY29sb3IudmFyaWFudHMuY29udHJhc3QuZGFyaycpICFkZWZhdWx0O1xuXG4vLy8gUmV0dXJuIG5hbWVkIGNvbG9yIG9yIGEgZGVmYXVsdCB2YWx1ZSBpZiBjb2xvciBpcyBub3QgcmVnaXN0ZXJlZFxuLy8vXG4vLy8gQGFyZyAkbmFtZSAtIENvbG9yIG5hbWUgb3IgY29sb3IgdmFsdWVcbi8vLyBAYXJnICR2YXJpYW50IC0gQ2hvc2VuIHZhcmlhbnQuIENhbiBhbHNvIGJlIHRoZSBzdHJpbmcgJ2NvbnRyYXN0Jy5cbi8vLyBAYXJnICRhbHBoYSAtIEFwcGx5IGFscGhhIGFkanVzdG1lbnQgdG8gY29sb3IsIGlmIGdpdmVuLlxuLy8vIEBhcmcgJGRlZmF1bHQgLSBJZiBnaXZlbiwgdXNlcyB0aGlzIHZhbHVlIGlmIGNvbG9yIG5hbWUgaXMgbm90IGZvdW5kIGluIHRoZVxuLy8vICAgICAgICAgICAgICAgICBwYWxldHRlIGRpY3Rpb25hcnkuXG5AZnVuY3Rpb24gY29sb3IoJG5hbWUsICR2YXJpYW50OiBudWxsLCAkYWxwaGE6IG51bGwsICRkZWZhdWx0OiBudWxsKSB7XG4gICAgJHJlc3VsdDogJG5hbWU7XG4gICAgQGlmICRuYW1lID09IG51bGwge1xuICAgICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSBzdHJpbmcge1xuICAgICAgICAkcmVzdWx0OiBtYXAtcmVhZCgkbWVuZGVsZWV2LWNvbG9yLXBhbGV0dGUsICRuYW1lLCAkZGVmYXVsdCk7XG4gICAgfVxuXG4gICAgLy8gTWFrZSB0cmFuc2Zvcm1hdGlvbnNcbiAgICBAaWYgJHZhcmlhbnQgPT0gY29udHJhc3Qge1xuICAgICAgICAkY29udHJhc3Q6IG1hcC1nZXQoJG1lbmRlbGVldi1jb2xvci1jb250cmFzdCwgJHJlc3VsdCk7XG4gICAgICAgIEBpZiAkY29udHJhc3QgPT0gbnVsbCB7XG4gICAgICAgICAgICAkY29udHJhc3Q6IGNob29zZS1jb250cmFzdC1jb2xvcigkcmVzdWx0LCAkYmlhczogJG1lbmRlbGVldi1jb2xvci1iaWFzKTtcbiAgICAgICAgfVxuICAgICAgICAkcmVzdWx0OiAkY29udHJhc3Q7XG4gICAgfSBAZWxzZSBpZiAkdmFyaWFudCAhPSBudWxsIHtcbiAgICAgICAgQGVycm9yICdJbnZhbGlkIHZhcmlhbnQgZm9yIGNvbG9yICN7JG5hbWV9OiAjeyR2YXJpYW50fSc7XG4gICAgfVxuICAgIEBpZiAkYWxwaGEgIT0gbnVsbCB7XG4gICAgICAgICRyZXN1bHQ6IGNoYW5nZS1jb2xvcigkcmVzdWx0LCAkYWxwaGE6ICRhbHBoYSk7XG4gICAgfVxuXG4gICAgLy8gUmV0dXJuIHJlc3VsdFxuICAgIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vIFJldHVybiBhIG5hbWVkIHZhcmlhbnQgZm9yIHRoZSBnaXZlbiBjb2xvci5cbkBmdW5jdGlvbiBjb2xvci12YXJpYW50KCRjb2xvciwgJHZhcmlhbnQpIHtcbiAgICBAaWYgbm90ICRjb2xvciB7XG4gICAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgJHZhbHVlOiBpZih0eXBlLW9mKCRjb2xvcikgPT0gc3RyaW5nLCBtYXAtZ2V0KCRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZSwgJGNvbG9yKSwgJGNvbG9yKTtcbiAgICBAaWYgbm90ICR2YWx1ZSB7XG4gICAgICAgIEBlcnJvciAnQ29sb3IgZG9lcyBub3QgZXhpc3Q6ICN7aW5zcGVjdCgkY29sb3IpfSc7XG4gICAgfVxuXG4gICAgLy8gUmF3IHZhcmlhbnQgY2FsbDogcGFzc2luZyBhIHR1cGxlIG9mIChjb2xvci1uYW1lLCBtaXgpXG4gICAgQGlmIHR5cGUtb2YoJHZhcmlhbnQpID09IGxpc3Qge1xuICAgICAgICAkb3RoZXI6IGNvbG9yKG50aCgkdmFyaWFudCwgMSkpO1xuICAgICAgICAkbWl4OiBudGgoJHZhcmlhbnQsIDIpO1xuICAgICAgICBAcmV0dXJuIG1peCgkb3RoZXIsICR2YWx1ZSwgJG1peCk7XG4gICAgfVxuXG4gICAgLy8gRmV0Y2ggY29uZmlndXJhdGlvblxuICAgICRjZmc6IG1hcC1nZXQoJG1lbmRlbGVldi12YXJpYW50LWxldmVscywgJHZhcmlhbnQpO1xuICAgIEBpZiBub3QgJGNmZyB7XG4gICAgICAgIEBlcnJvciAnSW52YWxpZCB2YXJpYW50OiAjeyR2YXJpYW50fSc7XG4gICAgfVxuXG4gICAgLy8gVHJ5IGNvbG9yIGZyb20gY2FjaGVcbiAgICAkcmVzOiBtYXAtZ2V0KCRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZSwgJyN7JGNvbG9yfS0jeyR2YXJpYW50fScpO1xuICAgIEBpZiAkcmVzIHtcbiAgICAgICAgQHJldHVybiAkcmVzO1xuICAgIH1cblxuICAgIC8vIENvbXB1dGUgdmFyaWF0aW9uXG4gICAgJHZhcmlhbnQtY29sb3I6IGNvbG9yLXZhcmlhbnQoJHZhbHVlLCAkY2ZnKTtcblxuICAgIC8vIENvbXB1dGUgY29udHJhc3QgYW5kIHNhdmUgaW4gZGljdGlvbmFyeVxuICAgICRsaWdodDogY29sb3ItdmFyaWFudCgkdmFsdWUsICRtZW5kZWxlZXYtdmFyaWFudC1saWdodC1jb250cmFzdCk7XG4gICAgJGRhcms6IGNvbG9yLXZhcmlhbnQoJHZhbHVlLCAkbWVuZGVsZWV2LXZhcmlhbnQtZGFyay1jb250cmFzdCk7XG4gICAgJGNvbnRyYXN0OiBjaG9vc2UtY29udHJhc3QtY29sb3IoJHZhcmlhbnQsICRsaWdodCwgJGRhcmssICRtZW5kZWxlZXYtY29sb3ItYmlhcyk7XG4gICAgJG1lbmRlbGVldi1jb2xvci1jb250cmFzdDogbWFwLW1lcmdlKChcbiAgICAgICAgJHZhcmlhbnQtY29sb3I6ICRjb250cmFzdCxcbiAgICAgICAgJGNvbnRyYXN0OiAkdmFyaWFudC1jb2xvcixcbiAgICApLCAkbWVuZGVsZWV2LWNvbG9yX2NvbnRyYXN0KSAhZ2xvYmFsO1xuXG4gICAgQHJldHVybiAkdmFyaWFudC1jb2xvcjtcbn1cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTUlYSU5TXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gRGVmaW5lIHRoZSBjb2xvciBhbmQgYmFja2dyb3VuZC1jb2xvciBwcm9wZXJ0aWVzLlxuLy8vIElmIGNhbGxlZCB3aXRoIGEgc2luZ2xlIGFyZ3VtZW50LCB0cmVhdHMgdGhlIGNvbG9yIGFzIGEgY29sb3IgbmFtZSBhbmRcbi8vLyBhc3NpZ24gaXQgdG8gdGhlIGJhY2tncm91bmQgYW5kIHRoZSBjb250cmFzdCBjb2xvciB0byB0aGUgZm9yZWdyb3VuZC5cbkBtaXhpbiBjb2xvcigkY29sb3IsICRib3JkZXI6IGZhbHNlLCAkZmxpcDogZmFsc2UpIHtcbiAgICAkYmc6IGNvbG9yKG50aCgkY29sb3IsIDEpKTtcbiAgICAkZmc6IGlmKHR5cGUtb2YoJGNvbG9yKSA9PSBsaXN0LCBudGgoJGNvbG9yLCAyKSwgbnVsbCk7XG4gICAgJGZnOiBpZigkZmcsIGNvbG9yKCRmZyksIGNvbG9yKCRiZywgY29udHJhc3QpKTtcbiAgICBAaWYgJGZsaXAge1xuICAgICAgICAkYXV4OiAkYmc7XG4gICAgICAgICRiZzogJGZnO1xuICAgICAgICAkZmc6ICRhdXg7XG4gICAgfVxuICAgICRyZXM6IChjb2xvcjogJGZnLCBiYWNrZ3JvdW5kLWNvbG9yOiAkYmcpO1xuXG4gICAgLy8gQWRkIGJvcmRlciBjb2xvclxuICAgIEBpZiAkYm9yZGVyID09IGZvcmVncm91bmQgb3IgJGJvcmRlciA9PSBmZyB7XG4gICAgICAgICRyZXM6IG1hcC1tZXJnZSgkcmVzLCAoYm9yZGVyLWNvbG9yOiAkZmcpKTtcbiAgICB9IEBlbHNlIGlmICRib3JkZXIgPT0gYmFja2dyb3VuZCBvciAkYm9yZGVyID09IGJnIG9yICRib3JkZXIge1xuICAgICAgICAkcmVzOiBtYXAtbWVyZ2UoJHJlcywgKGJvcmRlci1jb2xvcjogJGJnKSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IHByb3BlcnRpZXNcbiAgICBAaW5jbHVkZSBmcm9tLW1hcCgkcmVzKTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENPTkZJR1VSQVRJT05TXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVuZGVsZWV2LWNvbG9yLWNvbmZpZzogZmFsc2UgIWRlZmF1bHQ7XG5AaWYgbm90ICRtZW5kZWxlZXYtY29sb3ItY29uZmlnIHtcbiAgICAkdmFyaWFudC1sZXZlbHM6IGNvbmZpZygnY29sb3IudmFyaWFudHMubGV2ZWxzJyk7XG4gICAgJGJpYXM6ICRtZW5kZWxlZXYtY29sb3ItYmlhcztcblxuICAgIC8vLyBEaWN0aW9uYXJ5IHRoYXQgc3RvcmVzIGFsbCBuYW1lZCBjb2xvcnMgd2l0aCB0aGVpciByZXNwZWN0aXZlIHZhbHVlc1xuICAgICRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZTogbWFwLW1lcmdlKCRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZSwgY29uZmlnKCdwYWxldHRlJywgJGZuLWVtcHR5LW1hcCkpO1xuXG4gICAgLy8vIERpY3Rpb25hcnkgbWFwcGluZyBjb2xvciB2YWx1ZXMgdG8gdGhlaXIgcmVzcGVjdGl2ZSBjb250cmFzdHNcbiAgICAkbWVuZGVsZWV2LWNvbG9yLWNvbnRyYXN0OiBtYXAtbWVyZ2UoJG1lbmRlbGVldi1jb2xvci1jb250cmFzdCwgY29uZmlnKCdjb250cmFzdCcsICRmbi1lbXB0eS1tYXApKTtcblxuICAgIC8vIENyZWF0ZSBhIGxpc3Qgd2l0aCBhbGwgY29udHJhc3RzIGZyb20gbmFtZWQgY29sb3JzLlxuICAgICRhY2M6ICgpO1xuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZSB7XG4gICAgICAgIEBpZiBub3QgbWFwLWdldCgkbWVuZGVsZWV2LWNvbG9yLWNvbnRyYXN0LCAkdmFsdWUpIHtcbiAgICAgICAgICAgICRsaWdodDogY29sb3ItdmFyaWFudCgkdmFsdWUsICRtZW5kZWxlZXYtdmFyaWFudC1saWdodC1jb250cmFzdCk7XG4gICAgICAgICAgICAkZGFyazogY29sb3ItdmFyaWFudCgkdmFsdWUsICRtZW5kZWxlZXYtdmFyaWFudC1kYXJrLWNvbnRyYXN0KTtcbiAgICAgICAgICAgICRjb250cmFzdDogY2hvb3NlLWNvbnRyYXN0LWNvbG9yKCR2YWx1ZSwgJGxpZ2h0LCAkZGFyaywgJGJpYXMpO1xuICAgICAgICAgICAgJGFjYzogbWFwLW1lcmdlKCgkdmFsdWU6ICRjb250cmFzdCwgJGNvbnRyYXN0OiAkdmFsdWUpLCAkYWNjKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAkbWVuZGVsZWV2LWNvbG9yLWNvbnRyYXN0OiBtYXAtbWVyZ2UoJGFjYywgJG1lbmRlbGVldi1jb2xvci1jb250cmFzdCkgIWdsb2JhbDtcblxuICAgIC8vIENyZWF0ZSBhIGxpc3Qgb2YgY29sb3Igcm9sZXMgdXNlZCB0byBkZXJpdmUgdGhlIGNvbG9yIGNsYXNzZXMuXG4gICAgLy8gV2hlbiBjcmVhdGluZyB0aGF0IGxpc3QsIGFsc28gc2F2ZSBhbGwgdmFyaWFudCBjb2xvcnMgaW4gdGhlIGRlZmF1bHRcbiAgICAvLyBjb2xvciBkaWN0aW9uYXJ5LlxuICAgICRyb2xlczogY29uZmlnKCdjb2xvci5yb2xlcycpO1xuXG4gICAgQGVhY2ggJGNvbG9yIGluIGNvbmZpZygnY29sb3IudmFyaWFudHMuY29sb3JzJykge1xuICAgICAgICAvLyBTYXZlIG1haW4gY29sb3JcbiAgICAgICAgQGlmIG5vdCBjb250YWlucygkcm9sZXMsICRjb2xvcikge1xuICAgICAgICAgICAgJHJvbGVzOiBhcHBlbmQoJHJvbGVzLCAkY29sb3IpO1xuICAgICAgICB9XG4gICAgICAgICR2YWx1ZTogbWFwLWdldCgkbWVuZGVsZWV2LWNvbG9yLXBhbGV0dGUsICRjb2xvcik7XG5cbiAgICAgICAgLy8gQ29tcHV0ZSBjb250cmFzdHNcbiAgICAgICAgJGxpZ2h0OiBjb2xvci12YXJpYW50KCR2YWx1ZSwgJG1lbmRlbGVldi12YXJpYW50LWxpZ2h0LWNvbnRyYXN0KTtcbiAgICAgICAgJGRhcms6IGNvbG9yLXZhcmlhbnQoJHZhbHVlLCAkbWVuZGVsZWV2LXZhcmlhbnQtZGFyay1jb250cmFzdCk7XG4gICAgICAgICRhY2M6ICgpO1xuICAgICAgICAkYWNjLWNvbnRyYXN0OiAoKTtcbiAgICAgICAgQGVhY2ggJHN1ZmZpeCwgJGNmZyBpbiAkdmFyaWFudC1sZXZlbHMge1xuICAgICAgICAgICAgJHJvbGU6ICcjeyRjb2xvcn0tI3skc3VmZml4fSc7XG4gICAgICAgICAgICAkcm9sZXM6IGFwcGVuZCgkcm9sZXMsICRyb2xlKTtcbiAgICAgICAgICAgICR2YXJpYW50OiBjb2xvci12YXJpYW50KCR2YWx1ZSwgJGNmZyk7XG4gICAgICAgICAgICAkY29udHJhc3Q6IGNob29zZS1jb250cmFzdC1jb2xvcigkdmFyaWFudCwgJGxpZ2h0LCAkZGFyaywgJGJpYXMpO1xuICAgICAgICAgICAgJGFjYzogbWFwLW1lcmdlKCRhY2MsICgkcm9sZTogJHZhcmlhbnQpKTtcbiAgICAgICAgICAgICRhY2MtY29udHJhc3Q6IG1hcC1tZXJnZSgkYWNjLWNvbnRyYXN0LCAoXG4gICAgICAgICAgICAgICAgJHZhcmlhbnQ6ICRjb250cmFzdCxcbiAgICAgICAgICAgICAgICAkY29udHJhc3Q6ICR2YXJpYW50LFxuICAgICAgICAgICAgKSk7XG4gICAgICAgIH1cbiAgICAgICAgJG1lbmRlbGVldi1jb2xvci1jb250cmFzdDogbWFwLW1lcmdlKCRhY2MtY29udHJhc3QsICRtZW5kZWxlZXYtY29sb3ItY29udHJhc3QpICFnbG9iYWw7XG4gICAgICAgICRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZTogbWFwLW1lcmdlKCRhY2MsICRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZSkgIWdsb2JhbDtcbiAgICB9XG5cbiAgICAvLyBTYXZlIGNvbmZpZ3VyYXRpb25zXG4gICAgJG1lbmRlbGVldi1jb2xvci1jb25maWc6IHRydWUgIWdsb2JhbDtcbiAgICAkbWVuZGVsZWV2LWNvbG9yLXJvbGVzOiAkcm9sZXMgIWdsb2JhbDtcbiAgICAkZm4tY29udHJhc3QtY29sb3Itd2hpdGU6IGNvbG9yKCdpbnZlcnNlLXRleHQnKSAhZ2xvYmFsO1xuICAgICRmbi1jb250cmFzdC1jb2xvci1ibGFjazogY29sb3IoJ3JlZ3VsYXItdGV4dCcpICFnbG9iYWw7XG59XG4iLAoJCSIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vIFRZUE9HUkFQSFlcbi8vLyBAZ3JvdXAgVHlwb2dyYXBoeVxuLy8vIEBhdXRob3IgRsOhYmlvIE1hY8OqZG8gTWVuZGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4kbWVuZGVsZWV2LXR5cGUtc2NhbGVzOiAoXG4gICAgbWlub3Itc2Vjb25kOiAxNi8xNSxcbiAgICBtYWpvci1zZWNvbmQ6IDkvOCxcbiAgICBtaW5vci10aGlyZDogNi81LFxuICAgIG1ham9yLXRoaXJkOiA1LzQsXG4gICAgcGVyZmVjdC1mb3VydGg6IDQvMyxcbiAgICBhdWdtZW50ZWQtZm91cnRoOiBzcXJ0KDIpLFxuICAgIHBlcmZlY3QtZmlmdGg6IDMvMixcbiAgICBnb2xkZW4tcmF0aW86ICgxICsgc3FydCg1KSkgLyAyLFxuKTtcbiRtZW5kZWxlZXYtdHlwZS1zY2FsZTogKCkgIWRlZmF1bHQ7XG5cbi8vLyBSZXR1cm4gYSB0eXBlIHNjYWxlIG1hcHBpbmcgZnJvbSB0aGUgYXJndW1lbnQuXG4vLy9cbi8vLyBJZiBhcmd1bWVudCBpcyBhIG51bWJlciBwcm92aWRlcyBhIHJhdGlvLWJhc2VkIHNjYWxlLlxuLy8vIElmIGFyZ3VtZW50IGlzIGEgbGlzdCwgY29udmVydCB0byBhIG1hcCB3aXRoIHRoZSBwcm9ncmVzc2lvbjpcbi8vLyAoJzEnOiBmaXJzdCwgJzInOiBzZWNvbmQsICczJzogdGhpcmQsIC4uLmV0Yylcbi8vLyBBcmd1bWVudCBjYW4gYmUgb25lIG9mIHRoZSBwcmUtZGVmaW5lZCB0eXBlIHNjYWxlczogdmVyeS1uYXJyb3csIG5hcnJvdywgbWVkaXVtLCB3aWRlLCB2ZXJ5LXdpZGUuXG5AZnVuY3Rpb24gdHlwZS1zY2FsZSgkc2NhbGUpIHtcbiAgICBAaWYgdHlwZS1vZigkc2NhbGUpID09IG51bWJlciB7XG4gICAgICAgIEBpZiAkc2NhbGUgPCAxIHtcbiAgICAgICAgICAgIEBlcnJvciAnUHJvZ3Jlc3Npb24gaW4gdHlwZSBzY2FsZSBtdXN0IGJlIGEgbnVtYmVyIGxhcmdlciB0aGFuIDEnO1xuICAgICAgICB9XG4gICAgICAgICRoZWFkaW5nczogZXhwb25lbnRpYWwtcHJvZ3Jlc3Npb24oJHNjYWxlLCA1LCAkcmV2ZXJzZTogdHJ1ZSk7XG4gICAgICAgICRyYXc6IGpvaW4obHN0LXRvLWFycmF5KCRoZWFkaW5ncyksIDAuODc1IDAuNzUgMC42MjUpO1xuICAgICAgICAkc2NhbGU6ICgpO1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkcmF3KSB7XG4gICAgICAgICAgICAkbjogbnRoKCRyYXcsICRpKTtcbiAgICAgICAgICAgICRzY2FsZTogbWFwLW1lcmdlKCRzY2FsZSwgKGluc3BlY3QoJGkpOiByb3VuZCgkbiAqIDE2KSAvIDE2KSk7XG4gICAgICAgIH1cbiAgICAgICAgQHJldHVybiB0eXBlLXNjYWxlKCRzY2FsZSk7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCRzY2FsZSkgPT0gbGlzdCB7XG4gICAgICAgICRyZXN1bHQ6ICgpO1xuICAgICAgICAka2V5OiBudWxsO1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkc2NhbGUpIHtcbiAgICAgICAgICAgICRrZXk6IHF1b3RlKGluc3BlY3QoJGkpKTtcbiAgICAgICAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoJGtleTogbnRoKCRzY2FsZSwgJGkpKSlcbiAgICAgICAgfVxuICAgICAgICBAcmV0dXJuICRyZXN1bHQ7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCRzY2FsZSkgPT0gbWFwIHtcbiAgICAgICAgQGlmIG5vdCBtYXAtaGFzLWtleXMoJHNjYWxlLCAoJzEnLCAnMicsICczJywgJzQnLCAnNScsICc2JykpIHtcbiAgICAgICAgICAgIEBlcnJvciAnTWFwIG11c3Qgc2hvdyBwcm9ncmVzc2lvbiBmcm9tIDEsIDMsIHVwIHRvIGF0IGxlYXN0IDYnO1xuICAgICAgICB9XG4gICAgICAgIEByZXR1cm4gJHNjYWxlO1xuICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1lbmRlbGVldi10eXBlLXNjYWxlcywgJHNjYWxlKSB7XG4gICAgICAgIEByZXR1cm4gdHlwZS1zY2FsZShtYXAtZ2V0KCRtZW5kZWxlZXYtdHlwZS1zY2FsZXMsICRzY2FsZSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBAZXJyb3IgJ1dyb25nIGFyZ3VtZW50IGZvciBnZXQtdHlwZS1zY2FsZTogI3skc2NhbGV9JztcbiAgICB9XG59XG5cbi8vLyBSZXR1cm4gYSBmb250IHByb3BlcnR5IGxpa2UgZmFtaWx5LCBsaW5lLWhlaWdodCwgbGV0dGVyLXNwYWNpbmcsIHNpemUsXG4vLy8gdHJhbnNmb3JtLCBvciB3ZWlnaHQuXG4vLy9cbi8vLyBAYXJnICRwcm9wIC0gUHJvcGVydHkgbmFtZVxuLy8vIEBhcmcgJHdoaWNoIC0gSWYgZ2l2ZW4sIG11c3QgYmUgZWl0aGVyIGhlYWRpbmdzIG9yIHBhcmFncmFwaCBhbmQgZGVub3Rlc1xuLy8vICAgICAgICAgICAgICAgd2hpY2ggc2VjdGlvbiB0byBsb29rIGZvciB0aGUgcHJvcGVydHlcbkBmdW5jdGlvbiBmb250LXByb3BlcnR5KCRwcm9wLCAkd2hpY2g6IHBhcmFncmFwaCkge1xuICAgICRjb25mOiBjb25maWcoJ3R5cG9ncmFwaHknLCAkd2hpY2gpO1xuICAgIEBpZiBtYXAtaGFzLWtleSgkY29uZiwgJHByb3ApIHtcbiAgICAgICAgQHJldHVybiBtYXAtZ2V0KCRjb25mLCAkcHJvcCk7XG4gICAgfVxuICAgIEByZXR1cm4gY29uZmlnKCd0eXBvZ3JhcGh5LiN7JHByb3B9Jyk7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNSVhJTlNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBfaGVhZGluZy12ZXJ0aWNhbC1yaHl0aG0oJHJhdGlvKSB7XG4gICAgJGxlYWQ6IGNvbmZpZygndHlwb2dyYXBoeS5sZWFkJyk7XG4gICAgJGgtbGVhZDogY29uZmlnKCd0eXBvZ3JhcGh5LmhlYWRpbmctbGVhZCcpO1xuICAgICRkZXNjZW5kZXI6IDAuMTtcbiAgICAkbWFyZ2luLWJvdHRvbTogMC41ICogKDEuMiAtICRyYXRpbyAqICRkZXNjZW5kZXIpO1xuICAgICRoZWlnaHQtdW5pdHM6ICRtYXJnaW4tYm90dG9tICsgJHJhdGlvICogJGgtbGVhZCAvICRsZWFkO1xuICAgICRkZWx0YTogY2VpbCgkaGVpZ2h0LXVuaXRzKSAtICRoZWlnaHQtdW5pdHM7XG4gICAgZm9udC1zaXplOiAkcmF0aW8gKiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAkaC1sZWFkO1xuICAgIG1hcmdpbjogKCRsZWFkICogKDEgKyAkZGVsdGEpICogMXJlbSkgMCAoJGxlYWQgKiAkbWFyZ2luLWJvdHRvbSAqIDFyZW0pIDA7XG59XG5cbkBtaXhpbiBoZWFkaW5ncy10eXBlLXNjYWxlKCRmYWN0b3IpIHtcbiAgICAkc2NhbGU6IG1hcC1yZW1vdmUodHlwZS1zY2FsZSgkZmFjdG9yKSwgJzUnLCAnNicsICc3JywgJzgnKTtcbiAgICBAZWFjaCAkbiwgJHJhdGlvIGluICRzY2FsZSB7XG4gICAgICAgICRzZWxlY3RvcjogdW5xdW90ZSgnaCN7JG59LCAuaCN7JG59Jyk7XG4gICAgICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBfaGVhZGluZy12ZXJ0aWNhbC1yaHl0aG0oJHJhdGlvKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoNSwgLmg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogJG1lbmRlbGVldi1sZWFkO1xuICAgICAgICBtYXJnaW46ICgkbWVuZGVsZWV2LWxlYWQgKiAxLjVyZW0pIDAgKCRtZW5kZWxlZXYtbGVhZCAqIDAuNXJlbSkgMDtcbiAgICB9XG4gICAgaDYsIC5oNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0MyAqICRtZW5kZWxlZXYtbGVhZDtcbiAgICAgICAgbWFyZ2luOiAoJG1lbmRlbGVldi1sZWFkICogMS41cmVtKSAwICgkbWVuZGVsZWV2LWxlYWQgKiAwLjVyZW0pIDA7XG4gICAgfVxufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ09ORklHVVJBVElPTlNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRtZW5kZWxlZXYtdHlwb2dyYXBoeS1jb25maWc6IGZhbHNlICFkZWZhdWx0O1xuQGlmIG5vdCAkbWVuZGVsZWV2LXR5cG9ncmFwaHktY29uZmlnIHtcblxuICAgIC8vIENvbXB1dGUgdHlwZSBzY2FsZXNcbiAgICAkdHlwZS1zY2FsZXM6ICgpO1xuICAgIEBlYWNoICRicCwgJGZhY3RvciBpbiBjb25maWcoJ3R5cG9ncmFwaHkuc2NhbGUnKSB7XG4gICAgICAgICR0eXBlLXNjYWxlczogbWFwLW1lcmdlKCR0eXBlLXNjYWxlcywgKCRmYWN0b3I6IHR5cGUtc2NhbGUoJGZhY3RvcikpKTtcbiAgICB9XG5cbiAgICAvLyBDcmVhdGUgdGhlIHJlc3BvbnNpdmUgdHlwZSBzY2FsZVxuICAgICRzY2FsZTogKCk7XG4gICAgQGVhY2ggJG4gaW4gKCcxJywgJzInLCAnMycsICc0JywgJzUnLCAnNicsICc3JywgJzgnKSB7XG5cbiAgICAgICAgJGRhdGE6ICgpO1xuICAgICAgICBAZWFjaCAkYnAsICRmYWN0b3IgaW4gY29uZmlnKCd0eXBvZ3JhcGh5LnNjYWxlJykge1xuICAgICAgICAgICAgJHR5cGUtc2NhbGU6IG1hcC1nZXQoJHR5cGUtc2NhbGVzLCAkZmFjdG9yKTtcbiAgICAgICAgICAgICRzaXplOiBtYXAtZ2V0KCR0eXBlLXNjYWxlLCAkbikgKiAxcmVtO1xuXG4gICAgICAgICAgICBAaWYgJGJwID09ICdzdGFydCcge1xuICAgICAgICAgICAgICAgICRkYXRhOiBtYXAtbWVyZ2UoJGRhdGEsIChmb250LXNpemU6ICRzaXplKSk7XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAkYnA6IGNvbmZpZygnYnJlYWtwb2ludHMuI3skYnB9Jyk7XG4gICAgICAgICAgICAgICAgJG1lZGlhOiAnQG1lZGlhJyAobWluLXdpZHRoOiAkYnApO1xuICAgICAgICAgICAgICAgICRkYXRhOiBtYXAtbWVyZ2UoJGRhdGEsICgkbWVkaWE6IChmb250LXNpemU6ICRzaXplKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICRzY2FsZTogbWFwLW1lcmdlKCRzY2FsZSwgKCcmI3skbn0nOiAkZGF0YSkpO1xuICAgIH1cbiAgICAvL0BlcnJvciAkc2NhbGU7XG4gICAgJG1lbmRlbGVldi10eXBlLXNjYWxlOiAkc2NhbGUgIWdsb2JhbDtcbiAgICAkbWVuZGVsZWV2LXR5cG9ncmFwaHktY29uZmlnOiB0cnVlICFnbG9iYWw7XG59XG5cbi8vQGVycm9yICRtZW5kZWxlZXYtdHlwZS1zY2FsZTtcbiIsCgkJIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gTUlYSU5TIFRIQVQgSEVMUCBDUkVBVElORyBVVElMSVRZIENMQVNTRVNcbi8vLyBAZ3JvdXAgVXRpbGl0aWVzXG4vLy8gQGF1dGhvciBGw6FiaW8gTWFjw6pkbyBNZW5kZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBmdW5jdGlvbiBtZW5kZWxlZXYtbWFrZS1wYWlyKCRwcm9wLCAkZnVuYywgJHZhbHVlKSB7XG4gICAgQHJldHVybiAoJHByb3A6IGNhbGwoYXMtZnVuYygkZnVuYyksICR2YWx1ZSkpO1xufVxuXG5AZnVuY3Rpb24gbWVuZGVsZWV2LWNvbG9yLXJvbGUoJHZhbHVlKSB7XG4gICAgQHJldHVybiAoXG4gICAgICAgIGNvbG9yOiBjb2xvcigkdmFsdWUsIGNvbnRyYXN0KSxcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJHZhbHVlKSxcbiAgICApO1xufVxuXG4vLy8gRGVjbGFyZXMgYSBjc3MgdmFyaWFibGUgd2l0aCBhIHBvc3NpYmxlIGZhbGxiYWNrLlxuLy8vXG4vLy8gQGFyZ3MgJHZhciAtIE5hbWUgb2YgY3NzIHZhcmlhYmxlIChwcmVmaXggZGFzaGVzLCBpbmNsdWRlZClcbi8vLyBAYXJncyAkZmFsbGJhY2sgLSBPcHRpb25hbCBmYWxsYmFjayB2YWx1ZVxuQGZ1bmN0aW9uIGNzcy12YXIoJHZhciwgJGZhbGxiYWNrOiBudWxsKSB7XG4gICAgQHJldHVybiBpZigkZmFsbGJhY2ssIHVucXVvdGUoJ3ZhcigjeyR2YXJ9LCAjeyRmYWxsYmFja30pJyksIHVucXVvdGUoJ3ZhcigjeyR2YXJ9KScpKTtcbn1cblxuJG1lbmRlbGVldi1tYWtlLXBhaXItZm46IGFzLWZ1bmMobWVuZGVsZWV2LW1ha2UtcGFpcik7XG4kbWVuZGVsZWV2LWNvbG9yLXJvbGUtZm46IGFzLWZ1bmMobWVuZGVsZWV2LWNvbG9yLXJvbGUpO1xuJG1lbmRlbGVldi1zaXppbmctZm46IGFzLWZ1bmMoc2l6aW5nKTtcbiRtZW5kZWxlZXYtc2l6aW5nLXNjYWxlLWZuOiBhcy1mdW5jKHNpemluZy1zY2FsZSk7XG4kbWVuZGVsZWV2LXNwZWNpYWwtcHJvcGVydGllczogKFxuICAgIC8vXG4gICAgLy8gU2l6aW5nXG4gICAgYm9yZGVyLXJhZGl1czpcbiAgICAgICAgKCRtZW5kZWxlZXYtbWFrZS1wYWlyLWZuLCAoJ2JvcmRlci1yYWRpdXMnLCBzaXplKSksXG4gICAgbWFyZ2luOlxuICAgICAgICAoJG1lbmRlbGVldi1zaXppbmctZm4sIChtYXJnaW4sKSksXG4gICAgaGVpZ2h0OlxuICAgICAgICAoJG1lbmRlbGVldi1zaXppbmctZm4sIChoZWlnaHQsKSksXG4gICAgcGFkOlxuICAgICAgICAoJG1lbmRlbGVldi1zaXppbmctZm4sIChwYWRkaW5nLCkpLFxuICAgIHBhZGRpbmc6XG4gICAgICAgICgkbWVuZGVsZWV2LXNpemluZy1mbiwgKHBhZGRpbmcsKSksXG4gICAgd2lkdGg6XG4gICAgICAgICgkbWVuZGVsZWV2LXNpemluZy1mbiwgKHdpZHRoLCkpLFxuICAgIG1hcmdpbi1zY2FsZTpcbiAgICAgICAgKCRtZW5kZWxlZXYtc2l6aW5nLXNjYWxlLWZuLCAobWFyZ2luLCkpLFxuICAgIGhlaWdodC1zY2FsZTpcbiAgICAgICAgKCRtZW5kZWxlZXYtc2l6aW5nLXNjYWxlLWZuLCAoaGVpZ2h0LCkpLFxuICAgIHBhZC1zY2FsZTpcbiAgICAgICAgKCRtZW5kZWxlZXYtc2l6aW5nLXNjYWxlLWZuLCAocGFkZGluZywpKSxcbiAgICBwYWRkaW5nLXNjYWxlOlxuICAgICAgICAoJG1lbmRlbGVldi1zaXppbmctc2NhbGUtZm4sIChwYWRkaW5nLCkpLFxuICAgIHdpZHRoLXNjYWxlOlxuICAgICAgICAoJG1lbmRlbGVldi1zaXppbmctc2NhbGUtZm4sICh3aWR0aCwpKSxcbiAgICAvL1xuICAgIC8vIENvbG9yc1xuICAgIGNvbG9yLXJvbGU6XG4gICAgICAgICgkbWVuZGVsZWV2LWNvbG9yLXJvbGUtZm4sICRmbi1lbXB0eS1hcnJheSksXG4gICAgY29sb3I6XG4gICAgICAgICgkbWVuZGVsZWV2LW1ha2UtcGFpci1mbiwgKCdjb2xvcicsICdjb2xvcicpKSxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOlxuICAgICAgICAoJG1lbmRlbGVldi1tYWtlLXBhaXItZm4sICgnYmFja2dyb3VuZC1jb2xvcicsICdjb2xvcicpKSxcbiAgICBib3JkZXItY29sb3I6XG4gICAgICAgICgkbWVuZGVsZWV2LW1ha2UtcGFpci1mbiwgKCdib3JkZXItY29sb3InLCAnY29sb3InKSksXG4pO1xuXG4vLy8gSW5jbHVkZSBhbGwgaXRlbXMgb24gbWFwIGFzIHBhaXJzIG9mIGBwcm9wZXJ0eTogdmFsdWVgLlxuLy8vXG4vLy8gU29tZSBwcm9wZXJ0aWVzIGhhdmUgYSBzcGVjaWFsIHRyZWF0bWVudDpcbi8vLyAgKiBwYWRkaW5nL3BhZC93aWR0aC9oZWlnaHQvbWFyZ2luOlxuLy8vICAgICAgICB1bml0bGVzcyB2YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byBzaXplcywgYW5kIG1hcHBpbmdzIGFyZSBleHBhbmRlZFxuLy8vICAgICAgICBpbnRvIGRpcmVjdGlvbnMuXG4vLy8gICogcGFkZGluZy1zY2FsZS9wYWQtc2NhbGUvLi4uOlxuLy8vICAgICAgICBsaWtlIGJlZm9yZSwgYnV0IHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHRoZSBzaXppbmcgc2NhbGUuXG4vLy8gICogY29sb3IvYmFja2dyb3VuZC1jb2xvci9ib3JkZXItY29sb3I6XG4vLy8gICAgICAgIGluY2x1ZGUgY29sb3IgYnkgdmFsdWUgb3IgbmFtZS5cbkBtaXhpbiBvcHRpb25zKCRtYXAsICRzdWZmaXg6IG51bGwpIHtcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAgIC8vIEhhbmRsZSBzcGVjaWFsIHByb3BlcnRpZXM6IHNpemVzXG4gICAgICAgICRzcGVjaWFsOiBtYXAtZ2V0KCRtZW5kZWxlZXYtc3BlY2lhbC1wcm9wZXJ0aWVzLCAka2V5KTtcbiAgICAgICAgQGlmICRzcGVjaWFsIHtcbiAgICAgICAgICAgICRmdW5jOiBudGgoJHNwZWNpYWwsIDEpO1xuICAgICAgICAgICAgJGFyZ3M6IGFwcGVuZChudGgoJHNwZWNpYWwsIDIpLCAkdmFsdWUpO1xuICAgICAgICAgICAgQGluY2x1ZGUgZnJvbS1tYXAoY2FsbCgkZnVuYywgJGFyZ3MuLi4pLCAkc3VmZml4KTtcbiAgICAgICAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbWFwIHtcbiAgICAgICAgICAgICN7JGtleX0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wdGlvbnMoJHZhbHVlLCAkc3VmZml4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAaWYgJHZhbHVlICE9IG51bGwge1xuICAgICAgICAgICAgICAgICN7JGtleX06ICR2YWx1ZSAkc3VmZml4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUWVBPR1JBUEhZXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaWYgJG1lbmRlbGVldi1yZWdpc3RlcmluZy11dGlsaXRpZXMge1xuICAgICRkbzogbWVuZGVsZWV2LW1vZHVsZShcbiAgICAgICAgICAgICd0eXBvZ3JhcGh5Lm1vZHVsZXMuc2NhbGUnLCAoXG4gICAgICAgICAgICAnLnRleHQtJzogJG1lbmRlbGVldi10eXBlLXNjYWxlLFxuICAgICAgICApKTtcblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBTaW1wbGUgc3lzdGVtIGZvbnQgc3R5bGVzOiBmb250LXNhbnMsIGZvbnQtc2VyaWYsIGZvbnQtbW9ubywgZm9udC1jdXJzaXZlXG5cbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICd0eXBvZ3JhcGh5Lm1vZHVsZXMuZm9udHMnLCAoXG4gICAgICAgICAgICBmb250LWZhbWlseTpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIHNhbnMtc2VyaWY6IGNvbmZpZygndHlwb2dyYXBoeS5zYW5zLXNlcmlmJyksXG4gICAgICAgICAgICAgICAgICAgIHNlcmlmOiBjb25maWcoJ3R5cG9ncmFwaHkuc2VyaWYnKSxcbiAgICAgICAgICAgICAgICAgICAgY3Vyc2l2ZTogY29uZmlnKCd0eXBvZ3JhcGh5LmN1cnNpdmUnKSxcbiAgICAgICAgICAgICAgICAgICAgbW9ub3NwYWNlOiBjb25maWcoJ3R5cG9ncmFwaHkubW9ub3NwYWNlJyksXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICkpO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIEZvbnQgd2VpZ2h0XG5cbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICd0eXBvZ3JhcGh5Lm1vZHVsZXMud2VpZ2h0cycsIChcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OlxuICAgICAgICAgICAgICAgICgnLicsIChcbiAgICAgICAgICAgICAgICAgICAgdGhpbjogMTAwLFxuICAgICAgICAgICAgICAgICAgICBleHRyYS1saWdodDogMjAwLFxuICAgICAgICAgICAgICAgICAgICBsaWdodDogMzAwLFxuICAgICAgICAgICAgICAgICAgICByZWd1bGFyOiA0MDAsXG4gICAgICAgICAgICAgICAgICAgIG1lZGl1bTogNTAwLFxuICAgICAgICAgICAgICAgICAgICBzZW1pLWJvbGQ6IDYwMCxcbiAgICAgICAgICAgICAgICAgICAgYm9sZDogNzAwLFxuICAgICAgICAgICAgICAgICAgICBleHRyYS1ib2xkOiA4MDAsXG4gICAgICAgICAgICAgICAgICAgIGJsYWNrOiA5MDAsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICkpO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFN0eWxlcywgZGVjb3JhdGlvbnMgYW5kIHRleHQgdHJhbnNmb3JtXG5cbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICd0eXBvZ3JhcGh5Lm1vZHVsZXMuc3R5bGVzJywgKFxuICAgICAgICAgICAgZm9udC1zdHlsZTpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIGl0YWxpYzogaXRhbGljLFxuICAgICAgICAgICAgICAgICAgICByb21hbjogbm9ybWFsLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06XG4gICAgICAgICAgICAgICAgKCcuJywgKFxuICAgICAgICAgICAgICAgICAgICB1cHBlcmNhc2U6IHVwcGVyY2FzZSxcbiAgICAgICAgICAgICAgICAgICAgbG93ZXJjYXNlOiBsb3dlcmNhc2UsXG4gICAgICAgICAgICAgICAgICAgIGNhcGl0YWxpemU6IGNhcGl0YWxpemUsXG4gICAgICAgICAgICAgICAgICAgIG5vcm1hbGNhc2U6IG5vbmUsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246XG4gICAgICAgICAgICAgICAgKCcuJywgKFxuICAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmU6IHVuZGVybGluZSxcbiAgICAgICAgICAgICAgICAgICAgbGluZS10aHJvdWdoOiBsaW5lLXRocm91Z2gsXG4gICAgICAgICAgICAgICAgICAgIG5vLXVuZGVybGluZTogbm9uZVxuICAgICAgICAgICAgICAgICkpXG4gICAgICAgICkpO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFRleHQgYWxpZ25tZW50XG5cbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICd0eXBvZ3JhcGh5Lm1vZHVsZXMuYWxpZ25tZW50JywgKFxuICAgICAgICAgICAgdGV4dC1hbGlnbjpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGxlZnQsXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICAgICAgICAgICAgICByaWdodDogcmlnaHQsXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnk6IGp1c3RpZnksXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIGJhc2VsaW5lOiBiYXNlbGluZSxcbiAgICAgICAgICAgICAgICAgICAgdG9wOiB0b3AsXG4gICAgICAgICAgICAgICAgICAgIG1pZGRsZTogbWlkZGxlLFxuICAgICAgICAgICAgICAgICAgICBib3R0b206IGJvdHRvbSxcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10b3A6IHRleHQtdG9wLFxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWJvdHRvbTogdGV4dC1ib3R0b20sXG4gICAgICAgICAgICAgICAgKSlcbiAgICAgICAgKSk7XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gV2hpdGVzcGFjZVxuXG4gICAgJGRvOiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoXG4gICAgICAgICAgICAndHlwb2dyYXBoeS5tb2R1bGVzLndoaXRlLXNwYWNlJywgKFxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6XG4gICAgICAgICAgICAgICAgKCcuJywgKFxuICAgICAgICAgICAgICAgICAgICBub3JtYWw6IG5vcm1hbCxcbiAgICAgICAgICAgICAgICAgICAgbm93cmFwOiBub3dyYXAsXG4gICAgICAgICAgICAgICAgICAgIHByZTogcHJlLFxuICAgICAgICAgICAgICAgICAgICBwcmUtbGluZTogcHJlLWxpbmUsXG4gICAgICAgICAgICAgICAgICAgIHByZS13cmFwOiBwcmUtd3JhcCxcbiAgICAgICAgICAgICAgICApKVxuICAgICAgICApKTtcblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBMZWFkaW5nXG5cbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICd0eXBvZ3JhcGh5Lm1vZHVsZXMubGVhZGluZycsIChcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OlxuICAgICAgICAgICAgICAgICgnLicsIChcbiAgICAgICAgICAgICAgICAgICAgbGVhZGluZzogY29uZmlnKCd0eXBvZ3JhcGh5LmxlYWQnKSxcbiAgICAgICAgICAgICAgICAgICAgbGVhZGluZy10aXRsZTogY29uZmlnKCd0eXBvZ3JhcGh5LmhlYWRpbmctbGVhZCcpLFxuICAgICAgICAgICAgICAgICAgICBsZWFkaW5nLXNvbGlkOiAxLFxuICAgICAgICAgICAgICAgICAgICBsZWFkaW5nLWxvb3NlOiAyLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBNZWFzdXJlXG5cbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICd0eXBvZ3JhcGh5Lm1vZHVsZXMubWVhc3VyZScsIChcbiAgICAgICAgICAgIG1heC13aWR0aDpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIG1lYXN1cmU6IDI5ZW0sIC8vIH4gNjUgY2hhcmFjdGVyc1xuICAgICAgICAgICAgICAgICAgICBtZWFzdXJlLXdpZGU6IDM4ZW0sIC8vIH4gODUgY2hhcmFjdGVyc1xuICAgICAgICAgICAgICAgICAgICBtZWFzdXJlLW5hcnJvdzogMjBlbSwgLy8gfiA0NSBjaGFyYWN0ZXJzXG4gICAgICAgICAgICAgICAgKSlcbiAgICAgICAgKSk7XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gSW5kZW50YXRpb25cblxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ3R5cG9ncmFwaHkubW9kdWxlcy5pbmRlbnQnLCAoXG4gICAgICAgICAgICB0ZXh0LWluZGVudDpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIGluZGVudDogMS41ZW0sXG4gICAgICAgICAgICAgICAgICAgIGluZGVudC1wdW5jdHVhdGlvbjogLTAuM2VtLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcblxuICAgICRkbzogbWVuZGVsZWV2LW1vZHVsZShcbiAgICAgICAgICAgICd0eXBvZ3JhcGh5Lm1vZHVsZXMuaW5kZW50JywgKFxuICAgICAgICAgICAgJy50cnVuY2F0ZSc6IChcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwLFxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4sXG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXMsXG4gICAgICAgICAgICApXG4gICAgICAgICkpO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIERpcmVjdGlvblxuXG4gICAgJGRvOiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoXG4gICAgICAgICAgICAndHlwb2dyYXBoeS5tb2R1bGVzLmRpcmVjdGlvbicsIChcbiAgICAgICAgICAgIGRpcmVjdGlvbjpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIHJ0bDogcnRsLFxuICAgICAgICAgICAgICAgICAgICBsdHI6IGx0cixcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgKSk7XG59XG4iLAoJCSIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gREVGSU5FIFRIRSBERUZBVUxUIFNJWklORyBTQ0FMRVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGlmICRtZW5kZWxlZXYtcmVnaXN0ZXJpbmctdXRpbGl0aWVzIHtcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gUEFERElORyBTQ0FMRVxuXG4gICAgJGRvOiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoXG4gICAgICAgICAgICAncGFkZGluZycsIChcbiAgICAgICAgICAgIHBhZGRpbmc6XG4gICAgICAgICAgICAgICAgKCcucGFkLScsICRtZW5kZWxlZXYtc2l6ZS1zY2FsZS1yZW0pXG4gICAgICAgICkpO1xuXG4gICAgJGRvOiBtZW5kZWxlZXYtbW9kdWxlKFxuICAgICAgICAgICAgJ3BhZGRpbmcnLCAoXG4gICAgICAgICAgICAnLnBhZC14Jzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtLFxuICAgICAgICAgICAgICAgICRjc3M6IChcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBudWxsLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICAnLnBhZC15Jzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtLFxuICAgICAgICAgICAgICAgICRjc3M6IChcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBudWxsLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICksXG4gICAgICAgICkpO1xuXG4gICAgJGRvOiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoXG4gICAgICAgICAgICAncGFkZGluZycsIChcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDpcbiAgICAgICAgICAgICAgICAoJy5wYWQtbCcsICRtZW5kZWxlZXYtc2l6ZS1zY2FsZS1yZW0pLFxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDpcbiAgICAgICAgICAgICAgICAoJy5wYWQtcicsICRtZW5kZWxlZXYtc2l6ZS1zY2FsZS1yZW0pLFxuICAgICAgICAgICAgcGFkZGluZy10b3A6XG4gICAgICAgICAgICAgICAgKCcucGFkLXQnLCAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtKSxcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOlxuICAgICAgICAgICAgICAgICgnLnBhZC1iJywgJG1lbmRlbGVldi1zaXplLXNjYWxlLXJlbSksXG4gICAgICAgICkpO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIE1BUkdJTiBTQ0FMRVxuXG4gICAgJG1lbmRlbGVldi1zaXplcy1hdXRvOiBtYXAtbWVyZ2UoKGF1dG86IGF1dG8pLCAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtKTtcblxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ21hcmdpbicsIChcbiAgICAgICAgICAgIG1hcmdpbjpcbiAgICAgICAgICAgICAgICAoJy5tYXJnaW4tJywgbWFwLW1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgJG1lbmRlbGVldi1zaXplcy1hdXRvLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLXByZWZpeC1rZXlzKG1hcC1hcHBseS12YWx1ZXMobmVnYXRlLCAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtKSwgbilcbiAgICAgICAgICAgICAgICApKVxuICAgICAgICApKTtcblxuICAgICRkbzogbWVuZGVsZWV2LW1vZHVsZShcbiAgICAgICAgICAgICdtYXJnaW4nLCAoXG4gICAgICAgICAgICAnLm1hcmdpbi0nOiBzY2FsZS1vZihcbiAgICAgICAgICAgICAgICAkc2NhbGU6IG1hcC1tZXJnZShcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC1wcmVmaXgta2V5cygkbWVuZGVsZWV2LXNpemVzLWF1dG8sIHgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLXByZWZpeC1rZXlzKG1hcC1hcHBseS12YWx1ZXMobmVnYXRlLCAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtKSwgbngpXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAkY3NzOiAoXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IG51bGwsXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSk7XG5cbiAgICAkZG86IG1lbmRlbGVldi1tb2R1bGUoXG4gICAgICAgICAgICAnbWFyZ2luJywgKFxuICAgICAgICAgICAgJy5tYXJnaW4tJzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiBtYXAtbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAtcHJlZml4LWtleXMoJG1lbmRlbGVldi1zaXplcy1hdXRvLCB5KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC1wcmVmaXgta2V5cyhtYXAtYXBwbHktdmFsdWVzKG5lZ2F0ZSwgJG1lbmRlbGVldi1zaXplLXNjYWxlLXJlbSksIG55KVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgJGNzczogKFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBudWxsLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICksXG4gICAgICAgICkpO1xuXG4gICAgJGRvOiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoXG4gICAgICAgICAgICAnbWFyZ2luJywgKFxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6XG4gICAgICAgICAgICAgICAgKCcubWFyZ2luLScsIG1hcC1tZXJnZShcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC1wcmVmaXgta2V5cygkbWVuZGVsZWV2LXNpemVzLWF1dG8sIGwpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLXByZWZpeC1rZXlzKG1hcC1hcHBseS12YWx1ZXMobmVnYXRlLCAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtKSwgbmwpXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6XG4gICAgICAgICAgICAgICAgKCcubWFyZ2luLScsIG1hcC1tZXJnZShcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC1wcmVmaXgta2V5cygkbWVuZGVsZWV2LXNpemVzLWF1dG8sIHIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLXByZWZpeC1rZXlzKG1hcC1hcHBseS12YWx1ZXMobmVnYXRlLCAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtKSwgbnIpXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICBtYXJnaW4tdG9wOlxuICAgICAgICAgICAgICAgICgnLm1hcmdpbi0nLCBtYXAtbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAtcHJlZml4LWtleXMoJG1lbmRlbGVldi1zaXplcy1hdXRvLCB0KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC1wcmVmaXgta2V5cyhtYXAtYXBwbHktdmFsdWVzKG5lZ2F0ZSwgJG1lbmRlbGVldi1zaXplLXNjYWxlLXJlbSksIG50KVxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpcbiAgICAgICAgICAgICAgICAoJy5tYXJnaW4tJywgbWFwLW1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLXByZWZpeC1rZXlzKCRtZW5kZWxlZXYtc2l6ZXMtYXV0bywgYiksXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAtcHJlZml4LWtleXMobWFwLWFwcGx5LXZhbHVlcyhuZWdhdGUsICRtZW5kZWxlZXYtc2l6ZS1zY2FsZS1yZW0pLCBuYilcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgKSk7XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gU0laRVNcblxuICAgICRtZW5kZWxlZXYtc2l6ZXM6IG1hcC1tZXJnZSgkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtLCAoXG4gICAgICAgIGF1dG86IGF1dG8sXG4gICAgICAgIGF2YWlsYWJsZTogYXZhaWxhYmxlLFxuICAgICAgICBmaXQ6IGZpdC1jb250ZW50LFxuICAgICAgICBtYXg6IG1heC1jb250ZW50LFxuICAgICAgICBtaW46IG1pbi1jb250ZW50LFxuICAgICkpO1xuXG4gICAgJGRvOiBtZW5kZWxlZXYtbW9kdWxlKFxuICAgICAgICAgICAgJ3NpemVzJywgKFxuICAgICAgICAgICAgJy5zaXplLSc6IHNjYWxlLW9mKFxuICAgICAgICAgICAgICAgICRzY2FsZTogJG1lbmRlbGVldi1zaXplcyxcbiAgICAgICAgICAgICAgICAkY3NzOiAoXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IG51bGwsXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSk7XG5cbiAgICAvLyBIb3Jpem9udGFsIGFuZCB2ZXJ0aWNhbFxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ3NpemVzJywgKFxuICAgICAgICAgICAgd2lkdGg6XG4gICAgICAgICAgICAgICAgKCcuc2l6ZS14JywgJG1lbmRlbGVldi1zaXplcyksXG4gICAgICAgICAgICBoZWlnaHQ6XG4gICAgICAgICAgICAgICAgKCcuc2l6ZS15JywgJG1lbmRlbGVldi1zaXplcyksXG4gICAgICAgICAgICBsaW5lLWhlaWdodDpcbiAgICAgICAgICAgICAgICAoJy5saW5lLWhlaWdodC0nLCBtYXAtbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAkbWVuZGVsZWV2LXNpemUtc2NhbGUtcmVtLFxuICAgICAgICAgICAgICAgICAgICAgICAgKG5vcm1hbDogbm9ybWFsKVxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcblxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ3NpemluZycsIChcbiAgICAgICAgICAgIHdpZHRoOlxuICAgICAgICAgICAgICAgICgnLndpZHRoLScsICRtZW5kZWxlZXYtZ3JpZC1zaXplLXNjYWxlKSxcbiAgICAgICAgICAgIG1heC13aWR0aDpcbiAgICAgICAgICAgICAgICAoJy5tYXgtd2lkdGgtJywgJG1lbmRlbGVldi1ncmlkLXNpemUtc2NhbGUpLFxuICAgICAgICAgICAgbWluLXdpZHRoOlxuICAgICAgICAgICAgICAgICgnLm1pbi13aWR0aC0nLCAkbWVuZGVsZWV2LWdyaWQtc2l6ZS1zY2FsZSksXG4gICAgICAgICAgICBoZWlnaHQ6XG4gICAgICAgICAgICAgICAgKCcuaGVpZ2h0LScsICRtZW5kZWxlZXYtZ3JpZC1zaXplLXNjYWxlKSxcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6XG4gICAgICAgICAgICAgICAgKCcubWF4LWhlaWdodC0nLCAkbWVuZGVsZWV2LWdyaWQtc2l6ZS1zY2FsZSksXG4gICAgICAgICAgICBtaW4taGVpZ2h0OlxuICAgICAgICAgICAgICAgICgnLm1pbi1oZWlnaHQtJywgJG1lbmRlbGVldi1ncmlkLXNpemUtc2NhbGUpLFxuICAgICAgICApKTtcbn1cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDT05UUk9MIExBWU9VVCAoT1ZFUkZMT1csIEZMT0FUUywgRElTUExBWSwgUE9TSVRJT04pXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaWYgJG1lbmRlbGVldi1yZWdpc3RlcmluZy11dGlsaXRpZXMge1xuXG4gICAgLy8gQ29udGFpbmVyXG4gICAgJGRvOiBtZW5kZWxlZXYtbW9kdWxlKFxuICAgICAgICAgICAgJ2xheW91dC5jb250YWluZXInLCAoXG4gICAgICAgICAgICAnLmNvbnRhaW5lci0xJzogbWFwLW1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAkbWVuZGVsZWV2LWNvbnRhaW5lcixcbiAgICAgICAgICAgICAgICAgICAgKG1heC13aWR0aDogNDRyZW0gKyAyICogJG1lbmRlbGVldi11bml0LXNpemUpXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJy5jb250YWluZXItMic6IG1hcC1tZXJnZShcbiAgICAgICAgICAgICAgICAgICAgJG1lbmRlbGVldi1jb250YWluZXIsXG4gICAgICAgICAgICAgICAgICAgIChtYXgtd2lkdGg6IDM4cmVtICsgMiAqICRtZW5kZWxlZXYtdW5pdC1zaXplKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICcuY29udGFpbmVyLTMnOiBtYXAtbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICRtZW5kZWxlZXYtY29udGFpbmVyLFxuICAgICAgICAgICAgICAgICAgICAobWF4LXdpZHRoOiAyOXJlbSArIDIgKiAkbWVuZGVsZWV2LXVuaXQtc2l6ZSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICAnLmNvbnRhaW5lci00JzogbWFwLW1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAkbWVuZGVsZWV2LWNvbnRhaW5lcixcbiAgICAgICAgICAgICAgICAgICAgKG1heC13aWR0aDogMjByZW0gKyAyICogJG1lbmRlbGVldi11bml0LXNpemUpXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJy5yYWlzZS1maXJzdCA+ICo6Zmlyc3QtY2hpbGQnOiAoXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMCxcbiAgICAgICAgICAgICksXG4gICAgICAgICkpO1xuXG4gICAgLy8gUG9zaXRpb24gb24gcGFnZSAocGluLCBwaW4tbGVmdCwgcGluLXRvcCwgZXRjKVxuICAgICRkbzogbWVuZGVsZWV2LW1vZHVsZShcbiAgICAgICAgICAgICdsYXlvdXQucG9zaXRpb24nLCAoXG4gICAgICAgICAgICAnLnBpbic6IChcbiAgICAgICAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgICAgICAgYm90dG9tOiAwLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwLFxuICAgICAgICAgICAgICAgIGxlZnQ6IDAsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJy5waW4tbm9uZSc6IChcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG8sXG4gICAgICAgICAgICAgICAgYm90dG9tOiBhdXRvLFxuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG8sXG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG8sXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJy5waW4teCc6IChcbiAgICAgICAgICAgICAgICByaWdodDogMCxcbiAgICAgICAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICcucGluLXknOiAoXG4gICAgICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgICAgIGJvdHRvbTogMCxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICAnLnBpbi1sZWZ0JzogKFxuICAgICAgICAgICAgICAgIGxlZnQ6IDAsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJy5waW4tcmlnaHQnOiAoXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDAsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgJy5waW4tdG9wJzogKFxuICAgICAgICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICAnLnBpbi1ib3R0b20nOiAoXG4gICAgICAgICAgICAgICAgYm90dG9tOiAwLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSk7XG5cbiAgICAvLyBEaXNwbGF5XG4gICAgJGRvOiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoXG4gICAgICAgICAgICAnbGF5b3V0LmRpc3BsYXknLCAoXG4gICAgICAgICAgICBkaXNwbGF5OlxuICAgICAgICAgICAgICAgICgnLicsIChcbiAgICAgICAgICAgICAgICAgICAgYmxvY2s6IGJsb2NrLFxuICAgICAgICAgICAgICAgICAgICBpbmxpbmU6IGlubGluZSxcbiAgICAgICAgICAgICAgICAgICAgaW5saW5lLWJsb2NrOiBpbmxpbmUtYmxvY2ssXG4gICAgICAgICAgICAgICAgICAgIHRhYmxlOiB0YWJsZSxcbiAgICAgICAgICAgICAgICAgICAgdGFibGUtY2VsbDogdGFibGUtY2VsbCxcbiAgICAgICAgICAgICAgICAgICAgaW5saW5lLWZsZXg6IGlubGluZS1mbGV4LFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcblxuICAgIC8vIEZsb2F0XG4gICAgJGRvOiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoXG4gICAgICAgICAgICAnbGF5b3V0LmZsb2F0JywgKFxuICAgICAgICAgICAgZmxvYXQ6XG4gICAgICAgICAgICAgICAgKCcuZmxvYXQtJywgKFxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBsZWZ0LFxuICAgICAgICAgICAgICAgICAgICByaWdodDogcmlnaHQsXG4gICAgICAgICAgICAgICAgICAgIG5vbmU6IG5vbmUsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICkpO1xuXG4gICAgLy8gUG9zaXRpb24gKGFic29sdXRlLCByZWxhdGl2ZSwgZXRjKVxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ2xheW91dC5wb3NpdGlvbicsIChcbiAgICAgICAgICAgIHBvc2l0aW9uOlxuICAgICAgICAgICAgICAgICgnLicsIChcbiAgICAgICAgICAgICAgICAgICAgYWJzb2x1dGU6IGFic29sdXRlLFxuICAgICAgICAgICAgICAgICAgICBmaXhlZDogZml4ZWQsXG4gICAgICAgICAgICAgICAgICAgIHJlbGF0aXZlOiByZWxhdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgc3RhdGljOiBzdGF0aWMsXG4gICAgICAgICAgICAgICAgICAgIHN0aWNreTogc3RpY2t5LFxuICAgICAgICAgICAgICAgICkpXG4gICAgICAgICkpO1xuXG4gICAgLy8gT3ZlcmZsb3dcbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICdsYXlvdXQub3ZlcmZsb3cnLCAoXG4gICAgICAgICAgICBvdmVyZmxvdzpcbiAgICAgICAgICAgICAgICAoJy5vdmVyZmxvdy0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGF1dG86IGF1dG8sXG4gICAgICAgICAgICAgICAgICAgIGhpZGRlbjogaGlkZGVuLFxuICAgICAgICAgICAgICAgICAgICB2aXNpYmxlOiB2aXNpYmxlLFxuICAgICAgICAgICAgICAgICAgICBzY3JvbGw6IHNjcm9sbCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIG92ZXJmbG93LXg6XG4gICAgICAgICAgICAgICAgKCcub3ZlcmZsb3cteC0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGF1dG86IGF1dG8sXG4gICAgICAgICAgICAgICAgICAgIGhpZGRlbjogaGlkZGVuLFxuICAgICAgICAgICAgICAgICAgICB2aXNpYmxlOiB2aXNpYmxlLFxuICAgICAgICAgICAgICAgICAgICBzY3JvbGw6IHNjcm9sbCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIG92ZXJmbG93LXk6XG4gICAgICAgICAgICAgICAgKCcub3ZlcmZsb3cteS0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGF1dG86IGF1dG8sXG4gICAgICAgICAgICAgICAgICAgIGhpZGRlbjogaGlkZGVuLFxuICAgICAgICAgICAgICAgICAgICB2aXNpYmxlOiB2aXNpYmxlLFxuICAgICAgICAgICAgICAgICAgICBzY3JvbGw6IHNjcm9sbCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgKSk7XG59XG4iLAoJCSIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQk9SREVSU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGlmICRtZW5kZWxlZXYtcmVnaXN0ZXJpbmctdXRpbGl0aWVzIHtcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gQm9yZGVyIHNpemUgKHB4KVxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ2JvcmRlcicsIChcbiAgICAgICAgICAgIGJvcmRlcjpcbiAgICAgICAgICAgICAgICAoJy5ib3JkZXItJywgJG1lbmRlbGVldi1ib3JkZXItc2NhbGUpLFxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6XG4gICAgICAgICAgICAgICAgKCcuYm9yZGVyLWwnLCAkbWVuZGVsZWV2LWJvcmRlci1zY2FsZSksXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6XG4gICAgICAgICAgICAgICAgKCcuYm9yZGVyLXInLCAkbWVuZGVsZWV2LWJvcmRlci1zY2FsZSksXG4gICAgICAgICAgICBib3JkZXItdG9wOlxuICAgICAgICAgICAgICAgICgnLmJvcmRlci10JywgJG1lbmRlbGVldi1ib3JkZXItc2NhbGUpLFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTpcbiAgICAgICAgICAgICAgICAoJy5ib3JkZXItYicsICRtZW5kZWxlZXYtYm9yZGVyLXNjYWxlKSxcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTpcbiAgICAgICAgICAgICAgICAoJy5ib3JkZXItJywgKFxuICAgICAgICAgICAgICAgICAgICBzb2xpZDogc29saWQsXG4gICAgICAgICAgICAgICAgICAgIGRhc2hlZDogZGFzaGVkLFxuICAgICAgICAgICAgICAgICAgICBkb3R0ZWQ6IGRvdHRlZCxcbiAgICAgICAgICAgICAgICAgICAgbm9uZTogbm9uZSxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgKSk7XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gUm91bmRlZCBjb3JuZXJzXG4gICAgJGRvOiBtZW5kZWxlZXYtbW9kdWxlKFxuICAgICAgICAgICAgJ3JvdW5kZWQnLCAoXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gQWxsIGRpcmVjdGlvbnNcbiAgICAgICAgICAgICcucm91bmRlZC0nOiBzY2FsZS1vZihcbiAgICAgICAgICAgICAgICAkc2NhbGU6ICRtZW5kZWxlZXYtcmFkaXVzLXNjYWxlLXJlbSxcbiAgICAgICAgICAgICAgICAkY3NzOiAoXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IG51bGwsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gRGlyZWN0aW9uYWwgcm91bmRlZCBjb3JuZXJzXG4gICAgICAgICAgICAnLnJvdW5kZWQtdCc6IHNjYWxlLW9mKFxuICAgICAgICAgICAgICAgICRzY2FsZTogJG1lbmRlbGVldi1yYWRpdXMtc2NhbGUtcmVtLFxuICAgICAgICAgICAgICAgICRjc3M6IChcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IG51bGwsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAnLnJvdW5kZWQtYic6IHNjYWxlLW9mKFxuICAgICAgICAgICAgICAgICRzY2FsZTogJG1lbmRlbGVldi1yYWRpdXMtc2NhbGUtcmVtLFxuICAgICAgICAgICAgICAgICRjc3M6IChcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IG51bGwsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAnLnJvdW5kZWQtcic6c2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LXJhZGl1cy1zY2FsZS1yZW0sXG4gICAgICAgICAgICAgICAgJGNzczogKFxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IG51bGwsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAnLnJvdW5kZWQtbCc6c2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LXJhZGl1cy1zY2FsZS1yZW0sXG4gICAgICAgICAgICAgICAgJGNzczogKFxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBudWxsLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcbn1cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGTEVYIEJPWEVTXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVuZGVsZWV2LWd1dHRlci1zY2FsZTogJGZuLWVtcHR5LW1hcDtcbkBlYWNoICRrIGluICgxLCAyLCAzLCA0KSB7XG4gICAgJHNpemU6IHNpemUtc2NhbGUoJGspO1xuICAgICRjc3M6IChcbiAgICAgICAgbWFyZ2luOiB1bnF1b3RlKCcjeyRzaXplfSAtI3skc2l6ZX0nKSxcbiAgICAgICAgJz4gKic6IChcbiAgICAgICAgICAgIG1hcmdpbjogJHNpemUsXG4gICAgICAgICksXG4gICAgICAgICcmICsgJic6KFxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSRzaXplLFxuICAgICAgICApLFxuICAgICk7XG4gICAgJG1lbmRlbGVldi1ndXR0ZXItc2NhbGU6IG1hcC1tZXJnZSgkbWVuZGVsZWV2LWd1dHRlci1zY2FsZSwgKCcmI3ska30nOiAkY3NzKSk7XG59XG5cbkBpZiAkbWVuZGVsZWV2LXJlZ2lzdGVyaW5nLXV0aWxpdGllcyB7XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gRmxleGlibGUgZ3JpZFxuICAgICRkbzogbWVuZGVsZWV2LW1vZHVsZShcbiAgICAgICAgICAgICdmb28nLCAoXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gUm93IGRlZmluaXRpb25zIGFuZCBtb2RpZmllcnNcbiAgICAgICAgICAgICcuZm9vYmFyJzogKFxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoLFxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXgsXG4gICAgICAgICAgICAgICAgZmxleC1mbG93OiByb3csXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSk7XG5cbiAgICAkZG86IG1lbmRlbGVldi1tb2R1bGUoXG4gICAgICAgICAgICAnZmxleC1ncmlkJywgKFxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIFJvdyBkZWZpbml0aW9ucyBhbmQgbW9kaWZpZXJzXG4gICAgICAgICAgICAnLnJvdyc6IChcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4LFxuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogcm93LFxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbixcbiAgICAgICAgICAgICAgICAnPiAqJzogKFxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDAsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICAnLnJvdy1pbmxpbmUnOiAoXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2gsXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXgsXG4gICAgICAgICAgICAgICAgZmxleC1mbG93OiByb3csXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICcucm93LWV4cGFuZCc6IChcbiAgICAgICAgICAgICAgICAnPiAqJzogKFxuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIENvbCBkZWZpbml0aW9ucyBhbmQgbW9kaWZpZXJzXG4gICAgICAgICAgICAnLmNvbCc6IChcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4LFxuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uLFxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbixcbiAgICAgICAgICAgICAgICAnPiAqJzogKFxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDAsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICAnLmNvbC1pbmxpbmUnOiAoXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2gsXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXgsXG4gICAgICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW4sXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICcuY29sLWV4cGFuZCc6IChcbiAgICAgICAgICAgICAgICAnPiAqJzogKFxuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgLy8gR3V0dGVyIHNjYWxlXG4gICAgICAgICAgICAnLmd1dHRlci0nOiAkbWVuZGVsZWV2LWd1dHRlci1zY2FsZSxcbiAgICAgICAgKSk7XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gRmxleGJveCByZWxhdGVkIHV0aWxpdHkgY2xhc3Nlc1xuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ2ZsZXgnLCAoXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gRGlyZWN0aW9uXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjpcbiAgICAgICAgICAgICAgICAoJy5mbGV4LScsIChcbiAgICAgICAgICAgICAgICAgICAgcm93OiByb3csXG4gICAgICAgICAgICAgICAgICAgIHJvdy1yZXZlcnNlOiByb3ctcmV2ZXJzZSxcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uOiBjb2x1bW4sXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbi1yZXZlcnNlOiBjb2x1bW4tcmV2ZXJzZSxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBBbGlnbm1lbnQgYWxvbmcgdGhlIGZsZXggYXhpc1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OlxuICAgICAgICAgICAgICAgICgnLmZsZXgtJywgKFxuICAgICAgICAgICAgICAgICAgICBzdGFydDogZmxleC1zdGFydCxcbiAgICAgICAgICAgICAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICAgICAgICAgICAgICAgIGVuZDogZmxleC1lbmQsXG4gICAgICAgICAgICAgICAgICAgIGJldHdlZW46IHNwYWNlLWJldHdlZW4sXG4gICAgICAgICAgICAgICAgICAgIGFyb3VuZDogc3BhY2UtYXJvdW5kLFxuICAgICAgICAgICAgICAgICAgICBldmVubHk6IHNwYWNlLWV2ZW5seSxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBBbGlnbm1lbnQgcGVycGVuZGljdWxhcmx5IHRvIHRoZSBmbGV4IGF4aXNcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOlxuICAgICAgICAgICAgICAgICgnLml0ZW1zLScsIChcbiAgICAgICAgICAgICAgICAgICAgc3RyZXRjaDogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICAgICAgc3RhcnQ6IGZsZXgtc3RhcnQsXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICAgICAgICAgICAgICBlbmQ6IGZsZXgtZW5kLFxuICAgICAgICAgICAgICAgICAgICBiYXNlbGluZTogYmFzZWxpbmUsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gQWxpZ25tZW50IG9mIGZsZXggY29udGVudCBsaW5lcyBpbiB0aGUgYXZhaWxhYmxlIGFyZWFcbiAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6XG4gICAgICAgICAgICAgICAgKCcuY29udGVudC0nLCAoXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBmbGV4LXN0YXJ0LFxuICAgICAgICAgICAgICAgICAgICBjZW50ZXI6IGNlbnRlcixcbiAgICAgICAgICAgICAgICAgICAgZW5kOiBmbGV4LWVuZCxcbiAgICAgICAgICAgICAgICAgICAgYmV0d2Vlbjogc3BhY2UtYmV0d2VlbixcbiAgICAgICAgICAgICAgICAgICAgYXJvdW5kOiBzcGFjZS1hcm91bmQsXG4gICAgICAgICAgICAgICAgICAgIGV2ZW5seTogc3BhY2UtZXZlbmx5LFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIFdyYXBwaW5nXG4gICAgICAgICAgICBmbGV4LXdyYXA6XG4gICAgICAgICAgICAgICAgKCcuJywgKFxuICAgICAgICAgICAgICAgICAgICB3cmFwOiB3cmFwLFxuICAgICAgICAgICAgICAgICAgICBub3dyYXA6IG5vd3JhcCxcbiAgICAgICAgICAgICAgICAgICAgd3JhcC1yZXZlcnNlOiB3cmFwLXJldmVyc2UsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvLyBBbGlnbiBhIHNpbmdsZSBlbGVtZW50XG4gICAgICAgICAgICBhbGlnbi1zZWxmOlxuICAgICAgICAgICAgICAgICgnLnNlbGYtJywgKFxuICAgICAgICAgICAgICAgICAgICBzdHJldGNoOiBzdHJldGNoLFxuICAgICAgICAgICAgICAgICAgICBzdGFydDogZmxleC1zdGFydCxcbiAgICAgICAgICAgICAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICAgICAgICAgICAgICAgIGVuZDogZmxleC1lbmQsXG4gICAgICAgICAgICAgICAgICAgIGJhc2VsaW5lOiBiYXNlbGluZSxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBGbGV4IGdyb3cgYW5kIHNocmlua1xuICAgICAgICAgICAgZmxleC1zaHJpbms6XG4gICAgICAgICAgICAgICAgKCcuZmxleC0nLCAoXG4gICAgICAgICAgICAgICAgICAgIHNocmluazogMSxcbiAgICAgICAgICAgICAgICAgICAgbm9zaHJpbms6IDAsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICBmbGV4LWdyb3c6XG4gICAgICAgICAgICAgICAgKCcuZmxleC0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGdyb3c6IDEsXG4gICAgICAgICAgICAgICAgICAgIG5vZ3JvdzogMCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBGbGV4IGdyb3cgc2NhbGVcbiAgICAgICAgICAgIGZsZXg6XG4gICAgICAgICAgICAgICAgKCcuZmxleC0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGF1dG86IGF1dG8sXG4gICAgICAgICAgICAgICAgICAgICcxJzogMSxcbiAgICAgICAgICAgICAgICAgICAgJzInOiAyLFxuICAgICAgICAgICAgICAgICAgICAnMyc6IDMsXG4gICAgICAgICAgICAgICAgICAgICc0JzogNCxcbiAgICAgICAgICAgICAgICAgICAgJzUnOiA1LFxuICAgICAgICAgICAgICAgICAgICAnNic6IDYsXG4gICAgICAgICAgICAgICAgICAgICc3JzogNyxcbiAgICAgICAgICAgICAgICAgICAgJzgnOiA4LFxuICAgICAgICAgICAgICAgICAgICAnOSc6IDksXG4gICAgICAgICAgICAgICAgICAgICcxMCc6IDEwLFxuICAgICAgICAgICAgICAgICAgICAnMTEnOiAxMSxcbiAgICAgICAgICAgICAgICAgICAgJzEyJzogMTIsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gRmxleCBvcmRlciBzY2FsZVxuICAgICAgICAgICAgb3JkZXI6XG4gICAgICAgICAgICAgICAgKCcub3JkZXItJywgKFxuICAgICAgICAgICAgICAgICAgICAnMSc6IDEsXG4gICAgICAgICAgICAgICAgICAgICcyJzogMixcbiAgICAgICAgICAgICAgICAgICAgJzMnOiAzLFxuICAgICAgICAgICAgICAgICAgICAnNCc6IDQsXG4gICAgICAgICAgICAgICAgICAgICc1JzogNSxcbiAgICAgICAgICAgICAgICAgICAgJzYnOiA2LFxuICAgICAgICAgICAgICAgICAgICAnNyc6IDcsXG4gICAgICAgICAgICAgICAgICAgICc4JzogOCxcbiAgICAgICAgICAgICAgICAgICAgJzknOiA5LFxuICAgICAgICAgICAgICAgICAgICAnMTAnOiAxMCxcbiAgICAgICAgICAgICAgICAgICAgJzExJzogMTEsXG4gICAgICAgICAgICAgICAgICAgICcxMic6IDEyLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcbn1cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDU1MgR1JJRFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGlmICRtZW5kZWxlZXYtcmVnaXN0ZXJpbmctdXRpbGl0aWVzIHtcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBSRUdVTEFSIENTUyBHUklEXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgJGRvOiBtZW5kZWxlZXYtbW9kdWxlKFxuICAgICAgICAgICAgJ2dyaWQnLCAoXG4gICAgICAgICAgICAvLyBCYXNpYyBkZWZpbml0aW9uc1xuICAgICAgICAgICAgJy5ncmlkLWRlbnNlJzogKFxuICAgICAgICAgICAgICAgIGdyaWQtYXV0by1mbG93OiBkZW5zZVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIC8vIFRlbXBsYXRlc1xuICAgICAgICAgICAgJy5ncmlkLSc6IHNjYWxlLW9mKFxuICAgICAgICAgICAgICAgICRzY2FsZTogJG1lbmRlbGVldi1ncmlkLXNjYWxlLFxuICAgICAgICAgICAgICAgICRjc3M6IChcbiAgICAgICAgICAgICAgICAgICAgJy0tZ3JpZEdhcCc6IDAsXG4gICAgICAgICAgICAgICAgICAgICctLWdyaWRTaXplJzogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZCxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICRpbnRlcnBvbGF0ZTogKFxuICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICdyZXBlYXQoJDEsIDFmciknLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICAvLyBSb3cgdGVtcGxhdGVzXG4gICAgICAgICAgICAnLnJvd3MtJzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LWdyaWQtc2NhbGUsXG4gICAgICAgICAgICAgICAgJGNzczogKFxuICAgICAgICAgICAgICAgICAgICAnLS1ncmlkR2FwJzogMCxcbiAgICAgICAgICAgICAgICAgICAgJy0tZ3JpZFNpemUnOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgJGludGVycG9sYXRlOiAoXG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogJ3JlcGVhdCgkMSwgMWZyKScsXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBHYXAgYmV0d2VlbiBjZWxsc1xuICAgICAgICAgICAgJy5nYXAtJzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LWdyaWQtZ2FwLXNjYWxlLFxuICAgICAgICAgICAgICAgICRjc3M6IChcbiAgICAgICAgICAgICAgICAgICAgJy0tZ3JpZEdhcCc6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICdncmlkLWdhcCc6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICdnYXAnOiBudWxsLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgICAgKSk7XG5cbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICdncmlkJywgKFxuICAgICAgICAgICAgZGlzcGxheTpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIGdyaWQ6IGdyaWQsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICBncmlkLWF1dG8tZmxvdzpcbiAgICAgICAgICAgICAgICAoJy5ncmlkLScsIChcbiAgICAgICAgICAgICAgICAgICAgZGVuc2U6IGRlbnNlLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIEdsb2JhbCBjZWxsIHBsYWNlbWVudFxuICAgICAgICAgICAgcGxhY2UtaXRlbXM6XG4gICAgICAgICAgICAgICAgKCcucGxhY2UtJywgKFxuICAgICAgICAgICAgICAgICAgICBjZW50ZXI6IGNlbnRlcixcbiAgICAgICAgICAgICAgICAgICAgc3RyZXRjaDogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIGp1c3RpZnktaXRlbXM6XG4gICAgICAgICAgICAgICAgKCcucGxhY2UtJywgKFxuICAgICAgICAgICAgICAgICAgICByaWdodDogcmlnaHQsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGxlZnQsXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBzdGFydCxcbiAgICAgICAgICAgICAgICAgICAgZW5kOiBlbmQsXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlci14OiBjZW50ZXIsXG4gICAgICAgICAgICAgICAgICAgIHN0cmV0Y2gteDogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOlxuICAgICAgICAgICAgICAgICgnLnBsYWNlLScsIChcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBzdGFydCxcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiBlbmQsXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlci15OiBjZW50ZXIsXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICAgICAgICAgICAgICBzdHJldGNoLXk6IHN0cmV0Y2gsXG4gICAgICAgICAgICAgICAgICAgIHN0cmV0Y2g6IHN0cmV0Y2hcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBHcmlkIGFsaWdubWVudCBvbiBpdHMgY29udGFpbmVyXG4gICAgICAgICAgICBwbGFjZS1jb250ZW50OlxuICAgICAgICAgICAgICAgICgnLmdyaWQtJywgKFxuICAgICAgICAgICAgICAgICAgICBjZW50ZXI6IGNlbnRlcixcbiAgICAgICAgICAgICAgICAgICAgc3RyZXRjaDogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICAgICAgYXJvdW5kOiBzcGFjZS1hcm91bmQsXG4gICAgICAgICAgICAgICAgICAgIGJldHdlZW46IHNwYWNlLWJldHdlZW4sXG4gICAgICAgICAgICAgICAgICAgIGV2ZW5seTogc3BhY2UtZXZlbmx5LFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OlxuICAgICAgICAgICAgICAgICgnLmdyaWQtJywgKFxuICAgICAgICAgICAgICAgICAgICByaWdodDogcmlnaHQsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGxlZnQsXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBzdGFydCxcbiAgICAgICAgICAgICAgICAgICAgZW5kOiBlbmQsXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlci14OiBjZW50ZXIsXG4gICAgICAgICAgICAgICAgICAgIHN0cmV0Y2gteDogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICAgICAgYXJvdW5kLXg6IHNwYWNlLWFyb3VuZCxcbiAgICAgICAgICAgICAgICAgICAgYmV0d2Vlbi14OiBzcGFjZS1iZXR3ZWVuLFxuICAgICAgICAgICAgICAgICAgICBldmVubHkteDogc3BhY2UtZXZlbmx5LFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgYWxpZ24tY29udGVudDpcbiAgICAgICAgICAgICAgICAoJy5ncmlkLScsIChcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBzdGFydCxcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiBlbmQsXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlci15OiBjZW50ZXIsXG4gICAgICAgICAgICAgICAgICAgIHN0cmV0Y2gteTogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICAgICAgYXJvdW5kLXk6IHNwYWNlLWFyb3VuZCxcbiAgICAgICAgICAgICAgICAgICAgYmV0d2Vlbi15OiBzcGFjZS1iZXR3ZWVuLFxuICAgICAgICAgICAgICAgICAgICBldmVubHkteTogc3BhY2UtZXZlbmx5LFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIEluZGl2aWR1YWwgY2VsbCBhbGlnbm1lbnRcbiAgICAgICAgICAgIHBsYWNlLXNlbGY6XG4gICAgICAgICAgICAgICAgKCcuY2VsbC0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICAgICAgICAgICAgICBzdHJldGNoOiBzdHJldGNoLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAganVzdGlmeS1zZWxmOlxuICAgICAgICAgICAgICAgICgnLmNlbGwtJywgKFxuICAgICAgICAgICAgICAgICAgICByaWdodDogcmlnaHQsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGxlZnQsXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBzdGFydCxcbiAgICAgICAgICAgICAgICAgICAgZW5kOiBlbmQsXG4gICAgICAgICAgICAgICAgICAgIGNlbnRlci14OiBjZW50ZXIsXG4gICAgICAgICAgICAgICAgICAgIHN0cmV0Y2gteDogc3RyZXRjaCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIGFsaWduLXNlbGY6XG4gICAgICAgICAgICAgICAgKCcuY2VsbC0nLCAoXG4gICAgICAgICAgICAgICAgICAgIHRvcDogc3RhcnQsXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogZW5kLFxuICAgICAgICAgICAgICAgICAgICBjZW50ZXIteTogY2VudGVyLFxuICAgICAgICAgICAgICAgICAgICBzdHJldGNoLXk6IHN0cmV0Y2gsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gSW5kaXZpZHVhbCBjZWxsIHBvc2l0aW9uaW5nIGFuZCBzcGFuXG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDpcbiAgICAgICAgICAgICAgICAoJy5hdC1jb2wtJywgJG1lbmRlbGVldi1ncmlkLXNjYWxlKSxcbiAgICAgICAgICAgIGdyaWQtcm93LXN0YXJ0OlxuICAgICAgICAgICAgICAgICgnLmF0LXJvdy0nLCAkbWVuZGVsZWV2LWdyaWQtc2NhbGUpLFxuICAgICAgICAgICAgZ3JpZC1jb2x1bW46XG4gICAgICAgICAgICAgICAgKCcuY29sLXNwYW4nLCAkbWVuZGVsZWV2LWdyaWQtc3Bhbi1kYXRhKSxcbiAgICAgICAgICAgIGdyaWQtcm93OlxuICAgICAgICAgICAgICAgICgnLnJvdy1zcGFuJywgJG1lbmRlbGVldi1ncmlkLXNwYW4tZGF0YSksXG4gICAgICAgICkpO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBIQVJEIEdSSURcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgJGNvbDogKCk7XG4gICAgJHJvdzogKCk7XG4gICAgQGVhY2ggJGssICRuIGluICRtZW5kZWxlZXYtZ3JpZC1zY2FsZSB7XG4gICAgICAgICRjb2w6IG1hcC1tZXJnZSgkY29sLCAoJyYjeyRrfSc6IChcbiAgICAgICAgICAgICctLWdyaWQtZ2FwJzogMCxcbiAgICAgICAgICAgICctLWdyaWQtc2l6ZSc6ICRuLFxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZCxcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdW5xdW90ZSgncmVwZWF0KCN7JG59LCBjYWxjKCN7MTAwJSAvICRufSAtICN7KCRuIC0gMSkgLyAkbn0gKiB2YXIoLS1ncmlkLWdhcCkpKScpLFxuICAgICAgICApKSk7XG5cbiAgICAgICAgJHJvdzogbWFwLW1lcmdlKCRyb3csICgnJiN7JGt9JzogKFxuICAgICAgICAgICAgJy0tZ3JpZC1nYXAnOiAwLFxuICAgICAgICAgICAgJy0tZ3JpZC1zaXplJzogJG4sXG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkLFxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiB1bnF1b3RlKCdyZXBlYXQoI3skbn0sIGNhbGMoI3sxMDAlIC8gJG59IC0gI3soJG4gLSAxKSAvICRufSAqIHZhcigtLWdyaWQtZ2FwKSkpJyksXG4gICAgICAgICkpKTtcbiAgICB9XG5cbiAgICAkZG86IG1lbmRlbGVldi1tb2R1bGUoXG4gICAgICAgICAgICAnaGFyZC1ncmlkJywgKFxuICAgICAgICAgICAgLy8gQmFzaWMgZGVmaW5pdGlvbnNcbiAgICAgICAgICAgICcuaGFyZC1ncmlkJzogKFxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQsXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgLy8gVGVtcGxhdGVzXG4gICAgICAgICAgICAnLmhhcmQtZ3JpZC0nOiAkY29sLFxuICAgICAgICAgICAgJy5oYXJkLXJvd3MtJzogJHJvdyxcbiAgICAgICAgKSk7XG59XG4iLAoJCSIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVFJBTlNGT1JNQVRJT05TXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaWYgJG1lbmRlbGVldi1yZWdpc3RlcmluZy11dGlsaXRpZXMge1xuICAgICRkbzogbWVuZGVsZWV2LW1vZHVsZShcbiAgICAgICAgICAgICd0cmFuc2Zvcm0nLCAoXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gR3JvdyBhbmQgc2hyaW5rXG4gICAgICAgICAgICAnLmdyb3ctJzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LWdyb3ctc2NhbGUsXG4gICAgICAgICAgICAgICAgJGludGVycG9sYXRlOiAoXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogJ3NjYWxlKCQxLCAkMSknLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgJy5zaHJpbmstJzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LXNocmluay1zY2FsZSxcbiAgICAgICAgICAgICAgICAkaW50ZXJwb2xhdGU6IChcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGUoJDEsICQxKScsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gUm90YXRpb25zXG4gICAgICAgICAgICAnLnJvdGF0ZS0nOiBzY2FsZS1vZihcbiAgICAgICAgICAgICAgICAkc2NhbGU6ICgzMDogMzAsIDQ1OiA0NSwgNjA6IDYwLCA5MDogOTApLFxuICAgICAgICAgICAgICAgICRpbnRlcnBvbGF0ZTogKFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICdyb3RhdGUoJDFkZWcpJyxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgICcucm90YXRlLW4nOiBzY2FsZS1vZihcbiAgICAgICAgICAgICAgICAkc2NhbGU6ICgzMDogMzAsIDQ1OiA0NSwgNjA6IDYwLCA5MDogOTApLFxuICAgICAgICAgICAgICAgICRpbnRlcnBvbGF0ZTogKFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICdyb3RhdGUoLSQxZGVnKScsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAnLnJvdGF0ZS0xODAnOiAoXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB1bnF1b3RlKCdyb3RhdGUoMTgwZGVnKScpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBHcmV5IHNjYWxlXG4gICAgICAgICAgICAnLmdyYXlzY2FsZS0nOiBzY2FsZS1vZihcbiAgICAgICAgICAgICAgICAkc2NhbGU6ICRtZW5kZWxlZXYtdHJhbnNmb3JtLXNjYWxlLFxuICAgICAgICAgICAgICAgICRpbnRlcnBvbGF0ZTogKFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6ICdncmF5c2NhbGUoJDEpJyxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBTZXBpYVxuICAgICAgICAgICAgJy5zZXBpYS0nOiBzY2FsZS1vZihcbiAgICAgICAgICAgICAgICAkc2NhbGU6ICRtZW5kZWxlZXYtdHJhbnNmb3JtLXNjYWxlLFxuICAgICAgICAgICAgICAgICRpbnRlcnBvbGF0ZTogKFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6ICdzZXBpYSgkMSknLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIEludmVydFxuICAgICAgICAgICAgJy5pbnZlcnQtJzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LXRyYW5zZm9ybS1zY2FsZSxcbiAgICAgICAgICAgICAgICAkaW50ZXJwb2xhdGU6IChcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiAnaW52ZXJ0KCQxKScsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gQ29udHJhc3RcbiAgICAgICAgICAgICcuY29udHJhc3QtJzogc2NhbGUtb2YoXG4gICAgICAgICAgICAgICAgJHNjYWxlOiAkbWVuZGVsZWV2LXRyYW5zZm9ybS1kb3VibGUtc2NhbGUsXG4gICAgICAgICAgICAgICAgJGludGVycG9sYXRlOiAoXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcjogJ2NvbnRyYXN0KCQxKScsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gQnJpZ2h0bmVzc1xuICAgICAgICAgICAgJy5icmlnaHRuZXNzLSc6IHNjYWxlLW9mKFxuICAgICAgICAgICAgICAgICRzY2FsZTogJG1lbmRlbGVldi10cmFuc2Zvcm0tZG91YmxlLXNjYWxlLFxuICAgICAgICAgICAgICAgICRpbnRlcnBvbGF0ZTogKFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6ICdicmlnaHRuZXNzKCQxKScsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gU2F0dXJhdGlvblxuICAgICAgICAgICAgJy5zYXR1cmF0aW9uLSc6IHNjYWxlLW9mKFxuICAgICAgICAgICAgICAgICRzY2FsZTogJG1lbmRlbGVldi10cmFuc2Zvcm0tZG91YmxlLXNjYWxlLFxuICAgICAgICAgICAgICAgICRpbnRlcnBvbGF0ZTogKFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6ICdzYXR1cmF0ZSgkMSknLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcblxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ3RyYW5zZm9ybScsIChcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBPcmlnaW4gbG9jYXRpb25cbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46XG4gICAgICAgICAgICAgICAgKCcudHJhbnNmb3JtLScsIChcbiAgICAgICAgICAgICAgICAgICAgY2VudGVyOiBjZW50ZXIgY2VudGVyIDAsXG4gICAgICAgICAgICAgICAgICAgIHRvcDogY2VudGVyIHRvcCAwLFxuICAgICAgICAgICAgICAgICAgICBib3R0b206IGNlbnRlciBib3R0b20gMCxcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogbGVmdCBjZW50ZXIgMCxcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHJpZ2h0IGNlbnRlciAwLFxuICAgICAgICAgICAgICAgICAgICBuZTogcmlnaHQgdG9wIDAsXG4gICAgICAgICAgICAgICAgICAgIG53OiBsZWZ0IHRvcCAwLFxuICAgICAgICAgICAgICAgICAgICBzZTogcmlnaHQgYm90dG9tIDAsXG4gICAgICAgICAgICAgICAgICAgIHN3OiBsZWZ0IGJvdHRvbSAwLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcbn1cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDT05UUk9MIFZJU0lCSUxJVFksIE9QQUNJVFkgQU5EIFotVkFMVUVTXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaWYgJG1lbmRlbGVldi1yZWdpc3RlcmluZy11dGlsaXRpZXMge1xuICAgIC8vIC52aXNpYmxlIGFuZCAuaGlkZGVuIHV0aWxpdHkgY2xhc3Nlc1xuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ3Zpc2liaWxpdHknLCAoXG4gICAgICAgICAgICB2aXNpYmlsaXR5OlxuICAgICAgICAgICAgICAgICgnLicsIChcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJsZTogdmlzaWJsZSxcbiAgICAgICAgICAgICAgICAgICAgaW52aXNpYmxlOiBoaWRkZW4sXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICBvcGFjaXR5OlxuICAgICAgICAgICAgICAgICgnLm9wYWNpdHktJywgKFxuICAgICAgICAgICAgICAgICAgICAnMCc6IDAuMDAsXG4gICAgICAgICAgICAgICAgICAgICcxJzogMC4wNSxcbiAgICAgICAgICAgICAgICAgICAgJzInOiAwLjEwLFxuICAgICAgICAgICAgICAgICAgICAnMyc6IDAuMjUsXG4gICAgICAgICAgICAgICAgICAgICc0JzogMC41MCxcbiAgICAgICAgICAgICAgICAgICAgJzUnOiAwLjc1LFxuICAgICAgICAgICAgICAgICAgICAnNic6IDAuOTAsXG4gICAgICAgICAgICAgICAgICAgICc3JzogMC45NSxcbiAgICAgICAgICAgICAgICAgICAgZnVsbDogMS4wMCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIHotaW5kZXg6XG4gICAgICAgICAgICAgICAgKCcuei0nLCAoXG4gICAgICAgICAgICAgICAgICAgICcwJzogMCxcbiAgICAgICAgICAgICAgICAgICAgJzEnOiAxMDAsXG4gICAgICAgICAgICAgICAgICAgICcyJzogMjAwLFxuICAgICAgICAgICAgICAgICAgICAnMyc6IDMwMCxcbiAgICAgICAgICAgICAgICAgICAgJzQnOiA0MDAsXG4gICAgICAgICAgICAgICAgICAgICc1JzogNTAwLFxuICAgICAgICAgICAgICAgICAgICAnNic6IDYwMCxcbiAgICAgICAgICAgICAgICAgICAgJzcnOiA3MDAsXG4gICAgICAgICAgICAgICAgICAgICc4JzogODAwLFxuICAgICAgICAgICAgICAgICAgICAnOSc6IDkwMCxcbiAgICAgICAgICAgICAgICAgICAgJzEwJzogMTAwMCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgKSk7XG5cbiAgICAvLyBWaXNpYmlsaXR5XG4gICAgJGRvOiBtZW5kZWxlZXYtbW9kdWxlKFxuICAgICAgICAgICAgJ3Zpc2liaWxpdHknLCAoXG4gICAgICAgICAgICAnLmhpZGRlbic6IChcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICdbaGlkZGVuXSc6IChcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICcuY2xlYXJmaXg6YWZ0ZXInOiAoXG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGgsXG4gICAgICAgICAgICAgICAgY29udGVudDogXCIgXCIsXG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUsXG4gICAgICAgICAgICApLFxuICAgICAgICApKTtcbn1cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNSVNDOiBDb25jZW50cmF0ZSBzaW1wbGUgdXRpbGl0eSBkZWNsYXJhdGlvbnNcbi8vXG4vLyBTZWN0aW9uczpcbi8vICAqIEJhY2tncm91bmRcbi8vICAqIENvbG9yc1xuLy8gICogSW50ZXJhY3Rpdml0eVxuLy8gICogTGlzdFxuLy8gICogU2hhZG93c1xuLy9cbi8vIG9icy46IGtlZXAgYWxsIHNlY3Rpb25zIGluIGFscGhhYmV0aWMgb3JkZXIuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaWYgJG1lbmRlbGVldi1yZWdpc3RlcmluZy11dGlsaXRpZXMge1xuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBCQUNLR1JPVU5EXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgJGRvOiBtZW5kZWxlZXYtdXRpbGl0eS1tb2R1bGUoXG4gICAgICAgICAgICAnYmFja2dyb3VuZCcsIChcbiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDpcbiAgICAgICAgICAgICAgICAoJy5iZy0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGZpeGVkOiBmaXhlZCxcbiAgICAgICAgICAgICAgICAgICAgbG9jYWw6IGxvY2FsLFxuICAgICAgICAgICAgICAgICAgICBzY3JvbGw6IHNjcm9sbCxcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDpcbiAgICAgICAgICAgICAgICAoJy5iZy0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGxlZnQsXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiByaWdodCxcbiAgICAgICAgICAgICAgICAgICAgY2VudGVyLXg6IGNlbnRlcixcbiAgICAgICAgICAgICAgICApKSxcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTpcbiAgICAgICAgICAgICAgICAoJy5iZy0nLCAoXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogYm90dG9tLFxuICAgICAgICAgICAgICAgICAgICB0b3A6dG9wLFxuICAgICAgICAgICAgICAgICAgICBjZW50ZXIteTogY2VudGVyLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6XG4gICAgICAgICAgICAgICAgKCcuYmctJywgKFxuICAgICAgICAgICAgICAgICAgICByZXBlYXQ6IHJlcGVhdCxcbiAgICAgICAgICAgICAgICAgICAgbm8tcmVwZWF0OiBuby1yZXBlYXQsXG4gICAgICAgICAgICAgICAgICAgIHJlcGVhdC14OiByZXBlYXQteCxcbiAgICAgICAgICAgICAgICAgICAgcmVwZWF0LXk6IHJlcGVhdC15LFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOlxuICAgICAgICAgICAgICAgICgnLmJnLScsIChcbiAgICAgICAgICAgICAgICAgICAgYXV0bzogYXV0byxcbiAgICAgICAgICAgICAgICAgICAgY292ZXI6IGNvdmVyLFxuICAgICAgICAgICAgICAgICAgICBjb250YWluOiBjb250YWluLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gQ09MT1JTXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgJGRhdGE6ICgpO1xuICAgIEBlYWNoICRyb2xlIGluICRtZW5kZWxlZXYtY29sb3Itcm9sZXMge1xuICAgICAgICAkdmFsdWU6IG1hcC1nZXQoJG1lbmRlbGVldi1jb2xvci1wYWxldHRlLCAkcm9sZSk7XG4gICAgICAgICRkYXRhOiBtYXAtbWVyZ2UoJGRhdGEsIChcbiAgICAgICAgICAgICcuY29sb3ItI3skcm9sZX0nOiAoXG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1lbmRlbGVldi1jb2xvci1jb250cmFzdCwgJHZhbHVlKSxcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmFsdWUsXG4gICAgICAgICAgICApLFxuICAgICAgICApKTtcbiAgICB9XG5cbiAgICAkZG86IG1lbmRlbGVldi1tb2R1bGUoXG4gICAgICAgICAgICAnY29sb3JzJyxcbiAgICAgICAgICAgICRkYXRhXG4gICAgKTtcblxuICAgICRkYXRhOiAoKTtcbiAgICBAZWFjaCAkcm9sZSBpbiAkbWVuZGVsZWV2LWNvbG9yLXJvbGVzIHtcbiAgICAgICAgJHZhbHVlOiBtYXAtZ2V0KCRtZW5kZWxlZXYtY29sb3ItcGFsZXR0ZSwgJHJvbGUpO1xuICAgICAgICAkZGF0YTogbWFwLW1lcmdlKCRkYXRhLCAoJHJvbGU6ICR2YWx1ZSkpO1xuICAgIH1cblxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ2NvbG9ycycsIChcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBDcmVhdGUgYWxsIC5iZy0qIGNsYXNzZXNcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6XG4gICAgICAgICAgICAgICAgKCcuYmctJywgJGRhdGEpLFxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIENyZWF0ZSBhbGwgLnRleHQtKiBjbGFzc2VzXG4gICAgICAgICAgICBjb2xvcjpcbiAgICAgICAgICAgICAgICAoJy50ZXh0LScsICRkYXRhKSxcbiAgICAgICAgKSk7XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gSU5URVJBQ1RJVklUWVxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ2ludGVyYWN0aXZpdHknLCAoXG4gICAgICAgICAgICBjdXJzb3I6XG4gICAgICAgICAgICAgICAgKCcuY3Vyc29yLScsIChcbiAgICAgICAgICAgICAgICAgICAgYXV0bzogYXV0byxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDogZGVmYXVsdCxcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlcjogcG9pbnRlcixcbiAgICAgICAgICAgICAgICAgICAgd2FpdDogd2FpdCxcbiAgICAgICAgICAgICAgICAgICAgbW92ZTogbW92ZSxcbiAgICAgICAgICAgICAgICAgICAgbm90LWFsbG93ZWQ6IG5vdC1hbGxvd2VkLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6XG4gICAgICAgICAgICAgICAgKCcuJywgKFxuICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0byxcbiAgICAgICAgICAgICAgICAgICAgbm8tcG9pbnRlci1ldmVudHM6IG5vbmUsXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICAgICB1c2VyLXNlbGVjdDpcbiAgICAgICAgICAgICAgICAoJy4nLCAoXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdDogdGV4dCxcbiAgICAgICAgICAgICAgICAgICAgbm8tc2VsZWN0OiBub25lLFxuICAgICAgICAgICAgICAgICkpLFxuICAgICAgICApKTtcblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBMSVNUXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gUmVtb3ZlIGxpc3Qgc3R5bGVzXG4gICAgJGRvOiBtZW5kZWxlZXYtbW9kdWxlKFxuICAgICAgICAgICAgJ2xpc3QnLCAoXG4gICAgICAgICAgICAnLmxpc3QtaW5saW5lJzogKFxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAsXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwLFxuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmUsXG4gICAgICAgICAgICAgICAgJz4gbGknOiAoXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICcubGlzdC1yZXNldCc6IChcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLFxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCxcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICAgJGlzLWNsYXNzOiB0cnVlXG4gICAgKTtcblxuICAgICRkbzogbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlKFxuICAgICAgICAgICAgJ2xpc3QnLCAoXG4gICAgICAgICAgICBsaXN0LXN0eWxlOlxuICAgICAgICAgICAgICAgICgnLmxpc3QtJywgKFxuICAgICAgICAgICAgICAgICAgICBkZWNpbWFsOiBkZWNpbWFsLFxuICAgICAgICAgICAgICAgICAgICBjaXJjbHV6ZTogY2lyY2x1emUsXG4gICAgICAgICAgICAgICAgICAgIGRpc2M6IGRpc2MsXG4gICAgICAgICAgICAgICAgICAgIHNxdWFyZTogc3F1YXJlLFxuICAgICAgICAgICAgICAgICAgICByb21hbjogcm9tYW4sXG4gICAgICAgICAgICAgICAgKSksXG4gICAgICAgICkpO1xuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFNIQURPV1NcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAkZG86IG1lbmRlbGVldi11dGlsaXR5LW1vZHVsZShcbiAgICAgICAgICAgICdzaGFkb3cnLCAoXG4gICAgICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgICAgICAgICgnLnNoYWRvdy0nLCAoXG4gICAgICAgICAgICAgICAgICAgICcxJzogdW5xdW90ZSgnMCAwIDRweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSksIDAgMnB4IDhweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSknKSxcbiAgICAgICAgICAgICAgICAgICAgJzInOiB1bnF1b3RlKCcwIDRweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpJyksXG4gICAgICAgICAgICAgICAgICAgICczJzogdW5xdW90ZSgnMCA4cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xMSksIDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCknKSxcbiAgICAgICAgICAgICAgICAgICAgJzQnOiB1bnF1b3RlKCcwIDE1cHggMzBweCAwIHJnYmEoMCwgMCwgMCwgMC4xMSksIDAgNXB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpJyksXG4gICAgICAgICAgICAgICAgKSlcbiAgICAgICAgKSk7XG5cbiAgICAkZG86IG1lbmRlbGVldi1tb2R1bGUoXG4gICAgICAgICAgICAnc2hhZG93JywgKFxuICAgICAgICAgICAgJy5pbm5lci1zaGFkb3cnOiAoXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdW5xdW90ZSgnaW5zZXQgMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KScpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICcubm8tc2hhZG93JzogKFxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUsXG4gICAgICAgICAgICApXG4gICAgICAgICkpO1xufVxuIiwKCQkiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vLyBJTlRFUlBPTEFURSBVVElMSVRZIENMQVNTRVNcbi8vLyBAZ3JvdXAgVXRpbGl0aWVzXG4vLy8gQGF1dGhvciBGw6FiaW8gTWFjw6pkbyBNZW5kZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiRtZW5kZWxlZXYtY2xhc3Nlcy1jYWNoZTogJGZuLWVtcHR5LW1hcCAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIGNzcy1mcm9tLXV0aWxpdGllcygkYXJncy4uLikge1xuICAgICRyZXM6ICRmbi1lbXB0eS1tYXA7XG4gICAgJGNsYXNzZXM6IGxzdC1tYXAocmFkZCwgbHN0LWZyb20tYXJyYXkoJGFyZ3MpLCAnLicpO1xuICAgIEB3aGlsZSAkY2xhc3NlcyB7XG4gICAgICAgICRjbHM6IG50aCgkY2xhc3NlcywgMSk7XG4gICAgICAgICRjc3M6IG1hcC1nZXQoJG1lbmRlbGVldi1jbGFzc2VzLWNhY2hlLCAkY2xzKTtcbiAgICAgICAgJGNsYXNzZXM6IG50aCgkY2xhc3NlcywgMik7XG4gICAgICAgIEBpZiAkY3NzIHtcbiAgICAgICAgICAgICRyZXM6IG1hcC1tZXJnZSgkcmVzLCAkY3NzKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAZXJyb3IgJ1V0aWxpdHkgbm90IGZvdW5kOiAjeyRjbHN9JztcbiAgICAgICAgfVxuICAgIH1cbiAgICBAcmV0dXJuICRyZXM7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNSVhJTlNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBJbmNsdWRlcyBkZWZpbml0aW9ucyBmcm9tIHRoZSBsaXN0ZWQgdXRpbGl0eSBjbGFzc2VzIGluIGFyZ3VtZW50XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAgIC5mb28ge1xuLy8vICAgICAgICAgQGluY2x1ZGUgdXRpbGl0aWVzKCdjb2xvci1icmFuZCBtYXJnaW4tMiBwYWQtNCcpO1xuLy8vICAgICB9XG5AbWl4aW4gdXRpbGl0aWVzKCRhcmdzLi4uKSB7XG4gICAgJGFyZ3M6IGlmKGxlbmd0aCgkYXJncykgPT0gMSwgbnRoKCRhcmdzLCAxKSwgJGFyZ3MpO1xuICAgIEBpZiBsZW5ndGgoJGFyZ3MpID09IDEgYW5kIHR5cGUtb2YoJGFyZ3MpID09IHN0cmluZyB7XG4gICAgICAgICRhcmdzOiBsc3QtdG8tYXJyYXkoc3RyLXNwbGl0KCRhcmdzLCAnICcpKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgZnJvbS1tYXAoY3NzLWZyb20tdXRpbGl0aWVzKCRhcmdzLi4uKSk7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHTE9CQUwgY29uZmlndXJhdGlvbnNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpZiBub3QgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cyhNRU5ERUxFRVZfVVRJTElUSUVTX0NBQ0hFKSB7XG4gICAgJGF1eDogbHN0LXNlcGFyYXRlKGtleXMtZXF1YWwsIGxzdC1zdGl0Y2goJG1lbmRlbGVldi1jc3MtY2xhc3NlcywgJG1lbmRlbGVldi1jc3MpLCAodHlwZTogbXVsdGlwbGUpKTtcbiAgICAkY3NzLW11bHRpcGxlOiBudGgoJGF1eCwgMSk7XG4gICAgJGNzcy1zaW1wbGU6IG50aCgkYXV4LCAyKTtcblxuICAgIC8vIEZsYXR0ZW4gYWxsIGRlY2xhcmF0aW9ucyBtYWRlIHdpdGggbWVuZGVsZWV2LXV0aWxpdHktbW9kdWxlICh0eXBlPT1tdWx0aXBsZSlcbiAgICAvLyBpbnRvIGEgc2luZ2xlIGRpY3Rpb25hcnkuXG4gICAgJGNhY2hlOiBsc3QtZmxhdHRlbi1tYXAobHN0LW1hcChtYXAtZ2V0LCAkY3NzLW11bHRpcGxlLCBkYXRhKSk7XG5cbiAgICAvLyBFeHRyYWN0IGRlY2xhcmF0aW9ucyB0aGF0IHVzZXMgbWVuZGVsZWV2LXV0aWxpdHkuIChUT0RPKVxuICAgIC8vIFRob3NlIGRlY2xhcmF0aW9ucyBjYW4gYmUgdHJpY2tpZXIgc2luY2UgaXQgbWlnaHQgaW5jbHVkZSBuZXN0ZWQgbWFwcGluZ3NcbiAgICAvLyBhbmQgb3RoZXIgY29tcGxpY2F0aW9ucy5cbiAgICAkZW50cmllczogbnVsbDtcbiAgICBAd2hpbGUgJGNzcy1zaW1wbGUge1xuICAgICAgICAkY3NzOiBudGgoJGNzcy1zaW1wbGUsIDEpO1xuICAgICAgICAkY3NzLXNpbXBsZTogbnRoKCRjc3Mtc2ltcGxlLCAyKTtcblxuICAgICAgICAkbmFtZTogbWFwLWdldCgkY3NzLCBuYW1lKTtcbiAgICAgICAgJGRhdGE6IG1hcC1nZXQoJGNzcywgZGF0YSk7XG5cbiAgICAgICAgQGlmIG5vdCBtYXAtc29tZS1rZXlzKHN0ci1pbmRleCwgJGRhdGEsICcmJykge1xuICAgICAgICAgICAgJGVudHJpZXM6ICgoJG5hbWU6ICRkYXRhKSAkZW50cmllcyk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJGZsYXQtY3NzOiBudWxsO1xuICAgICAgICAgICAgJGNvbW1vbjogJGZuLWVtcHR5LW1hcDtcbiAgICAgICAgICAgIEBlYWNoICRrLCAkdiBpbiAkZGF0YSB7XG4gICAgICAgICAgICAgICAgQGlmIHN0ci1pbmRleCgkaywgJyYnKSB7XG4gICAgICAgICAgICAgICAgICAgICRzZWxlY3Rvcjogc2VsZWN0b3ItbmVzdCgkbmFtZSwgJGspO1xuICAgICAgICAgICAgICAgICAgICAkc2VsZWN0b3I6IGlmKGxlbmd0aCgkc2VsZWN0b3IpID09IDEsIGluc3BlY3QoJHNlbGVjdG9yKSwgJHNlbGVjdG9yKTtcbiAgICAgICAgICAgICAgICAgICAgJGZsYXQtY3NzOiAoKCRzZWxlY3RvcjogJHYpICRmbGF0LWNzcyk7XG4gICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICRjb21tb246IG1hcC1tZXJnZSgkY29tbW9uLCAoJGs6ICR2KSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIGxlbmd0aCgkY29tbW9uKSAhPSAwIHtcbiAgICAgICAgICAgICAgICAkZmxhdC1jc3M6IGxzdC1ybWFwKG1hcC1tZXJnZSwgJGZsYXQtY3NzLCAkY29tbW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRmbGF0LWNzczogbHN0LWZsYXR0ZW4tbWFwKCRmbGF0LWNzcyk7XG4gICAgICAgICAgICAkZW50cmllczogKCRmbGF0LWNzcyAkZW50cmllcyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJGNhY2hlLWZyb20tbW9kdWxlczogbHN0LWZsYXR0ZW4tbWFwKCRlbnRyaWVzKTtcblxuICAgIC8vIENvbnNvbGlkYXRlIGFsbCBkZWNsYXJhdGlvbnNcbiAgICAkY2FjaGU6IG1hcC1tZXJnZSgkY2FjaGUsICRjYWNoZS1mcm9tLW1vZHVsZXMpO1xuICAgICRtZW5kZWxlZXYtY2xhc3Nlcy1jYWNoZTogbWFwLW1lcmdlKCRtZW5kZWxlZXYtY2xhc3Nlcy1jYWNoZSwgJGNhY2hlKSAhZ2xvYmFsO1xufVxuXG4kTUVOREVMRUVWX1VUSUxJVElFU19DQUNIRTogdHJ1ZTtcblxuIiwKCQkiQGlmIG5vdCB2YXJpYWJsZS1leGlzdHMobWVuZGVsZWV2LXByZWx1ZGUtbG9hZGVkKSB7XG4gICAgQGVycm9yICdDYW5ub3QgbG9hZCBlbGVtZW50cyB3aXRob3V0IGltcG9ydGluZyBwcmVsdWRlIGZpcnN0Lic7XG59XG5cbi8vIEZpcnN0IGxheWVyIHRoYXQgZW1pdHMgQ1NTLlxuLy8gTG9hZCBkZWZhdWx0IHN0eWxlcyBmb3IgZWxlbWVudHMgYW5kIHJlc2V0cyBiYXNlZCBvbiBub3JtYWxpemUuY3NzLlxuQGltcG9ydCAnZWxlbWVudHMvYmFzZSc7XG5AaW1wb3J0ICdlbGVtZW50cy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2VsZW1lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdlbGVtZW50cy9mb3JtJztcbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNQUlOIFJFU0VUUyBBTkQgQ09ORklHVVJBVElPTlNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFNldCByb290IHZhcmlhYmxlc1xuJG1lbmRlbGVldi1yb290LWRlZmF1bHRzOiAoXG4gICAgLy9cbiAgICAvLyBUeXBvZ3JhcGh5XG4gICAgbGVhZDogY29uZmlnKCd0eXBvZ3JhcGh5LmxlYWQnKSxcbiAgICAvL1xuICAgIC8vIFNpemluZ1xuICAgIHVuaXQ6IGNhbGModmFyKC0tbGVhZCkgKiAxcmVtKSxcbiAgICByZW1QeDogY29uZmlnKCd0eXBvZ3JhcGh5LnNpemUuc3RhcnQnKSAqIDFweCxcbiAgICBib3hTaXppbmc6IGJvcmRlci1ib3gsXG4pICFkZWZhdWx0O1xuXG5AaWYgbm90IGdsb2JhbC12YXJpYWJsZS1leGlzdHMoTUVOREVMRUVWLUVMRU1FTlRTLUJBU0UpIHtcbiAgICA6cm9vdCB7XG4gICAgICAgIEBlYWNoICRrLCAkdiBpbiBtYXAtbWVyZ2UoJG1lbmRlbGVldi1yb290LWRlZmF1bHRzLCBjb25maWcoJ3Jvb3QnLCAoKSkpIHtcbiAgICAgICAgICAgIC0tI3ska306ICN7JHZ9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgICAkX2FuaW1hdGlvbjogY29uZmlnKCdhbmltYXRpb24uZHVyYXRpb24nKSBjb25maWcoJ2FuaW1hdGlvbi50aW1pbmctZnVuY3Rpb24nKTtcbiAgICAqLCAqOmFmdGVyLCAqOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHZhci1mYWxsYmFjaygoXG4gICAgICAgICAgICBib3gtc2l6aW5nOiAoYm9yZGVyLWJveCBib3hTaXppbmcpXG4gICAgICAgICkpO1xuICAgICAgICBAaWYgY29uZmlnKCdhbmltYXRpb24uZHVyYXRpb24nKSA+IDAge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogKFxuICAgICAgICAgICAgICAgIGFsbCAkX2FuaW1hdGlvbixcbiAgICAgICAgICAgICAgICBmb250LXNpemUgMHMsIC8vIG1ha2VzIGFuaW1hdGlvbiB2ZXJ5IHNsdWdnaXNoIGR1ZSB0byBtYW55IGxheW91dCByZS1jYWxjdWxhdGlvbnNcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG5cbiAgICAvLyBVdGlsaXR5IHRvIHJlbW92ZSBnbG9iYWwgcmVzZXQgb2YgYm94LXNpemluZ1xuICAgIC5yZXNldC1ib3gtc2l6aW5nIHtcbiAgICAgICAgLS1ib3hTaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIH1cblxuICAgIC8vIDEuIERlZmluZSBnbG9iYWwgZm9udCBzaXplIGFuZCBiYXNlIFJFTVxuICAgIC8vIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAvLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAgICBodG1sIHtcbiAgICAgICAgLy9mb250LXNpemU6IGdldC1iYXNlLXNpemUoKSAvIDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjb25maWcoJ3R5cG9ncmFwaHkubGVhZCcpO1xuICAgICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgIGJvZHkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAje2NvbmZpZygndHlwb2dyYXBoeS50eXBlZmFjZScpIG9yIGNvbmZpZygndHlwb2dyYXBoeS5zYW5zLXNlcmlmJyl9O1xuICAgICAgICBAaW5jbHVkZSBjb25maWcoJ3R5cG9ncmFwaHkuYm9keScpO1xuICAgIH1cblxuICAgIC8vIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICAgIG1haW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIERlZmF1bHQgc3BhY2luZ3NcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgZGQsIGR0LCBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNpemUtc2NhbGUoMik7XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSxcbiAgICBkbCxcbiAgICBmaWd1cmUsXG4gICAgZm9ybSxcbiAgICBvbCxcbiAgICBwLFxuICAgIHByZSxcbiAgICB0YWJsZSxcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNpemUtc2NhbGUoNCk7XG4gICAgfVxufVxuXG4kTUVOREVMRUVWLUVMRU1FTlRTLUJBU0U6IHRydWU7XG4iLAoJCSJAaWYgbm90IGdsb2JhbC12YXJpYWJsZS1leGlzdHMoTUVOREVMRUVWLUVMRU1FTlRTLVRZUE9HUkFQSFkpIHtcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gSEVBRElOR1NcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBNZWRpYSBxdWVyaWVzIHRvIGFkanVzdCBnbG9iYWwgZm9udCBzaXplXG4gICAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gY29uZmlnKCd0eXBvZ3JhcGh5LnNpemUnKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgICA6cm9vdCB7XG4gICAgICAgICAgICAgICAgLS1yZW1QeDogI3skdmFsdWUgKiAxcHh9O1xuICAgICAgICAgICAgICAgIC0tcmVtOiAjeyR2YWx1ZX07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBodG1sIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKCR2YWx1ZSAvIDE2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEdlbmVyaWMgaGVhZGluZ3Mgc3R5bGVzIChoMSwgaDIsIGV0Yy4uLilcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCAuaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2LFxuICAgIC5oZWFkaW5nLCAlaGVhZGluZyB7XG4gICAgICAgIEBpbmNsdWRlIGNvbmZpZygndHlwb2dyYXBoeS5oZWFkaW5ncycpO1xuICAgICAgICBtYXJnaW46IDAgMCAoY29uZmlnKCd0eXBvZ3JhcGh5LmxlYWQnKSAqIDAuNXJlbSkgMDtcbiAgICB9XG5cbiAgICAvLyBUeXBlIHNjYWxlIGZvciBkaWZmZXJlbnQgcmF0aW9zIChwcm9iYWJseSB3ZSBzaG91bGQgam9pbiB3aXRoIHRoZSBwcmV2aW91cyBsb29wKVxuICAgIEBlYWNoICRicCwgJHJhdGlvIGluIGNvbmZpZygndHlwb2dyYXBoeS5zY2FsZScpIHtcbiAgICAgICAgQGlmICRicCA9PSAnc3RhcnQnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmdzLXR5cGUtc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAkYnA6IGNvbmZpZygnYnJlYWtwb2ludHMuI3skYnB9Jyk7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBudGgoJGJwLCAxKSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmdzLXR5cGUtc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBJTkxJTkUgU1RZTEVTXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gTm9ybWFsaXplIGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICBiLCBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgIHNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICAgIEBpbmNsdWRlIGNvbmZpZygnZWxlbWVudHMuc21hbGwnKTtcbiAgICB9XG5cbiAgICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzXG4gICAgc3ViLCBzdXAge1xuICAgICAgICBmb250LXNpemU6IDc1JTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIH1cblxuICAgIHN1YiB7XG4gICAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICAgICAgQGluY2x1ZGUgY29uZmlnKCdlbGVtZW50cy5zdWInKTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgICB0b3A6IC0wLjVlbTtcbiAgICAgICAgQGluY2x1ZGUgY29uZmlnKCdlbGVtZW50cy5zdXAnKTtcbiAgICB9XG5cbiAgICAvLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICAgIC8vIDItMy4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgICB9XG5cbiAgICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICBjb2RlLCBrYmQsIHNhbXAge1xuICAgICAgICBmb250LWZhbWlseTogY29uZmlnKCd0eXBvZ3JhcGh5Lm1vbm9zcGFjZScpO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICB9XG5cbiAgICAvL2NvZGUge1xuICAgIC8vICAgIEBpbmNsdWRlIGV4dGVuZC1mcm9tKCRjb2RlLCAoJy5jb2xvci1zdWJ0bGUnKSk7XG4gICAgLy8gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAvLyAgICBmb250LXNpemU6IDg3LjUlO1xuICAgIC8vICAgIG1hcmdpbjogMCAwLjI1cmVtO1xuICAgIC8vICAgIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcbiAgICAvL31cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBQQVJBR1JBUEggU1RZTEVTXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgcCwgLnBhcmFncmFwaCB7XG4gICAgICAgIG1hcmdpbjogMCAwIChjb25maWcoJ3R5cG9ncmFwaHkubGVhZCcpICogMXJlbSkgMDtcbiAgICB9XG5cbiAgICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICBwcmUsIC5wcmUge1xuICAgICAgICBmb250LWZhbWlseTogY29uZmlnKCd0eXBvZ3JhcGh5Lm1vbm9zcGFjZScpO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgLy9AaW5jbHVkZSBleHRlbmQtZnJvbSgkcHJlLCAoJy5jb2xvci1zdWJ0bGUnKSk7XG4gICAgICAgIC8vYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCBjb2xvcigncHJpbWFyeScpO1xuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XG5cbiAgICAgICAgJiA+IGNvZGUge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSwgLmJsb2NrcXVvdGUge1xuICAgICAgICAvL0BpbmNsdWRlIGV4dGVuZC1mcm9tKCRibG9ja3F1b3RlKTtcbiAgICAgICAgLy9AaW5jbHVkZSBtYXJnaW4obWFwLWdldCgkYmxvY2txdW90ZSwgbWFyZ2luKSk7XG4gICAgICAgIC8vQGluY2x1ZGUgcGFkZGluZyhtYXAtZ2V0KCRibG9ja3F1b3RlLCBwYWRkaW5nKSk7XG5cbiAgICAgICAgYm9yZGVyLWxlZnQ6IDAuMjVyZW0gc29saWQgY29uZmlnKCdwYWxldHRlLmJyYW5kJyk7XG5cbiAgICAgICAgKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAxLTIuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgLy8gMy4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgaHIge1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvL2hyIHtcbiAgICAvLyAgICBib3JkZXI6IDA7XG4gICAgLy8gICAgYm9yZGVyLXRvcDogLjEyNXJlbSBzb2xpZCBtYXAtZ2V0KCRociwgY29sb3IpO1xuICAgIC8vICAgIG1hcmdpbjogMi4wcmVtIDA7XG4gICAgLy9cbiAgICAvLyAgICBAZWFjaCAkbmFtZSBpbiBtYXAtZ2V0KCRociwgY29sb3Itcm9sZXMpIHtcbiAgICAvLyAgICAgICAgJi5jb2xvci0jeyRuYW1lfSB7XG4gICAgLy8gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBjb2xvcigkbmFtZSk7XG4gICAgLy8gICAgICAgIH1cbiAgICAvLyAgICB9XG4gICAgLy99XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gTElTVFNcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBkbCxcbiAgICBvbCxcbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBkbCxcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gMCAxLjVyZW0gM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9sIHtcbiAgICAgICAgbGlzdC1zdHlsZTogZGVjaW1hbCBpbnNpZGU7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBjaXJjbGUgaW5zaWRlO1xuICAgIH1cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBUQUJMRVNcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgdGFibGUge1xuICAgICAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgdGQsXG4gICAgdGgge1xuICAgICAgICBwYWRkaW5nOiBzaXplKDAuNSk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBMSU5LXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIGEge1xuICAgICAgICBjb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEudGV4dCB7XG4gICAgICAgIGNvbG9yOiBjb2xvcigncHJpbWFyeScpO1xuXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKCdwcmltYXJ5Jyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gTUlTQ1xuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIDEuIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gICAgLy8gMi4gUHJldmVudCByZXNwb25zaXZlIGltYWdlcyBmcm9tIG92ZXJmbG93aW5nIGluIHNtYWxsIHZpZXdwb3J0c1xuICAgIGltZyB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuJE1FTkRFTEVFVi1FTEVNRU5UUy1UWVBPR1JBUEhZOiB0cnVlO1xuIiwKCQkiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJVVFRPTlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGlmIG5vdCBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKE1FTkRFTEVFVi1FTEVNRU5UUy1CVVRUT05TKSB7XG5cbiAgICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRSBhbmQgaW4gRWRnZS5cbiAgICBidXR0b24sIGlucHV0IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICAgIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gICAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gICAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICB9XG5cbiAgICAuYnV0dG9uLFxuICAgIGJ1dHRvbixcbiAgICBpbnB1dFt0eXBlPSdidXR0b24nXSxcbiAgICBpbnB1dFt0eXBlPSdyZXNldCddLFxuICAgIGlucHV0W3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgICAgQGluY2x1ZGUgb3B0aW9ucyhjb25maWcoJ2J1dHRvbicpKTtcblxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogY29uZmlnKCd0eXBvZ3JhcGh5LnR5cGVmYWNlJykgb3IgY29uZmlnKCd0eXBvZ3JhcGh5LnNhbnMtc2VyaWYnKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gICAgICAgIGhlaWdodDogMi4yNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwIDAgc2l6ZSgwLjUpIDA7XG4gICAgICAgIHBhZGRpbmc6IDAgc2l6ZSgxKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAyNTBtcztcblxuICAgICAgICAmOmZvY3VzLCAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xMiksIGluc2V0IDAgMCAxNnB4IHJnYmEoMjMwLCAyMjUsIDEzMiwgMC4xKTtcbiAgICAgICAgfVxuICAgICAgICAmW2Rpc2FibGVkXSwgJi5pcy1kaXNhYmxlZCB7XG4gICAgICAgICAgICBmaWx0ZXI6IHNhdHVyYXRlKDI1JSk7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICB9XG4gICAgICAgICYuaXMtc21hbGwge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHNpemUoMSk7XG4gICAgICAgICAgICBoZWlnaHQ6IHNpemUoMSk7XG4gICAgICAgICAgICAvL21hcmdpbjogMCAwIHNpemUoMC41KSAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCBzaXplKDAuMjUpO1xuICAgICAgICB9XG4gICAgICAgICYuaXMtcHJpbWFyeSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjb2xvcigncHJpbWFyeScsICRib3JkZXI6IHRydWUpO1xuICAgICAgICB9XG4gICAgICAgICYuaXMtc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNvbG9yKCdzZWNvbmRhcnknLCAkYm9yZGVyOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICAmLmlzLXBvc2l0aXZlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNvbG9yKCdwb3NpdGl2ZScsICRib3JkZXI6IHRydWUpO1xuICAgICAgICB9XG4gICAgICAgICYuaXMtd2FybmluZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjb2xvcignd2FybmluZycsICRib3JkZXI6IHRydWUpO1xuICAgICAgICB9XG4gICAgICAgICYuaXMtbmVnYXRpdmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgY29sb3IoJ25lZ2F0aXZlJywgJGJvcmRlcjogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgJi5pcy1jbGVhciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgICAgICBtYXJnaW46IGluaXRpYWw7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgJjpmb2N1cywgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmlzLWdob3N0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKGNvbmZpZygnYnV0dG9uLmNvbG9yJywgJGRlZmF1bHQ6IGNvbmZpZygnaW5wdXQuY29sb3InLCAkZGVmYXVsdDogJ2FjdGlvbicpKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiRNRU5ERUxFRVYtRUxFTUVOVFMtQlVUVE9OUzogdHJ1ZTtcbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGT1JNU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG1lbmRlbGVldi1sYWJlbC1tYXJnaW4tYm90dG9tOiBzaXplKDEpO1xuJG1lbmRlbGVldi1pbnB1dC1lbGVtZW50LWZvcm0tY29sb3I6IGNvbG9yKCdicmFuZCcpICFkZWZhdWx0O1xuXG5AaWYgbm90IGdsb2JhbC12YXJpYWJsZS1leGlzdHMoTUVOREVMRUVWLUVMRU1FTlRTLUZPUk1TKSB7XG5cbiAgICAvLyAxLTMuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzXG4gICAgLy8gNC4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gICAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT0nZW1haWwnXSxcbiAgICBpbnB1dFt0eXBlPSdudW1iZXInXSxcbiAgICBpbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuICAgIGlucHV0W3R5cGU9J3NlYXJjaCddLFxuICAgIGlucHV0W3R5cGU9J3RlbCddLFxuICAgIGlucHV0W3R5cGU9J3RleHQnXSxcbiAgICBpbnB1dFt0eXBlPSd1cmwnXSxcbiAgICBpbnB1dFt0eXBlPSdjb2xvciddLFxuICAgIGlucHV0W3R5cGU9J2RhdGUnXSxcbiAgICBpbnB1dFt0eXBlPSdtb250aCddLFxuICAgIGlucHV0W3R5cGU9J3dlZWsnXSxcbiAgICBpbnB1dFt0eXBlPSdkYXRldGltZSddLFxuICAgIGlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gICAgaW5wdXQ6bm90KFt0eXBlXSksXG4gICAgdGV4dGFyZWEsXG4gICAgc2VsZWN0IHtcbiAgICAgICAgQGV4dGVuZCAlbWVuZGVsZWV2LWlucHV0O1xuXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICRfY29sb3I6IGFkanVzdC1jb2xvcigkbWVuZGVsZWV2LWlucHV0LWVsZW1lbnQtZm9ybS1jb2xvciwgJGFscGhhOiAwLjUpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAuNXJlbSAycHggcmdiYSgwLCAwLCAwLCAwLjA4KSwgMCAwIDAgMnB4ICN7JF9jb2xvcn07XG4gICAgICAgICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJW1lbmRlbGVldi1pbnB1dCB7XG4gICAgICAgIEBpbmNsdWRlIG9wdGlvbnMoY29uZmlnKCdpbnB1dCcpKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGhlaWdodDogc2l6ZSgxLjc1KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGNvbmZpZygndHlwb2dyYXBoeS5sZWFkJyk7XG4gICAgICAgIG1hcmdpbjogc2l6ZSgwLjI1KSAwICRtZW5kZWxlZXYtbGFiZWwtbWFyZ2luLWJvdHRvbSAwO1xuICAgICAgICBwYWRkaW5nOiAwIHNpemUoMC43NSk7XG5cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPSdjb2xvciddIHtcbiAgICAgICAgcGFkZGluZzogc2l6ZSgwLjI1KSBzaXplKDAuNzUpO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9J2RhdGUnXSxcbiAgICBpbnB1dFt0eXBlPSdtb250aCddLFxuICAgIGlucHV0W3R5cGU9J3dlZWsnXSxcbiAgICBpbnB1dFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1yZW1QeCk7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSxcbiAgICBpbnB1dFt0eXBlPSdyYWRpbyddIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICB9XG5cbiAgICAkX3N0eWxlLWNvbnRyb2xzOiB0cnVlO1xuICAgIEBpZiAkX3N0eWxlLWNvbnRyb2xzIHtcbiAgICAgICAgJGNvbG9yOiAkbWVuZGVsZWV2LWlucHV0LWVsZW1lbnQtZm9ybS1jb2xvcjtcbiAgICAgICAgJGNvbG9yLWRhcms6IG1peCgkY29sb3IsIGNvbG9yKCdibGFjaycpLCA3NSUpO1xuICAgICAgICAkY29sb3ItbGlnaHQ6IGFkanVzdC1jb2xvcihtaXgoJGNvbG9yLCBjb2xvcignd2hpdGUnKSwgNzUlKSwgJHNhdHVyYXRpb246IC01MCUpO1xuICAgICAgICAkc2l6ZTogMWVtO1xuICAgICAgICAkY2hlY2stbWFyay13aWR0aDogMC4yZW07XG5cbiAgICAgICAgLy8gSGlkZSBjb250cm9sc1xuICAgICAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddLFxuICAgICAgICBpbnB1dFt0eXBlPSdyYWRpbyddIHtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERlZmF1bHQgaW5wdXQgYnV0dG9uIHN0eWxlc1xuICAgICAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddOjphZnRlcixcbiAgICAgICAgaW5wdXRbdHlwZT0ncmFkaW8nXTo6YWZ0ZXIge1xuICAgICAgICAgICAgLy8gRGlzcGxheVxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgLy8gU2l6aW5nXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLy8gQ29sb3JcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwICgkc2l6ZSAvIDIpIHJnYmEoMCwgMCwgMCwgMC4xKSwgaW5zZXQgMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4yMCk7XG4gICAgICAgICAgICBvdXRsaW5lLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddOjphZnRlciB7XG4gICAgICAgICAgICBib3R0b206IDAuOWVtO1xuICAgICAgICAgICAgcmlnaHQ6IDAuMTVlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXTo6YmVmb3JlIHtcbiAgICAgICAgICAgIC8vIERpc3BsYXlcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgIC8vIEJvcmRlclxuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAkY2hlY2stbWFyay13aWR0aCAkY2hlY2stbWFyay13aWR0aCAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXG4gICAgICAgICAgICAvLyBQb3NpdGlvblxuICAgICAgICAgICAgd2lkdGg6IDAuNGVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAwLjdlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAtMC4yZW07XG4gICAgICAgICAgICBib3R0b206IDAuMWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT0ncmFkaW8nXTo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYm90dG9tOiAwLjI1ZW07XG4gICAgICAgICAgICByaWdodDogMC4xZW07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaGVja2VkIHN0YXRlXG4gICAgICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDBtcztcbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQ6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogKCRzaXplIC8gMykgc29saWQgJGNvbG9yO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhvdmVyIGVmZmVjdFxuICAgICAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOjphZnRlcixcbiAgICAgICAgaW5wdXRbdHlwZT0ncmFkaW8nXTpob3Zlcjpub3QoOmRpc2FibGVkKTo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENoZWNrZWQgaG92ZXIgZWZmZWN0XG4gICAgICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZDpob3Zlcjpub3QoOmRpc2FibGVkKTo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRhcms7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXRbdHlwZT0ncmFkaW8nXTpjaGVja2VkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWRhcms7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXNhYmxlZFxuICAgICAgICBpbnB1dFt0eXBlPSdyYWRpbyddOmRpc2FibGVkOjphZnRlciB7XG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMTEwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaGVja2VkIGFuZCBkaXNhYmxlZFxuICAgICAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQ6ZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1saWdodDtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQ6ZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogKCRzaXplIC8gMykgc29saWQgbWl4KHdoaXRlLCBncmF5c2NhbGUoJGNvbG9yKSwgNTAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlbGVjdCB7XG4gICAgICAgIC8vIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMTRcIiB2aWV3Qm94PVwiMCAwIDI5IDE0XCIgd2lkdGg9XCIyOVwiPjxwYXRoIGZpbGw9XCIlMjNkMWQxZDFcIiBkPVwiTTkuMzc3MjcgMy42MjVsNS4wODE1NCA2LjkzNTIzTDE5LjU0MDM2IDMuNjI1XCIvPjwvc3ZnPicpIGNlbnRlciByaWdodCBuby1yZXBlYXQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMTRcIiB2aWV3Qm94PVwiMCAwIDI5IDE0XCIgd2lkdGg9XCIyOVwiPjxwYXRoIGZpbGw9XCIlMjM5YjRkY2FcIiBkPVwiTTkuMzc3MjcgMy42MjVsNS4wODE1NCA2LjkzNTIzTDE5LjU0MDM2IDMuNjI1XCIvPjwvc3ZnPicpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gMS4gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgcGFkZGluZzogc2l6ZSgwLjUpIHNpemUoMC43NSk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHNpemUoNSk7XG4gICAgfVxuXG4gICAgLy8gMS0zLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgIC8vIDQuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAvLyA1LiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgLy8gICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICBsZWdlbmQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMHJlbTsgLy8gKDEwMCUgaW4gbm9ybWFsaXplLmNzcylcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRtZW5kZWxlZXYtbGFiZWwtbWFyZ2luLWJvdHRvbTtcbiAgICB9XG5cbiAgICBsYWJlbCArICVtZW5kZWxlZXYtaW5wdXQge1xuICAgICAgICBtYXJnaW4tdG9wOiBzaXplKDAuMjUpIC0gJG1lbmRlbGVldi1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICAgIH1cblxuICAgICVtZW5kZWxlZXYtaW5wdXQgKyBsZWdlbmQsXG4gICAgbGFiZWwgKyBsZWdlbmQge1xuICAgICAgICBtYXJnaW4tdG9wOiBzaXplKDAuMjUpIC0gJG1lbmRlbGVldi1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBzaXplKDEpO1xuICAgIH1cblxuICAgIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICBmaWVsZHNldCB7XG4gICAgICAgIC8vYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBwYWRkaW5nOiAwOyAvLyAoMC4zNWVtIDAuNzVlbSAwLjYyNWVtIGluIG5vcm1hbGl6ZS5jc3MpXG4gICAgfVxuXG4gICAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICBwcm9ncmVzcyB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICAubGFiZWwtaW5saW5lIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgIH1cbn1cblxuJE1FTkRFTEVFVi1FTEVNRU5UUy1GT1JNUzogdHJ1ZTtcbiIsCgkJIkBpZiBub3QgdmFyaWFibGUtZXhpc3RzKG1lbmRlbGVldi1wcmVsdWRlLWxvYWRlZCkge1xuICAgIEBlcnJvciAnQ2Fubm90IGxvYWQgZWxlbWVudHMgd2l0aG91dCBpbXBvcnRpbmcgcHJlbHVkZSBmaXJzdC4nO1xufVxuXG5AaW5jbHVkZSBtZW5kZWxlZXYtcmVnaXN0ZXItdXRpbGl0aWVzO1xuIiwKCQkiQGltcG9ydCBcIi4uL25vZGVfbW9kdWxlcy9tZW5kZWxlZXYuY3NzL3NyYy9lbGVtZW50c1wiO1xuXG5oMSxcbmgyIHtcbiAgICBtYXJnaW46IHVuc2V0O1xufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5sYWJlbCArIGlucHV0ICsgYnIsXG5sYWJlbCArIHRleHRhcmVhICsgYnIsXG5sYWJlbCArIHNlbGVjdCArIGJyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLmZsZXgtLWp1c3RpZnktY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmZsZXgtLXdyYXAge1xuICAgIEBleHRlbmQgLmZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uZmxleC0tZ2FwLTEge1xuICAgIGdhcDogMXJlbTtcbn1cbi53cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG59XG4uZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG59XG4uZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbn1cbi5pbmxpbmUtZ3JpZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG59XG4uYWxpZ24tY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmp1c3RpZnktY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmN1cnNvci1wb2ludGVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mdWxsLXdpZHRoIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gNCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmVqLW1hcmdpbi10b3Age1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5lai1tYXJnaW4tYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5pbnB1dCArIC5oZWxwdGV4dCxcbnRleHRhcmVhICsgLmhlbHB0ZXh0LFxuc2VsZWN0ICsgLmhlbHB0ZXh0LFxuaW5wdXQgKyBiciArIC5oZWxwdGV4dCxcbnRleHRhcmVhICsgYnIgKyAuaGVscHRleHQsXG5zZWxlY3QgKyBiciArIC5oZWxwdGV4dCB7XG4gICAgQGV4dGVuZCBsZWdlbmQ7XG4gICAgbWFyZ2luLXRvcDogc2l6ZSgwLjI1KSAtICRtZW5kZWxlZXYtbGFiZWwtbWFyZ2luLWJvdHRvbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IHNpemUoMSk7XG4gICAgbWFyZ2luLWxlZnQ6IHNpemUoMC41KTtcbn1cblxuLmhlbHB0ZXh0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1kYXJrLWdyYXk7XG4gICAgJi1jZW50ZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxufVxuXG5sYWJlbCArIHVsLmVycm9ybGlzdCB7XG4gICAgbWFyZ2luLXRvcDogc2l6ZSgtMC41KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJiA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxudWwuZXJyb3JsaXN0IHtcbiAgICBjb2xvcjogY29sb3IoXCJyZWRcIik7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IHNpemUoMC4yNSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi50ZXJtcyB7XG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGhlaWdodDogMjByZW07XG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICAgIGhlaWdodDogNi43MjVyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWRhcmstZ3JheTtcbiAgICB9XG4gICAgJl9fY2hlY2tib3gge1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjE0NXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1bnNldDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1kYXJrLWJsdWU7XG4gICAgfVxufVxuXG4ucmVnaXN0ZXItZm9ybSB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICBtYXJnaW46IGF1dG87XG5cbiAgICBmb3JtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIvNTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiA0LjVyZW07XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICB3aWR0aDogNS40cmVtO1xuICAgICAgICBoZWlnaHQ6IDQuNnJlbTtcbiAgICB9XG5cbiAgICAmX19zdWJtaXQtYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDUuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1LjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAzLjNyZW0gIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiB1bnNldCAhaW1wb3J0YW50O1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MTRweCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgIH1cblxuICAgICZfX2xhYmVsLS1tYXJnaW4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgIH1cblxuICAgICZfX2J1dHRvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogMy45cmVtO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MTRweCkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLmxvZ2luLWZvcm1fX3NvY2lhbC1idXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNy41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MTRweCkge1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlZ2lzdGVyLWZvcm0sXG4ubG9naW4tZm9ybSB7XG4gICAgJl9faW5wdXQge1xuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5LWJsdWUtdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjA2MjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2dpbi1mb3JtIHtcbiAgICAmX19sb2dvIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuMDYyNXJlbTtcbiAgICB9XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgIH1cblxuICAgICZfX2J1dHRvbi1jb250YWluZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogMi4wNjI1cmVtIDAgMi4wNjI1cmVtO1xuICAgIH1cblxuICAgICZfX3N1Ym1pdC1idXR0b24ge1xuICAgICAgICB3aWR0aDogMTQuMDYyNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAzLjMxMjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICZfX3Jlc2V0LXBhc3N3b3JkIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIH1cbiAgICAmX19yZXNldC1wYXNzd29yZDpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJl9fc29jaWFsLWJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxNy41cmVtO1xuICAgICAgICBoZWlnaHQ6IDMuMzZyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1idXR0b24tZ3JheTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgICBib3gtc2hhZG93OiAxcHggMXB4IDFweCBncmF5O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXktZGFya2VyO1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSBpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGNvbmljLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgICAgICBmcm9tIC00NWRlZyxcbiAgICAgICAgICAgICAgICAgICAgI2VhNDMzNSAxMTBkZWcsXG4gICAgICAgICAgICAgICAgICAgICM0Mjg1ZjQgOTBkZWcgMTgwZGVnLFxuICAgICAgICAgICAgICAgICAgICAjMzRhODUzIDE4MGRlZyAyNzBkZWcsXG4gICAgICAgICAgICAgICAgICAgICNmYmJjMDUgMjcwZGVnXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDczJSA1NSUvMTUwJSAxNTAlIG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcGFkZGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlZ2lzdGVyLXJlZGlyZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1heC13aWR0aDogMzByZW07XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMS41cmVtO1xuXG4gICAgJl9faHIge1xuICAgICAgICBtYXJnaW46IDMuMDYyNXJlbSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiA0NSU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDkuMzUyNXJlbTtcbiAgICAgICAgaGVpZ2h0OiA3LjkzNzVyZW07XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjM2cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBib3JkZXI6IDAuMTI1cmVtIHNvbGlkICRjb2xvci10aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgaGVpZ2h0OiAzLjMxMjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMy4zMTI1cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDI2NnB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL292ZXJ3cml0ZSBtZW5kZWxlZXYgcnVsZXNcbmxlZ2VuZCxcbnRleHRhcmVhLFxubGFiZWwsXG5pbnB1dCB7XG4gICAgbWF4LXdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIHRleHQtaW5kZW50OiB1bnNldCAhaW1wb3J0YW50O1xufVxuaW5wdXQ6bm90KC5idXR0b24pIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihcImJyYW5kXCIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbn1cbmxlZ2VuZCB7XG4gICAgbWFyZ2luOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IHVuc2V0ICFpbXBvcnRhbnQ7XG59XG5cbi5jb250ZW50LWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDQlLCBhdXRvKSBtaW5tYXgoYXV0bywgMTQwMHB4KSBtaW5tYXgoXG4gICAgICAgICAgICA0JSxcbiAgICAgICAgICAgIGF1dG9cbiAgICAgICAgKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuXG4gICAgJiA+ICoge1xuICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICB9XG5cbiAgICAmLS1wYWRkaW5nIHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwIDAgMDtcbiAgICB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMyUgYXV0byAzJTtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcGFkZGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDAgMCAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVhZGVyLXNwYWNlIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG5cbi5sb2FkZXIge1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItYWNjZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYW5pbWF0aW9uOiByb3RhdGlvbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4uc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4uaHRteC1yZXF1ZXN0IC5sb2FkZXIge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbn1cbi5odG14LXJlcXVlc3QubG9hZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRpb24ge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgLnRlcm1zIHtcbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1LjRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19jaGVja2JveCB7XG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi42MjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmVnaXN0ZXItZm9ybSB7XG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyLzM7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDMuMzc1cmVtIDAgMS41cmVtIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICB3aWR0aDogMTEuNTYyNXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogOS43NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmVnaXN0ZXItcmVkaXJlY3Rpb24ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICZfX2hyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19idXR0b24ge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41OHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dpbi1mb3JtIHtcbiAgICAgICAgJl9faW5wdXQgI2lkX3Bhc3N3b3JkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19idXR0b24tY29udGFpbmVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICByb3ctZ2FwOiAxLjIxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmX19sYWJlbCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3NvY2lhbC1idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19yZXNldC1wYXNzd29yZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjE4NzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdWJtaXQtYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIGFuZCAobWluLXdpZHRoOiAzMjFweCkge1xuICAgIC50ZXJtcyB7XG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgaGVpZ2h0OiAxNS40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY2hlY2tib3gge1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNjI1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5yZWdpc3Rlci1mb3JtIHtcbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIvMztcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMy4zNzVyZW0gMCAxLjVyZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICB3aWR0aDogMTEuNTYyNXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogOS43NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbnB1dC0tbWFyZ2luIHtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjYyNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2J1dHRvbnMge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLmxvZ2luLWZvcm1fX3NvY2lhbC1idXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNy41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3VibWl0LWJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjlyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZWdpc3Rlci1yZWRpcmVjdGlvbiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgJl9faHIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2J1dHRvbiB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjU4cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxvZ2luLWZvcm0ge1xuICAgICAgICAmX19pbnB1dCAjaWRfcGFzc3dvcmQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2J1dHRvbi1jb250YWluZXIge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIHJvdy1nYXA6IDEuMjFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc29jaWFsLWJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3Jlc2V0LXBhc3N3b3JkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMTg3NXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3N1Ym1pdC1idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLAoJCSIvLyBNYWluIGVsZW1lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL21haW4vbmF2aWdhdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL21haW4vZWxlbWVudHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tYWluL2ZpbHRlcnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb252ZXJzYXRpb25zL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb252ZXJzYXRpb25zL2RldGFpbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnZlcnNhdGlvbnMvbW9kZXJhdGUtY29tbWVudHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb252ZXJzYXRpb25zL3dlbGNvbWUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb252ZXJzYXRpb25zL2JvYXJkLWRldGFpbCc7XG5cblxuXG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2xzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29scy90b29scyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2xzL2dlbmVyaWMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29scy9jaGF0Ym90JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHMvbWFpbGluZyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2xzL29waW5pb24tY29tcG9uZW50JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHMvd2ViY2hhdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2xzL3N1cnZleSc7XG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udmVyc2F0aW9ucy9saW5rcy1tb2RhbCc7XG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVwb3J0cy9kYXNoYm9hcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXBvcnRzL2V4cG9ydC1kYXRhJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVwb3J0cy9nZW5lcmljcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JlcG9ydHMvY29tbWVudHMtcmVwb3J0LnNjc3MnO1xuXG5AaW1wb3J0ICdjb21wb25lbnRzL2FkbWluL2Vudmlyb25tZW50JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZmlsZXMvaG9tZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2ZpbGVzL3Byb2ZpbGUnO1xuXG4vLyBHZW5lcmljXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbGxhcHNpYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZGF0YXRhYmxlcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NsdXN0ZXJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RlcmVvdHlwZXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tb2RhbCc7XG5cbi8vIEZJWE1FIChmb3JldmVyKTogcmVtb3ZlIHNoYW1lIDstKVxuQGltcG9ydCAnY29tcG9uZW50cy9tYWluL21lbmRlbGVldi1zaGFtZSc7XG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvbG9hZGluZyc7XG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG91cic7XG4iLAoJCSIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUEFHRSBOQVZJR0FUSU9OIEVMRU1FTlRTXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGltcG9ydCBcIi4uLy4uL2NvbmZpZ1wiO1xuXG4kX3NtLWhlYWRlci1oZWlnaHQ6IHNpemUoMik7XG4kX21kLWhlYWRlci1oZWlnaHQ6IHNpemUoMi41KTtcbiRhdmF0YXItaGVpZ2h0OiAzNnB4O1xuJGF2YXRhci1ib3JkZXI6IDUwJTtcblxuYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gaGVhZGVyIG5hdmlnYXRpb25cblxuLm1haW4tY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgMCAxOC43NXJlbTtcblxuICAgICYtLXdpdGhvdXQtbWFyZ2luIHtcbiAgICAgICAgbWFyZ2luOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLm1haW4taGVhZGVyIHtcbiAgICBAaW5jbHVkZSB1dGlsaXRpZXMoXCJyb3cgaXRlbXMtY2VudGVyIGNlbnRlciBzdGlja3kgcGluLXRvcFwiKTtcbiAgICBAaW5jbHVkZSBjb2xvcihcIm5hdmlnYXRpb25cIik7XG5cbiAgICB6LWluZGV4OiAxMDAwO1xuXG4gICAgPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgdXRpbGl0aWVzKFwicGFkLXgxXCIpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICA+IGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGNvbG9yOiBjb2xvcihcIm5hdmlnYXRpb24tdGV4dFwiKTtcbiAgICAgICAgaGVpZ2h0OiAkX3NtLWhlYWRlci1oZWlnaHQ7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJveC1zaGFkb3c6IDAgMCAycHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjVyZW07XG4gICAgb3JkZXI6IC0xO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJl9fbG9nbyBpbWcge1xuICAgICAgICBoZWlnaHQ6ICRfc20taGVhZGVyLWhlaWdodCAqIDAuNjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgICZfX2F2YXRhciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRhdmF0YXItYm9yZGVyO1xuICAgICAgICB3aWR0aDogJGF2YXRhci1oZWlnaHQ7XG4gICAgICAgIGhlaWdodDogJGF2YXRhci1oZWlnaHQ7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbn1cblxuLy8gUmVvcmdhbml6ZSB1c2luZyBtZWRpYSBxdWVyaWVzXG5AaW5jbHVkZSBicmVha3BvaW50KFwic21cIikge1xuICAgIC5jb250YWluZXItdGVtcG9yYXJ5IHtcbiAgICAgICAgbWF4LXdpZHRoOiA2NHZ3ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLm1lYXN1cmUtd2lkZSB7XG4gICAgICAgIG1heC13aWR0aDogNjB2dztcbiAgICB9XG5cbiAgICAubWFpbi1oZWFkZXIge1xuICAgICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcIm1kXCIpIHtcbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCBzaXplKDAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm1haW4taGVhZGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRfbWQtaGVhZGVyLWhlaWdodDtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX191c2VyIHtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyICNzaG93LWZsb2F0aW5nLW1lbnUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTaWRlYmFyIC8gbWVudVxuXG4ubmF2LWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItbmF2aWdhdGlvbi1oZWFkZXI7XG4gICAgbWFyZ2luOiAwIDAuNjI1cmVtO1xuXG4gICAgJi0tZGFya2VyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheTtcbiAgICB9XG59XG5cbi5wYWdlLW1lbnUge1xuICAgIG1heC1oZWlnaHQ6IDYwMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiA3NTA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW5hdmlnYXRpb24tbWVudS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiBhdXRvO1xuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBtaW4td2lkdGg6IDgwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWhlaWdodDogNTAwcHgpIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICB9XG5cbiAgICAmLS1kaXNhYmxlLW92ZXJmbG93IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCIsIFwic2Fucy1zZXJpZlwiO1xuICAgIH1cblxuICAgICZfX2xpbmtzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAyLjIxOXJlbTtcbiAgICAgICAgcGFkZGluZzogMi4yNXJlbSAwIDEuNzVyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JheS1kYXJrZXI7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1jb21wbGVtZW50YXJ5LWdyYXk7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xODhlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtY2F0ZWdvcmllcyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjMxM3JlbTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51LXBhZGRpbmcge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIHBhZGRpbmc6IDAgMS43NXJlbSAxLjc1cmVtO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtO1xuICAgIH1cblxuICAgICZbaXMtb3Blbj1cIlwiXSB7XG4gICAgICAgIHdpZHRoOiAxN3JlbTtcbiAgICB9XG5cbiAgICAmW2lzLW1lbnVdIHtcbiAgICAgICAgd2lkdGg6IDE3cmVtO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGxlZnQ6IC0xMDAlO1xuICAgIH1cblxuICAgICZbaXMtb3Blbl0ge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDNyZW07XG4gICAgICAgIHotaW5kZXg6IDc1MDtcbiAgICB9XG5cbiAgICBuYXYge1xuICAgICAgICBoMSxcbiAgICAgICAgaDIsXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB1dGlsaXRpZXMoXCJsaXN0LXJlc2V0XCIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIG5hdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gICAgLmFkZC1idXR0b24ge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJyYW5kO1xuICAgIH1cblxuICAgIC5ib2FyZC1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMi4yNXJlbTtcblxuICAgICAgICAmX19jaGV2cm9uLXRyYW5zaXRpb24ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RvZ2dsZS1zZWN0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICNib2FyZC1jaGV2cm9uLWljb24ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ib2FyZC1saXN0IHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMC4zMXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMS43cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGkuc2VsZWN0ZWQtYm9hcmQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW5hdmlnYXRpb24taGVhZGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwcmVtIC0ycmVtIDByZW0gLTJyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwcmVtIDJyZW0gMHJlbSAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJlcG9ydC1zZWN0aW9uIHtcbiAgICAgICAgLmRpc3BsYXktcmVwb3J0cyB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogdW5zZXQ7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zZWxlY3RlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItbmF2aWdhdGlvbi1oZWFkZXI7XG4gICAgICAgIH1cbiAgICAgICAgLnNob3cge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmhpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2lzZXhwYW5kZWQzLFxuLmlzZXhwYW5kZWQtY2x1c3Rlci1jb21tZW50cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaXNleHBhbmRlZC1jbHVzdGVyLWNvbW1lbnRzIHtcbiAgICAmLS1vdmVyZmxvdyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW4gc2Nyb2xsO1xuICAgICAgICBtYXgtaGVpZ2h0OiA1MHZoO1xuICAgIH1cbn1cblxuI2lzZXhwYW5kZWQzOmNoZWNrZWQgKyBsYWJlbCA+IGksXG4uaXNleHBhbmRlZC1jbHVzdGVyLWNvbW1lbnRzOmNoZWNrZWQgKyBsYWJlbCA+IGkge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbiNzaG93LWZsb2F0aW5nLW1lbnUge1xuICAgIHRvcDogM3JlbTtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xuXG4gICAgJi5oaWRlIHtcbiAgICAgICAgcmlnaHQ6IC0yMHJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cblxuLnByb2ZpbGUtYXZhdGFyIHtcbiAgICBib3JkZXItcmFkaXVzOiA2Ni41cHg7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmZsb2F0aW5nLW1lbnUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDNyZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMC4yNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG5cbiAgICBhIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICBhLFxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEzLjVyZW07XG4gICAgfVxuXG4gICAgJl9fc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIHV0aWxpdGllcyhcInBhZC0yXCIpO1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB1dGlsaXRpZXMoXCJwYWQteTJcIik7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB1dGlsaXRpZXMoXCJwYWQteTNcIik7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiA1Ljc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwLjc1cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLW5hdmlnYXRpb24tbWVudS1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdXNlcm5hbWUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDVyZW07XG5cbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcHJvZmlsZSxcbiAgICAmX19lbnZpcm9ubWVudCB7XG4gICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xvZ291dCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcblxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWVudS1zZWN0aW9uIHtcbiAgICAmX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNDM3NXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgfVxuXG4gICAgJl9fY29udmVyc2F0aW9uLXRleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjI1cmVtO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiA0O1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDZyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDZyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb252ZXJzYXRpb24tbWVudSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDAuNjNyZW0gYXV0byAwLjYzcmVtO1xuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUlIGF1dG8gNSU7XG4gICAgfVxuXG4gICAgJl9fYnV0dG9ucyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICAgICAgZ2FwOiAwLjkzcmVtO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuXG4gICAgJl9fZWRpdC1idXR0b24gYSxcbiAgICAmX19kZWxldGUtYnV0dG9uIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTNyZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAmX19kZWxldGUtYnV0dG9uIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICB3aWR0aDogMy4xMjVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDIuNjI1cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXJlZC1uZWdhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlcjogJGNvbG9yLXJlZC1uZWdhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2VkaXQtYnV0dG9uIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgICAgICBib3JkZXI6ICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIGhlaWdodDogMi42MjVyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kZWxldGUtYnV0dG9uIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcmVkLW5lZ2F0aXZlO1xuICAgICAgICAgICAgYm9yZGVyOiAkY29sb3ItcmVkLW5lZ2F0aXZlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGlua3Mge1xuICAgICAgICBwYWRkaW5nOiAyLjI1cmVtIDAgMS43NXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1uYXZpZ2F0aW9uLWhlYWRlcjtcbiAgICB9XG5cbiAgICAmX19hdmF0YXIge1xuICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAmX191c2VybmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTdyZW07XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgICZfX2NvbnZlcnNhdGlvbi10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40NnJlbTtcbiAgICAgICAgbWF4LWhlaWdodDogNnJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWFyZ2luLXRvcDogMi42MjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuMzc1cmVtO1xuICAgIH1cblxuICAgICZfX2NvbnZlcnNhdGlvbi1zaGFyZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjM3NXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnZlcnNhdGlvbi1pbmZvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS40Mzc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xN3JlbTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheS1kYXJrZXI7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX191c2VyLXNlY3Rpb24ge1xuICAgICAgICBtYXJnaW46IDEuNzZyZW0gMCA0LjI1cmVtIDA7XG4gICAgfVxuXG4gICAgJl9fYnV0dG9ucyB7XG4gICAgfVxufVxuXG4ucGFydGljaXBhbnQtbWVudSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEuMnJlbSBhdXRvIDEuMnJlbTtcblxuICAgICZfX2J1dHRvbnMge1xuICAgICAgICBtYXJnaW46IDIuMjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogdW5zZXQgIWltcG9ydGFudDtcblxuICAgICAgICAmIGE6bGFzdC1jaGlsZCBidXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjYyNXJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAuNjI1cmVtIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFydGljaXBhbnQtbWVudSxcbi5jb252ZXJzYXRpb24tbWVudSB7XG4gICAgJl9faXRlbSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMzJyZW0gMDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWRhcmstZ3JheTtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zZWxlY3RlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbmF2aWdhdGlvbi1oZWFkZXItd2l0aC1vcGFjaXR5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tY29sdW1uLTIge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIvMztcbiAgICAgICAgICAgIHBhZGRpbmc6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tbWFyZ2luIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuOTNyZW0gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA1MDBweCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3dlbGNvbWUtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuXG4gICAgJl9faG9tZS1kaXZpZGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG5cbiAgICAgICAgJi0tbGlnaHRlciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLW5hdmlnYXRpb24taGVhZGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVscC1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi44cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm5hdi1kaXZpZGVyIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAuNjI1cmVtIDAgMC42MjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEvNDtcbiAgICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoXCJzbVwiKSB7XG4gICAgLnBhZ2UtbWVudSB7XG4gICAgICAgIHotaW5kZXg6IDc1MDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW5hdmlnYXRpb24tbWVudS1iYWNrZ3JvdW5kO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gM3JlbSk7XG4gICAgICAgIG1pbi13aWR0aDogMTguNzVyZW07XG4gICAgICAgIG1heC13aWR0aDogMTguNzVyZW07XG5cbiAgICAgICAgJixcbiAgICAgICAgJltpcy1tZW51XSxcbiAgICAgICAgJltpcy1tZW51XVtpcy1vcGVuXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgbmF2IHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgICBoMSxcbiAgICAgICAgICAgIGgyLFxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbmF2Omxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjcGFnZS13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgI3BhZ2Utd3JhcHBlciA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgICBmbGV4OiAxO1xuICAgIH1cblxuICAgIC5wYWdlLW1lbnUgKyAqIHtcbiAgICAgICAgZmxleDogNTtcbiAgICB9XG59XG5cbiNmaXJzdC1saW5rIHtcbiAgICBAZXh0ZW5kIC5zY3JlZW4tcmVhZGVyO1xuICAgIHRhYi1pbmRleDogMDtcbiAgICA6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAwO1xuICAgICAgICBib3R0b206IHNpemUoMC41KTtcbiAgICAgICAgcGFkZGluZzogc2l6ZSgwLjI1KTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDEwMDI7XG4gICAgfVxufVxuXG4jZG9jcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICBpZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NjBweCkge1xuICAgICNkb2NzIHtcbiAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2JnLW1vZGFsIHtcbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTU5cHgpIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrLWFsdGVybmF0aXZlO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICB6LWluZGV4OiAxMDA1O1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTU5cHgpIHtcbiAgICAubWFpbi1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBtYXJnaW46IHVuc2V0O1xuICAgIH1cbn1cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHRU5FUklDIEVKIFVJIEVMRU1FTlRTXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTbWFsbCB0d2Vha3NcbmkuZmEsIGkuZmFzLCBpLmZhYiwgaS5mYXIge1xuICAgIG1hcmdpbjogYXV0byAwLjVlbTtcbn1cblxuLmJvZHkge1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW0gIWltcG9ydGFudDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCdtZCcpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEludHJvIHRpdGxlXG4udGl0bGUge1xuICAgIEBleHRlbmQgLmgyLCAuY2VudGVyLCAudGV4dC1hY2NlbnQ7XG59XG5cbi5pbnRyby1wYXJhZ3JhcGgge1xuICAgIEBleHRlbmQgLmNlbnRlcjtcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCAuaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICAgICAgQGV4dGVuZCAudGl0bGU7XG4gICAgfVxuICAgIHAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHNpemUoMSk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHNpemUoMSk7XG4gICAgfVxufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGFicyBhbmQgY2F0ZWdvcmllc1xuLnRhYnMsIC5jYXRlZ29yaWVzIHtcbiAgICBAZXh0ZW5kIC5yb3c7XG5cbiAgICBkaXYsYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogJGNvbG9yLW5hdmlnYXRpb24taGVhZGVyLXRleHQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuXG4udGFicyB7XG4gICAgQGV4dGVuZCAudXBwZXJjYXNlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ncmF5O1xuXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgIC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gICAgfVxuXG4gICAgJi1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwYWRkaW5nOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldCAhaW1wb3J0YW50O1xuXG4gICAgICAgICYgW2lzLXNlbGVjdGVkXSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC50ZXh0LWFjY2VudDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGNvbG9yKCdhY2NlbnQnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS4xMjVyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4yNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmLS1zbWFsbGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuODEzcmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tc2Nyb2xsLXgge1xuICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgfVxuICAgICZfX3RhYi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICYtLXNob3cge1xuICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2F0ZWdvcmllcyB7XG4gICAgQGluY2x1ZGUgY29sb3IobWl4KGNvbG9yKCdicmFuZC1saWdodGVyJyksIGNvbG9yKCd3aGl0ZScpKSwgJ2JyYW5kJyk7XG4gICAgQGV4dGVuZCAuYm9sZDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAqIHtcbiAgICAgICAgQGV4dGVuZCAucGFkLTEsIC5tYXJnaW4teDE7XG4gICAgICAgIGNvbG9yOiBjb2xvcignYnJhbmQnKTtcbiAgICB9XG4gICAgYTpob3Zlcjpub3QoW2lzLXNlbGVjdGVkXSkge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjb2xvcignYnJhbmQnLCAkYWxwaGE6IDAuNSk7XG4gICAgfVxufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUG9wLXVwIHdpbmRvd1xuLnBvcHVwIHtcbiAgICBAZXh0ZW5kIC5yZWxhdGl2ZSwgLmNvbDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignYmFja2dyb3VuZCcpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKCdhY2NlbnQnKTtcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgIG1heC13aWR0aDogMzByZW07XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICZfX2NvbnRlbnRzIHtcbiAgICAgICAgQGV4dGVuZCAucGFkLTMsIC5jZW50ZXIsIC5jb2w7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICZfX2Nsb3NlIHtcbiAgICAgICAgQGV4dGVuZCAuYWJzb2x1dGUsIC5waW4tdG9wLCAucGluLXJpZ2h0LCAubWFyZ2luLTM7XG4gICAgICAgIGNvbG9yOiBjb2xvcignYmxhY2snKTtcbiAgICB9XG59XG5cbi5vdmVybGF5IHtcbiAgICBAZXh0ZW5kIC5maXhlZCwgLnBpbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgei1pbmRleDogNTAwO1xuXG4gICAgPiAqIHtcbiAgICAgICAgbWFyZ2luOiAxMi41dmggYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogNzV2aDtcbiAgICAgICAgbWluLWhlaWdodDogNDB2aDtcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgfVxufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVG9hc3QgZWxlbWVudFxuLyogVGhlIHNuYWNrYmFyIC0gcG9zaXRpb24gaXQgYXQgdGhlIGJvdHRvbSBhbmQgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuICovXG4jc25hY2tiYXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgLyogSGlkZGVuIGJ5IGRlZmF1bHQuIFZpc2libGUgb24gY2xpY2sgKi9cbiAgICBtaW4td2lkdGg6IDI1MHB4OyAvKiBTZXQgYSBkZWZhdWx0IG1pbmltdW0gd2lkdGggKi9cbiAgICBtYXJnaW4tbGVmdDogLTEyNXB4OyAvKiBEaXZpZGUgdmFsdWUgb2YgbWluLXdpZHRoIGJ5IDIgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyAvKiBCbGFjayBiYWNrZ3JvdW5kIGNvbG9yICovXG4gICAgY29sb3I6ICNmZmY7IC8qIFdoaXRlIHRleHQgY29sb3IgKi9cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IC8qIENlbnRlcmVkIHRleHQgKi9cbiAgICBib3JkZXItcmFkaXVzOiAycHg7IC8qIFJvdW5kZWQgYm9yZGVycyAqL1xuICAgIHBhZGRpbmc6IDE2cHg7IC8qIFBhZGRpbmcgKi9cbiAgICBwb3NpdGlvbjogZml4ZWQ7IC8qIFNpdCBvbiB0b3Agb2YgdGhlIHNjcmVlbiAqL1xuICAgIHotaW5kZXg6IDE7IC8qIEFkZCBhIHotaW5kZXggaWYgbmVlZGVkICovXG4gICAgbGVmdDogNTAlOyAvKiBDZW50ZXIgdGhlIHNuYWNrYmFyICovXG4gICAgYm90dG9tOiAzMHB4OyAvKiAzMHB4IGZyb20gdGhlIGJvdHRvbSAqL1xufVxuXG4udHJpYW5nbGUge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IDAuNDY4NzVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwLjgzNzVyZW0gc29saWQgJGNvbG9yLWJhc2UtcGluaztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuXG4gICAgJi0tdG9wIHtcbiAgICAgICAgdHJhbnNmb3JtOiB1bnNldDtcbiAgICB9XG5cbiAgICAmLS13aGl0ZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvci1icmFuZC1saWdodDtcbiAgICB9XG59XG5cblxuLyogQW5pbWF0aW9ucyB0byBmYWRlIHRoZSBzbmFja2JhciBpbiBhbmQgb3V0ICovXG4kdG9hc3QtaGVpZ2h0OiBzaXplKDEuNSk7XG4kdG9hc3Qtb3BhY2l0eTogMC43NTtcblxuQGtleWZyYW1lcyB0b2FzdC1zaG93IHtcbiAgICBmcm9tIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIHRvcDogJHRvYXN0LWhlaWdodDtcbiAgICAgICAgb3BhY2l0eTogJHRvYXN0LW9wYWNpdHk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRvYXN0LWhpZGUge1xuICAgIGZyb20ge1xuICAgICAgICB0b3A6ICR0b2FzdC1oZWlnaHQ7XG4gICAgICAgIG9wYWNpdHk6ICR0b2FzdC1vcGFjaXR5O1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG59XG5cbi50b2FzdCB7XG4gICAgQGluY2x1ZGUgdXRpbGl0aWVzKCdjb2xvci1icmFuZC1saWdodGVyIHBhZC0zIHNoYWRvdy0yIHNlbWktYm9sZCcpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiB0b2FzdC1zaG93IDAuMjVzIDAuMjVzIGJhY2t3YXJkcywgdG9hc3QtaGlkZSAwLjVzIDRzIGZvcndhcmRzO1xuICAgIGJvcmRlci1yYWRpdXM6IHNpemUoMC41KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiAyNXJlbTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgb3BhY2l0eTogJHRvYXN0LW9wYWNpdHk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogJHRvYXN0LWhlaWdodDtcbiAgICB3aWR0aDogOTAlO1xuICAgIHotaW5kZXg6IDEwMDE7XG4gICAgbWFyZ2luLWxlZnQ6IDQ1JTtcblxuICAgICZfX2ljb24ge1xuICAgICAgICBAZXh0ZW5kIC5wYWQtMjtcbiAgICAgICAgQGluY2x1ZGUgY29sb3IoJ3doaXRlJyAnYnJhbmQnKTtcbiAgICAgICAgYm9yZGVyOiA2cHggc29saWQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcmVtO1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICB3aWR0aDogMnJlbTtcbiAgICB9XG4gICAgJl9fY29udGVudCB7XG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB1dGlsaXRpZXMoJ3RleHQtNCB1cHBlcmNhc2UgYm9sZCB0ZXh0LWJyYW5kJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4udG9hc3QtLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi50b2FzdC0tc2hvdyB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuZGlhbG9nLnRvYXN0LS1zaG93IHtcbiAgICBib3JkZXI6IHVuc2V0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMTZweCkge1xuICAgIC50b2FzdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbn1cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBEZXNjcmlwdGlvbiBsaXN0IChmb3IgcHJvZmlsZSBhbmQgb3RoZXJzKVxuLmRlc2NyaXB0aW9uIHtcbiAgICBkdCB7XG4gICAgICAgIEBleHRlbmQgLmJvbGQsIC50ZXh0LTYsIC50ZXh0LWJyYW5kLCAubG93ZXJjYXNlLCAubWFyZ2luLTA7XG4gICAgfVxuICAgIGRkIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICAgIH1cbn1cblxuLnN0YXQtc2xhYiB7XG4gICAgQGV4dGVuZCAucm93LCAud3JhcCwgLml0ZW1zLWNlbnRlcjtcblxuICAgIGRsIHtcbiAgICAgICAgQGV4dGVuZCAucGFkLTA7XG4gICAgICAgIG1hcmdpbjogMCAwIHNpemUoMSkgMDtcblxuICAgICAgICBkdCB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5ib2xkLCAudGV4dC1icmFuZCwgLmxvd2VyY2FzZSwgLm1hcmdpbi0wLCAuaW5saW5lLCAuaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IHNpemUoMy41KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRkIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmJvbGQsIC5pbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogc2l6ZSgxKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogc2l6ZSgxLjUpO1xuICAgICAgICAgICAgcmlnaHQ6IHNpemUoMyk7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNxdWFyZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUb29sdGlwIGNvbXBvbmVudFxuLnRvb2x0aXAge1xuICAgIEBleHRlbmQgLmFic29sdXRlO1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICB0cmFuc2l0aW9uOiAuM3M7XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgQGV4dGVuZCAucGFkLTIsIC5hYnNvbHV0ZSwgLmJvbGQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlLWluLW91dCwgdmlzaWJpbGl0eSAuMXM7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtYWNjZW50LWxpZ2h0O1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrLWFsdGVybmF0aXZlO1xuXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogLjYyNXJlbVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBjb2xvcjogJGNvbG9yLW5hdmlnYXRpb24taGVhZGVyLXRleHQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpob3ZlciAudG9vbHRpcF9fY29udGVudCB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG4vL3Byb2dyZXNzIGJhciBlbGVtZW50XG4ucHJvZ3Jlc3MtYmFyIHtcbiAgICBAaW5jbHVkZSB1dGlsaXRpZXMoJ3JvdyBmbGV4LWNlbnRlciBpdGVtcy1jZW50ZXIgbWFyZ2luLXkxJyk7XG5cbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDE4ZW07XG5cbiAgICAmX19wcm9ncmVzcyB7XG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbi1zY2FsZSgoeDogMSkpO1xuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKCdicmFuZCcpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjVyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYtLXNpbXBsZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1waW5rLWxpZ2h0O1xuICAgICAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFdvcmsgU2FucztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgIG1heC13aWR0aDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICAgc3Ryb25nIHtmb250LXdlaWdodDpub3JtYWw7fVxuXG4gICAgICAgIC5wcm9ncmVzcy1iYXJfX3Byb2dyZXNzIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1waW5rLWxpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiA2LjE4OHJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNzVyZW07XG4gICAgICAgICAgICA6Zmlyc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXBpbmstbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm0tcHJvZmlsZS0tYnV0dG9uc3tcbiAgICBpbnB1dFt0eXBlPXRleHRde1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxLjU2MjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgJl9fY2FuY2Vse1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1kYXJrZXIgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJl9fc2F2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1kYXJrLWJsdWUgIWltcG9ydGFudDtcbiAgICB9XG59XG4iLAoJCSIuZmlsdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5maWx0ZXJfX3NlbGVjdCB7XG4gICAgbWFyZ2luOiAwIDAuNXJlbSAwIDAuNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1waW5rO1xuICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LXBpbms7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgaGVpZ2h0OiAyOHB4O1xuXG4gICAgJi0td2lkdGgtc20ge1xuICAgICAgICB3aWR0aDogMTY5cHg7XG4gICAgICAgIG1pbi13aWR0aDogMTY5cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIH1cblxuICAgICYtLXdpZHRoLW1kIHtcbiAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICBtaW4td2lkdGg6IDIzMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB9XG59XG5cbi5maWx0ZXJfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWRhcmstZ3JheTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmZpbHRlcl9fZW50cmllcy1zZWxlY3Qge1xuICAgIHdpZHRoOiA0cmVtO1xuICAgIG1pbi13aWR0aDogNHJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbn1cblxuLmZpbHRlcl9fc29ydCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheTtcbiAgICAgICAgbWFyZ2luOiB1bnNldDtcbiAgICB9XG4gICAgLmZhLXNvcnQtdXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMC41NXJlbTtcbiAgICB9XG59XG5cbi5maWx0ZXJfX2lucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gICAgICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgfVxuICAgICYtLWJsdWUge1xuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5waXBlLS1kaXZpZGVyIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5O1xuICAgIG1hcmdpbjogMCAwLjVyZW0gMCAwLjVyZW07XG59XG5cbi5pY29uLS1waW5rIHtcbiAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1waW5rICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4MjBweCkge1xuICAgIC5waXBlLS1kaXZpZGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZmlsdGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmZpbHRlcl9fY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIH1cbn1cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDT05WRVJTQVRJT04gQ0FSRFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBpbXBvcnQgXCIuLi8uLi9jb25maWdcIjtcblxuJF9jYXJkLXdpZHRoOiAxMDAlO1xuJF9jYXJkLWJnOiBjb25maWcoJ2VqLmNvbnZlcnNhdGlvbi1jYXJkLmJnLWltYWdlJyk7XG5cbjpyb290IHtcbiAgICAtLXRoZW1lLWNvbG9yOiAje2NvbG9yKCdicmFuZCcpfTtcbiAgICAtLXRoZW1lLWxpZ2h0LWNvbG9yOiAje2NvbG9yKCdicmFuZC1saWdodGVyJyl9O1xufVxuXG4uY29udmVyc2F0aW9uLWNhcmQge1xuICAgIEBpbmNsdWRlIHV0aWxpdGllcygnY2VudGVyIHRleHQtNiBjb2wgaXRlbXMtY2VudGVyJyk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjc3MtdmFyKC0tdGhlbWUtY29sb3IsIGNvbG9yKCdicmFuZCcpKTtcbiAgICBib3JkZXItcmFkaXVzOiBzaXplKGNvbmZpZygnZWouY29udmVyc2F0aW9uLWNhcmQuYm9yZGVyLXJhZGl1cycpKTtcbiAgICBjb2xvcjogY3NzLXZhcigtLXRoZW1lLWxpZ2h0LWNvbG9yLCBjb2xvcignYnJhbmQtbGlnaHRlcicpKTtcbiAgICB3aWR0aDogJF9jYXJkLXdpZHRoO1xuICAgIGhlaWdodDogMjByZW07XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgICAgICB3aWR0aDogMjByZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEzcmVtO1xuICAgIH1cblxuICAgICZfX3RhZ3Mge1xuICAgICAgICBAaW5jbHVkZSB1dGlsaXRpZXMoJ3RleHQtNiBib2xkJyk7XG5cbiAgICAgICAgQGlmIGNvbmZpZygnZWouY29udmVyc2F0aW9uLWNhcmQuaGlnaGxpZ2h0LXRhZ3MnKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwLjFyZW07XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpe1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBhZGRpbmc6IC40cmVtIDIxJTtcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcblxuICAgICAgICAgICAgLnNwYW4taWNvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19zdGF0aXN0aWNzIHtcbiAgICAgICAgQGluY2x1ZGUgdXRpbGl0aWVzKCdsaXN0LWlubGluZSBwYWQteTEnKTtcblxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHV0aWxpdGllcygncGFkLXgxJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHV0aWxpdGllcygnY29sIGZsZXgtY2VudGVyIHBhZC0zJyk7XG5cbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgdXRpbGl0aWVzKCd0ZXh0LTQgc2Fucy1zZXJpZicpO1xuXG4gICAgICAgICAgICBjb2xvcjogY29sb3IoJ3doaXRlJyk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgcGFkZGluZzogMHB4IDMuNXB4IDBweCAzLjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IC44cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX21vZGVyYXRlIHtcbiAgICAgICAgQGluY2x1ZGUgdXRpbGl0aWVzKCd1cHBlcmNhc2UgdGV4dC02IG1hcmdpbi0yIGJvbGQnKTtcblxuICAgICAgICBjb2xvcjogY29sb3IoJ2JsYWNrJyk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmX19idXR0b24ge1xuICAgICAgICBAaW5jbHVkZSB1dGlsaXRpZXMoJ3BhZC10MSBtYXJnaW4tdDEnKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuOHJlbTtcblxuICAgICAgICBiYWNrZ3JvdW5kOiBjc3MtdmFyKC0tdGhlbWUtY29sb3IsIGNvbG9yKCdicmFuZCcpKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2dyZXNzLWJhciB7XG4gICAgICAgIHdpZHRoOiAxMHJlbTtcblxuICAgICAgICAmX19wcm9ncmVzcyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWx0ZXJuYXRlLWNhcmRzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCdtZCcpIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC1nYXA6IHNpemUoMC41KTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMThyZW0sIDFmcikpO1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUuNXJlbSkge21heC13aWR0aDogMjRyZW07fVxuXG4gICAgICAgICAgICA+ICoge2JvcmRlci1yYWRpdXM6IHNpemUoMC41KTt9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNThyZW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTByZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCBtaW5tYXgoY2FsYygoMTAwJSAvIDYpIC0gLjc1cmVtKSwgMWZyKSk7XG4gICAgfVxufVxuXG4uc3RhdGlzdGljcy1jYXJkIHtcbiAgICAmLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxNC4zNzVyZW07XG4gICAgICAgIGhlaWdodDogOXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXRoZW1lLWJyYW5kLWxpZ2h0O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRkZGRkZGO1xuICAgICAgICBib3gtc2hhZG93OiAwcmVtIDAuMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4xMjVyZW07XG4gICAgfVxuICAgICYtdGl0bGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS4xMjVyZW07XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB1bnNldDtcbiAgICB9XG4gICAgJi12YWx1ZSB7XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbn1cblxuLmNhcmRzLWRpdmlkZXIge1xuICAgIC5jYXJkcy1kaXZpZGVyLWJvZHkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjQzNzVyZW07XG5cbiAgICAgICAgcm93LWdhcDogMS40Mzc1cmVtO1xuICAgICAgICBjb2x1bW4tZ2FwOiAycmVtO1xuICAgIH1cblxuICAgIC5jYXJkcy1kaXZpZGVyLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMCAxcmVtO1xuXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgLmNsb3NlLWJ0biB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1OXB4KSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgYm90dG9tOiAtMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogMTAwNjtcblxuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbSAwLjYyNXJlbSAwIDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDgwJTtcblxuICAgICAgICAuY2FyZHMtZGl2aWRlci1ib2R5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjI1cmVtIDA7XG4gICAgICAgIH1cblxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YXRpc3RpY3MtY2FyZC1jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkcy1kaXZpZGVyLWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpZ25hdHVyZS10ZXh0IHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS4zMTI1cmVtO1xufVxuXG4uc2lnbmF0dXJlLWxpbmsge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMxMjVyZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59IiwKCQkiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENPTlZFUlNBVElPTiBERVRBSUwgKGJhbGxvb24gLyBjb21tZW50IGNhcmQgLyBjb21tZW50IGZvcm0gLyBleHRyYSAvIHByb2dyZXNzIGJhcilcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvbWVuZGVsZWV2LmNzcy9zcmMvY29tcG9uZW50cy9taXhpbnMvYXJyb3cnO1xuQGltcG9ydCAnX2RldGFpbC1oZWFkZXInO1xuQGltcG9ydCAnX2RldGFpbC1zaGFyaW5nJztcblxuJGNvbXBvbmVudC1ib3JkZXItcmFkaXVzOiBzaXplKGNvbmZpZygnZWouc3R5bGUuYm9yZGVyLXJhZGl1cycpKTtcblxuJGNvbG9yLWJyYW5kLWNvbnZlcnNhdGlvbi1mb3JtOiByZ2JhKDI1NSwgMTgzLCAzLCAwLjEwKTtcblxuQG1peGluIHRoZW1lZCgkcHJvcCwgJHZhbHVlOiBudWxsKSB7XG4gICAgQGlmICR2YWx1ZSA9PSBsaWdodCB7XG4gICAgICAgICN7JHByb3B9OiAkY29sb3ItYnJhbmQtY29udmVyc2F0aW9uLWZvcm07XG4gICAgfSBAZWxzZSB7XG4gICAgICAgICN7JHByb3B9OiBjb2xvcignYnJhbmQnKTtcbiAgICB9XG59XG5cbi5jb250ZW50LWdyaWQubWFyZ2luLXkzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jb252ZXJzYXRpb24tYmFsbG9vbiB7XG4gICAgQGV4dGVuZCAuY2VudGVyO1xuXG4gICAgLmNvbnRlbnQtZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDQlLCBhdXRvKSBtaW5tYXgoYXV0bywgMTQwMHB4KSBtaW5tYXgoMTQlLCBhdXRvKTtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogODc1cHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMyUgYXV0byAzJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFydGljbGUge1xuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoJ2JhY2tncm91bmQnLCBsaWdodCk7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAjYWRkLW1vcmUtY29tbWVudHMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoMSB7XG4gICAgICAgIEBleHRlbmQgLnRleHQtYWNjZW50O1xuICAgICAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICB9XG4gICAgJl9fc29jaWFsIHtcbiAgICAgICAgQGluY2x1ZGUgdXRpbGl0aWVzKCdyb3cgcGFkLXg0Jyk7XG5cbiAgICAgICAgYm90dG9tOiAxLjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IoJ2FjY2VudCcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRm9yIGZvcm1zXG4gICAgaW5wdXQsXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgaGVpZ2h0OiA0LjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cbiAgICB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICAgICAgICBAZXh0ZW5kIGxlZ2VuZDtcbiAgICB9XG5cbiAgICAmX190YWdzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcXVlc3Rpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5oZWxwdGV4dCB7XG4gICAgICAgIHdpZHRoOiA4NSU7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gICAgLmVycm9ybGlzdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuODc1cmVtO1xuICAgIH1cbn1cblxuLmNvbnZlcnNhdGlvbi1iYWxsb29uIGxhYmVsLFxuLmNvbnZlcnNhdGlvbi1mb3JtIGxhYmVsLFxuLmJvYXJkLWZvcm0gbGFiZWxcbntcbiAgICBjb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICBmb250LWZhbWlseTogJ1dvcmsgU2FucycsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uY29udmVyc2F0aW9uLWJhbGxvb24gbGFiZWwgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmNvbnZlcnNhdGlvbi1iYWxsb29uIGxhYmVsIHNwYW46OmZpcnN0LWxldHRlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5jb252ZXJzYXRpb24tYmFsbG9vbiBsYWJlbDpmaXJzdC1sZXR0ZXIsXG4uY29udmVyc2F0aW9uLWZvcm0gZGl2IGxhYmVsOmZpcnN0LWxldHRlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDtcbn1cblxuLmNvbnZlcnNhdGlvbi1mb3JtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAzLjE4OHJlbTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDQlLCBhdXRvKSBtaW5tYXgoYXV0bywgMTQwMHB4KSBtaW5tYXgoMTQlLCBhdXRvKTtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMlIGF1dG8gMyU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cbiAgICAmX19oNCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgJl9fZHVyYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgaW5wdXQge21hcmdpbi1ib3R0b206IDA7fVxuICAgIH1cblxuICAgICZfX2N1c3RvbS1yaWNodGV4dCB7XG4gICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4zNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgbWFyZ2luLXRvcDogMS43NXJlbTtcbiAgICAgICAgLmRqYW5nby1ja2VkaXRvci13aWRnZXQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2hlY2tib3gge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgfVxuXG5cbiAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gICAgLmhlbHB0ZXh0IHtcbiAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAuYmxvY2sge1xuICAgICAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAgICAgICAgIG1hcmdpbjogMC4zNzVyZW0gMCAwLjY4OHJlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY3JlYXRlLWJ1dHRvbiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogODc1cHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pcy1wcmltYXJ5LmJ1dHRvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMuMzc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luOiAwLjM3NXJlbSAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmZvcm0tY29tcG9uZW50IHtcbiAgICAgICAgJl9fZHJvcC1ib3gge1xuICAgICAgICAgICAgbWFyZ2luOiAwLjM3NXJlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogMS44NzVyZW0gMy4xMjVyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBkYXNoZWQgJGNvbG9yLWdyYXktMjAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyYXktNTA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMC44NzVyZW07XG5cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMS44NzVyZW0gMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19kcm9wLWJveDpudGgtY2hpbGQoNCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAuODEzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbWFnZS1uYW1lIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheS01MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IHgtc21hbGw7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tZXNzYWdlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuODEzcmVtO1xuXG4gICAgICAgICAgICAmX19sYWJlbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjc1cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX191cGxvYWQtYnV0dG9ucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDEuODc1cmVtO1xuXG4gICAgICAgICAgICAmLS1yZW1vdmUsICYtLXZpZXcge1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi0tcmVtb3ZlIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtLXZpZXcge1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWNvbXBsZW1lbnRhcnktZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXVwbG9hZGVkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAwLjg3NXJlbTtcblxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gVXBsb2FkIGNhcmRcbi5kcm9wem9uZSB7XG4gICAgLnVwbG9hZCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtIC43NXJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogLjVyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICB9XG5cbiAgICAmX19oaW50LXNpemUge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXktNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAwLjg1ZW07XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAmLS1sYWJlbC1tYXJnaW4tMCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJl9fdXBsb2FkLWNhcmQtY29udGVudCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjE1ZW07XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgY29sb3I6JGNvbG9yLWdyYXktNTAwO1xuXG4gICAgICAgICZfX2ZpZWxkLXRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiRjb2xvci1ncmF5LTUwMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19oaW50IHtcbiAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4uY29tbWVudC1mb3JtIHtcbiAgICBAaW5jbHVkZSB1dGlsaXRpZXMoJ3BhZC0zcCBtYXJnaW4teDIgd2lkdGgtZnVsbCcpO1xuXG4gICAgYm9yZGVyLXJhZGl1czogJGNvbXBvbmVudC1ib3JkZXItcmFkaXVzO1xufVxuXG5cbi5jb21tZW50LWZvcm0ge1xuICAgIEBpbmNsdWRlIHV0aWxpdGllcygnY2VudGVyIHRleHQtYmxhY2snKTtcbiAgICBAaW5jbHVkZSB0aGVtZWQoJ2JhY2tncm91bmQnLCBsaWdodCk7XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIHV0aWxpdGllcygncmVndWxhciBtYXJnaW4tYjIgdGV4dC1ibGFjaycpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCckY29sb3Itd2hpdGUnKTtcbiAgICAgICAgbWFyZ2luOiBzaXplKDEpIDAgMCAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMGVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgZm9ybSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgJl9fY291bnQge1xuICAgICAgICBAaW5jbHVkZSB1dGlsaXRpZXMoJ3RleHQtNycpO1xuXG4gICAgICAgIGJvdHRvbTogMnJlbTtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdibGFjaycsICRhbHBoYTogMC41KTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgfVxuICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgnYmFja2dyb3VuZCcpO1xuXG4gICAgICAgIGJvcmRlci1jb2xvcjogY3NzLXZhcigtLXRoZW1lLWNvbG9yLCBjb2xvcignYnJhbmQnKSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uZXh0cmEtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdXRpbGl0aWVzKCdjZW50ZXInKTtcblxuICAgIG1hcmdpbjogMnJlbSBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG5cbiAgICBoMSB7XG4gICAgICAgIEBpbmNsdWRlIHV0aWxpdGllcygndGV4dC00IHVwcGVyY2FzZSB0ZXh0LWJyYW5kIHNhbnMtc2VyaWYgYm9sZCcpO1xuICAgIH1cbn1cblxuLnZvdGluZy1jYXJkIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDE4MywgMywgMC4xNSk7ICAvLyBMaWdodCBnb2xkIGJhY2tncm91bmRcbiAgICBwYWRkaW5nOiAyLjg3NXJlbSAyLjYyNXJlbSAxLjUzMXJlbSAzcmVtO1xuICAgIGdyaWQtcm93OiAxO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgYm90dG9tOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDAgMy4yNXJlbSAwO1xuICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3Byb2dyZXNzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDguNXJlbTtcbiAgICAgICAgICAgICYtYmFyIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5wcm9ncmVzcy1iYXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiB1bnNldDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNi4xODc1cmVtO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAmX19wcm9ncmVzcyxcbiAgICAgICAgICAgICAgICAmX19mZyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWJsYWNrLWFsdGVybmF0aXZlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmX19wcm9ncmVzcyB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLnByb2dyZXNzLWJhcl9fcHJvZ3Jlc3M7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJl9fZmcge1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5wcm9ncmVzcy1iYXJfX3Byb2dyZXNzO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX192YWx1ZXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2stYWx0ZXJuYXRpdmU7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFdvcmsgU2FucztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWNvbXBsZW1lbnRhcnktZ3JheTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBXb3JrIFNhbnM7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGFiZWwtLWJvbGQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGFiZWwtLXVuZGVybGluZSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FkZC1jb21tZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC4zNzVyZW07XG5cbiAgICAgICAgICAgICYtLXN1bW1hcnkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS45MzhyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWNvbXBsZW1lbnRhcnktZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGhyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci13aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbW1lbnQge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyNSU7XG4gICAgICAgICAgICBtYXJnaW46IDAuNXJlbSAwIDIuMTI1cmVtIDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcblxuICAgICAgICAgICAgJi1hdmF0YXIgaW1nIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5tYWluLWhlYWRlcl9fYXZhdGFyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXNob3cge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuMTI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwLjc1cmVtIDAgMS4wNjNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY29tbWVudF9fYnV0dG9ucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogODc1cHgpIHtcbiAgICAgICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0td2hpdGUsICYtLWJsdWUsICYtLWdyYXkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC44NzVyZW0gMS41cmVtO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS13aGl0ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWJsdWUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWdyYXkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGNvbG9yLWJ1dHRvbi1ncmF5O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItY29tcGxlbWVudGFyeS1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICZfX3ZvdGluZy1mb3JtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAmX19iYWNrIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jaG9pY2VzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDIuMjVyZW07XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgJi0tYWdyZWUsICYtLWRpc2FncmVlLCAmLS1za2lwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMi4zNzVyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDhyZW07XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMHB4O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1hZ3JlZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlOyAgLy8gQmx1ZSBmb3IgYWdyZWVcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWRpc2FncmVlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0M5OTAwOyAgLy8gRGFyayB5ZWxsb3cgZm9yIGRpc2FncmVlXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0NDOTkwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tc2tpcCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmxhY2stYWx0ZXJuYXRpdmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrLWFsdGVybmF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDMwcHgpIHtcbiAgICAgICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJl9fbWVzc2FnZSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMCAycmVtIDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2stYWx0ZXJuYXRpdmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiO1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMjUlO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgcGFkZGluZzogMS44NzVyZW0gMS42MjVyZW0gMC41MzFyZW0gMnJlbTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gNDtcbiAgICAgICAgfVxuICAgICAgICAmIHRleHRhcmVhIHtcbiAgICAgICAgICAgIGhlaWdodDogMzB2aDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbW1lbnQtYXZhdGFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuLmNvbW1lbnQtY2FyZCB7XG4gICAgbWF4LWhlaWdodDogNTI5cHg7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogODc1cHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbWl0LXRvb2x0aXAge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgMC43NXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcGluay1saWdodDtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICBtaW4taGVpZ2h0OiA0M3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMXB4O1xuXG4gICAgICAgICZfX2Fycm93IHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcGluay1saWdodDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICRjb2xvci1waW5rLWxpZ2h0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogODAlO1xuICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3VibWl0LWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMzEyNXJlbTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAganVzdGlmeS1pdGVtczogZW5kO1xuICAgIH1cbn1cblxuLm5vLW1hcmdpbiB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4udm90aW5nLWNhcmRfX3ZvdGluZy1mb3JtX19jaG9pY2VzLS1kaXNhZ3JlZSAubG9hZGVyLFxuLnZvdGluZy1jYXJkX192b3RpbmctZm9ybV9fY2hvaWNlcy0tYWdyZWUgLmxvYWRlciB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG59XG4udm90aW5nLWNhcmRfX3ZvdGluZy1mb3JtX19jaG9pY2VzLS1za2lwIC5sb2FkZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZSAhaW1wb3J0YW50O1xufVxuLnZvdGluZy1jYXJkX192b3RpbmctZm9ybV9fY2hvaWNlcy0tZGlzYWdyZWUgLmxvYWRlcixcbi52b3RpbmctY2FyZF9fdm90aW5nLWZvcm1fX2Nob2ljZXMtLWFncmVlIC5sb2FkZXIsXG4udm90aW5nLWNhcmRfX3ZvdGluZy1mb3JtX19jaG9pY2VzLS1za2lwIC5sb2FkZXIge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDg3NXB4KSB7XG4gICAgLmJvZHkge1xuICAgICAgICBtYXJnaW46IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwKCQkiLy8vIE1peGluIHRoYXQgZGVjb3JhdGVzIGEgZ2l2ZW4gZWxlbWVudCB0byBzaGFwZSBpdCBhcyBhIHRyaWFuZ3VsYXIgYXJyb3cuXG4vLy9cbi8vLyBAYXJnICRkaXJlY3Rpb24gLSBPbmUgb2YgdXAsIGRvd24sIGxlZnQsIHJpZ2h0XG4vLy8gQGFyZyAkc2l6ZSAtIFNpemUgb2YgdGhlIGFycm93IGVsZW1lbnRcbi8vLyBAYXJnICRjb2xvciAtIENvbG9yIG9mIHRoZSBhcnJvdyBlbGVtZW50XG5AbWl4aW4gY3JlYXRlLWFycm93KCRkaXJlY3Rpb24sICRzaXplOiAxcmVtLCAkY29sb3I6IGJsYWNrKSB7XG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAgb3IgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDJyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogMnJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCBvciAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgYm9yZGVyLXRvcDogMnJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBib3JkZXItYm90dG9tOiAycmVtIHNvbGlkO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMnJlbSBzb2xpZDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMnJlbSBzb2xpZDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBib3JkZXItbGVmdDogMnJlbSBzb2xpZDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiSW52YWxpZCBkaXJlY3Rpb246ICN7JGRpcmVjdGlvbn0hXCI7XG4gICAgfVxuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAwO1xufVxuIiwKCQkiLmJhbm5lciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGhlaWdodDogMjI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSBhbmQgKG1pbi13aWR0aDogMzIxcHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1OHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udmVyc2F0aW9uLWhlYWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaGFkb3c6IDBweCAxMHB4IDEwcHggIzAwMDAwMDMzO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgcGFkZGluZzogMS44NzVyZW0gMS42MjVyZW0gMS45MzhyZW0gMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkgYW5kIChtaW4td2lkdGg6IDMyMXB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgcGFkZGluZzogMS44NzVyZW0gMS42MjVyZW0gMS45MzhyZW0gMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWRlZmF1bHQtaW1nIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3N0YXRpYy9pbWcvY29tbWVudF9jYXJkL2NvbnZlcnNhdGlvbi10aXRsZS1iZy5zdmdcIik7XG4gICAgICAgIGhlaWdodDogMjI1cHg7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSBhbmQgKG1pbi13aWR0aDogMzIxcHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ncmFkaWVudCB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxuICAgICYtZ3JpZCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogNC44NzVyZW0gYXV0byAycmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDNyZW0gYXV0byAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcm93LWdhcDogLjVyZW07XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIH1cblxuICAgICZfX2dyYWRpZW50LCAmLS1kZWZhdWx0LWltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAuNzVlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdXb3JrIFNhbnMnXG4gICAgfVxuXG4gICAgJl9fbGFiZWwtLWRhcmsge1xuICAgICAgICBAZXh0ZW5kIC5jb252ZXJzYXRpb24taGVhZGVyX19sYWJlbDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdXb3JrIFNhbnMnO1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdW5zZXQ7XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNjRweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgICYtLXdoaXRlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19waXBlIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1icmFuZDtcbiAgICB9XG5cbiAgICAmX19udW1iZXJzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIuNXJlbTtcbiAgICAgICAgcmlnaHQ6IDRyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjYyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxLjhyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtIDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIH1cblxuICAgICAgICBkaXYge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdG9vbHRpcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIHRvcDogMy41cmVtO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgZGl2Om50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuMnJlbSAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQtbGlnaHRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIHRvcDogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb252ZXJzYXRpb24taGVhZGVyLWJ0biB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgd2lkdGg6IDQxcHg7XG4gICAgICAgIGhlaWdodDogNDFweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC5jb252ZXJzYXRpb24tZGFzaGJvYXJkIGRpdiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLmNvbnZlcnNhdGlvbi1kYXNoYm9hcmQgZGl2IHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICB9XG59XG4iLAoJCSIuY29udmVyc2F0aW9uLXNoYXJpbmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwMHB4KTtcbiAgICBoZWlnaHQ6IDMuNzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFjY2VudDsgIC8vIFJlZCBiYWNrZ3JvdW5kXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICYtLWZ1bGwtd2lkdGgge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDEuMjVyZW07XG5cbiAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAxcmVtO1xuXG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMS41cmVtO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgaSAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJyYW5kO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSwgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogNS4zNzVyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICAgICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGdhcDogLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLAoJCSIubW9kZXJhdGUge1xuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgIGdyaWQtZ2FwOiAuNXJlbTtcbiAgICB9XG5cbiAgICAuaGlkZSB7ZGlzcGxheTogbm9uZTt9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC4zMTI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuMzc1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmNvbW1lbnQtY29udGFpbmVyIHtcbiAgICAgICAgJl9fZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMzVzO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1yZWQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBiYWNrZ3JvdW5kLWFsZXJ0O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogM3M7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb21tZW50LWNvbnRhaW5lcl9fZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29tbWVudHMtcGFuZWwge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogLjVyZW07XG5cbiAgICAgICAgJl9fYWRkLWJ0biB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBqdXN0aWZ5LXNlbGY6IHN0YXJ0O1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDEvc3BhbiAxO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc2F2ZS1idG4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDIvc3BhbiAxO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIvc3BhbiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZXJyb3ItY29udGFpbmVyIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzIGxpbmVhciAwcywgaGVpZ2h0IC4wNXMgbGluZWFyIC41cztcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVkO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjVyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb21tZW50cy1jb250YWluZXIge1xuICAgICAgICBAZXh0ZW5kIC5sZWZ0LCAucGFkLWIzO1xuXG4gICAgICAgICZfX21lc3NhZ2Uge2NvbG9yOiAkY29sb3ItbmF2aWdhdGlvbi1oZWFkZXItdGV4dDt9XG5cbiAgICAgICAgJl9fc2F2ZS1idG4ge1xuICAgICAgICAgICAgQGV4dGVuZCAuY29tbWVudHMtcGFuZWxfX3NhdmUtYnRuO1xuXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29tbWVudCB7XG4gICAgICAgIEBleHRlbmQgLm1hcmdpbi1iMywgLnBhZC0zO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWdyYXk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC4zMTI1cmVtO1xuICAgICAgICBcbiAgICAgICAgJl9fdGV4dCB7Zm9udC1zaXplOiAxLjEyNXJlbTt9XG5cbiAgICAgICAgJl9fZGV0YWlscyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogLjVyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcblxuICAgICAgICAgICAgPiAqIHtmb250LXdlaWdodDogYm9sZH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2F1dGhvciB7QGV4dGVuZCAudGV4dC1hY2NlbnQ7fVxuXG4gICAgICAgICZfX2RhdGUge2NvbG9yOiAkY29sb3ItbmF2aWdhdGlvbi1oZWFkZXItdGV4dDt9XG4gICAgICAgIFxuICAgICAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAyLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICZfX2FjdGlvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjMxMjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNjI1cmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcblxuICAgICAgICAgICAgJiA+ICoge3RyYW5zaXRpb246IDBzO31cblxuICAgICAgICAgICAgaSB7bWFyZ2luLWxlZnQ6IDA7fVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtib3gtc2hhZG93OiB1bnNldH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucmVqZWN0ZWQgLmNvbW1lbnRfX2FjdGlvbi5yZWplY3QtYnRuLFxuICAgICAgICAmLmFwcHJvdmVkIC5jb21tZW50X19hY3Rpb24uYXBwcm92ZS1idG4ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyBiYWNrZ3JvdW5kLWFsZXJ0IHtcbiAgICAwJSwgMTAwJSB7YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItdGhlbWUtcmVkLCAwLjA1KX1cbiAgICA1MCUge2JhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXRoZW1lLXJlZCwgMC4xNSl9XG59IiwKCQkiLmNvbnZlcnNhdGlvbi13ZWxjb21lIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1JSBhdXRvIDUlO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDd2aCBhdXRvIDFmcjtcbiAgICB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCkge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNSUgYXV0byA1JTtcbiAgICAgICAgJl9fYnV0dG9uIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbiAgICBmb250LWZhbWlseTogJ1dvcmsgU2Fucyc7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gbWlubWF4KGF1dG8sIDgwMHB4KSBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMTB2aCBhdXRvIDFmcjtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgfVxuICAgIFxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgICAgIG1hcmdpbjogMCAwIDMuMTI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42N2VtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEuNjg4cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fbWVzc2FnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzM1ZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLS1tYXJnaW4tYm90dG9tIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3VidGl0bGUge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1kYXJrLWJsdWU7XG5cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMzRlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2J1dHRvbiwgJl9fYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFjY2VudCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHdpZHRoOiAyNTNweDtcbiAgICAgICAgaGVpZ2h0OiA1M3B4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMzM1ZW07IFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMi43NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy42MTZyZW07XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICAgICAgICAgZ2FwOiAxLjUzNXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICAgICAgfSBcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW5vLXBob3RvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI0NnB4O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwKCQkiLmJvYXJkLWRldGFpbCB7XG4gICAgLmJ1dHRvbi1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDIuMTg3NXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIFxuICAgICAgICAmX19lZGl0LWJ1dHRvbiwgJl9fZGVsZXRlLWJ1dHRvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAmX19kZWxldGUtYnV0dG9uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcmVkLW5lZ2F0aXZlO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICZfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICB9XG5cbiAgICAmX19zdGF0aXN0aWNzLWNvbnRhaW5lciB7XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIH1cblxuICAgICZfX2JvYXJkLXN0YXRpc3RpY3Mge1xuICAgICAgICAmLS1oaWRlIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1OXB4KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXNob3cge1xuICAgICAgICAgICAgLmNhcmRzLWRpdmlkZXItaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTlweCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcGxhY2UtaXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIFxuICAgICAgICAmLS1sZWZ0LXNpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBsYWNlLWl0ZW1zOiBiYXNlbGluZTtcbiAgICBcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjFyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC4zMTI1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgICYtLXJpZ2h0LXNpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTU5cHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuNTYyNXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNTYyNXJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJkcy1kaXZpZGVyLmJvYXJkLWRldGFpbF9fYm9hcmQtc3RhdGlzdGljcy0tc2hvdyB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTU5cHgpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbn1cblxuI2JnLW1vZGFsLmJvYXJkLWRldGFpbF9fYm9hcmQtc3RhdGlzdGljcy0tc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogLjc7XG4gIH0iLAoJCSIiLAoJCSJAaW1wb3J0IFwiLi4vLi4vY29uZmlnXCI7XG5AaW1wb3J0IFwiLi4vLi4vMV9zZXR0aW5ncy9zcGFjaW5nXCI7XG5AaW1wb3J0IFwiLi4vLi4vMV9zZXR0aW5ncy90eXBvZ3JhcGh5XCI7XG5cbiRtb2RhbC10cmFuc3BhcmVudC1iYWNrZ291bmQ6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiRtb2RhbC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG5cbi50b29scyB7XG4gICAgQGV4dGVuZCAuY29udGVudC1ncmlkO1xuICAgIEBleHRlbmQgLmNvbnRlbnQtZ3JpZC0tcGFkZGluZztcbiAgICBtYXgtd2lkdGg6IDcwdnc7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgbGFiZWwge1xuICAgICAgICB0ZXh0LWluZGVudDogdW5zZXQ7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC42cmVtO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06OmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiAwLjFlbTtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgfVxuICAgIC5oMiwgLmgzIHtcbiAgICAgICAgbWFyZ2luOiB1bnNldDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXBpbmstbGlnaHQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmgzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICB9XG5cbiAgICAmLWNvbnRhaW5lci1mdWxsLXdpZHRoIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAmLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi10YWJsZSB0ZCBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgJi10YWJsZSB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICB9XG59XG5cbi50b29scy1zZWN0aW9uLFxuLnRvb2xzLXNlY3Rpb24tMiB7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWJsdWU7XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICBwYWRkaW5nOiA1cHg7XG59XG5cbi50b29scy1zZWN0aW9uLTIge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi50b29scy1zZWN0aW9uIC5zY3Jvdyxcbi50b29scy1zZWN0aW9uLTIgLnNjcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuLnRvb2xzLXNlY3Rpb24gLnNjcm93IGRpdjpmaXJzdC1jaGlsZCxcbi50b29scy1zZWN0aW9uLTIgLnNjcm93IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgZmxleC1ncm93OiAyO1xuICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWJsdWU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnRvb2xzLXNlY3Rpb24gLnRvb2xzLWNvbnRlbnQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjVzO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZUluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XG4gICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLnRvb2xzIHtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDg3NXB4KSB7XG4gICAgLnRvb2xzLXNlbGVjdCB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG4gICAgLnRvb2xzLXNoYXJlIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDg3NnB4KSBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gICAgLnRvb2xzLXNlbGVjdCB7XG4gICAgICAgIHdpZHRoOiA0NzBweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEzMDFweCkge1xuICAgIC50b29scy1zZWxlY3Qge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDoxMjEwcHgpIHtcbiAgICAudG9vbHMtY2FyZC1leHBhbmQge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogUmVzcG9uc2l2ZSBjb2x1bW5zICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIC5jb2x1bW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxufVxuIiwKCQkiLypcbiBTUEFDSU5HXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8vIEJhc2VsaW5lIGdyaWQgbGluZXMgaGVpZ2h0LlxuLy8gRXZlcnkgc3BhY2luZyBtZXRyaWMgc2hvdWxkIGJlIGJhc2VkIG9uIHRoaXMuXG4kc3BhY2luZy1iYXNlbGluZTogOHB4ICFkZWZhdWx0O1xuXG4vLyBTcGFjaW5nIHZhbHVlcyBhcmUgZGV0ZXJtaW5lZCBiYXNlZCBvbiB5b3VyIHByb2plY3TigJlzIGdsb2JhbCBiYXNlbGluZSBncmlkLlxuLy8gSXQgaXMgbm90IHJlY29tbWVuZGVkIHRoYXQgeW91IG1vZGlmeSB0aGVzZSBmb2xsb3dpbmcgdmFyaWFibGVzXG4vLyAoaXQgY2FuIGJyZWFrIHlvdXIgdmVydGljYWwgcmh5dGhtKSwgYnV0IGlmIHlvdSBuZWVkIHRvLCB5b3UgY2FuLlxuJHNwYWNpbmctdW5pdDogJHNwYWNpbmctYmFzZWxpbmUgKiA0ICFkZWZhdWx0O1xuJHNwYWNpbmctdW5pdC10aW55LXRpbnk6ICRzcGFjaW5nLWJhc2VsaW5lICAtIDNweCAhZGVmYXVsdDtcbiRzcGFjaW5nLXVuaXQtdGlueTogJHNwYWNpbmctYmFzZWxpbmUgIWRlZmF1bHQ7XG4kc3BhY2luZy11bml0LXNtYWxsOiAkc3BhY2luZy1iYXNlbGluZSAqIDIgIWRlZmF1bHQ7XG4kc3BhY2luZy11bml0LWxhcmdlOiAkc3BhY2luZy1iYXNlbGluZSAqIDggIWRlZmF1bHQ7XG4kc3BhY2luZy11bml0LWh1Z2U6ICRzcGFjaW5nLWJhc2VsaW5lICogMTYgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciByYWRpdXNcbiRib3JkZXItcmFkaXVzLXRpbnk6ICRzcGFjaW5nLXVuaXQtdGlueSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAkc3BhY2luZy11bml0LXNtYWxsICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXM6ICRzcGFjaW5nLXVuaXQgIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogJHNwYWNpbmctdW5pdC1sYXJnZSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXJvdW5kOiA1MCUgIWRlZmF1bHQ7XG5cbi8vIFN0YW5kYXJkaXplIFVJIHRyZWF0bWVudHMuXG4kZ2xvYmFsLXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiIsCgkJIi8qXG4gRk9OVFMgRkFNSUxJRVMgQU5EIFNJWkVTXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCAnc3BhY2luZyc7XG5cbi8vIFRyYW5zZm9ybWF0aW9ucyBhbmQgd2VpZ2hcbiRmb250LWhlYWRpbmdzLXdlaWdodDogNDAwICFkZWZhdWx0O1xuXG4vLyBCYXNlIHR5cG9ncmFwaGljYWwgc2l6ZXNcbiRmb250LXNpemUtdGlueS10aW55OiA5cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLXRpbnk6ICgkZm9udC1zaXplLXRpbnktdGlueSArIDNweCkgIWRlZmF1bHQ7IC8vIDEycHhcbiRmb250LXNpemUtc21hbGw6ICgkZm9udC1zaXplLXRpbnkgKyAxcHgpICFkZWZhdWx0OyAvLyAxM3B4XG4kZm9udC1zaXplLWRlZmF1bHQ6ICgkZm9udC1zaXplLXNtYWxsICsgMnB4KSAhZGVmYXVsdDsgLy8gMTVweFxuJGZvbnQtc2l6ZS1sYXJnZTogKCRmb250LXNpemUtZGVmYXVsdCArIDJweCkgIWRlZmF1bHQ7IC8vIDE3cHhcbiRmb250LXNpemUtbGFyZ2VyOiAoJGZvbnQtc2l6ZS1sYXJnZSArIDNweCkgIWRlZmF1bHQ7IC8vIDIwcHhcbiRmb250LXNpemUtaHVnZTogKCRmb250LXNpemUtbGFyZ2VyICsgNHB4KSAhZGVmYXVsdDsgLy8gMjRweFxuJGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1kZWZhdWx0ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0OiAoJGZvbnQtc2l6ZSArICRzcGFjaW5nLXVuaXQtdGlueSkgIWRlZmF1bHQ7XG5cbi8vIEhlYWRpbmcgc2l6ZXNcbiRmb250LXNpemUtaDE6IDEuNCAqICRmb250LXNpemUtZGVmYXVsdCAhZGVmYXVsdDtcbiRmb250LXNpemUtaDI6IDEuMyAqICRmb250LXNpemUtZGVmYXVsdCAhZGVmYXVsdDtcbiRmb250LXNpemUtaDM6IDEuMiAqICRmb250LXNpemUtZGVmYXVsdCAhZGVmYXVsdDtcbiRmb250LXNpemUtaDQ6IDEuMSAqICRmb250LXNpemUtZGVmYXVsdCAhZGVmYXVsdDtcbiRmb250LXNpemUtaDU6IDEuMDUgKiAkZm9udC1zaXplLWRlZmF1bHQgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAxICogJGZvbnQtc2l6ZS1kZWZhdWx0ICFkZWZhdWx0O1xuIiwKCQkiLmRpdmlkZXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgbWF4LXdpZHRoOiA1MHJlbTtcbn1cblxuLmhlbHAtY2FyZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgODYsIDEzMCwgMC4yKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtIDFyZW0gMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJveC1zaGFkb3c6IDBweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgbWF4LXdpZHRoOiAzNzVweDtcbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOngtbGFyZ2U7XG4gICAgfVxufVxuXG4jaWRfYXV0aGVudGljYXRpb25fdHlwZSxcbiNpZF90ZW1wbGF0ZV90eXBlIHtcbiAgICAudG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG4gICAgLnRvb2x0aXAgLnRvb2x0aXB0ZXh0IHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICBvcGFjaXR5OiA1MCU7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgZm9udC1zaXplOiBzbWFsbDtcblxuICAgICAgICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCAqL1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLnRvb2x0aXA6aG92ZXIgLnRvb2x0aXB0ZXh0IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYWxpY2VibHVlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDQwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICB9XG5cbiAgICBsYWJlbDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1icmFuZC1saWdodDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyYW5kLWFsdGVybmF0ZTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgKyBsYWJlbCB7XG4gICAgICAgIGJvcmRlcjogMnB4IGRhc2hlZCAkY29sb3ItYnJhbmQtYWx0ZXJuYXRlO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjhyZW07XG4gICAgfVxufVxuXG4uY29sb3ItY2hvaWNlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuMXJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICB3aWR0aDogMS4ycmVtO1xufVxuXG4vKiBGbG9hdCBmb3VyIGNvbHVtbnMgc2lkZSBieSBzaWRlICovXG4uY29sdW1uIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLyogQ2xlYXIgZmxvYXRzIGFmdGVyIHRoZSBjb2x1bW5zICovXG4ucm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4udG9vbHMtZGl2aWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDEuNXJlbSAwO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBtYXJnaW46IDEuMzEzcmVtIDAgMCAwO1xufVxuXG4udG9vbHMtaWNvbi1zaGFyZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGltZyB7XG4gICAgICAgIG1hcmdpbjogLTZweCA0cHg7XG4gICAgfVxufVxuXG4jdG9vbHMtdGlwLXRleHQge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtYmxhY2s7XG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNXB4IDVweDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjJzO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi50b29scy10aXAtdGV4dC1zaG93IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi50b29scy10aXAtdGV4dC1oaWRkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udG9vbHMtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDA7XG59XG4uc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4udG9vbHMtY2FyZC1jb250YWluZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1uYXZpZ2F0aW9uLWhlYWRlcjtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaGFkb3c6IDBweCA0cHggNHB4ICRjb2xvci1jYXJkLXNoYWRvdztcbiAgICBtYXJnaW46IDAgYXV0byAwIDA7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgIGJvcmRlci1yYWRpdXM6IC41cmVtO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdXb3JrIFNhbnMnO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICB9XG59XG5cblxuLnRvb2xzLWNhcmQtY29udGVudCB7XG4gICAgbWFyZ2luOiAwIDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IDAgMXJlbSAwIDA7XG5cbiAgICAuaW5zdHJ1Y3Rpb24ge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrLWFsdGVybmF0aXZlLWxpZ2h0O1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBtYXJnaW46IDAgMCAuOHJlbSAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEuODEzcmVtIDAgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiA0NTBweDtcbiAgICB9XG59XG5cbi50b29scy1jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRjb2xvci1ibGFjaztcbn1cblxuLnRvb2xzLWNhcmQtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IDEycHggMCAwIDE5cHg7XG5cbiAgICAmLWltZyB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtYnV0dG9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogLjdyZW0gMCAxLjVyZW0gMDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW46IC41cmVtIC41cmVtIDAgMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi50b29scy1jYXJkLWZvb3RlciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMCAwLjc1cmVtIDAuNzVyZW0gMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogLjNyZW07XG4gICAgYnV0dG9uLmJsdWUsIGJ1dHRvbi5ncmV5IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIHdpZHRoOiAxNDVweDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYnV0dG9uLmdyZXkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWdyYXk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5O1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlO1xuICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICB9XG5cbiAgICBidXR0b24uYmx1ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtYmx1ZTtcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvb2xzLWNhcmQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xufVxuXG5idXR0b24uYmx1ZSwgYnV0dG9uLmdyZXkge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgd2lkdGg6IDE0NXB4O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLmdyZXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheTtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheTtcbiAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlO1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgIH1cbn1cblxuYnV0dG9uLmJsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtYmx1ZTtcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgfVxufVxuXG4udG9vbHMtc2V0dGluZ3MtZm9ybSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuODQ0cmVtO1xuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAgIH1cbiAgICBociB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYnJhbmQtYWx0ZXJuYXRlO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgbWF4LXdpZHRoOiAyNHJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIH1cbiAgICAuc2VjdGlvbi1jdXN0b20ge1xuICAgICAgICBtYXgtd2lkdGg6IDY2JTtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtdGFibGUtYWJvdXQge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAmLXNldHRpbmdzLWZvcm0ge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgaHIge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMHB4IDIwcHggMHB4O1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NDBweCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDIuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIHVsOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzJTtcbiAgICAgICAgICAgIHdpZHRoOiAzNSU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXN1Ym1pdC1idXR0b24ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG59XG5cbi50b29scy1zZXR0aW5ncy1mb3JtOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4udGl0bGUtdGhlbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMzEzcmVtO1xuICAgIC5hdmF0YXIge1xuICAgICAgICB3aWR0aDogMy40MzhyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDAuODQ0cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMjE5cmVtO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgIH1cbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgIG1hcmdpbjogdW5zZXQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjBweCkge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBsZWZ0OiAycmVtO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbGVmdDogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vZGFsLXRvb2xzLWNvbnRlbnR7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA3MCU7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogLjc1cmVtO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNzBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIjtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2MHB4KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG59XG5cbi5tb2RhbC10b29scy1jbG9zZXtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHotaW5kZXg6IDk5OTk7XG59XG5cbi5tb2RhbC10b29scy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDk5OTk7XG59XG4uY2xvc2UtbW9kYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNXB4O1xuICAgIHRvcDogMHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE3cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubW9kYWwtdG9vbHMtYmcge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNCk7XG4gICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgI3BhZ2Utd3JhcHBlciB7XG4gICAgICAgIC5tb2RhbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAxNSUgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICAudG9vbHMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuaDIudGV4dC1hY2NlbnQge1xuICAgIGEge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXBpbmstbGlnaHRcblxuICAgIH1cbn1cbiIsCgkJIi5jaGF0Ym90LW9wdGlvbnMge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC04cHg7XG5cbiAgICAvKiBTdHlsZSB0aGUgY291bnRlciBjYXJkcyAqL1xuICAgIC5jYXJkIHtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgcGFkZGluZzogMTRweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDQyYTQ2O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQ6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwIDhweCAxNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIH1cblxuICAgIC5pbWdjYXJkIHtcbiAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgIGhlaWdodDogNjVweDtcbiAgICB9XG4gICAgLmJhbGFuY2UtYmlnZ2VyLW1hcmdpbiB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgfVxufVxuXG5cblxuLmJvdHMtYnV0dG9ucy5zaGFyZS1idXR0b25zIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAtMjBweCA0MDBweCAwcHggMHB4O1xufVxuXG4gLmJvdHMtYnV0dG9ucyB7XG4gICAgYnV0dG9uIHtcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICB3aWR0aDogOThweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBidXR0b24uZ3JleSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgfSBcblxuICAgIGJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5O1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheTtcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtYmx1ZTtcbiAgICB9XG5cbiAgICBidXR0b24ucGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1vc2YtbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICAgIH0gXG5cbiAgICBidXR0b246Zmlyc3QtY2hpbGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtb3NmLWxpZ2h0O1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICB9XG59XG5cbi5wb2xsLWJvdC1pbnN0cnVjdGlvbnMge1xuICAgIG1heC13aWR0aDogNDEwcHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGxpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZS1saWdodDsgXG4gICAgICAgIG1hcmdpbjogMCAwIDAuNXJlbSAwO1xuICAgIH1cbn1cblxuXG4udG9vbC1kZXNjcmlwdGlvbntcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWF4LXdpZHRoOiA1MHJlbTtcbn1cbiIsCgkJIiNjdXN0b20tZG9tYWluLWxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDYwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdW5zZXQ7XG59XG5cbi5wcmV2aWV3LXRlbXBsYXRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDQwdnc7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUgdGJvZHkgdHIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4jZG9tYWluLWlucHV0IHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG59XG5cbi5pZnJhbWUtc2VjdGlvbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uZGlzcGxheS1kb3duIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogdW5zZXQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDJzO1xuICAgIH1cbiAgICAjaXNleHBhbmRlZDEsXG4gICAgI2lzZXhwYW5kZWQyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbiNkb3dubG9hZC1pY29uIHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBtYXJnaW46IGF1dG8gMC4zZW07XG59XG5cbiNpc2V4cGFuZGVkMTpjaGVja2VkICsgbGFiZWwgPiBpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4jaXNleHBhbmRlZDI6Y2hlY2tlZCArIGxhYmVsID4gaSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cblxuI2N1c3RvbS1maWVsZC1zZWN0aW9uLFxuI21haWxpbmctc2VjdGlvbiB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW4gMC41cztcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluIDAuNXM7XG4gICAgLW1vei1hbmltYXRpb246IGZhZGVJbiAwLjVzO1xufVxuXG4jY3VzdG9tLWZpZWxkLXNlY3Rpb24ge1xuICAgIGxhYmVsOmZpcnN0LWxldHRlciB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxufVxuXG4jbm8tY29tbWVudHMtaGVscHRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHJlbTtcbn1cblxuLm1vZGFsLXRvb2xzLWNvbnRlbnQubWFpbGluZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIC5jbG9zZS1tb2RhbCB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG59XG5cbi50b29scy1jYXJkLWNvbnRlbnQubWFpbGluZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW07XG59XG5cbi50b29scy1jYXJkLWZvb3Rlci5tYWlsaW5nIHtcbiAgICBtYXJnaW46IDA7XG59XG4iLAoJCSIuY2FyZC1vcGluaW9uLWNvbXBvbmVudCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICB3aWR0aDogODAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogMThweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjIxOXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItdGhlbWUtZ3JleS1saWdodDtcbiAgICBib3gtc2hhZG93OiAwcHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpOyBcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgXG4gICAgYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcGxhY2UtY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbn1cblxuLm9waW5pb24tY29tcG9uZW50LWNhcmQtbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IFxuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgd2lkdGg6IDIycmVtO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbn1cblxuLmgzIHtcbiAgICAmLS1zcGFjZSB7XG4gICAgbWFyZ2luOiAwIDAgLjYyNXJlbSAwICFpbXBvcnRhbnQ7XHRcbiAgICB9XG59XG5cbi50YWJzLXNwYWNlIHtcbiAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xufVxuXG4udG9vbHMtZGl2aWRlci5vcGluaW9uLWRpdmlkZXIge1xuICAgIG1hcmdpbi10b3A6IDIuNjg4cmVtO1xufVxuXG4ub3Bpbmlvbi1jb2wtMSB7XG4gICAgZGlzcGxheTogZmxleDsgXG4gICAgZ2FwOiAzLjE4OHJlbTtcbiAgICAmX19pbmZvIHtcbiAgICAgICAgd2lkdGg6IDM2JTtcbiAgICB9XG4gICAgLnRvb2xzLWNhcmQtYm9keS1pbWcgaW1ne1xuICAgICAgICBoZWlnaHQ6IDMuMzEzcmVtO1xuICAgIH1cbiAgICAuaGVscHRleHQub3Bpbmlvbi1oZWxwdGV4dCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItbGlnaHQtZ3JheTsgXG4gICAgICAgIGZvbnQtc2l6ZTogLjg3NXJlbTsgXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IFxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgIH1cbn1cblxuLm9waW5pb24tY29sLTIge1xuICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1saWdodC1ncmF5OyBcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyBcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOyBcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgICZfX2hpbnQge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXBpbmstbGlnaHQ7IFxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAmX19oaW50LWdlbmVyYXRlIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44MCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIC5mb3JtLWNvbXBvbmVudCB7XG4gICAgICAgICZfX21lc3NhZ2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRvb2xzLWNhcmQtZm9vdGVyLm9waW5pb24tY29tcG9uZW50IHtcbiAgICAgICAgICAgIG1hcmdpbjogLjc1cmVtIDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyBcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICAgICAgLnRvb2xzLWljb24tc2hhcmUge1xuICAgICAgICAgICAgICAgICZfX2NvbGxlY3Rpb24tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyBcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokY29sb3ItcGluay1saWdodDsgXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXBpbmstbGlnaHQ7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDsgXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IC43NXJlbTsgXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7IFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjY29weS1zbmlwcGV0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNy42ODhyZW07XG4gICAgICAgIHBhZGRpbmc6IC44MTNyZW0gMS4yNXJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggOHB4IDhweDsgXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWdyYXktMzAwOyBcbiAgICAgICAgbWF4LXdpZHRoOiBub25lOyBcbiAgICAgICAgbWFyZ2luOiAyLjA2M3JlbSAwIDEuMTg4cmVtOyBcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LTUwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdJbnRlcicsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgICZfX2NvcHktYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGhlaWdodDogMi42MjVyZW07XG4gICAgICAgIHBhZGRpbmc6IC41cmVtIDFyZW07XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6JGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlOyBcbiAgICAgICAgZ2FwOiAuMzc1cmVtO1xuICAgIH1cblxuICAgICZfX3Rvb2x0aXAge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IC43NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1waW5rLWxpZ2h0OyBcbiAgICAgICAgbWF4LXdpZHRoOiAxNi41NjNyZW07XG4gICAgICAgIGhlaWdodDogMi43NXJlbTsgXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgICAgIHRvcDogNXB4O1xuXG4gICAgICAgICZfX2Fycm93IHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcGluay1saWdodDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50OyBcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDoxMHB4IHNvbGlkICRjb2xvci1waW5rLWxpZ2h0OyBcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcmlnaHQ6IC41NjNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjY29weS1zbmlwcGV0LW1lc3NhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmNrZV90b3Age1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbiIsCgkJIi5kb21haW4tZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogNzZweDtcbiAgICBpbnB1dDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgbWF4LXdpZHRoOiA1NjVweDtcbiAgICB9XG4gICAgI2RvbWFpbi1zdWJtaXQge1xuICAgICAgICBoZWlnaHQ6IHVuc2V0O1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICB9XG59XG5cbi53ZWJjaGF0LWNhcmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IFxuICAgIG1heC1oZWlnaHQ6IGZpdC1jb250ZW50OyBcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDQ0NDOyBcbiAgICBib3gtc2hhZG93OiAwcHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpOyBcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IFxuICAgIG1hcmdpbi10b3A6IDlweDtcbiAgICBwYWRkaW5nOiAxcmVtIDAgMCAwO1xuXG4gICAgJl9fZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICB9XG5cbiAgICAmX19zZWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kaXZpZGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjNGM0YzQ7IFxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNS41cHg7IFxuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi53ZWJjaGF0LWludGVncmF0aW9ucyB7XG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4OyBcbiAgICAgICAgbWFyZ2luOiAyOXB4IDAgMTJweDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZS1saWdodDtcbiAgICB9XG5cbiAgICAmX190YWJsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB0Ym9keSB0ciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJi1yb3cge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MzBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWhlYWRlciB7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTQuNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgICAgICAgICBjb2xvcjogIzMwYmZkMztcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiYWJhYmE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hdmF0YXIge1xuICAgIGxlZnQ6IDE5cHg7IFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xuICAgIHdpZHRoOjYwcHg7IFxuICAgIGhlaWdodDogNjBweDtcbn1cblxuI2Zvcm0tc2l6ZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uYnV0dG9ucy1kaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7IFxuICAgIGdhcDogMjNweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMjNweDtcbn1cblxuLmRpdmlkZXItY2FyZCB7XG59XG5cbiN3ZWJjaGF0LWhlbHAtY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDsgXG4gICAgZ2FwOiAyMXB4OyBcbiAgICBtYXJnaW4tdG9wOiAxOHB4O1xufVxuXG4ud2ViY2hhdC10ZXh0LWVsZW1lbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtOTk5OXB4OyBcbn1cblxuLnRpcC10ZXh0LXBvc2l0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIGhlaWdodDogNDVweDtcbn1cblxuI2RvbWFpbi1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG4ud2lkdGgtZnVsbC1leHRlbmRlZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG4jZGVzY3JpcHRpb24taW5mbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4jdGgtcmVtb3ZlIHtcbiAgICB0ZXh0LWFsaWduOiBlbmQ7XG59XG5cbiN0ZC1yZW1vdmUge1xuICAgIHRleHQtYWxpZ246IGVuZDtcbn1cblxuIiwKCQkiQGltcG9ydCBcIi4uLy4uL2NvbmZpZ1wiO1xuQGltcG9ydCBcIi4uLy4uLzFfc2V0dGluZ3Mvc3BhY2luZ1wiO1xuQGltcG9ydCBcIi4uLy4uLzFfc2V0dGluZ3MvdHlwb2dyYXBoeVwiO1xuXG5cbi5kZXNhdGl2ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53YXJuaW5nLWNvbW1lbnRze1xuICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbn1cblxuLmdyb3VwLWNvbW1lbnRzIHtcbiAgcG9zaXRpb246IGZpeGVkOyAvKiBTdGF5IGluIHBsYWNlICovXG4gIHotaW5kZXg6IDEwMTA7IC8qIFNpdCBvbiB0b3AgKi9cbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTsgLyogRnVsbCB3aWR0aCAqL1xuICBoZWlnaHQ6IDEwMHZoOyAvKiBGdWxsIGhlaWdodCAqL1xuICBvdmVyZmxvdzogdW5zZXQ7IC8qIEVuYWJsZSBzY3JvbGwgaWYgbmVlZGVkICovXG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC10cmFuc3BhcmVudC1iYWNrZ291bmQ7IC8qIEJsYWNrIHcvIG9wYWNpdHkgKi9cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDg3NXB4KSB7XG5cbiAgLmdyb3VwLWNvbW1lbnRzLWNvbnRlbnQge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgfVxufVxuXG4vKiBncm91cC1jb21tZW50cyBDb250ZW50L0JveCAqL1xuLmdyb3VwLWNvbW1lbnRzLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAkbW9kYWwtc2hhZG93O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBtYXJnaW46IDE1JSBhdXRvOyAvKiAxNSUgZnJvbSB0aGUgdG9wIGFuZCBjZW50ZXJlZCAqL1xuICBtYXJnaW4tdG9wOiA1dmg7XG4gIHBhZGRpbmc6IDEuM3JlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0M0QzRDNDtcbiAgd2lkdGg6IDgwJTsgLyogQ291bGQgYmUgbW9yZSBvciBsZXNzLCBkZXBlbmRpbmcgb24gc2NyZWVuIHNpemUgKi9cbiAgbWF4LXdpZHRoOiA5MzBweDtcbiAgaGVpZ2h0OiA5MHZoO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG5cbiAgdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICB0YWJsZS1sYXlvdXQ6Zml4ZWQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0M0QzRDNDtcbiAgfVxuXG4gIHRkLCB0aCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDNEM0QzQ7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2hpdGUtc3BhY2U6IHdyYXA7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmctdG9wOiAxLjFyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4zcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICB0cntcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgdHI6bnRoLWNoaWxkKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgdHI6aG92ZXIsIHRyOmZvY3Vze1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgaGVhZGVye1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuM3JlbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDEuMXJlbSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4zcmVtO1xuICAgICAgY29sb3I6ICM2NjY2NjY7XG4gIH1cblxuICAuY29tbWVudHMtdGFibGV7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICB9XG5cbiAgLmNvbW1lbnRzLWlucHV0e1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMC45cmVtO1xuICAgICAgaGVpZ2h0OiAwLjlyZW07XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjMDQyQTQ2O1xuICAgICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB1bnNldDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDEwMTM7XG4gICAgICAmOjphZnRlciwgJjo6YmVmb3Jle1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgICY6YmVmb3Jle1xuICAgICAgICAgIC8vIHJlbW92ZSBvayBzZXRcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQyQTQ2XG4gICAgICB9XG5cbiAgICAgIC5vdmVyZmxvd3tcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICB9XG5cbiAgLnRhYmxlLXRleHR7XG4gICAgICB3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7XG4gIH1cblxuICAuZm9vdGVye1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIHBhZGRpbmctdG9wOiAxLjhyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC44cmVtICFpbXBvcnRhbnQ7XG5cbiAgfVxuICAuY29tbWFuZCB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbn1cblxuLmVkaXQtcG9vbC1jb250YWluZXJ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmVkaXQtcG9vbC1jb21tZW50c3tcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuLnBvb2xzLWNvbW1lbnRzLWRpdmlkZXJ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTVFNUU1O1xuICBtYXJnaW4tcmlnaHQ6IC0xLjNyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMS4zcmVtO1xuICB3aWR0aDogLW1vei1hdmFpbGFibGU7XG4gIG1hcmdpbi1ib3R0b206IDEuM3JlbTtcbn1cblxuLnBvb2wtdGV4dHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGxpbmUtaGVpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBjbGFtcCgzMGNoLDcxY2gsIDcxY2gpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbn1cblxuXG4uY2xvc2UtcmVwb3J0IHtcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luOiAwIC41cmVtO1xufVxuXG4uY2xvc2UtcmVwb3J0OmhvdmVyLFxuLmNsb3NlLXJlcG9ydDpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtYmxhY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsCgkJIi5tb2RhbC10b29scy10aXRsZSB7XG4gICAgaDMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtYmxhY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAyJSAxNCU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2MHB4KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVyZW07XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZzogMiUgNyU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tb2RhbC10b29scy1jYXJkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDczJTtcblxuICAgIC5jb2x1bW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuY2FyZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogaW5pdGlhbDtcblxuICAgICAgICAuY2FyZC10ZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgcGxhY2UtaXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIjtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIjtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmQtaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjNyZW07XG5cbiAgICAgICAgICAgICAgICAuaW1nY2FyZCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG4gICAgXG4gICAgLmNhcmQ6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwIDhweCAxNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIH1cbiAgICBcbiAgICAuYmFsYW5jZS1iaWdnZXItbWFyZ2luIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNjVweDtcbiAgICB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIC5jYXJkLXRleHQge1xuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY2FyZC1pY29uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIH1cbn1cblxuLm1vZGFsLXRvb2xzLWZvb3RlciB7XG4gICAgcCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IHVuZGVybGluZTtcbiAgICB9XG59IiwKCQkiLyogZ2VuZXJpYyBjbGFzc2VzICovXG4uY2VudGVyLWdyaWQge1xuICAgIGdyaWQtY29sdW1uOiAyLzM7XG59XG5cbi5jb252ZXJzYXRpb24tZGFzaGJvYXJkIHtcbiAgICAmLXNlY3Rpb24ge1xuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEuODc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44MTNyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRhc2hib2FyZC1iYWxsb29uIHtcbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDIuNXJlbSAwIDNyZW0gMDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIH1cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIGNvbG9yOiRjb2xvci10aGVtZS1yZXBvcnQtbGlnaHQtYmx1ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjNyZW07XG4gICAgfVxuICAgICZfX2xhYmVsLFxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG59XG5cbi5yZXBvcnQtY29udGFpbmVyIC5jb252ZXJzYXRpb24tZGFzaGJvYXJkIC5yZXBvcnQtY2FyZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDEuMzc1cmVtIDAgMS4xODc1cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQuNjg3NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWJsdWU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgJl9fbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwIDAgMDtcbiAgICB9XG5cbiAgICAmLS1tYXJnaW4tbGcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjY1cmVtO1xuICAgIH1cblxuICAgICYtLW1hcmdpbi1zbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNTZyZW07XG4gICAgfVxuXG59XG5cblxuLmNoYXJ0cy1zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMnJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMxMjVyZW07XG4gICAgICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuXG4gICAgI3ZvdGluZy10aW1lLWNoYXJ0IHtcbiAgICAgICAgaGVpZ2h0OiAyNXJlbTtcbiAgICAgICAgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGltZS1jaGFydCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gYXV0byBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRhdGUtcGlja2VyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG5cbiAgICAgICAgICAgICZfX2lucHV0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGdhcDogLjVyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1kYXJrLWdyYXk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuMjVyZW07XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWRhcmstZ3JheTtcbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3LjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZGFyay1ncmF5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnB1dDpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWludmFsaWQtZGF0ZXMge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtcmVkO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWxvYWRpbmcge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jaGFubmVscy1jaGFydCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAmX19oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogLjg1cmVtO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBhcnRpY2lwYW50LWZpbHRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAuM3JlbTtcblxuICAgICAgICAgICAgJl9fYnV0dG9ucyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBnYXA6IC41cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19idXR0b24ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci10aGVtZS1yZXBvcnQtZGFyay1ncmF5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1kYXJrLWdyYXk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41NjI1cmVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjgycmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgJi0tc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWRhcmstZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2J1dHRvbjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX19idXR0b246YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgLnRpbWUtY2hhcnQsXG4gICAgICAgICAgICAuY2hhbm5lbHMtY2hhcnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZXBvcnQtY29udGFpbmVyIC5jb252ZXJzYXRpb24tZGFzaGJvYXJkIC52b3Rpbmctc2VjdGlvbiB7XG4gICAgJl9fdGl0bGUge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDMuODc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjE5cmVtO1xuICAgIH1cblxufVxuXG4ucmVwb3J0LWNvbnRhaW5lciAuY29udmVyc2F0aW9uLWRhc2hib2FyZCAuZGFzaGJvYXJkLWNhcmQge1xuICAgIGZsZXg6IDIyLjUlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci10aGVtZS1yZXBvcnQtbGlnaHQtYmx1ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgcGFkZGluZzogMS4xODc1cmVtIDEuNTYyNXJlbSAxLjE4NzVyZW0gMS41NjI1cmVtO1xuXG4gICAgJi0tZml0LWNvbnRlbnQge1xuICAgICAgICBmbGV4OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgZ2FwOiAxLjI1cmVtO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gICAgfVxuXG4gICAgJl9fdmFsdWUge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuXG4gICAgICAgICYtLXdoaXRlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuXG4gICAgICAgIC5kYXNoYm9hcmQtY2FyZF9fdmFsdWUge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmVwb3J0LWNvbnRhaW5lciAuY29udmVyc2F0aW9uLWRhc2hib2FyZCAuY29tbWVudHMtc2VjdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi4xOXJlbTtcblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41NnJlbTtcbiAgICB9XG59XG5cbi5jbHVzdGVycy1zZWN0aW9uIHtcbiAgICAuY29udGVudC1ncmlkID4gKiB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyLzM7XG4gICAgfVxuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgM3JlbSAwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAmLS13aWRlLWNlbnRlciB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbSAwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlcG9ydC1jb250YWluZXIgLmNvbnZlcnNhdGlvbi1kYXNoYm9hcmQgLmNsdXN0ZXJzLXNlY3Rpb24sIC5jbHVzdGVycy1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWdyYXktYmx1ZTtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgIGdyaWQtY29sdW1uOiAxLzQ7XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiLCBcInNhbnMtc2VyaWZcIjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NoYXJ0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2RldGFpbCB7XG4gICAgICAgIGgyLCBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICBwLCBidXR0b24ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCI7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgIGhlaWdodDogMi42MjVyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWZpbGxlZCB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG1heC13aWR0aDogMjByZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLS1udWxsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAmLS1uby1tYXJnaW4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAmLS1wYWRkaW5nIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fY29tbWVudC1wZXJjZW50YWdlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgfVxuXG4gICAgJl9fbWFpbi1jb21tZW50IHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxufVxuXG4uc2NhdHRlci1zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzAlIGF1dG8gYXV0byBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMjVyZW07XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQxNHB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19maWx0ZXJzIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAyO1xuICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NoYXJ0IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyA1O1xuICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgaGVpZ2h0OiA0MDBweDtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi5yZXBvcnQtY29udGFpbmVyIC5jb252ZXJzYXRpb24tZGFzaGJvYXJkIC5zY2F0dGVyLXNlY3Rpb24ge1xuICAgIGdhcDogMi41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCI7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDM3LjVyZW07XG4gICAgICAgIG1pbi13aWR0aDogMTcuNXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMjVyZW07XG4gICAgfVxufVxuXG4ucmVwb3J0LWNvbnRhaW5lciAuY29udmVyc2F0aW9uLWRhc2hib2FyZCAuc2NhdHRlci1maWx0ZXIge1xuICAgICZfX2J1dHRvbi0taW5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1kYXJrLWdyYXkgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmX19maWx0ZXItYnktdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZGFyay1ncmF5O1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZGFyay1ncmF5O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItdGhlbWUtcmVwb3J0LWRhcmstZ3JheTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC41NjI1cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgICBoZWlnaHQ6IDEuODJyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgICAmX19jYXRlZ29yaWVzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWF4LXdpZHRoOiAxNC4zNzVyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgIH1cblxuICAgICZfX25vLWdyb3VwLXRleHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtZ3JleTtcbiAgICAgICAgd2lkdGg6IDEzLjQzNzVyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC41NjI1cmVtIDAuMzc1cmVtIDFyZW07XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlcG9ydC1jb250YWluZXIgLmNvbnZlcnNhdGlvbi1kYXNoYm9hcmQgLndvcmRzLWNsb3VkLXNlY3Rpb24ge1xuICAgICZfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS43NXJlbTtcbiAgICB9XG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAyNC4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi42MjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAxcmVtO1xuICAgICAgICAgICAgdG9wOiAxcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMxMjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLnJlcG9ydC1jb250YWluZXIgLmNvbnZlcnNhdGlvbi1kYXNoYm9hcmQge1xuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEzcmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAuMnJlbSAuOHJlbTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW46IHVuc2V0O1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmxleC1hbGlnbiB7XG4gICAgICAgIGdhcDogMS4yNXJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG59XG5cbi5yZXBvcnQtY29udGFpbmVyIC5jb252ZXJzYXRpb24tZGFzaGJvYXJkIC52b3RpbmctbW9kYWwtcmVwb3J0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1iYXNlLXBpbms7XG4gICAgfVxuXG4gICAgJl9fY2FyZC0taGlkZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmX19jYXJkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmFzZS1waW5rO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzJyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogMy44NzVyZW07XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdHJpYW5nbGUge1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBib3JkZXI6IDAuNDY4NzVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDAuOTM3NXJlbSBzb2xpZCAkY29sb3ItYmFzZS1waW5rO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gICAgLnRpbWUtY2hhcnQsXG4gICAgLmNoYW5uZWxzLWNoYXJ0IHtcbiAgICAgICAgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAjY2hhbm5lbC1jaGFydCB7XG4gICAgICAgIHdpZHRoOiAxNi41NjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTU5cHgpIHtcbiAgICAucmVwb3J0LWNvbnRhaW5lciAuY29udmVyc2F0aW9uLWRhc2hib2FyZCAucmVwb3J0LWNhcmQge1xuICAgICAgICBwYWRkaW5nOiAxLjg3NXJlbSAwIDEuNXJlbSAwO1xuICAgICAgICBncmlkLWNvbHVtbjogMi8zO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG5cbiAgICAgICAgJi0tZXh0ZXJuYWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEvNDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMlIGF1dG8gMyU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmVwb3J0LWNvbnRhaW5lciAuY29udmVyc2F0aW9uLWRhc2hib2FyZCAudm90aW5nLXNlY3Rpb24ge1xuICAgICAgICAuZGFzaGJvYXJkLWNhcmQge1xuICAgICAgICAgICAgZmxleDogNDUlO1xuICAgICAgICB9XG4gICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMS80O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJlcG9ydC1jb250YWluZXIgLmNvbnZlcnNhdGlvbi1kYXNoYm9hcmQgLmNvbW1lbnRzLXNlY3Rpb24ge1xuICAgICAgICBncmlkLWNvbHVtbjogMS80O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjU2cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAucmVwb3J0LWNvbnRhaW5lciAuY29udmVyc2F0aW9uLWRhc2hib2FyZCAuY2x1c3RlcnMtc2VjdGlvbiB7XG4gICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS43NnJlbTtcbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiLCBcInNhbnMtc2VyaWZcIjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RldGFpbC0tZmlsbGVkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NoYXJ0IHtcbiAgICAgICAgICAgIG1hcmdpbjogLjFyZW0gMCAuMXJlbSAwO1xuICAgICAgICAgICAgd2lkdGg6IDE4cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb21tZW50LXBlcmNlbnRhZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19tYWluLWNvbW1lbnQsXG4gICAgICAgIC5oZWxwdGV4dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnJlcG9ydC1jb250YWluZXIgLmNvbnZlcnNhdGlvbi1kYXNoYm9hcmQgLnNjYXR0ZXItc2VjdGlvbiB7XG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEuNzVyZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc2NhdHRlci1maWx0ZXIge1xuICAgICAgICAgICAgJl9fY2F0ZWdvcmllcyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJlcG9ydC1jb250YWluZXIgLmNvbnZlcnNhdGlvbi1kYXNoYm9hcmQgLndvcmRzLWNsb3VkLXNlY3Rpb24ge1xuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmNvbnZlcnNhdGlvbi1kYXNoYm9hcmQgLmZsZXgtYWxpZ24ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgICAgICBnYXA6IDBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5jb252ZXJzYXRpb24tZGFzaGJvYXJkX19idXR0b24ge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZXBvcnQtY29udGFpbmVyIC5jb252ZXJzYXRpb24tZGFzaGJvYXJkLnRpdGxlIHtcbiAgICAgICAgd2lkdGg6IDkwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4iLAoJCSIuZXhwb3J0LWJ1dHRvbiB7XG4gICAgY29sb3I6ICRjb2xvci1icmFuZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJyYW5kICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzEwcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmX19jYXJkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tdHJpYW5nbGUge1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBib3JkZXI6IDAuMzc1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuNzVyZW0gc29saWQgJGNvbG9yLWFjY2VudDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXJkLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xN3JlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjE2ZW07XG4gICAgfVxufSIsCgkJIkBpbXBvcnQgJ3BhZ2luYXRpb24nO1xuXG46Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5zY3JvbGwtdG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gICAgICAgIHBhZGRpbmc6IDIuMzEzcmVtIDAgMi42ODhyZW07XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDAuODEzcmVtO1xuICAgIH1cblxuICAgIGkge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICAmLS1mdWxsLXdpZHRoIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyA0O1xuICAgIH1cbn1cblxuI3JlcG9ydC1maWx0ZXJzLWZvcm0ge1xuICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jZGF0YXRhYmxlcy1jb250YWluZXIge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjkwcHgpO1xufVxuXG4jcmVwb3J0LXRhYmxlLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yZXBvcnQge1xuICAgICZfX2NvbW1lbnRzLCAmX191c2VycyB7XG4gICAgICAgICYtLWhpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGVhZCB0ciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGVhZCB0aCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRib2R5IHRyOm50aC1jaGlsZChvZGQpIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJhbmQtbGlnaHRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbW1lbnQsICZfX3VzZXIge1xuICAgICAgICBkaXY6bnRoLWNoaWxkKDIpLFxuICAgICAgICBkaXY6bnRoLWNoaWxkKDMpLFxuICAgICAgICBkaXY6bnRoLWNoaWxkKDQpLFxuICAgICAgICB7XG4gICAgICAgICAgICBmb250LXNpemU6IC45ZW07XG4gICAgICAgIH1cblxuICAgICAgICBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbW1lbnQsICZfX3VzZXIge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIGRpdjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1icmFuZDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb21tZW50IHtcbiAgICAgICAgZGl2Om50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLWRldGFpbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IFxuICAgICAgICAgICAgZ2FwOiAxLjM3NXJlbTsgXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlOyBcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7IFxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNDI1cmVtIDAuM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3VzZXIge1xuICAgICAgICBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYnJhbmQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcGVyY2VudGFnZXMge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICB9XG5cbiAgICAmX19maWx0ZXJzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktYnJpZ3RoZXI7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblxuICAgICAgICBpbnB1dCwgc2VsZWN0LCAub3JkZXJpbmcgc3BhbiwgLmNsdXN0ZXJzLWNvbnRhaW5lciBzcGFuLCAuY2x1c3RlcnMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLWlucHV0cyB7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQwcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3N0YXRpYy9pbWcvaWNvbnMvZ3JheS1zZWFyY2guc3ZnXCIpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLjYyNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMi4ycmVtO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1ncmF5LWJyaWd0aGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MHJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vcmRlcmluZyxcbiAgICAgICAgLmNsdXN0ZXJzLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiwgaSB7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub3JkZXJpbmcge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcblxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAuNXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IHVuc2V0O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTVlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jbHVzdGVycy1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jbHVzdGVycyB7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgLmNsdXN0ZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheS1kYXJrZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAuNXJlbTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYWNjZW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zb3J0aW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG5cbiAgICAgICAgICAgICNzb3J0LXVwLWljb24ge1xuICAgICAgICAgICAgICAgIHRvcDogMC4zNXJlbTtcbiAgICAgICAgICAgICAgICByaWdodDogLTAuMDVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNzb3J0LWRvd24taWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pY29uLS1ibHVlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwKCQkiLnBhZ2luYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA0LjMxM3JlbTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAyLjI4OXJlbTtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZ2FwOiAwLjcxOXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5LWJsdWU7XG4gICAgICAgIHBhZGRpbmc6IDEuMDk0cmVtIDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAmLXBhZ2Uge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIzLjhweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIzLjhweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tY3VycmVudCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWNsZWFyLWVsaXBzZSB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWluZGV4IHtcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGdhcDogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1hcnJvdyB7XG4gICAgICAgICAgICAmLS1maXJzdCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjg0NHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWxhc3Qge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjg0NHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbmZvIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICAgIH1cbiAgICB9XG59IiwKCQkiLmNvbW1lbnQtZGV0YWlsIHtcbiAgICBkaXNwbGF5OiBncmlkOyBcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDQuMzEzcmVtIDUuNjI1cmVtIDUuNzVyZW0gNS43NXJlbSBhdXRvIGF1dG87IFxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogNC4zMTNyZW0gNnJlbSAxMC41cmVtIDVyZW0gYXV0byBhdXRvO1xuICAgIH1cblxuICAgICZfX21vZGFsLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IFxuICAgICAgICBnYXA6IDEuMDEzcmVtOyBcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgXG4gICAgICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheS1kYXJrZXI7IFxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7IFxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgXG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX2NvbnRhaW5lci1pbmZvIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgXG4gICAgICAgIGdhcDogM3JlbTtcblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbmZvIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgXG4gICAgICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDsgXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IFxuXG4gICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDsgXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgXG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7IFxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNjdlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IFxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7IFxuICAgICAgICAgICAgbWFyZ2luOiAwLjc1cmVtIDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYXV0aG9yIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IFxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7IFxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3RhdGlzdGljcyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7IFxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0byBhdXRvOyBcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiA1cmVtO1xuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bzsgXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gICAgICAgICAgICByb3ctZ2FwOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idXR0b25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luOiAzcmVtIDAgMDtcblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICBtYXJnaW46IDIuMzc1cmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTM1MHB4KXtcbiAgICAgICAgICAgIG1hcmdpbjogMS4yNXJlbSAwIDA7XG4gICAgICAgIH0gICAgIFxuXG4gICAgICAgICYtbGluayB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7IFxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgJi0tbGVmdCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwKCQkiLmVudmlyb25tZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMS43ZW07XG5cbiAgICAmX190aXRsZS0tYWxpZ24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB9XG59XG5cbi5lbnZpcm9ubWVudC1jYXJkIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWJsdWU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHdpZHRoOiAyNjFweDtcbiAgICBoZWlnaHQ6IDIxNHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IHVuZGVybGluZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40Njc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxN3B4O1xuICAgIH1cblxuICAgICZfX293bmVyIHtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgICZfX293bmVyLCAmX19jb252ZXJzYXRpb24tY291bnQge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB1bnNldDtcbiAgICB9XG59XG5cbi5lbnZpcm9ubWVudC1jYXJkLS1sYXJnZSB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB3aWR0aDogNDE2cHg7XG4gICAgaGVpZ2h0OiAxMTlweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAyNnB4O1xufVxuXG5cbi5lbnZpcm9ubWVudC1zdGF0aXN0aWNzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0Ljc1ZW07XG5cbiAgICAmX19jYXJkcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMS43ZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luLXRvcDogMzZweDtcbiAgICB9XG59XG5cbi5yZWNlbnQtYm9hcmRzIHtcbiAgICAmX19maWx0ZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIH1cbiAgICAmX19pbnB1dCB7XG4gICAgICAgIHotaW5kZXg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICZfX3RleHQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC45MDI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBzcGFuOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuODhyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hZHZhbmNlZC1zZWFyY2gge1xuICAgICZfX2lucHV0LS1zZWFyY2gge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjokY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMzZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX3NlbGVjdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjNweDtcbiAgICB9XG4gICAgJl9fdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBlbmQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjJweDtcblxuICAgICAgICBoMSwgLmZpbHRlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VhcmNoLXRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgbWluLWhlaWdodDogNTAwcHg7XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgaGVpZ2h0OiA0NHB4O1xuICAgICAgICBcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmX19yb3cge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWdyYXk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcbiAgICAgICAgfVxuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMxMjVyZW07XG4gICAgICAgIFxuICAgICAgICAmLS13aWR0aC1zbSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJi0td2lkdGgtbWQge1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICZfX3RleHQtLWFsaWduIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgXG4gICAgJl9fdGV4dC0tZWxsaXBzZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xuICAgICAgICBsaW5lLWNsYW1wOiAxO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIH1cbiAgICAmLWZhdm9yaXRlLWNvdW50IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHVuc2V0O1xuICAgIH1cbn1cblxuLmNvbnZlcnNhdGlvbi1vcHRpb24tLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5idXR0b24tLWZhdm9yaXRlLFxuLmJ1dHRvbi0tcmVtb3ZlLWZhdm9yaXRlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbn1cblxuLmJ1dHRvbi0tcmVtb3ZlLWZhdm9yaXRlIHtcbiAgICBpIHtcbiAgICAgICAgY29sb3I6IHJnYmEoNDgsIDE5MSwgMjExLCAxKTsgXG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgY29sb3I6IHJnYmEoNDgsIDE5MSwgMjExLCAxKTsgXG4gICAgfVxuICAgIGE6aG92ZXIgPiBpIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbn1cblxuLmZhdm9yaXRlLWJvYXJkc19fY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxLjI1cmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDFmcik7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG5cbi5mYXZvcml0ZS1ib2FyZHNfX2NvdW50IHtcbiAgICBmb250LWZhbWlseTogJ1dvcmsgU2Fucyc7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuZW52aXJvbm1lbnQge1xuICAgICAgICBtaW4td2lkdGg6IDg0MHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDUzMHB4KSB7XG4gICAgLmVudmlyb25tZW50LWNhcmQtLWxhcmdlIHtcbiAgICAgICAgd2lkdGg6IDI2MHB4O1xuICAgIH1cblxuICAgIC5mYXZvcml0ZS1ib2FyZHNfX2NvbnRhaW5lciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxufSIsCgkJIiNwdWJsaWMtdGFnLWJ1dHRvbnMsICNteS10YWctYnV0dG9ucyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNwdWJsaWMtY29udmVyc2F0aW9ucywgI215LWNvbnZlcnNhdGlvbnMge1xuICBncmlkLWNvbHVtbjogMS80O1xufVxuXG4ubW92ZS1pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLnB1YmxpYy10YWctaGVhZGVyLCAubXktdGFnLWhlYWRlciwgLmNvbW1lbnRzLXRhZy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBwbGFjZS1pdGVtczogYmFzZWxpbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktZGVlcGVyO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZmxleC1mbG93OiB3cmFwO1xuICAgIHJvdy1nYXA6IDAuNzVyZW07XG4gICAgY29sdW1uLWdhcDogMS4yNXJlbTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICNwdWJsaWMtdGFnLWNob2ljZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGhlaWdodDogMi4yNXJlbTtcbiAgICAgIG1pbi13aWR0aDogMTNyZW07XG4gICAgICBtYXJnaW46IDAgLjQzOHJlbSAwIDA7XG4gICAgfVxuXG4gICAgI215LXRhZy1jaG9pY2UsICNteS1hbGwtdGFncywgLm15LXRhZy1oZWFkZXItLWFkZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuXG4gICAgLnB1YmxpYy10YWctaGVhZGVyLS1hZGQtLW5vdC1hbGxvd2VkIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuXG4gICAgJi0tYWRkIHtcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWJsdWU7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWJsdWU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgd2lkdGg6IDIuMjVyZW07XG4gICAgICBoZWlnaHQ6IDIuMjVyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luOiAwIDEuNXJlbSAwIDA7XG5cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW46IGF1dG8gMC42ZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGFncyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAuNzVyZW07XG4gICAgICBmbGV4LWZsb3c6IHdyYXA7XG5cbiAgICAgICYtLXNlbGVjdGVkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXBpbmstbGlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1waW5rLWxpZ2h0O1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgfVxuXG4gICAgICAmLS11bnNlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgfVxuXG4gICAgICAmLS1zZWxlY3RlZCwgJi0tdW5zZWxlY3RlZCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBwYWRkaW5nOiAwIC43NXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2FsbC0tdW5zZWxlY3RlZCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICBjb2xvcjogJGNvbG9yLXBpbmstbGlnaHQ7XG4gICAgfVxuXG4gICAgJl9fYWxsLS1zZWxlY3RlZCAge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXBpbmstbGlnaHQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcGluay1saWdodDtcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cbiAgICB9XG5cbiAgICAmX19hbGwtLXVuc2VsZWN0ZWQsICAmX19hbGwtLXNlbGVjdGVkICB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgcGFkZGluZzogMCAuNzVyZW07XG4gICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgICZfX3Rvb2x0aXAge1xuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IC43NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1waW5rLWxpZ2h0O1xuICAgICAgbWF4LXdpZHRoOiAxNi41NjNyZW07XG4gICAgICBoZWlnaHQ6IDYycHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zMTNyZW07XG5cbiAgICAgICZfX2Fycm93IHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1waW5rLWxpZ2h0O1xuICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6MTBweCBzb2xpZCAkY29sb3ItcGluay1saWdodDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcmlnaHQ6IC41NjNyZW07XG4gICAgICB9XG4gICAgfVxufVxuXG4uY29tbWVudHMtdGFnLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi10b3A6IDEuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNzVyZW07XG4gIHBhZGRpbmc6IDA7XG5cbiAgJi0tbm8tbWFyZ2luIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gICNjb21tZW50cy1zdGF0dXMtYnV0dG9ucyB7XG4gICAgZGlzcGxheTogY29udGVudHM7XG4gIH1cbn1cblxuLmhvbWUtaGVhZGVyIHtcbiAgJi0tYWRkIHtcbiAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi5teV9jb252ZXJzYXRpb25zLCAuY29udHJpYnV0aW9ucy1jb21tZW50cywgLmNvbnRyaWJ1dGlvbi12b3RlcyB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcblxuICAmX19tZXNzYWdlIHtcbiAgICBtYXJnaW46IDEuNzVyZW07XG4gICAgY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZGFyay1ncmF5O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgJi0tbm8tbWFyZ2luLXRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4jY3VycmVudC12b3RlcyB7XG4gIGhyIHtcbiAgICBtYXJnaW4tdG9wOiAyLjI4MXJlbTtcbiAgfVxufVxuXG4jY29tbWVudHMtY3VycmVudC1jYXJkcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDUwJSk7XG4gIGdyaWQtY29sdW1uLWdhcDogMS42MjVyZW07XG4gIGdyaWQtcm93LWdhcDogMS41cmVtO1xuICBjb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmNvbnRyaWJ1dGlvbi12b3RlcyB7XG4gICZfX2NhcmQge1xuICAgIG1hcmdpbjogMS43NXJlbSAwIDAgMDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgIGdyaWQtY29sdW1uLWdhcDogMS45MzhyZW07XG4gICAgZ3JpZC1yb3ctZ2FwOiAyLjI1cmVtO1xuICB9XG59XG5cbi5jb252ZXJzYXRpb24tc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IC45MzhyZW07XG5cbiAgJl9fdGl0bGUge1xuICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4gIC5zcGFuLWljb24ge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1saWdodC1ibHVlO1xuICB9XG59XG5cbi5jb21tZW50LXN1bW1hcnkge1xuICBwYWRkaW5nOiAxLjEyNXJlbSAxLjE4OHJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItdGhlbWUtcmVwb3J0LWxpZ2h0LWdyYXk7XG4gIG1heC13aWR0aDogNDMuNzVyZW07XG5cbiAgJl9fc3RhdHVzIHtcbiAgICBjb2xvcjogJGNvbG9yLXBpbmstbGlnaHQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAmX19pbmZvIHtcbiAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1kYXJrLWdyYXk7XG4gICAgZm9udC1mYW1pbHk6IFdvcmsgU2FucztcbiAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBtYXJnaW46IDEuMjVyZW0gMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIH1cbn1cblxuLmhvbWUtdGFicyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmFiYWJhO1xuICBvdmVyZmxvdzogdW5zZXQ7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcblxuICAmX19hZGQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1hcmdpbi1yaWdodDogMi42MjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuNnJlbTtcblxuICAgIGkge1xuICAgICAgY29sb3I6ICNGMDAwMDA7XG4gICAgICBtYXJnaW46IDAgMC42ODhyZW0gMCAwO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6ICNGMDAwMDA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG4gIC50YWJzIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi5pbnB1dC1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1icmlndGhlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGdhcDogMS4zMTNyZW07XG4gIHBhZGRpbmc6IDFyZW07XG5cbiAgJl9fZmlsdGVyLXRoZW1lLCAmX19maWx0ZXItdGhlbWU6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtb3NmLWxpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiBcIldvcmsgU2Fuc1wiO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAmX19zZWFyY2gge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAyLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwLjVyZW0gMC41NjNyZW0gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC42ODc1cmVtIDBweCAwLjY4NzVyZW0gMi4xODc1cmVtICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdXJsKCcvc3RhdGljL2ltZy9pY29ucy9ibHVlLXNlYXJjaC5zdmcnKTtcbiAgICB3aWR0aDogNTEuNSUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItY29tcGxlbWVudGFyeS1ncmF5O1xuICAgIH1cbiAgfVxuXG4gICZfX3dhcm4tbWVzc2FnZSB7XG4gICAgY29sb3I6ICRjb2xvci1yZWQtbmVnYXRpdmU7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuICAgIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4NzVweCkge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgfVxuICAgICAgICAmX19zZWFyY2gge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1maWx0ZXItY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4NzVweCkge1xuICAgIG1hcmdpbi1ib3R0b206IDByZW07XG4gICAgZ3JpZC1jb2x1bW46IDEvNDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gIC5wdWJsaWMtdGFnLWhlYWRlciwgLm15LXRhZy1oZWFkZXIsIC5jb21tZW50cy10YWctaGVhZGVyIHtcblxuICAgICNwdWJsaWMtdGFnLWNob2ljZSB7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgbWFyZ2luOiAwIC40MzhyZW0gMCAwO1xuICAgIH1cblxuICAgICYtLWFkZCB7XG4gICAgICBtYXJnaW46IDBweCAwLjdyZW0gMCAwO1xuICAgIH1cbiAgfVxuXG4gIC5jb21tZW50cy10YWctaGVhZGVyIHtcbiAgICAjYWxsLWNvbW1lbnRzLWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuY29tbWVudC1zdW1tYXJ5IHtcbiAgICBmb250LXNpemU6IC43NXJlbTtcbiAgfVxuXG4gICNjb21tZW50cy1jdXJyZW50LWNhcmRzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG5vbmU7XG4gIH1cblxuICAuY29udHJpYnV0aW9uLXZvdGVzIHtcbiAgICAmX19jYXJkIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuaG9tZS10YWJzIHtcbiAgICBvdmVyZmxvdzogc2Nyb2xsIGhpZGRlbjtcblxuICAgICZfX2FkZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogODc1cHgpIGFuZCAobWluLXdpZHRoOiAzMjFweCkge1xuICAucHVibGljLXRhZy1oZWFkZXIsIC5teS10YWctaGVhZGVyLCAuY29tbWVudHMtdGFnLWhlYWRlciB7XG5cbiAgICAmX190b29sdGlwIHtcbiAgICAgICZfX2Fycm93IHtcbiAgICAgICAgYm90dG9tOiAyLjFyZW07XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgbGVmdDogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaG9tZS10YWJzIHtcbiAgICBvdmVyZmxvdzogc2Nyb2xsIGhpZGRlbjtcbiAgICAmX19hZGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICB9XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgIC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gICAgfVxuICB9XG5cbiAgI2NvbW1lbnRzLWN1cnJlbnQtY2FyZHMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbm9uZTtcbiAgfVxuXG4gIC5jb21tZW50LXN1bW1hcnkge1xuICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICB9XG5cbiAgLmNvbnRyaWJ1dGlvbi12b3RlcyB7XG4gICAgJl9fY2FyZCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLAoJCSIudmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW5wdXRzLW1pbi1zaXple1xuICBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdHtcbiAgICBtaW4td2lkdGg6IHVuc2V0O1xuICB9XG59XG5cbi5wcm9maWxlLXBob3RvIHtcbiAgICBkaXNwbGF5OiByZWxhdGl2ZTtcbiAgICAmX19lZGl0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDQ1JTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2Zvcm0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAmLS11bmZvY3VzZWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk2LCAxOTYsIDE5NiwgMC44MCk7XG4gICAgICAgIHdpZHRoOiAxMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxMnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIH1cbn1cblxuI2lkX3Byb2ZpbGVfcGhvdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnByb2ZpbGUtaGVhZGVye1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICBjb2x1bW4tZ2FwOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMi41cmVtO1xuXG4gICZfX3Bob3RvIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICYtLXJvdW5kZWQge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICA1MCU7XG4gICAgICB9XG4gICAgaW1ne1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cblxuICBoMXtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgY29sb3I6ICRjb2xvci1iYXNlLXBpbms7XG4gICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCI7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuICBoNHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbjogMC42MnJlbSAwcHg7XG4gIH1cbiAgJi0tZWRpdHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW1ne29wYWNpdHk6IDAuMzt9XG4gICAgJl9fb3B0aW9ucyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAzNCU7XG4gICAgICB0b3A6IDMxJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgaW5wdXR7ZGlzcGxheTogbm9uZTt9XG4gICAgICBsYWJlbHtcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1kYXJrLWJsdWU7XG4gICAgICB9XG4gICAgICBmb3Jte1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn1cblxuLmZvcm0tZWxlbWVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwcHggMHB4O1xufVxuXG4uZm9ybS1wcm9maWxlLS1yb3ctc2VwYXJhdGlvbntcbiAgZ3JpZC1yb3ctZ2FwOiAyLjU2cmVtO1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xufVxuXG4uZm9ybS1wcm9maWxlLS1zdWJ0aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLmZvcm0tcHJvZmlsZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDYsIDFmcik7XG4gIGdyaWQtY29sdW1uLWdhcDogMS40cmVtO1xuICBncmlkLXJvdy1nYXA6IDFyZW07XG5cbiAgc3BhbntcbiAgICBmb250LWZhbWlseTogJ1dvcmsgU2Fucyc7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgfVxuICAmX19uYW1lIHtcbiAgICBncmlkLWFyZWE6IDEgLyAxIC8gMiAvIDM7XG5cbiAgfVxuICAmX19lbWFpbCB7XG4gICAgZ3JpZC1hcmVhOiAxIC8gMyAvIDIgLyA1O1xuICB9XG4gICZfX2NpdHkge1xuICAgIGdyaWQtYXJlYTogMiAvIDEgLyAzIC8gMjtcbiAgfVxuICAmX19zdGF0ZSB7XG4gICAgZ3JpZC1hcmVhOiAyIC8gMiAvIDMgLyAzO1xuICB9XG5cbiAgJl9fY291bnRyeSB7XG4gICAgZ3JpZC1hcmVhOiAyIC8gMyAvIDMgLyA0O1xuICB9XG5cbiAgJl9fYmlydGgtZGF0ZSB7XG4gICAgZ3JpZC1hcmVhOiAzIC8gMSAvIDQgLyAyO1xuICB9XG5cbiAgJl9fb2NjdXBhdGlvbiB7XG4gICAgZ3JpZC1hcmVhOiAzIC8gMiAvIDQgLyA0O1xuICB9XG5cbiAgJl9fZWR1Y2F0aW9uIHtcbiAgICBncmlkLWFyZWE6IDMgLyA0IC8gNCAvIDU7XG4gIH1cblxuICAmX19lZHVjYXRpb24tLWRldGFpbCB7XG4gICAgZ3JpZC1hcmVhOiAzIC8gMyAvIDQgLyA1O1xuICB9XG5cbiAgJl9fZXRobmljaXR5IHtcbiAgICBncmlkLWFyZWE6IDQgLyAxIC8gNSAvIDI7XG4gIH1cblxuICAmX19nZW5kZXJfb3RoZXIge1xuICAgIGdyaWQtYXJlYTogNCAvIDIgLyA1IC8gNDtcbiAgfVxuXG4gICZfX3BvbGl0aWNhbF9hY3Rpdml0eSB7XG4gICAgZ3JpZC1hcmVhOiA1IC8gMSAvIDcgLyAzO1xuICB9XG5cbiAgJl9fcG9saXRpY2FsX2FjdGl2aXR5LS1kZXRhaWx7XG4gICAgZ3JpZC1hcmVhOiA1IC8gMSAvIDcgLyAyO1xuICB9XG5cbiAgJl9fYmlvZ3JhcGh5IHtcbiAgICBncmlkLWFyZWE6IDUgLyAzIC8gNyAvIDU7XG4gIH1cblxuICAmX19iaW9ncmFwaHktLWRldGFpbCB7XG4gICAgZ3JpZC1hcmVhOiA1IC8gMiAvIDcgLyA1O1xuICB9XG5cbiAgJl9fY3VycmVudC1wYXNzd29yZCB7XG4gICAgZ3JpZC1hcmVhOiAxIC8gMSAvIDEgLyAxO1xuICAgIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10ge21hcmdpbjogLTEuMTI1cmVtIDAgMHJlbSAwO31cbiAgfVxuXG4gICZfX25ldy1wYXNzd29yZCB7XG4gICAgZ3JpZC1hcmVhOiAyIC8gMSAvIDIgLyAyO1xuICAgIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10ge21hcmdpbjogLTEuMTI1cmVtIDAgMHJlbSAwO31cbiAgfVxuXG4gICZfX2NvbmZpcm0tcGFzc3dvcmQge1xuICAgIGdyaWQtYXJlYTogMjtcbiAgfVxuXG4gICZfX3NhdmUge1xuICAgIGdyaWQtYXJlYTogMjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgaW5wdXQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gICZfX2VkaXQge1xuICAgIGdyaWQtYXJlYTogNiAvIDQgLyA2IC8gNDtcbiAgfVxuXG4gIHNlbGVjdCwgdGV4dGFyZWF7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLS1idXR0b25ze1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgIGNvbHVtbi1nYXA6IDJyZW07XG4gICAgaW5wdXQsIGEge1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAxLjU2MjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmFzZS1waW5rICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbn1cblxuXG5AbWVkaWEgKG1heC13aWR0aDo5MDBweCl7XG5cbiAgLnByb2ZpbGUtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwcHggMS44OHJlbTtcbiAgfVxuXG4gIC5mb3JtLWVsZW1lbnQge1xuICAgIHBhZGRpbmc6IDAgMC42cmVtO1xuICB9XG5cbiAgLnByb2ZpbGUtaGVhZGVye1xuICAgIHBhZGRpbmctYm90dG9tOiAzLjZyZW07XG4gIH1cblxuICAuZm9ybS1wcm9maWxlLS1yb3ctc2VwYXJhdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMi41cmVtO1xuICB9XG5cbiAgLmZvcm0tcHJvZmlsZXtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgICYtLWJ1dHRvbnN7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmX19zYXZlIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5wcm9maWxlLWhlYWRlcntcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICZfX3RleHR7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIGgxe1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuIiwKCQkiLypcbiBDT0xMQVBTSUJMRSBMSVNUXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vL1xuLy8uQ29sbGFwc2libGVMaXN0IHtcbi8vICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4vL1xuLy8gICAgaDIge1xuLy8gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbi8vICAgICAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4vLyAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbi8vICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuLy9cbi8vICAgICAgICBpLCBzcGFuIHtcbi8vICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XG4vLyAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuLy8gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4vLyAgICAgICAgfVxuLy8gICAgICAgIGkge1xuLy8gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4vLyAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xuLy8gICAgICAgIH1cbi8vICAgIH1cbi8vICAgICYtZGF0YSB7XG4vLyAgICAgICAgPiB1bCwgPiBsaSB7XG4vLyAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4vLyAgICAgICAgICAgIG1hcmdpbjogMDtcbi8vICAgICAgICB9XG4vLyAgICAgICAgPiB1bCA+IGxpIHtcbi8vICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2xvci1oaW50O1xuLy8gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuLy8gICAgICAgICAgICA+ICoge1xuLy8gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4vLyAgICAgICAgICAgIH1cbi8vICAgICAgICB9XG4vLyAgICB9XG4vLyAgICAmLS1oaWRkZW4ge1xuLy8gICAgICAgID4gaDIgPiBpIHtcbi8vICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGVYKC01MCUpO1xuLy8gICAgICAgIH1cbi8vICAgIH1cbi8vfVxuIiwKCQkiOnJvb3Qge1xuICAgIC0tZHQtcm93LWhvdmVyOiA0OCwgMTkxLCAyMTE7XG4gICAgLS1kdC1jb2x1bW4tb3JkZXJpbmc6IDQ4LCAxOTEsIDIxMTtcbn1cblxuZGl2LmR0LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogLS4zcmVtO1xufVxuXG50YWJsZS5kYXRhVGFibGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG4iLAoJCSIkY2x1c3RlcnMtYnV0dG9uLWhlaWdodDogMi4zMTNyZW07XG5cbiNoci1kaXZpZGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5O1xuICBtYXJnaW46IDEuNHJlbSAwIDEuNnJlbTtcbn1cblxuI2NsdXN0ZXItZmlsdGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyLjMxM3JlbSBhdXRvO1xuICBncmlkLWdhcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAmID4gKiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4uZm9ybS1lbGVtZW50cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMi4zMTJyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgJiA+ICoge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmZvcm0tY2x1c3Rlci1kZXNjcmlwdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMXJlbTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDEuMTg3cmVtIGF1dG8gMS4xODdyZW0gMWZyO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICB0ZXh0LWluZGVudDogdW5zZXQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE4OHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgdWwuZXJyb3JsaXN0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogMC44MTNyZW07XG4gICAgICBjb2xvcjogJGNvbG90LWVycm9saXN0LXJlZDtcbiAgICAgIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgaW5wdXQsIHRleHRhcmVhIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYnJpZ2h0LWJsdWU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxM3JlbTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gICNjbHVzdGVyLW5hbWU6OnBsYWNlaG9sZGVyLCAjY2x1c3Rlci1kZXNjcmlwdGlvbjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3ItY29tcGxlbWVudGFyeS1ncmF5O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cbn1cblxuLmZvcm0tY2x1c3Rlci1wZXJzb25hcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1yb3ctZ2FwOiAxcmVtO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IDEuMTg3cmVtIDExLjVyZW0gYXV0byBhdXRvIGF1dG87XG5cbiAgI3N0ZXJlb3R5cGVzX2xhYmVsIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTg4cmVtO1xuICAgIHRleHQtaW5kZW50OiB1bnNldDtcblxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLmRpc2FibGUtdG9vbHRpcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRvb2x0aXAtcGVyc29uYSB7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIGhlaWdodDogMS4zNzVyZW07XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXRvb2x0aXAtcmVkO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC4zNzVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgcCB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjc1cmVtO1xuICAgICAgY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgIH1cbiAgfVxuXG4gIC5uZXctcGVyc29uYS1zaG9ydGN1dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDFyZW07XG5cbiAgICAjbmV3X3BlcnNvbmFfY2hlY2sge1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDAuMzc1cmVtO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiAwLjllbTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAjbmV3LXBlcnNvbmEtdGV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDIuMjVyZW07XG4gICAgYm90dG9tOiAwLjMxM3JlbTtcblxuICAgIC5sYWJlbC1uZXctcGVyc29uYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgICBjb2xvcjogJGNvbG9yLWJsYWNrLWFsdGVybmF0aXZlO1xuICAgICAgdGV4dC1pbmRlbnQ6IHVuc2V0O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgI3RleHQtbmV3LXBlcnNvbmEge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuXG4uaGludCB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDFyZW07XG4gIGNvbG9yOiAkY29sb3ItY29tcGxlbWVudGFyeS1ncmF5O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGl0bGUtY2x1c3RlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS44MTNyZW07XG4gIG1hcmdpbjogMS44cmVtIDAgLjhyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5wZXJzb25hcy1saXN0IHtcbiAgc2VsZWN0I2lkX3N0ZXJlb3R5cGVzIHtcbiAgICBwYWRkaW5nOiAuM3JlbSAuNXJlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1icmlnaHQtYmx1ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEzcmVtO1xuICAgIHNjcm9sbGJhci13aWR0aDogYXV0bztcbiAgICBzY3JvbGxiYXItY29sb3I6ICRjb2xvci1icmlnaHQtYmx1ZSB0cmFuc3BhcmVudDtcblxuICBvcHRpb24ge1xuICAgIG1hcmdpbjogMC40MzhyZW0gMDtcbiAgICBwYWRkaW5nOiAuOXJlbSAwLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkY29sb3ItY29tcGxlbWVudGFyeS1ncmF5O1xuICB9XG59XG4gIHNlbGVjdCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgc2VsZWN0Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDAuODc1cmVtO1xuICB9XG5cbiAgc2VsZWN0Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICB9XG5cbiAgc2VsZWN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyaWdodC1ibHVlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICAgIGJvcmRlcjogNXB4IHNvbGlkICRjb2xvci13aGl0ZTtcbiAgfVxufVxuXG4jY2x1c3Rlci1zZWxlY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMXJlbTtcbiAgbWF4LWhlaWdodDogNi42MnJlbTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZy1ib3R0b206IDAuMTg4cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAuNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBhdXRvO1xuICBzY3JvbGxiYXItY29sb3I6ICRjb2xvci1icmlnaHQtYmx1ZSB0cmFuc3BhcmVudDtcbn1cblxuI2NsdXN0ZXItc2VsZWN0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4jY2x1c3Rlci1zZWxlY3Q6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDAuODc1cmVtO1xufVxuXG4jY2x1c3Rlci1zZWxlY3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xufVxuXG4jY2x1c3Rlci1zZWxlY3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyaWdodC1ibHVlO1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgYm9yZGVyOiA1cHggc29saWQgJGNvbG9yLXdoaXRlO1xufVxuXG4jbmV3LWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItcGluay1saWdodDtcbiAgYm9yZGVyOiAzcHggc29saWQgJGNvbG9yLXBpbmstbGlnaHQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5vcHRpb25zLWdyb3VwcyB7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgYm9yZGVyOiAzcHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5O1xuICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmF5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIHBhZGRpbmc6IDAgMC45cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xufVxuXG4uc2VsZWN0LWJ1dHRvbiB7XG4gIGhlaWdodDogJGNsdXN0ZXJzLWJ1dHRvbi1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1icmlnaHQtYmx1ZTtcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgYm9yZGVyOiAzcHggc29saWQgJGNvbG9yLWJyaWdodC1ibHVlO1xufVxuXG4jbmV3LWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jbmV3LWJ1dHRvbiwgLm9wdGlvbnMtZ3JvdXBzIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEzcmVtO1xufVxuXG4ubm8tY2x1c3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheTtcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uY2xvc2UtbW9kYWwtYnRuIHtkaXNwbGF5OiBub25lO31cblxuLy8gRURJVCBFTEVNRU5UU1xuXG4uZWRpdC1idXR0b25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxLjg3NXJlbTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgaW5wdXQge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICB9XG5cbiAgI3NhdmUtZWRpdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgcGFkZGluZzogMS4zN3JlbSAxLjU0cmVtO1xuICAgIHdpZHRoOiBtaW4tY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLmRlbGV0ZS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1yZWQtbmVnYXRpdmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXJlZC1uZWdhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjU2M3JlbTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIHBhZGRpbmc6IDEuMzdyZW0gLjlyZW07XG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICBpIHtcbiAgICAgIG1hcmdpbjogMC4zMTNyZW07XG4gICAgfVxuICB9XG5cbiAgLmRpdmlkZXItbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5tYW5hZ2UtcGVyc29uYXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgcGFkZGluZzogMS4zN3JlbSAxLjA2M3JlbTtcbiAgd2lkdGg6IDEzLjg3NXJlbTtcbiAgYmFja2dyb3VuZDogJGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlO1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gIGJvcmRlci1yYWRpdXM6IDEuNTYzcmVtO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgaSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIG1hcmdpbjogMC41ZW07XG4gIH1cbn1cblxuLm1hbmFnZS1wZXJzb25hczpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1yZXBvcnQtYmx1ZSAhaW1wb3J0YW50O1xufVxuXG4ubWFuYWdlLXBlcnNvbmFzLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiA0LjYyNXJlbTtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4uY3JlYXRlLWdyb3VwLWJ0biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHBhZGRpbmc6IDEuMzdyZW0gMS41NHJlbTtcbiAgd2lkdGg6IG1pbi1jb250ZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci10aGVtZS1yZXBvcnQtYmx1ZTtcblxuICBpIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uZGlzYWJsZS1kaXYge1xuICBjb2xvcjogJGNvbG9yLWNvbXBsZW1lbnRhcnktZ3JheSAhaW1wb3J0YW50O1xufVxuXG4uc2F2ZS1lZGl0cy1idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItY29tcGxlbWVudGFyeS1ncmF5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1jb21wbGVtZW50YXJ5LWdyYXkgIWltcG9ydGFudDtcbn1cblxuLmZvcm0tbW9kYWwtZGVsZXRlLXNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNsdXN0ZXItbW9kYWwge1xuXG4gICAgJl9fcGFydGljaXBhbnRzLFxuICAgICZfX2hlYWRlcixcbiAgICAmX19jb21tZW50cyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgICAgICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQxNHB4KSB7XG4gICAgICAgICAgICAmIGgxIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbW1lbnRzIHtcbiAgICAgICAgLmNvbW1lbnQtc3RhdHMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LTUwMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbW1lbnQtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFlbSAwIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4NzVweCkge1xuICAuZWRpdC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgfVxuXG4gICNuZXctYnV0dG9uLCAub3B0aW9ucy1ncm91cHMge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuXG4gIC5mb3JtLWVsZW1lbnRzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICYgPiAqIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNsdXN0ZXItZGVzY3JpcHRpb24ge1xuICAgICNjbHVzdGVyLW5ldyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNsdXN0ZXItcGVyc29uYXMge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAubmV3LXBlcnNvbmEtc2hvcnRjdXQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgI25ld19wZXJzb25hX2NoZWNrIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjbmV3LXBlcnNvbmEtdGV4dCB7XG4gICAgICBsZWZ0OiAxLjg3NXJlbTtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgfVxuXG4gICAgLnRvb2x0aXAtcGVyc29uYSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgfVxuXG4gICAgLmJ0bi1jb250YWluZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLnBlcnNvbmFzLWxpc3Qge1xuICAgIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgICAgcGFkZGluZzogLjNyZW0gLjI1cmVtIC4zcmVtIDAuNnJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5uZXctZ3JvdXAtbW9kYWwge1xuICAgIGxlZnQ6IDE1JTtcbiAgICB0b3A6IDE1JTtcbiAgICB3aWR0aDogNzAlO1xuICB9XG5cbiAgLmVkaXQtYnV0dG9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZTtcbiAgICBnYXA6IDA7XG5cbiAgICAjc2F2ZS1lZGl0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNjI1cmVtO1xuICAgIH1cblxuICAgIC5kZWxldGUtZ3JvdXAge1xuICAgICAgbWFyZ2luLXRvcDogMS45MzhyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzOHJlbTtcbiAgICB9XG4gIH1cblxuICAuZGl2aWRlci1tb2JpbGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNCQUJBQkE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAubWFuYWdlLXBlcnNvbmFzLWNvbnRhaW5lciB7XG4gICAgYm90dG9tOiAuNjI1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5jb25maXJtYXRpb24tbW9kYWwge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIGxlZnQ6IDY2JTtcbiAgICB0b3A6IDgwJTtcblxuICAgIC5tb2RhbC1jb25maXJtYXRpb24tY29udGFpbmVyIHtcbiAgICAgIGJ1dHRvbi5kZWxldGUsIGJ1dHRvbi5yZXR1cm4ge1xuICAgICAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTk2cHgpIGFuZCAobWluLXdpZHRoOiA1MjRweCkge1xuICAuZWRpdC1idXR0b25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBsYWNlLXNlbGY6IGNlbnRlcjtcbiAgICBnYXA6IDA7XG5cbiAgICAuZGl2aWRlci1tb2JpbGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0JBQkFCQTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2x1c3Rlci1kZXNjcmlwdGlvbiB7XG4gICAgZm9ybSB7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDEuMTg3cmVtIGF1dG8gMS4xODdyZW0gMTguNTYzcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5tYW5hZ2UtcGVyc29uYXMtY29udGFpbmVyIHtcbiAgICBib3R0b206IDA7XG4gIH1cblxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTk2cHgpIGFuZCAobWluLXdpZHRoOiA4NzZweCkge1xuICAuZWRpdC1idXR0b25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlO1xuICAgIGdhcDogMDtcblxuICAgIC5kaXZpZGVyLW1vYmlsZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjQkFCQUJBO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAubWFuYWdlLXBlcnNvbmFzLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAubmV3LWdyb3VwLW1vZGFsIHtcbiAgICBsZWZ0OiAyMiU7XG4gICAgdG9wOiAyNSU7XG4gIH1cblxuICAuY29uZmlybWF0aW9uLW1vZGFsIHtcbiAgICB0b3A6IDUwJTtcbiAgfVxufVxuIiwKCQkiI3NvcnQtZG93bi1pY29uLCAjc29ydC11cC1pY29uIHtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDAuNjg4cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogJGNvbG9yLW5hdmlnYXRpb24taGVhZGVyO1xufVxuXG4jc29ydC1kb3duLWljb24ge1xuICAgIGJvdHRvbTogMC4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbiNzb3J0LXVwLWljb24ge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLnNlbGVjdC1ncm91cHMtZmlsdGVyIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyA0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jcGFnaW5hdGlvbi1jcmVhdGUsICNwYWdpbmF0aW9uLWVkaXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEuMzEzcmVtO1xuXG4gICAgICAgICYge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODhlbTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41NjI1cmVtO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByZXYsIC5uZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtcmVwb3J0LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hY3RpdmUsIC5wYWdlLWxpbmssIC5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucGFnZS1saW5rLCAucGFnZS1saW5rOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvb3Rlci1zdGVyZW90eXBlcyB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMC44MTNyZW07XG4gICAgICAgICAgICBtYXJnaW46IDEuMDk0cmVtIDAgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNwYWdpbmF0aW9uLXRleHQtY3JlYXRlLCAjcGFnaW5hdGlvbi10ZXh0LWVkaXQge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRpdmlkZXItc2VjdGlvbiB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci10aGVtZS1yZXBvcnQtZ3JheTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4NzVweCkgYW5kIChtaW4td2lkdGg6IDMyMXB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLmdyb3Vwcy1maWx0ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktZGVlcGVyO1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwLjM3NXJlbTtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS13aGl0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMlIGF1dG8gMyU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDAgMC4zNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICB9XG5cbiAgICAmX19ncm91cCwgJl9fZ3JvdXA6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTNyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgIHBhZGRpbmc6IDAgMC43NXJlbTtcbiAgICAgICAgbWFyZ2luOiAwIDAuNzVyZW0gMC42MjVyZW0gMDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgbWF4LXdpZHRoOiAxNC4zNzVyZW07XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmLS1zZWxlY3RlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1hY2NlbnQgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5tYW5hZ2Utc3RlcmVvdHlwZXMge1xuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVscHRleHQge1xuICAgICAgICBtYXJnaW46IDFyZW0gMCAyLjEyNXJlbTtcbiAgICB9XG5cbiAgICAmX19oZWxwdGV4dC1hbHQge1xuICAgICAgICBtYXJnaW46IDAgMCAxLjVyZW0gMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1uYXZpZ2F0aW9uLW1lbnUtYmFja2dyb3VuZDtcbiAgICAgICAgcGFkZGluZzogMCAxLjVyZW07XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyA0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1oZWFkZXIge1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdm90ZS1zZWN0aW9uIHtcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMyUgYXV0byAzJTtcblxuICAgICAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZm9ybSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMS41cmVtO1xuICAgICAgICBtYXJnaW46IDIuMjVyZW0gMCAzLjEyNXJlbTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICBtYXJnaW46IDAuMzc1cmVtIDAgMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1pbnB1dC1jb250YWluZXIge1xuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICAgICAgICAgICAgICByZXNpemU6IG5vbmU7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYWN0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMi4yNXJlbTtcbiAgICAgICAgbWFyZ2luOiAzcmVtIDA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDEuODc1cmVtIDAgMi42MjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLWJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTUuMzc1cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzLjI1cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNC4zNzVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAmLS1ncmVlbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLXJlcG9ydC1ncmVlbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tZ3JheSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktZGFya2VyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1yZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1yZWQtbmVnYXRpdmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWJsdWUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ncm91cGluZyB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMlIGF1dG8gMyU7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi52b3Rlcy1jb250YWluZXIge1xuICAgIG1heC1oZWlnaHQ6IDMwcmVtO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjM3NXJlbTtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogdW5zZXQ7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnZvdGVzLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICB3aWR0aDogMC40MzhyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi52b3Rlcy1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Q5RDlEOTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnZvdGVzLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJpZ2h0LWJsdWU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjQzOHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0ZXJlb3R5cGVzLXNlY3Rpb24ge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgfVxuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS41cmVtO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0ZXJlb3R5cGVzLXNlY3Rpb24ge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmX19uby1ncm91cHMge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNjIuNiU7XG4gICAgICAgIHBhZGRpbmc6IDkuNjg4cmVtIDguNXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTguNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiA1LjYyNXJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi5zdGVyZW90eXBlLWNhcmRzIHtcbiAgICBmb3JtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmX19jYXJkLWNvbW1lbnRzIHtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxM3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NTQzcmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMS4xMjVyZW0gMC42MjVyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgcGFkZGluZzogMS4zNzVyZW0gMS4zNzVyZW0gMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDM4cmVtO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMS4zMTNyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ZvdGUtYnV0dG9ucyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjQzOHJlbTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC1nYXA6IDNyZW07XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBhdXRvKTtcblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBhdXRvKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS42NTVyZW07XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3ctZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAwLjRlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMy43NzNyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcblxuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fZGVsZXRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE4OHJlbTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1saW5lOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXktZGFya2VyO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWljb24tMSwgJi0taWNvbi0tMSwgJi0taWNvbi0wIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEuMjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0taWNvbi0xIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWljb24tMCB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1pY29uLS0xIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaXMtY2xlYXIge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgIH1cbn1cblxuLmFncmVlLTEsIC5kaXNhZ3JlZS0tMSwgLnNraXAtMCB7XG4gICAgd2lkdGg6IDhyZW07XG4gICAgaGVpZ2h0OiAyLjM3NXJlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEzcmVtO1xuICAgIGNvbG9yOiAkY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgd2lkdGg6IDUuMTg4cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDMuMzEzcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hZ3JlZS0xIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYWdyZWUgIWltcG9ydGFudDtcbn1cblxuLmRpc2FncmVlLS0xIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGlzYWdyZWUgIWltcG9ydGFudDtcbn1cblxuLnNraXAtMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyaWdodC1ibHVlICFpbXBvcnRhbnQ7XG59XG5cbi5wb2ludGVyLTEge1xuICAgIC50YWJzLWNvbnRhaW5lciB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAgICAgI3NlZS1lZGl0LXBlcnNvbmFzLXRhYiB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsCgkJIi5tb2RhbCB7XG5cbiAgICAmX19vdmVybGF5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDc1MDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgJi5oaWRlIHt2aXNpYmlsaXR5OiBoaWRkZW47fVxuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3ItYmxhY2stYWx0ZXJuYXRpdmUsIC4yNSk7XG4gICAgfVxuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgQGV4dGVuZCAucGFkLTQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTI1MDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1vZGFsLWJhY2tncm91bmQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogLjVyZW07XG4gICAgICAgIG1heC13aWR0aDogMjkuMjVyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE0LjYyNXJlbTtcbiAgICAgICAgcGFkZGluZzogMy4yNXJlbSA1LjMxM3JlbTtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzgwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1saWdodGVyLWJnIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1tb2RhbC1iYWNrZ3JvdW5kLWxpZ2h0ZXI7XG4gICAgICAgIH1cbiAgICAgICAgJi0tdGV4dC1hbGlnbi11bnNldCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zbS1oZWlnaHQge1xuICAgICAgICAgICAgQGV4dGVuZCAubW9kYWxfX2NvbnRhaW5lcjtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcblxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQxNHB4KSB7XG4gICAgICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5NSU7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDgwdmg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAuNXM7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXRyYW5zaXRpb24ge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDcwdmg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tc20ge1xuICAgICAgICAgICAgQGV4dGVuZCAubW9kYWxfX2NvbnRhaW5lcjtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjByZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLS1tZCB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5tb2RhbF9fY29udGFpbmVyO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAzNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWxnIHtcbiAgICAgICAgICAgIEBleHRlbmQgLm1vZGFsX19jb250YWluZXI7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDQ1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcXVpY2stYWN0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDEuODc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDE3LjQzOHJlbTtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgd2lkdGg6IDY3cHg7XG4gICAgICAgICYtLWFsZXJ0IHtjb2xvcjogJGNvbG9yLXRoZW1lLXJlZDt9XG4gICAgICAgICYtLXN1Y2Nlc3Mge2NvbG9yOiAkY29sb3ItdGhlbWUtZ3JlZW47fVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrLWFsdGVybmF0aXZlO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgJl9fc3VidGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjU2M3JlbTtcbiAgICB9XG5cbiAgICAmX19jbG9zZS1idG4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2stYWx0ZXJuYXRpdmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcblxuICAgICAgICAmOmhvdmVyIHtib3gtc2hhZG93OiBub25lO31cbiAgICB9XG5cbiAgICAmX19idXR0b25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxLjMxM3JlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItY29tcGxlbWVudGFyeS1ncmF5O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2J0biB7XG4gICAgICAgIEBleHRlbmQgLnBhZC0zO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyIGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogLjVyZW07XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcmVtO1xuICAgICAgICBoZWlnaHQ6IDIuODc1cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcmVkIHtcbiAgICAgICAgICAgIEBleHRlbmQgLm1vZGFsX19idG47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcmVkLW5lZ2F0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tYmx1ZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5tb2RhbF9fYnRuO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW5vLWZpbGwge1xuICAgICAgICAgICAgQGV4dGVuZCAubW9kYWxfX2J0bjtcblxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1uYXZpZ2F0aW9uLWhlYWRlci10ZXh0O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWJsYWNrIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjay1hbHRlcm5hdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idG4tYm9hcmQtZGVsZXRlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4zMHJlbSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTcuNTYyNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDMuMjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmX19idG4tYWx0ZXJuYXRpdmUge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICAgICAgZ3JpZC1nYXA6IDEuODc1cmVtO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAmLS1yZWQsICYtLWdyYXkge1xuICAgICAgICAgICAgd2lkdGg6IDYuMzEzcmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjc1ZW07XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcmVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1yZWQtbmVnYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1ncmF5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJl9fYnRuLWJvYXJkIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXktZGFyayAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTEuMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3F1ZXN0aW9uIHtcbiAgICAgICAgbWFyZ2luOiB1bnNldDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLS1mdWxsLXNjcmVlbi1tb2JpbGUge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0taGlkZS1vdmVyZmxvdy15IHtcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cbn1cbiIsCgkJIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBPVkVSUklERSBNRU5ERUxFRVYuQ1NTIEVMRU1FTlRTXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSW4gdGhlIGZ1dHVyZSwgTWVuZGVsZWV2IHNob3VsZCBzdXBwb3J0IHRoaXMga2luZCBvZiBwZXJzb25hbGl6YXRpb24gYW5kIHRoaXNcbi8vIG1vZHVsZSB3aWxsIGdvIGF3YXkuXG5cbi5jb250YWluZXItMSwgLmNvbnRhaW5lci0yLCAuY29udGFpbmVyLTMsIC5jb250YWluZXItNCB7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mb3JtLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiA3MHJlbTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGxhYmVsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogaW5pdGlhbDtcbiAgICB9XG5cbiAgICBmb3JtIHtcbiAgICAgICAgcGFkZGluZzogMCBzaXplKDEpO1xuICAgICAgICBtYXgtd2lkdGg6IDMwcmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbn1cblxuLmZvcm0tY29udGFpbmVyLmlzLXdpZGUge1xuICAgIG1heC13aWR0aDogNjByZW07XG59XG5cbi5mb3JtLW5hcnJvdyB7XG4gICAgd2lkdGg6IDIxcmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuXG5sYWJlbCB7XG4gICAgQGV4dGVuZCAudGV4dC02O1xuICAgIGNvbG9yOiBjb2xvcignYWN0aW9uJyk7XG4gICAgdGV4dC1pbmRlbnQ6IDEuMTI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG59XG5cbmxlZ2VuZCB7XG4gICAgbWFyZ2luLWxlZnQ6IHNpemUoMSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBzaXplKDEpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAwLjc1O1xufVxuXG5odG1sIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignd2hpdGUnKTtcbn1cblxuYS5idXR0b24ge1xuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdXRpbGl0aWVzKCdzaGFkb3ctMScpO1xuICAgICAgICBAaW5jbHVkZSBjb2xvcignYWN0aW9uJyk7XG4gICAgfVxufVxuXG5hLmJ1dHRvbi5pcy1wcmltYXJ5IHtcbiAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIGNvbG9yKCdhY2NlbnQnKTtcbiAgICB9XG59XG5cbi8vIE5lYXQgdHJpY2sgZnJvbSBodHRwczovL2FjY2Vzc2libGUzNjAuY29tL2FjY2Vzc2libGUzNjAtYmxvZy91c2UtYXJpYS1sYWJlbC1zY3JlZW4tcmVhZGVyLXRleHQvXG4uc2NyZWVuLXJlYWRlciB7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwcHggMHB4LCAwcHggMHB4LCAwcHggMHB4KTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgei1pbmRleDogLTEwMDA7XG59XG4iLAoJCSIubGRzLXJpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbn1cbi5sZHMtcmluZyBkaXYge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNjRweDtcbiAgaGVpZ2h0OiA2NHB4O1xuICBtYXJnaW46IDhweDtcbiAgYm9yZGVyOiA4cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IGxkcy1yaW5nIDEuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAxKSBpbmZpbml0ZTtcbiAgYm9yZGVyLWNvbG9yOiAjMzBCRkQzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuLmxkcy1yaW5nIGRpdjpudGgtY2hpbGQoMSkge1xuICBhbmltYXRpb24tZGVsYXk6IC0wLjQ1cztcbn1cbi5sZHMtcmluZyBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC4zcztcbn1cbi5sZHMtcmluZyBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC4xNXM7XG59XG5Aa2V5ZnJhbWVzIGxkcy1yaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn0iLAoJCSIudG91ciB7XG4gICAgJi1iYWNrZHJvcCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2stYWx0ZXJuYXRpdmU7XG4gICAgICAgIG9wYWNpdHk6IC44O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgIH1cbiAgICAmLWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYnJhbmQtbGlnaHRlcjtcbiAgICAgICAgei1pbmRleDogMTAwMTtcbiAgICAgICAgaGVpZ2h0OiA0My43NXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNDMuNzVyZW0vMik7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gNTYuMjVyZW0vMik7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDU2LjI1cmVtO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCkge1xuICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLWZvb3RlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogOHJlbTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICZfX3NuYXBzaG90IHtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0dmg7XG4gICAgICAgICAgICBpbWcgIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTUzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ1YmJsZXMsXG4gICAgICAgIC5zZWNvbmRhcnktYnViYmxlcyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1YmJsZXMge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnNlY29uZGFyeS1idWJibGVzIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgLndlbGNvbWUge1xuICAgICAgICAgICAgJi0td2lkdGgtMTAwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBoMSxcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2stYWx0ZXJuYXRpdmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1dvcmsgU2Fucyc7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3ZoO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0dmg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93LXJldmVyc2U7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBlbmQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgei1pbmRleDogOTk5O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjI1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiB1bnNldDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuNXJlbSAwO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbi0tc2tpcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJyYW5kLWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJGNvbG9yLWFjY2VudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc25hcHNob3Qge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1wcm9ncmVzcyB7XG4gICAgICAgIGhlaWdodDogLjI1cmVtO1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LTIwMDtcbiAgICAgICAgbWF4LXdpZHRoOiA1Ni4yNXJlbTtcbiAgICAgICAgei1pbmRleDogOTk4O1xuICAgIH1cbiAgICAmLXByb2dyZXNzLS0xIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgd2lkdGg6IDUlO1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIGhlaWdodDogLjI1cmVtO1xuICAgIH1cbiAgICAmLXByb2dyZXNzLS0yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBoZWlnaHQ6IC4yNXJlbTtcbiAgICB9XG4gICAgJi1wcm9ncmVzcy0tMyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hY2NlbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIGhlaWdodDogLjI1cmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC50b3VyLXByb2dyZXNzIHtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgIH1cbiAgICAudG91ci1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMSUgMTQlO1xuICAgIH1cbiAgICAudG91ci1jb250ZW50IC5sb2dvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTl2aDtcbiAgICB9XG4gICAgLnRvdXItY29udGVudCAubG9nby5sb2dvLS1taW5vci1tYXJnaW4tdG9wIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNSU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQlO1xuICAgIH1cbiAgICAudG91ci1jb250ZW50IC53ZWxjb21lIHtcbiAgICAgICAgd2lkdGg6IDgwdnc7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gICAgLnRvdXItY29udGVudCAuYnV0dG9ucyB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIG1heC13aWR0aDogMjVyZW07XG4gICAgfVxuICAgIC50b3VyLWNvbnRlbnQgLmJ1dHRvbnMgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAudG91ci1jb250ZW50IC5idWJibGVzIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgfVxuICAgIC50b3VyLWZvb3Rlcl9fc25hcHNob3Qge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICAudG91ci1jYXJkIHtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIC50b3VyLWZvb3RlciB7XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA3MDBweCkge1xuICAgIC50b3VyLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICAudG91ci1jYXJkIHtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICB9XG5cbiAgICBAc3VwcG9ydHMgKC1tb3otYXBwZWFyYW5jZTpub25lKSB7XG4gICAgICAgIC50b3VyLWNhcmQge1xuICAgICAgICAgICAgaGVpZ2h0OiAtbW96LW1heC1jb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwKCQkiQGltcG9ydCAnMV9zZXR0aW5ncy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJzFfc2V0dGluZ3Mvc3BhY2luZyc7XG5AaW1wb3J0ICcxX3NldHRpbmdzL2NvbG9ycyc7XG5AaW1wb3J0ICcxX3NldHRpbmdzL2xheW91dCc7XG5AaW1wb3J0ICc2X2NvbXBvbmVudHMvZ2VuZXJpYy9wYWdlJztcbkBpbXBvcnQgJzZfY29tcG9uZW50cy9nZW5lcmljL3BhZ2UtbWVudSc7XG5AaW1wb3J0ICc2X2NvbXBvbmVudHMvY29udmVyc2F0aW9ucyc7XG5AaW1wb3J0ICc2X2NvbXBvbmVudHMvZmlsZS1pbnB1dCc7XG4iLAoJCSIvKlxuIENPTE9SUyBST0xFU1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLy8vIEJhY2tncm91bmQgYW5kIHRleHQgY29sb3JzXG4vLyRjb2xvci1yZWd1bGFyLXRleHQ6ICMwNTJCNDcgIWRlZmF1bHQ7XG4vLyRjb2xvci1jb250ZW50LXRleHQ6IHdoaXRlICFkZWZhdWx0O1xuLy8kY29sb3ItYmFja2dyb3VuZDogd2hpdGUgIWRlZmF1bHQ7XG4vLyRjb2xvci10ZXh0OiAkY29sb3ItcmVndWxhci10ZXh0ICFkZWZhdWx0O1xuLy8kY29sb3ItbXV0ZWQtdGV4dDogbGlnaHRlbigkY29sb3ItcmVndWxhci10ZXh0LCAxNSUpICFkZWZhdWx0O1xuLy9cbi8vLy8gRGlzY3JlZXRseSBoaWdobGlnaHRlZCBjb250ZW50LiBXZSB3YW50IHNvbWUgZW1waGFzaXMgZnJvbSB0aGUgZGVmYXVsdCBjb250ZW50XG4vLy8vIGJhY2tncm91bmQsIGJ1dCBpdCBzaG91bGQgbm90IGJlIGhpZ2hsaWdodGVkIGFzIHN0cm9uZ2x5IGFzIHByaW1hcnkgY29udGVudC5cbi8vJGNvbG9yLWhpbnQ6ICNDNEYyRjQgIWRlZmF1bHQ7XG4vLyRjb2xvci1oaW50LXRleHQ6ICRjb2xvci1jb250ZW50ICFkZWZhdWx0O1xuLy8kY29sb3ItaGludC10ZXh0LXZhcmlhbnQ6ICNBM0Q4REQgIWRlZmF1bHQ7XG4vLyRjb2xvci1oaW50LWZhZGVkOiAjQTNEOEREICFkZWZhdWx0O1xuIiwKCQkiLypcbiBQQUdFIExBWU9VVCBBTkQgQlJFQUtQT0lOVFNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCAnc3BhY2luZyc7XG5cbi8vIFBhZ2UgaGVhZGVyIGxheW91dFxuJGhlYWRlci1pY29uLXNpemU6IDQwcHggIWRlZmF1bHQ7XG4kaGVhZGVyLWxvZ28tc2l6ZTogJGhlYWRlci1pY29uLXNpemUgLSAxNSAhZGVmYXVsdDtcbiRoZWFkZXItdG9wLW5hdi1oZWlnaHQ6ICRoZWFkZXItaWNvbi1zaXplICsgNSAhZGVmYXVsdDtcbiR0b3AtaGVhZGVyLWhlaWdodDogMjVweCAhZGVmYXVsdDtcbiRoZWFkZXItYm90dG9tLW5hdi1oZWlnaHQ6ICRoZWFkZXItaWNvbi1zaXplICFkZWZhdWx0O1xuJGhlYWRlci1oZWlnaHQtdGFibGV0OiAkaGVhZGVyLXRvcC1uYXYtaGVpZ2h0ICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gcGFnZSBsYXlvdXRcbiRwYWdlLWNvbnRlbnQtd2lkdGgtbWF4OiA3MDBweCAhZGVmYXVsdDtcbiRjb250ZW50LXdyYXBwZXItbWF4LXdpZHRoOiAkcGFnZS1jb250ZW50LXdpZHRoLW1heCAhZGVmYXVsdDtcbiRoZWFkZXItd3JhcHBlci1tYXgtd2lkdGg6ICRjb250ZW50LXdyYXBwZXItbWF4LXdpZHRoICsgMiAqICRzcGFjaW5nLXVuaXQtbGFyZ2UgIWRlZmF1bHQ7XG4iLAoJCSIvKlxuIEdFTkVSSUMgUEFHRSBFTEVNRU5UU1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kcGFnZS10aXRsZS1mb250LXNpemU6IDEuMSAqICRmb250LXNpemUtaDEgIWRlZmF1bHQ7XG5cbi8vIEJhY2tncm91bmQgaW1hZ2VzXG4kY2FyZC1iYWNrZ3JvdW5kLWltYWdlLXVybDogdXJsKC9zdGF0aWMvaW1nL2ljb25zL2JnLnBuZykgIWRlZmF1bHQ7XG4kcGFnZS1iYWNrZ3JvdW5kLWltYWdlLXVybDogdXJsKC9zdGF0aWMvaW1nL3BhZ2UtYmcuc3ZnKSAhZGVmYXVsdDtcblxuXG4uUGFnZSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAkaGVhZGVyLXRvcC1uYXYtaGVpZ2h0IDAgJGhlYWRlci10b3AtbmF2LWhlaWdodCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICAgIHBhZGRpbmc6ICgkaGVhZGVyLWhlaWdodC10YWJsZXQgKyAkdG9wLWhlYWRlci1oZWlnaHQpIDAgJGhlYWRlci10b3AtbmF2LWhlaWdodCAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAmLnRhbGtzIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRoZWFkZXItdG9wLW5hdi1oZWlnaHQgMCAwIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAuTmF2TWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgICAgICYtY29udGVudC5sb2dnZWQtaW4sICNkb2NzIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDAwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgICAgICAgLk5hdk1lbnUtZml4ZWQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtbWFpbkNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwYWdlLWJhY2tncm91bmQtaW1hZ2UtdXJsIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICB9XG5cbiAgICAmLXRpdGxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdwcmltYXJ5JywgY29udHJhc3QpO1xuICAgICAgICBtYXJnaW46IDAgMCAkc3BhY2luZy11bml0IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5jb250YWluZXItMTtcblxuICAgICAgICAgICAgZm9udC1zaXplOiAkcGFnZS10aXRsZS1mb250LXNpemU7XG4gICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXRpbnkgKCRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgZW0ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvICRoZWFkZXItYm90dG9tLW5hdi1oZWlnaHQgKyAkdG9wLWhlYWRlci1oZWlnaHQgYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG4iLAoJCSIvKlxuIFBBR0UgU0lERUJBUlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBDb2xvcnNcbiRuYXYtbWVudS1jb2xvcjogY29sb3IoJ3ByaW1hcnknKSAhZGVmYXVsdDtcbiRuYXYtbWVudS1jb2xvci10ZXh0OiBjb2xvcigncHJpbWFyeScsIGNvbnRyYXN0KSAhZGVmYXVsdDtcbiRuYXYtbWVudS1ib3JkZXItY29sb3I6IHJnYmEoI0ZGRiwgMC4yNSkgIWRlZmF1bHQ7XG4kbmF2LW1lbnUtYm9yZGVyOiAxcHggc29saWQgJG5hdi1tZW51LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuLy8gTGF5b3V0XG4kbmF2LW1lbnUtZm9udC1zaXplOiAkZm9udC1zaXplLWRlZmF1bHQgIWRlZmF1bHQ7XG4kbmF2LW1lbnUtb3BhY2l0eTogMS4wICFkZWZhdWx0O1xuJG5hdi1tZW51LXNoYWRvdzogMnB4IDAgNHB4IDAgcmdiYSgxOCwgNDgsIDEwMiwgMC4wOCkgICFkZWZhdWx0O1xuJG5hdi1tZW51LXdpZHRoOiA3NXZ3ICFkZWZhdWx0O1xuJG5hdi1tZW51LW1heC13aWR0aDogNDAwcHggIWRlZmF1bHQ7XG4kbmF2LW1lbnUtdWwtcGFkZGluZzogMCAhZGVmYXVsdDtcblxuLy8gRWxlbWVudFxuLk5hdk1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG1heC13aWR0aDogJG5hdi1tZW51LW1heC13aWR0aDtcbiAgICBib3gtc2hhZG93OiAkbmF2LW1lbnUtc2hhZG93O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkbmF2LW1lbnUtZm9udC1zaXplO1xuICAgIG9wYWNpdHk6ICRuYXYtbWVudS1vcGFjaXR5O1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICBvdmVyZmxvdzogLW1vei1zY3JvbGxiYXJzLW5vbmU7XG4gICAgLy9iYWNrZ3JvdW5kOiAkbmF2LW1lbnUtY29sb3I7XG4gICAgY29sb3I6ICRuYXYtbWVudS1jb2xvci10ZXh0O1xuXG4gICAgYSwgYnV0dG9ue1xuICAgICAgICBjb2xvcjogJG5hdi1tZW51LWNvbG9yLXRleHQ7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQ7XG4gICAgZW0ge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgfVxuXG4gICAgaW1nLFxuICAgIGkge1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctdW5pdC10aW55O1xuICAgIH1cbiAgICAuaWNvbi1zdGFja3tcbiAgICAgICAgOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRpbnkgKiAwLjY7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3B4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgaSArIGl7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGlueTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJG5hdi1tZW51LWJvcmRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICB9XG5cbiAgICBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogJG5hdi1tZW51LXVsLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgJi1Ecm9wRG93biB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLUFuZ2xlRG93bkljb24ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgJi1Vc2VyTWVudSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgID5saSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmctdW5pdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtQWNjZXNzaWJpbGl0eSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgID5saSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmctdW5pdDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwKCQkiLypcbkNPTlZFUlNBVElPTlNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY29udmVyc2F0aW9uLXZvdGUtY2lyY2xlLXNpemU6IDE4cHggIWRlZmF1bHQ7XG4kY29udmVyc2F0aW9uLXRvYXN0LWltYWdlLWJvcmRlcjogJHNwYWNpbmctdW5pdC10aW55IC8gMztcbiRjb252ZXJzYXRpb24tYnV0dG9uLXNpemU6ICRzcGFjaW5nLXVuaXQtc21hbGwgKyAkc3BhY2luZy11bml0LXRpbnkgIWRlZmF1bHQ7XG4kaWNvbi1hcnJvdy1kb3duOiB1cmwoXCIvc3RhdGljL2ltZy9pY29ucy9hcnJvdy1kb3duLnN2Z1wiKSAhZGVmYXVsdDtcbiRjb252ZXJzYXRpb24tY2FyZC1mb250LXNpemUtc21hbGw6IDEycHggIWRlZmF1bHQ7XG4kY29udmVyc2F0aW9uLWNhcmQtYm9yZGVyLWFycm93LXNpemU6ICRzcGFjaW5nLXVuaXQ7XG4kcHJvZmlsZS1sYWJlbC1jbGVhci1jb2xvcjogIzMwQkZEMyAhZGVmYXVsdDtcbiRtb2RhbGl0aWVzLWNvbnRlbnQtd2lkdGgtbWF4OiAoJHBhZ2UtY29udGVudC13aWR0aC1tYXggLyAyKSAtIDI5ICFkZWZhdWx0O1xuJGNvbG9yLWZvci11bmZvbGRpbmc6IHJnYmEoMiwgMTYuOSwgMjcuOCwgMC42KTtcbiRjb2xvci1iYWNrZ3JvdW5kLWJ1dHRvbi1tb2RhbGl0aWVzOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG5cbi5Db252ZXJzYXRpb25MaXN0IHtcbiAgICBAZXh0ZW5kIC5jb250YWluZXItMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICBwIHtcbiAgICAgICAgcGFkZGluZzogMCAkc3BhY2luZy11bml0IC8gMztcbiAgICB9XG5cbiAgICAmLXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2luZy11bml0O1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50OztcbiAgICAgICAgfVxuXG4gICAgICAgIC50b3BpYyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi11cmxzIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRpbnk7XG4gICAgICAgIGEsIGkge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGlueSAqIDAuODtcbiAgICAgICAgfVxuICAgICAgICAucHVibGljIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teS1jb252ZXJzYXRpb25zIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICB9XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgfVxuXG4gICAgJi1jYXJkTGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctdW5pdDtcblxuICAgICAgICA+ICoge1xuICAgICAgICAgICAgbWFyZ2luOiAkc3BhY2luZy11bml0O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAkc3BhY2luZy11bml0LXNtYWxsO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWxpbmsge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyNDVweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgfVxufVxuXG4uQ29udmVyc2F0aW9uRm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDRGN0Y1O1xuICAgIGhlaWdodDogMTgwcHg7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG4uQ29udmVyc2F0aW9uVGFncyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtc21hbGwgKyAkc3BhY2luZy11bml0LXRpbnkgJHNwYWNpbmctdW5pdC1zbWFsbCAkc3BhY2luZy11bml0LXNtYWxsICRzcGFjaW5nLXVuaXQtc21hbGw7XG59XG5cbi5Db252ZXJzYXRpb25DYXJkIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXJvdW5kO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctdW5pdDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICBoZWlnaHQ6IDMyMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtaDQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1wYXJhZ3JhcGg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgICYtY29udGFpbmVyIHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICAmLW1vZGVyYXRpb24ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItY29udGVudDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRpbnk7XG4gICAgICAgIG1hcmdpbjogJHNwYWNpbmctdW5pdCAvIDIgMDtcbiAgICB9XG5cbiAgICAmLWNvdmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwICRzcGFjaW5nLXVuaXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWF4LWhlaWdodDogODZweDtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRpbnk7XG4gICAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nLXVuaXQtdGlueSAwO1xuXG4gICAgICAgICAgICBkdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWNvdmVyICsgLkNvbnZlcnNhdGlvbkNhcmQtYWN0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctdW5pdC1zbWFsbCAkc3BhY2luZy11bml0LXNtYWxsICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNpbmctdW5pdDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYtYWN0aW9ucyB7XG4gICAgICAgIC5idXR0b24uaXMtcHJpbWFyeSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXNtYWxsICsgJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWNvbnRlbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9udC1zaXplLXNtYWxsO1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtc3RhdGlzdGljcyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItaGludDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgICAgIG1hcmdpbjogJHNwYWNpbmctdW5pdC10aW55ICRzcGFjaW5nLXVuaXQ7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMCAkc3BhY2luZy11bml0IC8gMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICBtYXJnaW46ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICB9XG59XG5cbi5Nb2RhbGl0aWVzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1mb3ItdW5mb2xkaW5nO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvL01vZGFsaXRpZXMgc2xpZGVyXG5cbiAgICAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbjogYXV0byBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6ICRzcGFjaW5nLXVuaXQtaHVnZSAqIDQ7XG4gICAgfVxuICAgIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDAgYXV0byAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDAgYXV0byAkc3BhY2luZy11bml0ICsgJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3R5bGUtc2xpZGUtY2VudGVyIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvIGF1dG87XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogYXV0byAkc3BhY2luZy11bml0LXNtYWxsICsgJHNwYWNpbmctdW5pdDtcbiAgICB9XG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgbWFyZ2luOiAwcHggJHNwYWNpbmctdW5pdCArICRzcGFjaW5nLXVuaXQtc21hbGwgMHB4IDBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4ICRzcGFjaW5nLXVuaXQtbGFyZ2UgKyAkc3BhY2luZy11bml0IDBweCAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6ICRzcGFjaW5nLXVuaXQtaHVnZSAqIDMgLSAkc3BhY2luZy11bml0LXNtYWxsO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iYWNrZ3JvdW5kO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWFjY2VudDtcbiAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC10aW55ICogMjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgLmFwcGVuZC1idXR0b25zIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtc21hbGwgKyAkc3BhY2luZy11bml0LXRpbnkgMHB4ICRzcGFjaW5nLXVuaXQtdGlueSAwcHg7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtZGVmYXVsdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQgMCAkc3BhY2luZy11bml0LXRpbnkgMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItY29udGVudDtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXNtYWxsIDAgJHNwYWNpbmctdW5pdCAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLXJhbGV3YXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZXI7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgfVxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgICAgICAgbWFyZ2luOiAwcHggJGZvbnQtc2l6ZS10aW55LXRpbnk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaGludDtcbiAgICAgICAgfVxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICAgICAgICBtYXJnaW46IC0oJHNwYWNpbmctdW5pdC1zbWFsbCArICRzcGFjaW5nLXVuaXQtdGlueSkgKC0kc3BhY2luZy11bml0LXNtYWxsIC0gJHNwYWNpbmctdW5pdC10aW55KSAwcHggMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgbWFyZ2luOiAtKCRzcGFjaW5nLXVuaXQtc21hbGwgKyAkc3BhY2luZy11bml0LXRpbnkpIDBweCAwcHggMHB4O1xuICAgICAgICB9XG4gICAgICAgIHdpZHRoOiAkc3BhY2luZy11bml0O1xuICAgICAgICBjb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgICAgIGhlaWdodDogJHNwYWNpbmctdW5pdC1sYXJnZSAtICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgcGFkZGluZzogMHB4ICRzcGFjaW5nLXVuaXQtdGlueSAwcHggJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJhY2tncm91bmQtYnV0dG9uLW1vZGFsaXRpZXM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNwYWNpbmctdW5pdCArICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkc3BhY2luZy11bml0ICgkc3BhY2luZy11bml0ICsgJHNwYWNpbmctdW5pdC10aW55KTtcbiAgICB9XG4gICAgLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgbWFyZ2luOiAtKCRzcGFjaW5nLXVuaXQtc21hbGwgKyAkc3BhY2luZy11bml0LXRpbnkpICRzcGFjaW5nLXVuaXQtdGlueSAwcHggJHNwYWNpbmctdW5pdC10aW55IC0gJHNwYWNpbmctdW5pdDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgIG1hcmdpbjogLSgkc3BhY2luZy11bml0LXNtYWxsICsgJHNwYWNpbmctdW5pdC10aW55KSAkc3BhY2luZy11bml0LXRpbnkgMHB4ICgtJHNwYWNpbmctdW5pdC10aW55KTtcbiAgICAgICAgfVxuICAgICAgICB3aWR0aDogJHNwYWNpbmctdW5pdDtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdwcmltYXJ5Jyk7XG4gICAgICAgIGxlZnQ6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgICAgICBoZWlnaHQ6ICRzcGFjaW5nLXVuaXQtbGFyZ2UgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgIHBhZGRpbmc6IDBweCAkc3BhY2luZy11bml0LXRpbnkgMHB4ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iYWNrZ3JvdW5kLWJ1dHRvbi1tb2RhbGl0aWVzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkc3BhY2luZy11bml0LWxhcmdlO1xuICAgICAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgKyAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJHNwYWNpbmctdW5pdCAkc3BhY2luZy11bml0ICsgJHNwYWNpbmctdW5pdC10aW55O1xuICAgIH1cblxuICAgIC5tb2RhbGl0aWVzLXNsaWRlci5zaG93IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICAgIC5zd2lwZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogJHNwYWNpbmctdW5pdC1odWdlICogMyAtICRzcGFjaW5nLXVuaXQtc21hbGwgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgIH1cbiAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6ICgkc3BhY2luZy11bml0LWh1Z2UgKiAyKSArICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICAgICAgfVxuICAgICAgICAuaW1ncGFydCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICB9XG4gICAgICAgIC5pbWdwb250ZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggJHNwYWNpbmctdW5pdCAtICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzAlO1xuICAgICAgICB9XG4gICAgICAgIC5pbWdvcG4ge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDcwJTtcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0LXNtYWxsO1xuICAgICAgICAgICAgbWFyZ2luOiAkc3BhY2luZy11bml0ICsgJHNwYWNpbmctdW5pdC10aW55IDBweCAkc3BhY2luZy11bml0LXRpbnkgMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMwQkZEMztcbiAgICAgICAgfVxuICAgICAgICAuZmEtdGltZXMge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgfVxuICAgICAgICAuZmEtYXJyb3ctcmlnaHQge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgfVxuICAgICAgICAuZmEtY2hlY2sge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICAgIC5zd2lwZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogJHNwYWNpbmctdW5pdC1odWdlICogNDtcbiAgICAgICAgfVxuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogJG1vZGFsaXRpZXMtY29udGVudC13aWR0aC1tYXg7XG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICAgICAgLmltZ3BhcnQge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc3JTtcbiAgICAgICAgfVxuICAgICAgICAuaW1ncG9udGUge1xuICAgICAgICAgICAgcGFkZGluZzogMHB4ICRzcGFjaW5nLXVuaXQgLSAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc3JTtcbiAgICAgICAgfVxuICAgICAgICAuaW1nb3BuIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NyU7XG4gICAgICAgIH1cbiAgICAgICAgLmZhLXRpbWVzIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLmZhLWFycm93LXJpZ2h0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKCdwcmltYXJ5Jyk7XG4gICAgICAgIH1cbiAgICAgICAgLmZhLWNoZWNrIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9Nb2RhbGl0aWVzIHN0YXRpY1xuXG4gICAgLnN0eWxlLXNsaWRlIHtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIHdpZHRoOiAkc3BhY2luZy11bml0LWh1Z2UgKiAzO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iYWNrZ3JvdW5kO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYWNjZW50O1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXRpbnkgKiAyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAuYXBwZW5kLWJ1dHRvbnMge1xuICAgICAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC10aW55IDBweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBjb2xvcigncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1zbWFsbCAwICRzcGFjaW5nLXVuaXQtdGlueSAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWRlZmF1bHQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC10aW55IDAgJHNwYWNpbmctdW5pdC1zbWFsbCAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLXJhbGV3YXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24tY2xvc2VyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHNwYWNpbmctdW5pdC1sYXJnZTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgLmZhLXRpbWVzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJhY2tncm91bmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbWFnZW5zIGRvIG1vZGFsIGNvbSBlc3BlY2lmaWNhw6fDtWVzIGRpZmVyZW50ZXNcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAuc3R5bGUtc2xpZGUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAkc3BhY2luZy11bml0LWh1Z2UgKiAyIC0gJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgfVxuICAgICAgICAuaW1ncG9udGUge1xuICAgICAgICAgICAgbWFyZ2luOiAtKCRzcGFjaW5nLXVuaXQgKiAyICsgJHNwYWNpbmctdW5pdC10aW55KSAoJHNwYWNpbmctdW5pdC1odWdlIC0gJHNwYWNpbmctdW5pdC10aW55KSAwcHggKC0kc3BhY2luZy11bml0LWh1Z2UgKyAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55KTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTYlO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24tY2xvc2VyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4IDBweCAoLSRzcGFjaW5nLXVuaXQtdGlueSkgKCRzcGFjaW5nLXVuaXQtaHVnZSAqIDIgLSAkc3BhY2luZy11bml0KTtcbiAgICAgICAgICAgIC5mYS10aW1lcyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC10aW55ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAuc3R5bGUtc2xpZGUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAkbW9kYWxpdGllcy1jb250ZW50LXdpZHRoLW1heDtcbiAgICAgICAgfVxuICAgICAgICAuaW1ncG9udGUge1xuICAgICAgICAgICAgbWFyZ2luOiAtKCRzcGFjaW5nLXVuaXQgKiAyICsgJHNwYWNpbmctdW5pdC10aW55KSAoJHNwYWNpbmctdW5pdC1odWdlICogMiArICRzcGFjaW5nLXVuaXQtdGlueSkgMHB4IDBweDtcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uLWNsb3NlciB7XG4gICAgICAgICAgICBtYXJnaW46IDBweCAwcHggKC0kc3BhY2luZy11bml0KSAkc3BhY2luZy11bml0LWh1Z2UgKiAyLjU7XG4gICAgICAgICAgICAuZmEtdGltZXMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4uQ29udmVyc2F0aW9uRGV0YWlsLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5Db21tZW50IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiAzNDBweCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXgtd2lkdGg6ICRoZWFkZXItd3JhcHBlci1tYXgtd2lkdGg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIC5Db21tZW50Q2FyZCB7XG4gICAgICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMztcbiAgICAgICAgICAgIG1heC13aWR0aDogJHBhZ2UtY29udGVudC13aWR0aC1tYXg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzNDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICBwYWRkaW5nOiAoJHNwYWNpbmctdW5pdC1sYXJnZSAtICRzcGFjaW5nLXVuaXQtdGlueSkgKCRzcGFjaW5nLXVuaXQtbGFyZ2UgLSAkc3BhY2luZy11bml0LXNtYWxsKTtcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItY29udGVudC10ZXh0O1xuXG4gICAgICAgICAgICAmLWNvdW50ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcigncHJpbWFyeScsIGNvbnRyYXN0KTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHB4ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaS5mYSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogY29sb3IoJ3ByaW1hcnknLCBjb250cmFzdCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkc3BhY2luZy11bml0LWxhcmdlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAjY29tbWVudGZvcm0ge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBtYXgtd2lkdGg6ICRwYWdlLWNvbnRlbnQtd2lkdGgtbWF4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMzQwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQ6ICRjb2xvci1oaW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gICAgICAgICAgICBwYWRkaW5nOiAoMyAqICRzcGFjaW5nLXVuaXQtdGlueSkgKCRzcGFjaW5nLXVuaXQtbGFyZ2UgLSAkc3BhY2luZy11bml0LXNtYWxsKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmctdW5pdC1zbWFsbCAoJHNwYWNpbmctdW5pdCArICRzcGFjaW5nLXVuaXQtdGlueSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMgKiAkZm9udC1zaXplO1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgLy9ib3JkZXI6IDJweCBzb2xpZCBjb2xvcigncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1jb250ZW50LXRleHQ7XG4gICAgICAgICAgICAgICAgLy9jb2xvcjogIzMzMztcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI2NoYXJhY3RlcnMtY291bnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggKCRzcGFjaW5nLXVuaXQgKyAkc3BhY2luZy11bml0LXRpbnkpIDBweCAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWZha2VCdXR0b24sXG4gICAgICAgICAgICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXNtYWxsICRzcGFjaW5nLXVuaXQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0IC8gMjtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAjY29tbWVudGZvcm0uc2hvdyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJblVwIDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCA1MDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7XG4gICAgICAgICAgICAwJSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDEwMCUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgI2NvbW1lbnRmb3JtLmhpZGVhbmltYXRpb24ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlT3V0RG93biA1MDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZU91dERvd24gNTAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgfVxuICAgICAgICAmLWZha2VCdXR0b24sXG4gICAgICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtc21hbGwgJHNwYWNpbmctdW5pdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNwYWNpbmctdW5pdCAvIDI7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgfVxuICAgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICAgICAgICAgICAgMCUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3RvYXN0IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGludDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDsgLy8kaGVhZGVyLXRvcC1uYXYtaGVpZ2h0O1xuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDY2MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgJHNwYWNpbmctdW5pdC10aW55IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC10aW55IDAgMCAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1yYWxld2F5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBjb2xvcigncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogJHNwYWNpbmctdW5pdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmctdW5pdC10aW55ICRzcGFjaW5nLXVuaXQtc21hbGwgYXV0byAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogKCRib3JkZXItcmFkaXVzLXRpbnkgKiA0KSAvIDMgc29saWQgY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6ICRzcGFjaW5nLXVuaXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAvL21hcmdpbi1yaWdodDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0byAkc3BhY2luZy11bml0LXNtYWxsIGF1dG8gMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6ICRib3JkZXItcmFkaXVzLXRpbnkgc29saWQgY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjdG9hc3Quc2hvdyB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgLy8gLXdlYmtpdC1hbmltYXRpb246IGZhZGUgOHM7XG4gICAgICAgICAgICBhbmltYXRpb246IGZhZGUgOHMgYm90aDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBrZXlmcmFtZXMgZmFkZSB7XG4gICAgICAgICAgICAwJSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAyMCUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgNzAlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgOTAlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLkNvbW1lbnQtY3JlYXRlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQgMHB4IDBweCAwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5DaXJjbGVCdXR0b24ge1xuICAgIEBpbmNsdWRlIGNvbG9yKCdjb250ZW50Jyk7XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWgyO1xuICAgIGhlaWdodDogJGNvbnZlcnNhdGlvbi1idXR0b24tc2l6ZTtcbiAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2lkdGg6ICRjb252ZXJzYXRpb24tYnV0dG9uLXNpemU7XG5cbiAgICAmLWxlZnRDb252ZXJzYXRpb25TbGlkZXIsXG4gICAgJi1yaWdodENvbnZlcnNhdGlvblNsaWRlciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6ICg4ICogJGxpbmUtaGVpZ2h0ICsgJGNvbnZlcnNhdGlvbi1idXR0b24tc2l6ZSkgLSAoJHNwYWNpbmctdW5pdC1sYXJnZSAtICRzcGFjaW5nLXVuaXQtc21hbGwpO1xuICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1sZWZ0Q29udmVyc2F0aW9uU2xpZGVyIHtcbiAgICAgICAgbGVmdDogJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgIH1cblxuICAgICYtcmlnaHRDb252ZXJzYXRpb25TbGlkZXIge1xuICAgICAgICByaWdodDogJHNwYWNpbmctdW5pdC10aW55O1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgIH1cbn1cblxuLkxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLkxpbmstbmV3IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgLyAyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItaGludDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1zbWFsbCAwO1xuICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xuICAgIGkge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICB9XG59XG5cbi5MaW5rLWVkaXQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWhpbnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtc21hbGwgMDtcbiAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4gICAgaSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItY29udGVudDtcbiAgICB9XG59XG5cbi52aWV3LWJvYXJkIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRpbnk7XG4gICAgLy8gI1RPRE86IGJveC1zaGFkb3c6ICRoZWFkZXItYm94LXNoYWRvdy11cHBlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1zbWFsbCAwO1xuXG4gICAgc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJGljb24tYXJyb3ctZG93bikgbm8tcmVwZWF0IHJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTZweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgfVxufVxuXG4uTW9kZXJhdGUge1xuICAgIC5Db252ZXJzYXRpb25EZXRhaWwtYmFubmVyIGgxIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItY29udGVudDtcbiAgICB9XG5cbiAgICAmLWNvbW1lbnRzLXRhYnMge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaGludDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0IC8gMjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGNvbG9yKCdwcmltYXJ5Jyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1jb21tZW50cyB7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50OztcbiAgICAgICAgfVxuXG4gICAgICAgIC5Db21tZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNwYWNpbmctdW5pdCAvIDI7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1oaW50O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNwYWNpbmctdW5pdCAvIDI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1tZXRhZGF0YSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1oaW50O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNwYWNpbmctdW5pdCAvIDI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuQ29udmVyc2F0aW9uQ29tbWVudC1hY3Rpb25zIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lXFwgNSBGcmVlJztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAkY29sb3ItZ3JlZW4tZGFyaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICAgICAgICAvL2JvcmRlcjogMnB4IHNvbGlkICRjb2xvci1ncmVlbi1kYXJrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxpICsgbGk6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgICAgICBjb2xvcjogIzljMjcxNTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzljMjcxNTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICAgIH1cblxuICAgICAgICBsaSBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgLyAyO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuQ29tbWVudC1zdGF0dXMtYXBwcm92ZWQgLkNvbnZlcnNhdGlvbkNvbW1lbnQtYWN0aW9ucyBsaSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLkNvbW1lbnQtc3RhdHVzLWFwcHJvdmVkIC5Db252ZXJzYXRpb25Db21tZW50LWFjdGlvbnMgbGkgKyBsaSB7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICB9XG5cbiAgICAuQ29tbWVudC1zdGF0dXMtcmVqZWN0ZWQgLkNvbnZlcnNhdGlvbkNvbW1lbnQtYWN0aW9ucyBsaSB7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICB9XG5cbiAgICAuQ29tbWVudC1zdGF0dXMtcmVqZWN0ZWQgLkNvbnZlcnNhdGlvbkNvbW1lbnQtYWN0aW9ucyBsaSArIGxpIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAuQ29tbWVudC1zdGF0dXMtYXBwcm92ZWQgLkNvbnZlcnNhdGlvbkNvbW1lbnQtYWN0aW9ucyBsaTpob3ZlcixcbiAgICAuQ29tbWVudC1zdGF0dXMtcmVqZWN0ZWQgLkNvbnZlcnNhdGlvbkNvbW1lbnQtYWN0aW9ucyBsaTpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLkNvbW1lbnQtc3RhdHVzLXJlamVjdGVkIC5Db21tZW50TGlzdEl0ZW0tZm9vdGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5Db21tZW50LXJlamVjdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1oaW50O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWhpbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItaGludDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgLyAyO1xuICAgICAgICB9XG5cbiAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAwIGJsYWNrO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaGludDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5Db252ZXJzYXRpb24tZWRpdC1maWVsZCB7XG4gICAgICAgIEBleHRlbmQgLmNvbnRhaW5lci0xO1xuXG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAyMDAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0IC0gJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKCdwcmltYXJ5Jyk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xuICAgICAgICByZXNpemU6IG5vbmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItY29udGVudDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdsZycpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuQ29udmVyc2F0aW9uRWRpdC1hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdCAvIDIgMDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkY29sb3ItY29udGVudDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAycHggMCAycHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItY29udGVudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgLyAyO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4gKyBzcGFuIGkge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItY29udGVudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgICAgICAmLmNyZWF0ZS1jb252ZXJzYXRpb24taWNvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItYWNjZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uQ29udmVyc2F0aW9uRmllbGQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBpIHtcbiAgICAgICAgcGFkZGluZzogMCAkc3BhY2luZy11bml0ICogMjtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICBjb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgICB9XG5cbiAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoJ3ByaW1hcnknKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDhweDtcbiAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0IC8gMjtcbiAgICAgICAgY29sb3I6ICRjb2xvci1jb250ZW50O1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmctdW5pdDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItY29udGVudDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dCArIGksIHNlbGVjdCArIGkge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLkNvbnZlcnNhdGlvbkVkaXQtYXR0cmlidXRlcyB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdDtcblxuICAgIGkge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy11bml0O1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgZm9udC1zaXplOiAkc3BhY2luZy11bml0IC8gMjtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG59XG5cbi5Db252ZXJzYXRpb25FZGl0LXByb21vdGUge1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQ7XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItY29udGVudDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWNvbnRlbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNwYWNpbmctdW5pdCAvIDI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxufVxuXG4uQ29udmVyc2F0aW9uLUFkZENvbW1lbnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6ICRzcGFjaW5nLXVuaXQgLyAyO1xufVxuKi9cbiIsCgkJIlxuXG4uRmlsZUlucHV0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1yYWxld2F5O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10aW55O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgIC5QaWNrRmlsZUJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsICsgJGJvcmRlci1yYWRpdXMtdGlueTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGwgKyAkYm9yZGVyLXJhZGl1cy10aW55O1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcigncHJpbWFyeScpO1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdwcmltYXJ5JywgY29udHJhc3QpO1xuICAgICAgICBpbnB1dFt0eXBlPWZpbGVdIHtcbiAgICAgICAgICAgIGhlaWdodDogNDVweDs7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8vIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuRmlsZVN0YXR1cyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG5cblxuXG4iLAoJCSIvLyBDcmVhdGUgdXRpbGl0aWVzIGZvciB0aGUgdGhlbWVzXG4vLyBDb2xvciB0aGVtZXNcbkBlYWNoICRjb2xvciBpbiAodGhlbWUtYnJhbmQgdGhlbWUtYWNjZW50IHRoZW1lLWdyZWVuIHRoZW1lLW9yYW5nZSB0aGVtZS1wdXJwbGUgdGhlbWUtZ3JleSB0aGVtZS1pY2RcbnRoZW1lLXZvdG9yYW50aW0gdGhlbWUtb3NmIHRoZW1lLWJvY2FkZWxvYm8pIHtcbiAgICAuI3skY29sb3J9IHtcbiAgICAgICAgLS10aGVtZS1jb2xvcjogI3tjb2xvcigkY29sb3IpfTtcbiAgICAgICAgLS10aGVtZS1saWdodC1jb2xvcjogI3tjb2xvcigjeyRjb2xvcn0tbGlnaHQpfTtcbiAgICB9XG4gICAgLmJnLSN7JGNvbG9yfSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIC5iZy0jeyRjb2xvcn0tbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcigjeyRjb2xvcn0tbGlnaHQpO1xuICAgIH1cbn1cblxuLnRoZW1lLWJyYW5kLCAudGhlbWUtYWNjZW50LCAudGhlbWUtZ3JlZW4sIC50aGVtZS1vcmFuZ2UsIC50aGVtZS1wdXJwbGUsIC50aGVtZS1ncmV5LCAudGhlbWUtaWNkLCAudGhlbWUtdm90b3JhbnRpbSwgLnRoZW1lLW9zZiB7XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sIHRleHRhcmVhIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB9XG59XG5cbi8vIExpbmtzXG5wIHtcbiAgICBhOmhvdmVyLCBhOmZvY3VzLCBhOnZpc2l0ZWQsIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cblxuaHIge1xuYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xubWFyZ2luOiAxcmVtIDFyZW0gMCAwO1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgbWFyZ2luOiB1bnNldDtcbiAgICB9XG59XG5cbiIKCV0sCgkibmFtZXMiOiBbXSwKCSJtYXBwaW5ncyI6ICI7Q3lDaUJLLEFBQUQsSUFBSyxDQUFDO0VBRUUsTUFBTyxDQUFJLElBQUM7RUFBWixNQUFPLENBQUkseUJBQUM7RUFBWixPQUFPLENBQUksS0FBQztFQUFaLFdBQU8sQ0FBSSxXQUFDLEdBRW5COztBQUlELEFBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztFdkNaakIsVUFBUSxFQUFNLFVBQUM7RUFDZixVQUFRLEVBQU8sZ0JBQXVDO0V1Q2dCbEQsVUFBVSxFQUNOLEdBQUcsQ3pCOEZDLEtBQUssQ0FDRSxJQUFJLEV5QjlGZixTQUFTLENBQUMsRUFBRTtFQUdwQixpQkFBaUIsRUFBRSxTQUFTLEdBQy9COztBQUdELEFBQUEsaUJBQWlCLENBQUM7RUFDZCxXQUFXLENBQUEsWUFBQyxHQUNmOztBQUtELEFBQUEsSUFBSSxDQUFDO0VBRUQsV0FBVyxFekJ5QkgsR0FBRztFeUJ4Qlgsd0JBQXdCLEVBQUUsSUFBSSxHQUNqQzs7QUFHRCxBQUFBLElBQUksQ0FBQztFQUNELE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUM7RUFDVixXQUFXLEVBQUMsV0FBQyxHQUVoQjs7QUFHRCxBQUFBLElBQUksQ0FBQztFQUNELE9BQU8sRUFBRSxLQUFLLEdBQ2pCOztBQU1ELEFBQUEsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7RUFDUCxhQUFhLEVmeENMLE9BQWlDLEdleUM1Qzs7QUFFRCxBQUFBLFVBQVU7QUFDVixFQUFFO0FBQ0YsTUFBTTtBQUNOLElBQUk7QUFDSixFQUFF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R0x2RGpDOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLbUVlLFVBQVUsR0x0RGpDOztBQWpEVCxBQStDUSxlQS9DTyxDQStDSTtFQVhQLFNBQUssRUtpRUUsU0FBeUIsR0xwRG5DOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLb0VlLFVBQVUsR0x2RGpDOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLbUVlLFVBQVUsR0x0RGpDOztBQWpEVCxBQStDUSxlQS9DTyxDQStDSTtFQVhQLFNBQUssRUtpRUUsU0FBeUIsR0xwRG5DOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLb0VlLFVBQVUsR0x2RGpDOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLbUVlLFVBQVUsR0x0RGpDOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLb0VlLElBQVUsR0x2RGpDOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLbUVlLElBQVUsR0x0RGpDOztBQWpEVCxBQStDUSxlQS9DTyxDQStDSTtFQVhQLFNBQUssRUtpRUUsR0FBeUIsR0xwRG5DOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLb0VlLElBQVUsR0x2RGpDOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLbUVlLElBQVUsR0x0RGpDOztBQWpEVCxBQStDUSxlQS9DTyxDQStDSTtFQVhQLFNBQUssRUtpRUUsR0FBeUIsR0xwRG5DOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLb0VlLElBQVUsR0x2RGpDOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFYUCxTQUFLLEVLbUVlLElBQVUsR0x0RGpDOztBQWpEVCxBQStDUSxlQS9DTyxDQStDSTtFQVhQLFNBQUssRUtpRUUsR0FBeUIsR0xwRG5DOztBQWpEVCxBQStDUSxpQkEvQ1MsQ0ErQ0U7RUFY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 */