@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap);
h1,
.h1 {
  font-size: 2.04rem;
  line-height: 1.2;
  font-family: "Inter";
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 1rem;
  margin-left: 0; }
  @media (min-width: 600px) {
    h1,
    .h1 {
      font-size: 1.92rem; } }
  @media (min-width: 900px) {
    h1,
    .h1 {
      font-size: 4.32rem; } }

h2,
.h2 {
  font-size: 2.32rem;
  line-height: 1.2;
  font-family: "Inter";
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 1rem;
  margin-left: 0; }
  @media (min-width: 600px) {
    h2,
    .h2 {
      font-size: 1.92rem; } }
  @media (min-width: 900px) {
    h2,
    .h2 {
      font-size: 3.6rem; } }

h3,
.h3 {
  font-size: 1.32rem;
  line-height: 1.2;
  font-family: "Inter";
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 1rem;
  margin-left: 0; }
  @media (min-width: 600px) {
    h3,
    .h3 {
      font-size: 1.4rem; } }
  @media (min-width: 900px) {
    h3,
    .h3 {
      font-size: 2rem; } }

h4,
.h4 {
  font-size: 1.32rem;
  line-height: 1.2;
  font-family: "Inter";
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 1rem;
  margin-left: 0; }
  @media (min-width: 600px) {
    h4,
    .h4 {
      font-size: 0.96rem; } }
  @media (min-width: 900px) {
    h4,
    .h4 {
      font-size: 1.32rem; } }

h5,
.h5,
.block.timeline .timeline-title,
.block.timeline .title {
  font-size: 0.92rem;
  line-height: 1.2;
  font-family: "Inter";
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 1rem;
  margin-left: 0; }
  @media (min-width: 600px) {
    h5,
    .h5,
    .block.timeline .timeline-title,
    .block.timeline .title {
      font-size: 0.64rem; } }
  @media (min-width: 900px) {
    h5,
    .h5,
    .block.timeline .timeline-title,
    .block.timeline .title {
      font-size: 1rem; } }

h6,
.h6 {
  font-size: 0.7rem;
  line-height: 1.2;
  font-family: "Inter";
  font-weight: 700;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 1rem;
  margin-left: 0; }
  @media (min-width: 600px) {
    h6,
    .h6 {
      font-size: 0.8rem; } }
  @media (min-width: 900px) {
    h6,
    .h6 {
      font-size: 0.9rem; } }

html,
.p {
  color: #000000;
  font-family: "Inter";
  font-weight: 400;
  line-height: 1.74;
  font-size: 18px;
  -webkit-font-smoothing: antialiased; }
  @media (min-width: 600px) {
    html,
    .p {
      font-size: 20px; } }
  @media (min-width: 900px) {
    html,
    .p {
      font-size: 22px; } }
  @media (min-width: 1200px) {
    html,
    .p {
      font-size: 25px; } }

p {
  margin-top: 0;
  margin-bottom: 20px; }
  p a {
    color: #D80000;
    text-decoration: underline; }

a {
  color: #000000;
  text-decoration-skip: auto;
  text-decoration: none;
  transition: all 300ms ease-in-out;
  outline-offset: 10px;
  outline: 3px solid rgba(0, 0, 0, 0); }
  a:hover {
    color: #ffffff;
    background-color: #000000; }
    a:hover.item .title:before {
      background: #ffffff; }
  a:focus {
    outline: 3px solid #000000;
    transition: none; }

hr {
  border-bottom: 3px solid #000000;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0; }

blockquote {
  position: relative;
  margin: 0;
  padding: 0;
  font-weight: bold; }
  blockquote > * {
    position: relative;
    z-index: 2; }
  blockquote:after {
    content: "";
    display: block;
    width: calc(100% + 2rem);
    height: calc(100% + 20px);
    position: absolute;
    top: -10px;
    left: -1rem;
    right: -1rem;
    bottom: -10px;
    z-index: 1;
    background-color: #f4c254; }

.block.basic-content.style-2 {
  overflow: hidden; }
  @media (min-width: 900px) {
    .block.basic-content.style-2 .col:only-child blockquote:after {
      width: calc(100% + 20% + 2.4rem);
      left: calc(-10% - 1.2rem);
      right: calc(-10% - 1.2rem); } }

.title .line {
  margin-bottom: 0;
  line-height: 1.2; }
  @media (min-width: 900px) {
    .title .line {
      display: block; } }

.title .white {
  color: #ffffff; }

.title .yellow {
  color: #f4c254; }

.title .underline {
  text-shadow: 0.03em 0 rgba(255, 255, 255, 0), -0.03em 0 rgba(255, 255, 255, 0), 0 0.03em rgba(255, 255, 255, 0), 0 -0.03em rgba(255, 255, 255, 0), 0.06em 0 rgba(255, 255, 255, 0), -0.06em 0 rgba(255, 255, 255, 0), 0.09em 0 rgba(255, 255, 255, 0), -0.09em 0 rgba(255, 255, 255, 0), 0.12em 0 rgba(255, 255, 255, 0), -0.12em 0 rgba(255, 255, 255, 0), 0.15em 0 rgba(255, 255, 255, 0), -0.15em 0 rgba(255, 255, 255, 0);
  background-image: linear-gradient(90deg, #f4c254 50%, rgba(255, 255, 255, 0) 50%);
  background-size: 200% 10px;
  background-repeat: no-repeat;
  display: inline !important;
  padding-bottom: 3px;
  background-position: 0% 100%; }
  .ready .title .underline {
    background-position: 100% 100%;
    transition: background-position 0ms ease-in-out 0ms; }
  .animate .title .underline {
    background-position: 0% 100%;
    transition: background-position 800ms ease-in-out 400ms; }

.component.page-title {
  margin-bottom: 2rem; }
  .component.page-title .wrapper {
    max-width: 85%;
    padding: 0; }
  .component.page-title .title {
    font-size: 2.6rem;
    text-shadow: 0.03em 0 rgba(255, 255, 255, 0), -0.03em 0 rgba(255, 255, 255, 0), 0 0.03em rgba(255, 255, 255, 0), 0 -0.03em rgba(255, 255, 255, 0), 0.06em 0 rgba(255, 255, 255, 0), -0.06em 0 rgba(255, 255, 255, 0), 0.09em 0 rgba(255, 255, 255, 0), -0.09em 0 rgba(255, 255, 255, 0), 0.12em 0 rgba(255, 255, 255, 0), -0.12em 0 rgba(255, 255, 255, 0), 0.15em 0 rgba(255, 255, 255, 0), -0.15em 0 rgba(255, 255, 255, 0);
    background-image: linear-gradient(90deg, #f4c254 50%, rgba(255, 255, 255, 0) 50%);
    background-size: 200% 10px;
    background-repeat: no-repeat;
    display: inline !important;
    padding-bottom: 3px;
    background-position: 0% 100%; }
  .component.page-title.ready .title {
    background-position: 100% 100%;
    transition: background-position 0ms ease-in-out 0ms; }
  .component.page-title.animate .title {
    background-position: 0% 100%;
    transition: background-position 800ms ease-in-out 400ms; }

button {
  cursor: pointer; }
  button.lg-icon:focus {
    outline: 3px solid #ffffff !important; }

button:focus, [type='button']:focus, [type='reset']:focus, [type='submit']:focus {
  outline: 3px solid #000000;
  outline-offset: 10px; }

.block .bx--btn {
  min-height: auto; }

.block .buttons .btn {
  position: relative;
  display: inline-block;
  padding: 3px 46px 3px 0;
  font-family: "Inter", sans-serif;
  font-size: 18px;
  -webkit-font-smoothing: antialiased;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: underline;
  color: #000000;
  background-color: rgba(255, 255, 255, 0);
  border: none;
  border-radius: 0;
  transition: all 300ms ease-in-out;
  user-select: none;
  vertical-align: middle;
  appearance: none;
  box-sizing: content-box;
  cursor: pointer;
  background-image: url(images/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: 28px 15px;
  background-position: calc(100% - 10px) 50%; }
  @media (min-width: 600px) {
    .block .buttons .btn {
      font-size: 20px; } }
  @media (min-width: 900px) {
    .block .buttons .btn {
      font-size: 22px; } }
  @media (min-width: 1200px) {
    .block .buttons .btn {
      font-size: 25px; } }
  .block .buttons .btn.prev {
    padding: 3px 0 3px 46px;
    background-image: url(images/arrow-left.svg);
    background-position: 10px 50%; }
  .block .buttons .btn.prev, .block .buttons .btn.next {
    text-decoration: none; }
  .block .buttons .btn:hover {
    color: #ffffff;
    background-color: #000000;
    background-image: url(images/arrow-right-white.svg);
    background-position: 100% 50%; }
    .block .buttons .btn:hover.prev:hover {
      background-image: url(images/arrow-left-white.svg);
      background-position: 0 50%; }
  .block .buttons .btn:focus {
    outline: 3px solid #000000;
    outline-offset: 3px; }
  .block .buttons .btn:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
  .block .buttons .btn.lg-prev:focus, .block .buttons .btn.lg-next:focus {
    outline: 3px solid #ffffff; }

.block .buttons {
  position: relative;
  padding-top: 1rem;
  padding-bottom: 5px;
  z-index: 1;
  margin-left: -1rem;
  margin-right: -1rem; }
  .block .buttons .btn {
    margin-left: 1rem;
    margin-right: 1rem; }

.block p + .buttons {
  padding-top: 0; }

.skip-nav {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 140px;
  text-align: center;
  font-size: 2em;
  text-decoration: none;
  text-transform: uppercase;
  color: #ffffff;
  background: #000000;
  opacity: 0;
  z-index: -999999; }
  .skip-nav:focus {
    opacity: 1;
    z-index: 999999;
    outline: none;
    outline-offset: 0; }

form,
body .gform_wrapper form {
  max-width: 800px;
  margin: 0;
  font-family: "Inter", sans-serif;
  color: #000000; }

fieldset {
  background-color: transparent;
  border: 0;
  margin: 0;
  padding: 0; }

legend {
  font-weight: 600;
  margin-bottom: 0.375em;
  padding: 0; }

label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.375em; }

input,
select,
textarea {
  display: block;
  font-size: 16px; }

[type='color'], [type='date'], [type='datetime'], [type='datetime-local'], [type='email'], [type='month'], [type='number'], [type='password'], [type='search'], [type='tel'], [type='text'], [type='time'], [type='url'], [type='week'], input:not([type]), textarea {
  width: 100%;
  margin-bottom: 1rem;
  padding: 0.65em 0.8em 0.6em;
  color: inherit;
  background-color: inherit;
  border: 3px solid #000000;
  border-radius: 0px;
  box-shadow: none;
  box-sizing: border-box;
  appearance: none; }
  [type='color']:hover, [type='date']:hover, [type='datetime']:hover, [type='datetime-local']:hover, [type='email']:hover, [type='month']:hover, [type='number']:hover, [type='password']:hover, [type='search']:hover, [type='tel']:hover, [type='text']:hover, [type='time']:hover, [type='url']:hover, [type='week']:hover, input:not([type]):hover, textarea:hover {
    border-color: shade(#000000, 20%); }
  [type='color']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='email']:focus, [type='month']:focus, [type='number']:focus, [type='password']:focus, [type='search']:focus, [type='tel']:focus, [type='text']:focus, [type='time']:focus, [type='url']:focus, [type='week']:focus, input:not([type]):focus, textarea:focus {
    border-color: rgba(233, 10, 89, 0.6);
    outline: 3px solid #000000;
    outline-offset: 5px; }
  [type='color']:disabled, [type='date']:disabled, [type='datetime']:disabled, [type='datetime-local']:disabled, [type='email']:disabled, [type='month']:disabled, [type='number']:disabled, [type='password']:disabled, [type='search']:disabled, [type='tel']:disabled, [type='text']:disabled, [type='time']:disabled, [type='url']:disabled, [type='week']:disabled, input:not([type]):disabled, textarea:disabled {
    background-color: shade(#fff, 5%);
    cursor: not-allowed; }
    [type='color']:disabled:hover, [type='date']:disabled:hover, [type='datetime']:disabled:hover, [type='datetime-local']:disabled:hover, [type='email']:disabled:hover, [type='month']:disabled:hover, [type='number']:disabled:hover, [type='password']:disabled:hover, [type='search']:disabled:hover, [type='tel']:disabled:hover, [type='text']:disabled:hover, [type='time']:disabled:hover, [type='url']:disabled:hover, [type='week']:disabled:hover, input:not([type]):disabled:hover, textarea:disabled:hover {
      border: 3px solid #000000; }
  [type='color']::placeholder, [type='date']::placeholder, [type='datetime']::placeholder, [type='datetime-local']::placeholder, [type='email']::placeholder, [type='month']::placeholder, [type='number']::placeholder, [type='password']::placeholder, [type='search']::placeholder, [type='tel']::placeholder, [type='text']::placeholder, [type='time']::placeholder, [type='url']::placeholder, [type='week']::placeholder, input:not([type])::placeholder, textarea::placeholder {
    color: tint(#000000, 60%); }

[type="range"] {
  margin-bottom: 0.75em; }

textarea {
  resize: vertical; }

input[type="checkbox"],
input[type="radio"],
body .gform_wrapper .gfield_checkbox .gchoice input[type="checkbox"],
body .gform_wrapper .gfield_radio .gchoice input[type="radio"] {
  position: absolute;
  opacity: 0; }
  input[type="checkbox"] + label,
  input[type="radio"] + label,
  body .gform_wrapper .gfield_checkbox .gchoice input[type="checkbox"] + label,
  body .gform_wrapper .gfield_radio .gchoice input[type="radio"] + label {
    margin: 0;
    font-size: 22px; }
    input[type="checkbox"] + label:before,
    input[type="radio"] + label:before,
    body .gform_wrapper .gfield_checkbox .gchoice input[type="checkbox"] + label:before,
    body .gform_wrapper .gfield_radio .gchoice input[type="radio"] + label:before {
      content: "";
      width: 1rem;
      height: 1rem;
      border: 2px solid #000000;
      display: inline-block;
      margin-right: 0.6rem;
      transform: translateY(0.16rem); }
  input[type="checkbox"]:checked + label,
  input[type="radio"]:checked + label,
  body .gform_wrapper .gfield_checkbox .gchoice input[type="checkbox"]:checked + label,
  body .gform_wrapper .gfield_radio .gchoice input[type="radio"]:checked + label {
    font-weight: 400; }
    input[type="checkbox"]:checked + label:before,
    input[type="radio"]:checked + label:before,
    body .gform_wrapper .gfield_checkbox .gchoice input[type="checkbox"]:checked + label:before,
    body .gform_wrapper .gfield_radio .gchoice input[type="radio"]:checked + label:before {
      background: #000000; }

input[type="radio"] + label:before,
body .gform_wrapper .gfield_radio .gchoice input[type="radio"] + label:before {
  border-radius: 50%; }

input[type="checkbox"]:focus,
input[type="radio"]:focus,
input[type="file"]:focus,
select:focus {
  border-color: #000000;
  box-shadow: none;
  outline: none; }

input[type="file"] {
  margin-bottom: 0.75em;
  width: 100%; }

/* Custom select styling */
select,
body .gform_wrapper.gf_browser_chrome select,
body .gform_wrapper.gf_browser_chrome .gform_fields .gfield div.ginput_complex span.ginput_right select,
body .gform_wrapper.gf_browser_chrome .gform_fields .gfield select {
  color: #000000;
  -webkit-font-smoothing: antialiased;
  line-height: 1.3;
  padding: 0.65em calc(0.7em + 14px) 0.52em 0.7em;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0 0 0.2rem;
  border: 1px solid #000000;
  box-shadow: none;
  border-radius: 0px;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #ffffff;
  /* note: bg image below uses 2 urls. The first is an svg data uri for the arrow icon, and the second is the gradient. 
      for the icon, if you want to change the color, be sure to use `%23` instead of `#`, since it's a url. You can also swap in a different svg icon or an external image reference
    */
  background-image: url(images/down-arrow.svg), linear-gradient(to bottom, #ffffff 0%, #ffffff 100%);
  background-repeat: no-repeat, repeat;
  /* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
  background-position: right 0.7em top 54%, 0 0;
  /* icon size, then gradient */
  background-size: 14px auto, 100%;
  /* Hide arrow icon in IE browsers */
  /* Set options to normal weight */
  /* Disabled styles */ }
  select::-ms-expand,
  body .gform_wrapper.gf_browser_chrome select::-ms-expand,
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield div.ginput_complex span.ginput_right select::-ms-expand,
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield select::-ms-expand {
    display: none; }
  select option,
  body .gform_wrapper.gf_browser_chrome select option,
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield div.ginput_complex span.ginput_right select option,
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield select option {
    font-weight: normal; }
  select:disabled, select[aria-disabled="true"],
  body .gform_wrapper.gf_browser_chrome select:disabled,
  body .gform_wrapper.gf_browser_chrome select[aria-disabled="true"],
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield div.ginput_complex span.ginput_right select:disabled,
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield div.ginput_complex span.ginput_right select[aria-disabled="true"],
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield select:disabled,
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield select[aria-disabled="true"] {
    color: graytext;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22graytext%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"), linear-gradient(to bottom, #ddd 0%, #ddd 100%); }
  select:disabled:hover, select[aria-disabled="true"],
  body .gform_wrapper.gf_browser_chrome select:disabled:hover,
  body .gform_wrapper.gf_browser_chrome select[aria-disabled="true"],
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield div.ginput_complex span.ginput_right select:disabled:hover,
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield div.ginput_complex span.ginput_right select[aria-disabled="true"],
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield select:disabled:hover,
  body .gform_wrapper.gf_browser_chrome .gform_fields .gfield select[aria-disabled="true"] {
    border-color: #aaa; }

body .gform_wrapper.gf_browser_chrome select {
  padding: 2px 32px 2px 10px; }

/* Support for rtl text, explicit support for Arabic and Hebrew */
*[dir="rtl"] select,
:root:lang(ar) select,
:root:lang(iw) select {
  background-position: left 0.7em top 50%, 0 0;
  padding: 0.6em 0.8em 0.5em 1.4em; }

.ui-datepicker {
  background-color: white; }
  .ui-datepicker .ui-datepicker-title {
    display: flex;
    justify-content: space-between; }
  .ui-datepicker .ui-datepicker-calendar {
    background-color: white; }

input[type="search"] {
  box-sizing: border-box; }

form input[type="submit"] {
  position: relative;
  display: inline-block;
  margin-bottom: 0;
  padding: 3px 46px 3px 8px;
  font-family: "Inter", sans-serif;
  font-size: 24px;
  -webkit-font-smoothing: antialiased;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: underline;
  color: #000000;
  background-color: rgba(255, 255, 255, 0);
  border: none;
  transition: all 300ms ease-in-out;
  user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  appearance: none;
  box-sizing: content-box;
  cursor: pointer;
  background-image: url(images/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: 28px 15px;
  background-position: 90% 50%; }
  form input[type="submit"]:hover {
    color: #ffffff;
    background-color: #000000;
    background-image: url(images/arrow-right-white.svg);
    background-position: 100% 50%; }
  form input[type="submit"]:focus {
    outline: 3px solid #000000;
    outline-offset: 3px; }
  form input[type="submit"]:disabled {
    cursor: not-allowed;
    opacity: 0.5; }

body .gform_wrapper {
  text-align: left; }
  body .gform_wrapper .ginput_complex.ginput_container span:only-of-type {
    width: 100%;
    margin-right: 0;
    padding-right: 0; }
  body .gform_wrapper span.gform_description {
    width: 100%; }
  body .gform_wrapper .gform_fields .gfield,
  body .gform_wrapper .gfield.gf_right_half,
  body .gform_wrapper .top_label .gfield.gf_right_half {
    padding-right: 0; }
  body .gform_wrapper .description,
  body .gform_wrapper .gfield_description,
  body .gform_wrapper .gsection_description,
  body .gform_wrapper .instruction {
    font-style: italic; }
  body .gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label,
  body .gform_wrapper .field_sublabel_above div[class*="gfield_date_"].ginput_container label,
  body .gform_wrapper .field_sublabel_above div[class*="gfield_time_"].ginput_container label,
  body .gform_wrapper .field_sublabel_below .ginput_complex.ginput_container label,
  body .gform_wrapper .field_sublabel_below div[class*="gfield_date_"].ginput_container label,
  body .gform_wrapper .field_sublabel_below div[class*="gfield_time_"].ginput_container label {
    font-weight: 400; }
  body .gform_wrapper.gravity-theme .gfield_label {
    font-size: inherit;
    line-height: 1.3; }
  body .gform_wrapper .ginput_complex .ginput_left input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="image"]):not([type="file"]),
  body .gform_wrapper .ginput_complex .ginput_right input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="image"]):not([type="file"]),
  body .gform_wrapper .ginput_complex input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="image"]):not([type="file"]) {
    margin-bottom: 0.2rem; }
  body .gform_wrapper .field_sublabel_below .ginput_complex.ginput_container label {
    margin-bottom: 1rem; }
  body .gform_wrapper img.gform_ajax_spinner {
    display: none !important; }
  body .gform_wrapper .gform_footer {
    padding-top: 15px; }
  body .gform_wrapper .top_label div.ginput_container,
  body .gform_wrapper .top_label div.ginput_complex.ginput_container.gf_name_has_1,
  body .gform_wrapper .top_label div.ginput_complex.ginput_container.gf_name_has_2,
  body .gform_wrapper .top_label div.ginput_complex.ginput_container.gf_name_has_3 {
    margin-top: 0;
    width: 100%; }
  body .gform_wrapper .gfield_required {
    color: #D80000; }
    body .gform_wrapper .gfield_required.gfield_required_asterisk {
      font-size: 25px; }
  body .gform_wrapper .field_description_below .gfield_description {
    padding-top: 6px; }
  body .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]) {
    width: 100%;
    padding: 0.65em 0.8em 0.6em;
    font-size: inherit; }
  body .gform_wrapper .gform_footer input.button,
  body .gform_wrapper .gform_page_footer input.button,
  body .gform_wrapper .gform_footer input[type="submit"],
  body .gform_wrapper .gform_page_footer input[type="submit"] {
    font-size: 24px; }
  body .gform_wrapper .gfield_checkbox .gchoice label,
  body .gform_wrapper .gfield_radio .gchoice label {
    font-weight: 400; }
  body .gform_wrapper div.validation_error {
    color: #D80000;
    font-size: 1em;
    font-weight: 400;
    margin-bottom: 0;
    border-top: 3px solid #D80000;
    border-bottom: 3px solid #D80000;
    padding: 16px 0 16px 0;
    clear: both;
    width: 100%;
    text-align: center; }
  body .gform_wrapper .validation_message {
    color: #D80000;
    font-weight: 400;
    font-style: italic;
    letter-spacing: normal; }
  body .gform_wrapper .gfield_error .gfield_label {
    color: #D80000; }
  body .gform_wrapper .gfield.gfield_error,
  body .gform_wrapper .gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
    border: none;
    background: none; }
  body .gform_wrapper .gfield_error input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
  body .gform_wrapper .gfield_error textarea {
    border: 3px solid #D80000; }
  body .gform_wrapper.gform_validation_error {
    padding-top: 20px; }
  @media only screen and (min-width: 641px) {
    body .gform_wrapper.gform_validation_error .gform_body .gform_fields .gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
      max-width: 100% !important; } }

html {
  background-color: #ffffff;
  box-sizing: border-box; }
  html::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0px;
    height: 50px;
    background-color: #000000;
    z-index: -1; }

.block {
  margin: 0 auto 75px; }
  .block:last-of-type.hero.style-2 {
    margin-bottom: 0; }
  @media (min-width: 900px) {
    .block {
      margin: 0 auto 200px; } }

*,
*::before,
*::after {
  box-sizing: inherit; }
  *:focus,
  *::before:focus,
  *::after:focus {
    transition: none; }

html,
body {
  height: 100%; }

body {
  margin: 0;
  background-color: #ffffff; }
  body.front-end {
    padding-top: 200px; }

.page-wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100%; }
  .page-wrapper main {
    flex: 1; }

.wrapper,
.wp-block-group__inner-container {
  max-width: 1800px;
  margin: auto;
  padding: 0 2rem; }
  @media (min-width: 900px) {
    .wrapper,
    .wp-block-group__inner-container {
      padding: 0 1.2rem; } }
  @media (max-width: 599px) {
    .wrapper,
    .wp-block-group__inner-container {
      max-width: 100%; } }

.wp-block-group__inner-container .wrapper {
  padding-left: 0;
  padding-right: 0; }

.visually-hidden,
.visually-hide-label,
.visually-hide-text {
  position: absolute;
  right: 999999999px;
  width: 0;
  height: 0;
  opacity: 0; }

.align-left,
.text-align-left {
  text-align: left; }

.text-align-center,
.align-center {
  text-align: center; }

.align-right,
.text-align-right {
  text-align: right; }

.content-left .row {
  flex-direction: row-reverse; }

.content-right .row {
  flex-direction: row; }

.content-center .row {
  text-align: center; }
  .content-center .row .buttons {
    justify-content: center; }

.stop-it {
  display: none !important; }

.front-end .wp-block-group {
  overflow: hidden; }

@media (min-width: 600px) {
  .wp-block-column {
    flex-wrap: nowrap; } }

ul,
ol {
  margin: 0;
  padding: 0 0 0 17px; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    padding: 0 0 0 17px; }

dl {
  margin: 0; }

dt {
  font-weight: 600;
  margin: 0; }

dd {
  margin: 0; }

.logo-site {
  display: block;
  width: 100%;
  max-width: 9.8rem;
  transition: all 300ms ease-in-out; }
  .logo-site.white {
    fill: #ffffff; }

.white-svg {
  fill: #ffffff; }

.logo-small {
  display: block;
  width: 100%;
  max-width: 5.8rem; }

figure {
  margin: 0; }

img,
picture {
  margin: 0;
  max-width: 100%;
  height: auto; }

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%; }
  .embed-container iframe,
  .embed-container object,
  .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.block.video .wrapper {
  max-width: 85%; }

table {
  min-width: 500px;
  margin: 0 auto;
  border-collapse: collapse;
  table-layout: fixed;
  text-align: left; }

thead {
  line-height: 1.2;
  vertical-align: bottom; }

tbody {
  vertical-align: top; }

th,
td {
  font-weight: 600;
  border-left: 10px solid #ffffff;
  border-right: 10px solid #ffffff; }

th {
  padding: 0.75em;
  background-color: #f4c254; }

tr:first-child td {
  padding-top: 0.8em; }

td {
  position: relative;
  padding: 0.4em 0.75em; }
  td:after {
    content: "";
    display: block;
    width: calc(100% - (0.75em * 2));
    height: 1px;
    background-color: #000000;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%); }

td.amount {
  text-align: right; }

tr:last-child td:after,
td.amount:after {
  content: none; }

.fieldset.filters {
  margin-bottom: 2.4rem; }
  .fieldset.filters .facet-wrap {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: nowrap;
    width: calc((1 / 3 * 100%) - 2.8rem);
    min-width: 300px;
    margin-bottom: 0.6rem;
    padding: 0.4rem 0; }
  .fieldset.filters .facet-label {
    margin: 0 1rem 0 0;
    font-weight: normal;
    white-space: nowrap; }
  .fieldset.filters .title {
    text-decoration: underline; }
  .fieldset.filters input[type="text"] {
    margin: 0;
    padding: 0;
    border: none;
    box-shadow: none;
    font-family: "Inter";
    font-size: 0.9rem;
    line-height: 1.5; }
  .fieldset.filters .facetwp-facet {
    margin-bottom: 0;
    font-size: 0.9rem;
    line-height: 1.5; }
  .fieldset.filters .facetwp-type-date_range.facetwp-facet-end_date {
    margin-left: 10px; }
  .fieldset.filters .facetwp-type-date_range:after {
    content: "";
    width: 100%;
    height: 3px;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #000000; }
  .fieldset.filters .facetwp-type-fselect .fs-dropdown {
    position: relative;
    width: auto; }
  .fieldset.filters .facetwp-type-fselect .fs-wrap {
    display: block; }
  .fieldset.filters .facetwp-type-fselect .fs-label-wrap {
    width: auto;
    border: none; }
  .fieldset.filters .facetwp-type-fselect:after {
    content: "";
    width: 100%;
    height: 3px;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #000000; }
  .fieldset.filters .facetwp-checkbox,
  .fieldset.filters .facetwp-radio {
    margin: 0;
    padding: 0;
    background: none;
    text-indent: -9999px; }
    .fieldset.filters .facetwp-checkbox:before,
    .fieldset.filters .facetwp-radio:before {
      content: "";
      width: 1rem;
      height: 1rem;
      margin-right: 0.6rem;
      border: 2px solid #000000;
      border-radius: 50%;
      float: left; }
      @media (max-width: 599px) {
        .fieldset.filters .facetwp-checkbox:before,
        .fieldset.filters .facetwp-radio:before {
          transform: translateY(-0.16rem); } }
    .fieldset.filters .facetwp-checkbox.checked,
    .fieldset.filters .facetwp-radio.checked {
      font-weight: 400; }
      .fieldset.filters .facetwp-checkbox.checked:before,
      .fieldset.filters .facetwp-radio.checked:before {
        background: #000000; }
    .fieldset.filters .facetwp-checkbox[data-value="0"],
    .fieldset.filters .facetwp-radio[data-value="0"] {
      display: none; }
    .fieldset.filters .facetwp-checkbox#text,
    .fieldset.filters .facetwp-radio#text {
      display: none; }
    .fieldset.filters .facetwp-checkbox .facetwp-counter,
    .fieldset.filters .facetwp-radio .facetwp-counter {
      display: none; }

.page-id-1717 .fieldset.filters .facet-wrap:first-of-type {
  flex-direction: row;
  justify-content: flex-start; }

.fieldset.search-bar .facet-label {
  margin: 0 0 0.6rem;
  font-weight: normal;
  white-space: nowrap; }

.fieldset.search-bar .facetwp-type-search .facetwp-input-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap; }

.fieldset.search-bar .facetwp-type-search .facetwp-icon {
  right: auto;
  left: 0;
  height: 44px;
  padding-left: 0.4rem; }

.fieldset.search-bar .facetwp-type-search input.facetwp-search {
  margin-bottom: 0.6rem;
  padding-left: 1.8rem;
  box-shadow: none; }

.fieldset.search-bar .facetwp-type-search button {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  width: auto;
  height: auto;
  padding: 0;
  font-size: 25px;
  line-height: 1.74;
  background: rgba(255, 255, 255, 0);
  border: none;
  color: #000000;
  transform: translate(0);
  text-transform: none;
  border-radius: 0;
  box-shadow: none;
  text-shadow: none;
  position: relative;
  display: inline-block;
  padding: 3px 46px 3px 0;
  font-family: "Inter", sans-serif;
  font-size: 18px;
  -webkit-font-smoothing: antialiased;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: underline;
  color: #000000;
  background-color: rgba(255, 255, 255, 0);
  border: none;
  border-radius: 0;
  transition: all 300ms ease-in-out;
  user-select: none;
  vertical-align: middle;
  appearance: none;
  box-sizing: content-box;
  cursor: pointer;
  background-image: url(images/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: 28px 15px;
  background-position: calc(100% - 10px) 50%; }
  .fieldset.search-bar .facetwp-type-search button:before, .fieldset.search-bar .facetwp-type-search button:after {
    content: none; }
  @media (min-width: 600px) {
    .fieldset.search-bar .facetwp-type-search button {
      font-size: 20px; } }
  @media (min-width: 900px) {
    .fieldset.search-bar .facetwp-type-search button {
      font-size: 22px; } }
  @media (min-width: 1200px) {
    .fieldset.search-bar .facetwp-type-search button {
      font-size: 25px; } }
  .fieldset.search-bar .facetwp-type-search button.prev {
    padding: 3px 0 3px 46px;
    background-image: url(images/arrow-left.svg);
    background-position: 10px 50%; }
  .fieldset.search-bar .facetwp-type-search button.prev, .fieldset.search-bar .facetwp-type-search button.next {
    text-decoration: none; }
  .fieldset.search-bar .facetwp-type-search button:hover {
    color: #ffffff;
    background-color: #000000;
    background-image: url(images/arrow-right-white.svg);
    background-position: 100% 50%; }
    .fieldset.search-bar .facetwp-type-search button:hover.prev:hover {
      background-image: url(images/arrow-left-white.svg);
      background-position: 0 50%; }
  .fieldset.search-bar .facetwp-type-search button:focus {
    outline: 3px solid #000000;
    outline-offset: 3px; }
  .fieldset.search-bar .facetwp-type-search button:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
  .fieldset.search-bar .facetwp-type-search button.lg-prev:focus, .fieldset.search-bar .facetwp-type-search button.lg-next:focus {
    outline: 3px solid #ffffff; }

.fieldset.search-bar .facetwp-type-search button:last-of-type {
  margin-right: 6px; }

.fieldset.search-bar .facetwp-type-search .facetwp-search-submit {
  margin-left: auto;
  margin-right: 1rem; }

.load-more-btn {
  margin-bottom: 1rem;
  text-align: center; }
  .load-more-btn .facet-label {
    display: none; }
  .load-more-btn button {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: auto;
    height: auto;
    padding: 0;
    font-size: 25px;
    line-height: 1.74;
    background: rgba(255, 255, 255, 0);
    border: none;
    color: #000000;
    transform: translate(0);
    text-transform: none;
    border-radius: 0;
    box-shadow: none;
    text-shadow: none;
    position: relative;
    display: inline-block;
    padding: 3px 46px 3px 0;
    font-family: "Inter", sans-serif;
    font-size: 18px;
    -webkit-font-smoothing: antialiased;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: underline;
    color: #000000;
    background-color: rgba(255, 255, 255, 0);
    border: none;
    border-radius: 0;
    transition: all 300ms ease-in-out;
    user-select: none;
    vertical-align: middle;
    appearance: none;
    box-sizing: content-box;
    cursor: pointer;
    background-image: url(images/arrow-right.svg);
    background-repeat: no-repeat;
    background-size: 28px 15px;
    background-position: calc(100% - 10px) 50%; }
    .load-more-btn button:before, .load-more-btn button:after {
      content: none; }
    @media (min-width: 600px) {
      .load-more-btn button {
        font-size: 20px; } }
    @media (min-width: 900px) {
      .load-more-btn button {
        font-size: 22px; } }
    @media (min-width: 1200px) {
      .load-more-btn button {
        font-size: 25px; } }
    .load-more-btn button.prev {
      padding: 3px 0 3px 46px;
      background-image: url(images/arrow-left.svg);
      background-position: 10px 50%; }
    .load-more-btn button.prev, .load-more-btn button.next {
      text-decoration: none; }
    .load-more-btn button:hover {
      color: #ffffff;
      background-color: #000000;
      background-image: url(images/arrow-right-white.svg);
      background-position: 100% 50%; }
      .load-more-btn button:hover.prev:hover {
        background-image: url(images/arrow-left-white.svg);
        background-position: 0 50%; }
    .load-more-btn button:focus {
      outline: 3px solid #000000;
      outline-offset: 3px; }
    .load-more-btn button:disabled {
      cursor: not-allowed;
      opacity: 0.5; }
    .load-more-btn button.lg-prev:focus, .load-more-btn button.lg-next:focus {
      outline: 3px solid #ffffff; }
    .load-more-btn button:not(.prev):before {
      width: calc(100% - 33px); }
    .load-more-btn button:not(.prev):after {
      background-image: url(images/arrow-down.svg);
      width: 15px;
      height: 28px;
      transform: translateY(8px); }
    .load-more-btn button:hover:not(.prev):after {
      transform: translateY(15px); }

.carbon-app button {
  min-width: 0 !important; }
  .carbon-app button:hover {
    border: none !important; }
  .carbon-app button:focus {
    background-color: #0062ff !important;
    color: #ffffff !important;
    border: none !important; }

.carbon-app .bx--btn--primary:hover, .carbon-app .bx--btn--primary:focus,
.carbon-app .bx--btn--secondary:hover,
.carbon-app .bx--btn--secondary:focus {
  border: 3px solid transparent !important; }

.carbon-app .bx--data-table th:last-of-type {
  width: 300px; }

.carbon-app .bx--data-table .cell-address a {
  color: #e90a59; }

.carbon-app .bx--file__drop-container {
  border: 1px dashed #000;
  padding: 15px; }

.carbon-app .bx--combo-box.bx--list-box:hover {
  background-color: #ffffff; }

.carbon-app .bx--combo-box.bx--list-box .bx--list-box__field:hover {
  border: 0; }

.carbon-app .bx--pagination__left {
  min-width: 320px; }

.carbon-app .bx--pagination__right {
  min-width: 238px; }

table.bx--data-table {
  margin-top: 0;
  margin-bottom: 0; }
  table.bx--data-table tbody th,
  table.bx--data-table td {
    padding: 0.875rem 0.75rem;
    padding-bottom: 0.8125rem; }

.bx--table-sort {
  min-width: 0; }

.bx--pagination .bx--select-input {
  margin-bottom: 0; }

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

.bx--tooltip__trigger:not(.bx--btn--icon-only) {
  min-width: 0; }

.bx--overflow-menu.bx--toolbar-action {
  min-width: 0; }

.cv-combo-box.bx--list-box__wrapper {
  margin-bottom: 30px; }

@keyframes skeleton {
  0% {
    width: 0%;
    left: 0;
    right: auto;
    opacity: 0.3; }
  20% {
    width: 100%;
    left: 0;
    right: auto;
    opacity: 1; }
  28% {
    width: 100%;
    left: auto;
    right: 0; }
  51% {
    width: 0%;
    left: auto;
    right: 0; }
  58% {
    width: 0%;
    left: auto;
    right: 0; }
  82% {
    width: 100%;
    left: auto;
    right: 0; }
  83% {
    width: 100%;
    left: 0;
    right: auto; }
  96% {
    width: 0%;
    left: 0;
    right: auto; }
  100% {
    width: 0%;
    left: 0;
    right: auto;
    opacity: 0.3; } }

.bx--text-truncate--end {
  width: 100%;
  display: inline-block;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; }

.bx--text-truncate--front {
  width: 100%;
  display: inline-block;
  direction: rtl;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; }

.bx--assistive-text,
.bx--visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }

.bx--body {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #000000;
  background-color: #ffffff;
  line-height: 1; }
  .bx--body *,
  .bx--body *:before,
  .bx--body *:after {
    box-sizing: inherit; }

.bx--grid {
  margin-right: auto;
  margin-left: auto;
  max-width: 99rem;
  padding-left: 1rem;
  padding-right: 1rem; }
  @media (min-width: 42rem) {
    .bx--grid {
      padding-left: 2rem;
      padding-right: 2rem; } }
  @media (min-width: 99rem) {
    .bx--grid {
      padding-left: 2.5rem;
      padding-right: 2.5rem; } }

@media (min-width: 99rem) {
  .bx--grid--full-width {
    max-width: 100%; } }

.bx--row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem; }

.bx--grid--condensed .bx--row:not(:last-of-type) {
  margin-bottom: 0.125rem; }

.bx--row--condensed + .bx--row--condensed {
  margin-top: 0.125rem; }

.bx--col {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col,
  .bx--grid--condensed .bx--col {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-sm-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-sm-1,
  .bx--grid--condensed .bx--col-sm-1 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-sm-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-sm-2,
  .bx--grid--condensed .bx--col-sm-2 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-sm-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-sm-3,
  .bx--grid--condensed .bx--col-sm-3 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-sm-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-sm-4,
  .bx--grid--condensed .bx--col-sm-4 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-sm,
.bx--col-sm--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-sm,
  .bx--grid--condensed .bx--col-sm, .bx--row--condensed
  .bx--col-sm--auto,
  .bx--grid--condensed
  .bx--col-sm--auto {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

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

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

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

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

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

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

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

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

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

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

.bx--col-md-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md-1,
  .bx--grid--condensed .bx--col-md-1 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-md-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md-2,
  .bx--grid--condensed .bx--col-md-2 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-md-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md-3,
  .bx--grid--condensed .bx--col-md-3 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-md-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md-4,
  .bx--grid--condensed .bx--col-md-4 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-md-5 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md-5,
  .bx--grid--condensed .bx--col-md-5 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-md-6 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md-6,
  .bx--grid--condensed .bx--col-md-6 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-md-7 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md-7,
  .bx--grid--condensed .bx--col-md-7 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-md-8 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md-8,
  .bx--grid--condensed .bx--col-md-8 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-md,
.bx--col-md--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-md,
  .bx--grid--condensed .bx--col-md, .bx--row--condensed
  .bx--col-md--auto,
  .bx--grid--condensed
  .bx--col-md--auto {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

@media (min-width: 42rem) {
  .bx--col,
  .bx--col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .bx--col--auto,
  .bx--col-md--auto {
    flex: 1 0 0%;
    width: auto;
    max-width: 100%; }
  .bx--col-md-1 {
    flex: 0 0 12.5%;
    max-width: 12.5%; }
  .bx--col-md-2 {
    flex: 0 0 25%;
    max-width: 25%; }
  .bx--col-md-3 {
    flex: 0 0 37.5%;
    max-width: 37.5%; }
  .bx--col-md-4 {
    flex: 0 0 50%;
    max-width: 50%; }
  .bx--col-md-5 {
    flex: 0 0 62.5%;
    max-width: 62.5%; }
  .bx--col-md-6 {
    flex: 0 0 75%;
    max-width: 75%; }
  .bx--col-md-7 {
    flex: 0 0 87.5%;
    max-width: 87.5%; }
  .bx--col-md-8 {
    flex: 0 0 100%;
    max-width: 100%; }
  .bx--offset-md-0 {
    margin-left: 0; }
  .bx--offset-md-1 {
    margin-left: 12.5%; }
  .bx--offset-md-2 {
    margin-left: 25%; }
  .bx--offset-md-3 {
    margin-left: 37.5%; }
  .bx--offset-md-4 {
    margin-left: 50%; }
  .bx--offset-md-5 {
    margin-left: 62.5%; }
  .bx--offset-md-6 {
    margin-left: 75%; }
  .bx--offset-md-7 {
    margin-left: 87.5%; } }

.bx--col-lg-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-1,
  .bx--grid--condensed .bx--col-lg-1 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-2,
  .bx--grid--condensed .bx--col-lg-2 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-3,
  .bx--grid--condensed .bx--col-lg-3 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-4,
  .bx--grid--condensed .bx--col-lg-4 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-5 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-5,
  .bx--grid--condensed .bx--col-lg-5 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-6 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-6,
  .bx--grid--condensed .bx--col-lg-6 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-7 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-7,
  .bx--grid--condensed .bx--col-lg-7 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-8 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-8,
  .bx--grid--condensed .bx--col-lg-8 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-9 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-9,
  .bx--grid--condensed .bx--col-lg-9 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-10 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-10,
  .bx--grid--condensed .bx--col-lg-10 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-11 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-11,
  .bx--grid--condensed .bx--col-lg-11 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg-12 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg-12,
  .bx--grid--condensed .bx--col-lg-12 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-lg,
.bx--col-lg--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-lg,
  .bx--grid--condensed .bx--col-lg, .bx--row--condensed
  .bx--col-lg--auto,
  .bx--grid--condensed
  .bx--col-lg--auto {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

@media (min-width: 66rem) {
  .bx--col,
  .bx--col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .bx--col--auto,
  .bx--col-lg--auto {
    flex: 1 0 0%;
    width: auto;
    max-width: 100%; }
  .bx--col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .bx--col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bx--col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .bx--col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bx--col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .bx--col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .bx--col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .bx--col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .bx--col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .bx--col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .bx--col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .bx--col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .bx--offset-lg-0 {
    margin-left: 0; }
  .bx--offset-lg-1 {
    margin-left: 8.33333%; }
  .bx--offset-lg-2 {
    margin-left: 16.66667%; }
  .bx--offset-lg-3 {
    margin-left: 25%; }
  .bx--offset-lg-4 {
    margin-left: 33.33333%; }
  .bx--offset-lg-5 {
    margin-left: 41.66667%; }
  .bx--offset-lg-6 {
    margin-left: 50%; }
  .bx--offset-lg-7 {
    margin-left: 58.33333%; }
  .bx--offset-lg-8 {
    margin-left: 66.66667%; }
  .bx--offset-lg-9 {
    margin-left: 75%; }
  .bx--offset-lg-10 {
    margin-left: 83.33333%; }
  .bx--offset-lg-11 {
    margin-left: 91.66667%; } }

.bx--col-xlg-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-1,
  .bx--grid--condensed .bx--col-xlg-1 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-2,
  .bx--grid--condensed .bx--col-xlg-2 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-3,
  .bx--grid--condensed .bx--col-xlg-3 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-4,
  .bx--grid--condensed .bx--col-xlg-4 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-5 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-5,
  .bx--grid--condensed .bx--col-xlg-5 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-6 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-6,
  .bx--grid--condensed .bx--col-xlg-6 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-7 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-7,
  .bx--grid--condensed .bx--col-xlg-7 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-8 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-8,
  .bx--grid--condensed .bx--col-xlg-8 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-9 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-9,
  .bx--grid--condensed .bx--col-xlg-9 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-10 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-10,
  .bx--grid--condensed .bx--col-xlg-10 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-11 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-11,
  .bx--grid--condensed .bx--col-xlg-11 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg-12 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg-12,
  .bx--grid--condensed .bx--col-xlg-12 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-xlg,
.bx--col-xlg--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-xlg,
  .bx--grid--condensed .bx--col-xlg, .bx--row--condensed
  .bx--col-xlg--auto,
  .bx--grid--condensed
  .bx--col-xlg--auto {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

@media (min-width: 82rem) {
  .bx--col,
  .bx--col-xlg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .bx--col--auto,
  .bx--col-xlg--auto {
    flex: 1 0 0%;
    width: auto;
    max-width: 100%; }
  .bx--col-xlg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .bx--col-xlg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bx--col-xlg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .bx--col-xlg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bx--col-xlg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .bx--col-xlg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .bx--col-xlg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .bx--col-xlg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .bx--col-xlg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .bx--col-xlg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .bx--col-xlg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .bx--col-xlg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .bx--offset-xlg-0 {
    margin-left: 0; }
  .bx--offset-xlg-1 {
    margin-left: 8.33333%; }
  .bx--offset-xlg-2 {
    margin-left: 16.66667%; }
  .bx--offset-xlg-3 {
    margin-left: 25%; }
  .bx--offset-xlg-4 {
    margin-left: 33.33333%; }
  .bx--offset-xlg-5 {
    margin-left: 41.66667%; }
  .bx--offset-xlg-6 {
    margin-left: 50%; }
  .bx--offset-xlg-7 {
    margin-left: 58.33333%; }
  .bx--offset-xlg-8 {
    margin-left: 66.66667%; }
  .bx--offset-xlg-9 {
    margin-left: 75%; }
  .bx--offset-xlg-10 {
    margin-left: 83.33333%; }
  .bx--offset-xlg-11 {
    margin-left: 91.66667%; } }

.bx--col-max-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-1,
  .bx--grid--condensed .bx--col-max-1 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-2,
  .bx--grid--condensed .bx--col-max-2 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-3,
  .bx--grid--condensed .bx--col-max-3 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-4,
  .bx--grid--condensed .bx--col-max-4 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-5 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-5,
  .bx--grid--condensed .bx--col-max-5 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-6 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-6,
  .bx--grid--condensed .bx--col-max-6 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-7 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-7,
  .bx--grid--condensed .bx--col-max-7 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-8 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-8,
  .bx--grid--condensed .bx--col-max-8 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-9 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-9,
  .bx--grid--condensed .bx--col-max-9 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-10 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-10,
  .bx--grid--condensed .bx--col-max-10 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-11 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-11,
  .bx--grid--condensed .bx--col-max-11 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max-12 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max-12,
  .bx--grid--condensed .bx--col-max-12 {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

.bx--col-max,
.bx--col-max--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem; }
  .bx--row--condensed .bx--col-max,
  .bx--grid--condensed .bx--col-max, .bx--row--condensed
  .bx--col-max--auto,
  .bx--grid--condensed
  .bx--col-max--auto {
    padding-right: 0.0625rem;
    padding-left: 0.0625rem; }

@media (min-width: 99rem) {
  .bx--col,
  .bx--col-max {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .bx--col--auto,
  .bx--col-max--auto {
    flex: 1 0 0%;
    width: auto;
    max-width: 100%; }
  .bx--col-max-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .bx--col-max-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .bx--col-max-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .bx--col-max-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .bx--col-max-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .bx--col-max-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .bx--col-max-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .bx--col-max-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .bx--col-max-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .bx--col-max-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .bx--col-max-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .bx--col-max-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .bx--offset-max-0 {
    margin-left: 0; }
  .bx--offset-max-1 {
    margin-left: 8.33333%; }
  .bx--offset-max-2 {
    margin-left: 16.66667%; }
  .bx--offset-max-3 {
    margin-left: 25%; }
  .bx--offset-max-4 {
    margin-left: 33.33333%; }
  .bx--offset-max-5 {
    margin-left: 41.66667%; }
  .bx--offset-max-6 {
    margin-left: 50%; }
  .bx--offset-max-7 {
    margin-left: 58.33333%; }
  .bx--offset-max-8 {
    margin-left: 66.66667%; }
  .bx--offset-max-9 {
    margin-left: 75%; }
  .bx--offset-max-10 {
    margin-left: 83.33333%; }
  .bx--offset-max-11 {
    margin-left: 91.66667%; } }

.bx--no-gutter,
.bx--row.bx--no-gutter [class*='bx--col'] {
  padding-left: 0;
  padding-right: 0; }

.bx--no-gutter--left,
.bx--row.bx--no-gutter--left [class*='bx--col'] {
  padding-left: 0; }

.bx--no-gutter--right,
.bx--row.bx--no-gutter--right [class*='bx--col'] {
  padding-right: 0; }

.bx--hang--left {
  padding-left: 1rem; }

.bx--hang--right {
  padding-right: 1rem; }

.bx--aspect-ratio {
  height: 0;
  position: relative; }

.bx--aspect-ratio--object {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100; }

.bx--aspect-ratio--16x9 {
  padding-bottom: 56.25%; }

.bx--aspect-ratio--2x1 {
  padding-bottom: 50%; }

.bx--aspect-ratio--4x3 {
  padding-bottom: 75%; }

.bx--aspect-ratio--1x1 {
  padding-bottom: 100%; }

.bx--aspect-ratio--1x2 {
  padding-bottom: 200%; }

.bx--btn-set {
  display: flex; }

.bx--btn-set > .bx--btn {
  width: 100%; }

.bx--btn--secondary.bx--btn--disabled + .bx--btn--primary.bx--btn--disabled,
.bx--btn--tertiary.bx--btn--disabled + .bx--btn--danger.bx--btn--disabled {
  border-left: 0.04rem solid #8c8c8c; }

.bx--btn {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  vertical-align: top;
  flex-shrink: 0;
  min-height: 1.92rem;
  padding: calc(0.875rem - 3px) 60px calc(0.875rem - 3px) 12px;
  border-radius: 0;
  text-align: left;
  text-decoration: none;
  transition: all 70ms cubic-bezier(0, 0, 0.38, 0.9);
  outline: 1px solid transparent;
  outline-offset: -4px;
  position: relative;
  max-width: 12.8rem; }
  .bx--btn *,
  .bx--btn *:before,
  .bx--btn *:after {
    box-sizing: inherit; }
  .bx--btn:disabled, .bx--btn.bx--btn--disabled {
    cursor: not-allowed;
    color: #8c8c8c;
    background: #bebebe;
    border-color: #bebebe; }
  .bx--btn .bx--btn__icon {
    position: absolute;
    right: 0.64rem;
    flex-shrink: 0;
    width: 0.64rem;
    height: 0.64rem; }
  .bx--btn.bx--btn--disabled > svg.bx--btn__icon,
  .bx--btn:disabled > svg.bx--btn__icon {
    fill: #8c8c8c; }

.bx--btn::-moz-focus-inner {
  padding: 0;
  border: 0; }

.bx--btn--primary {
  background-color: #0062ff;
  border-width: 3px;
  border-style: solid;
  border-color: transparent;
  color: #ffffff; }
  .bx--btn--primary:hover {
    background-color: #0353e9; }
  .bx--btn--primary:focus {
    border-color: #0062ff;
    outline-color: #f3f3f3; }
  .bx--btn--primary:disabled:hover, .bx--btn--primary:disabled:focus, .bx--btn--primary:hover.bx--btn--disabled, .bx--btn--primary:focus.bx--btn--disabled {
    color: #8c8c8c;
    background-color: #bebebe;
    border-color: #bebebe;
    text-decoration: none;
    outline-color: #bebebe; }
  .bx--btn--primary:active {
    background-color: #0530ad; }
  .bx--btn--primary .bx--btn__icon,
  .bx--btn--primary .bx--btn__icon path {
    fill: currentColor; }
  .bx--btn--primary:hover {
    color: #ffffff; }

.bx--btn--secondary {
  background-color: #3d3d3d;
  border-width: 3px;
  border-style: solid;
  border-color: transparent;
  color: #ffffff; }
  .bx--btn--secondary:hover {
    background-color: #4c4c4c; }
  .bx--btn--secondary:focus {
    border-color: #0062ff;
    outline-color: #f3f3f3; }
  .bx--btn--secondary:disabled:hover, .bx--btn--secondary:disabled:focus, .bx--btn--secondary:hover.bx--btn--disabled, .bx--btn--secondary:focus.bx--btn--disabled {
    color: #8c8c8c;
    background-color: #bebebe;
    border-color: #bebebe;
    text-decoration: none;
    outline-color: #bebebe; }
  .bx--btn--secondary:active {
    background-color: #6f6f6f; }
  .bx--btn--secondary .bx--btn__icon,
  .bx--btn--secondary .bx--btn__icon path {
    fill: currentColor; }
  .bx--btn--secondary:hover, .bx--btn--secondary:focus {
    color: #ffffff; }

.bx--btn--tertiary {
  background-color: transparent;
  border-width: 1px;
  border-style: solid;
  border-color: #0062ff;
  color: #0062ff; }
  .bx--btn--tertiary:hover {
    background-color: #0353e9; }
  .bx--btn--tertiary:focus {
    border-color: #0062ff;
    outline-color: #f3f3f3; }
  .bx--btn--tertiary:disabled:hover, .bx--btn--tertiary:disabled:focus, .bx--btn--tertiary:hover.bx--btn--disabled, .bx--btn--tertiary:focus.bx--btn--disabled {
    color: #8c8c8c;
    background-color: #bebebe;
    border-color: #bebebe;
    text-decoration: none;
    outline-color: #bebebe; }
  .bx--btn--tertiary:active {
    background-color: #0530ad; }
  .bx--btn--tertiary .bx--btn__icon,
  .bx--btn--tertiary .bx--btn__icon path {
    fill: currentColor; }
  .bx--btn--tertiary:hover {
    color: #ffffff; }
  .bx--btn--tertiary:focus {
    color: #ffffff;
    background-color: #0062ff; }
  .bx--btn--tertiary:active {
    background-color: #0530ad; }
  .bx--btn--tertiary:disabled, .bx--btn--tertiary:hover:disabled, .bx--btn--tertiary:focus:disabled, .bx--btn--tertiary.bx--btn--disabled, .bx--btn--tertiary.bx--btn--disabled:hover, .bx--btn--tertiary.bx--btn--disabled:focus {
    background: transparent;
    color: #bebebe; }
    .bx--btn--tertiary:disabled > .bx--btn__icon path, .bx--btn--tertiary:hover:disabled > .bx--btn__icon path, .bx--btn--tertiary:focus:disabled > .bx--btn__icon path, .bx--btn--tertiary.bx--btn--disabled > .bx--btn__icon path, .bx--btn--tertiary.bx--btn--disabled:hover > .bx--btn__icon path, .bx--btn--tertiary.bx--btn--disabled:focus > .bx--btn__icon path {
      fill: #bebebe; }
  .bx--btn--tertiary:hover > .bx--btn__icon path {
    fill: #ffffff; }

.bx--btn--ghost {
  background-color: transparent;
  border-width: 3px;
  border-style: solid;
  border-color: transparent;
  color: #0062ff;
  padding: calc(0.875rem - 3px) 12px; }
  .bx--btn--ghost:hover {
    background-color: #e5e5e5; }
  .bx--btn--ghost:focus {
    border-color: #0062ff;
    outline-color: #f3f3f3; }
  .bx--btn--ghost:disabled:hover, .bx--btn--ghost:disabled:focus, .bx--btn--ghost:hover.bx--btn--disabled, .bx--btn--ghost:focus.bx--btn--disabled {
    color: #8c8c8c;
    background-color: #bebebe;
    border-color: #bebebe;
    text-decoration: none;
    outline-color: #bebebe; }
  .bx--btn--ghost:active {
    background-color: #bebebe; }
  .bx--btn--ghost .bx--btn__icon,
  .bx--btn--ghost .bx--btn__icon path {
    fill: currentColor; }
  .bx--btn--ghost .bx--btn__icon {
    position: static;
    margin-left: 0.5rem; }
  .bx--btn--ghost:hover, .bx--btn--ghost:active {
    color: #054ada; }
    .bx--btn--ghost:hover .bx--btn__icon path, .bx--btn--ghost:active .bx--btn__icon path {
      fill: #054ada; }
  .bx--btn--ghost:active {
    background-color: #bebebe; }
  .bx--btn--ghost:disabled, .bx--btn--ghost:hover:disabled, .bx--btn--ghost:focus:disabled, .bx--btn--ghost.bx--btn--disabled, .bx--btn--ghost.bx--btn--disabled:hover, .bx--btn--ghost.bx--btn--disabled:focus {
    color: #bebebe;
    background: transparent;
    border-color: transparent; }
    .bx--btn--ghost:disabled .bx--btn__icon path, .bx--btn--ghost:hover:disabled .bx--btn__icon path, .bx--btn--ghost:focus:disabled .bx--btn__icon path, .bx--btn--ghost.bx--btn--disabled .bx--btn__icon path, .bx--btn--ghost.bx--btn--disabled:hover .bx--btn__icon path, .bx--btn--ghost.bx--btn--disabled:focus .bx--btn__icon path {
      fill: #bebebe; }
  .bx--btn--ghost.bx--btn--sm {
    padding: calc(0.375rem - 3px) 1rem; }
  .bx--btn--ghost.bx--btn--field {
    padding: calc(0.675rem - 3px) 12px; }

.bx--btn.bx--btn--icon-only.bx--tooltip__trigger {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible;
  outline: 1px solid transparent;
  outline-offset: -4px; }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger *,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger *:before,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger *:after {
    box-sizing: inherit; }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus {
    outline: 1px solid transparent; }
    .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus svg {
      outline: 1px solid #0062ff; }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    z-index: 10000;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
        display: inline-block; } }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after {
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--a11y::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--a11y::after {
    transition: none; }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::before {
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
    box-sizing: content-box;
    color: inherit;
    opacity: 1;
    white-space: normal; }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover + .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus + .bx--assistive-text {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    width: max-content;
    max-width: 8.32rem;
    height: auto;
    padding: 0.08rem 0.64rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    transform: translateX(-50%);
    pointer-events: none;
    background-color: #3d3d3d; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover + .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-accelerator: true) {
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover + .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-ime-align: auto) {
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover + .bx--assistive-text,
      .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus + .bx--assistive-text {
        width: 8.32rem; } }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after {
    content: attr(aria-label); }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--a11y::after {
    content: none; }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover::after, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus::after {
    opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover + .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus + .bx--assistive-text {
    clip: auto;
    margin: auto;
    overflow: visible; }
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover + .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover.bx--tooltip--a11y::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus .bx--assistive-text,
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus + .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus.bx--tooltip--a11y::before {
    animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus {
  border-color: #0062ff;
  outline-color: #f3f3f3; }

.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus svg {
  outline-color: transparent; }

.bx--btn--icon-only--top {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible; }
  .bx--btn--icon-only--top *,
  .bx--btn--icon-only--top *:before,
  .bx--btn--icon-only--top *:after {
    box-sizing: inherit; }
  .bx--btn--icon-only--top:focus {
    outline: 1px solid transparent; }
    .bx--btn--icon-only--top:focus svg {
      outline: 1px solid #0062ff; }
  .bx--btn--icon-only--top::before, .bx--btn--icon-only--top::after,
  .bx--btn--icon-only--top .bx--assistive-text,
  .bx--btn--icon-only--top + .bx--assistive-text {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    z-index: 10000;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--btn--icon-only--top::before, .bx--btn--icon-only--top::after,
      .bx--btn--icon-only--top .bx--assistive-text,
      .bx--btn--icon-only--top + .bx--assistive-text {
        display: inline-block; } }
  .bx--btn--icon-only--top::before, .bx--btn--icon-only--top::after {
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--btn--icon-only--top.bx--tooltip--a11y::before, .bx--btn--icon-only--top.bx--tooltip--a11y::after {
    transition: none; }
  .bx--btn--icon-only--top::before {
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }
  .bx--btn--icon-only--top .bx--assistive-text,
  .bx--btn--icon-only--top + .bx--assistive-text {
    box-sizing: content-box;
    color: inherit;
    opacity: 1;
    white-space: normal; }
  .bx--btn--icon-only--top::after,
  .bx--btn--icon-only--top:hover .bx--assistive-text,
  .bx--btn--icon-only--top:focus .bx--assistive-text,
  .bx--btn--icon-only--top:hover + .bx--assistive-text,
  .bx--btn--icon-only--top:focus + .bx--assistive-text {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    width: max-content;
    max-width: 8.32rem;
    height: auto;
    padding: 0.08rem 0.64rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    transform: translateX(-50%);
    pointer-events: none;
    background-color: #3d3d3d; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--btn--icon-only--top::after,
      .bx--btn--icon-only--top:hover .bx--assistive-text,
      .bx--btn--icon-only--top:focus .bx--assistive-text,
      .bx--btn--icon-only--top:hover + .bx--assistive-text,
      .bx--btn--icon-only--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-accelerator: true) {
      .bx--btn--icon-only--top::after,
      .bx--btn--icon-only--top:hover .bx--assistive-text,
      .bx--btn--icon-only--top:focus .bx--assistive-text,
      .bx--btn--icon-only--top:hover + .bx--assistive-text,
      .bx--btn--icon-only--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-ime-align: auto) {
      .bx--btn--icon-only--top::after,
      .bx--btn--icon-only--top:hover .bx--assistive-text,
      .bx--btn--icon-only--top:focus .bx--assistive-text,
      .bx--btn--icon-only--top:hover + .bx--assistive-text,
      .bx--btn--icon-only--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
  .bx--btn--icon-only--top::after {
    content: attr(aria-label); }
  .bx--btn--icon-only--top.bx--tooltip--a11y::after {
    content: none; }
  .bx--btn--icon-only--top:hover::before, .bx--btn--icon-only--top:hover::after, .bx--btn--icon-only--top:focus::before, .bx--btn--icon-only--top:focus::after {
    opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
  .bx--btn--icon-only--top:hover .bx--assistive-text,
  .bx--btn--icon-only--top:hover + .bx--assistive-text, .bx--btn--icon-only--top:focus .bx--assistive-text,
  .bx--btn--icon-only--top:focus + .bx--assistive-text {
    clip: auto;
    margin: auto;
    overflow: visible; }
  .bx--btn--icon-only--top:hover .bx--assistive-text,
  .bx--btn--icon-only--top:hover + .bx--assistive-text, .bx--btn--icon-only--top:hover.bx--tooltip--a11y::before, .bx--btn--icon-only--top:focus .bx--assistive-text,
  .bx--btn--icon-only--top:focus + .bx--assistive-text, .bx--btn--icon-only--top:focus.bx--tooltip--a11y::before {
    animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--btn--icon-only--top::before, .bx--btn--icon-only--top::after,
  .bx--btn--icon-only--top:hover .bx--assistive-text,
  .bx--btn--icon-only--top:focus .bx--assistive-text,
  .bx--btn--icon-only--top:hover + .bx--assistive-text,
  .bx--btn--icon-only--top:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--btn--icon-only--top::before {
    top: -0.32rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--btn--icon-only--top::after,
  .bx--btn--icon-only--top:hover .bx--assistive-text,
  .bx--btn--icon-only--top:focus .bx--assistive-text,
  .bx--btn--icon-only--top:hover + .bx--assistive-text,
  .bx--btn--icon-only--top:focus + .bx--assistive-text {
    top: -0.52rem;
    left: 50%;
    transform: translate(-50%, -100%); }

.bx--btn--icon-only--bottom::before, .bx--btn--icon-only--bottom::after,
.bx--btn--icon-only--bottom:hover .bx--assistive-text,
.bx--btn--icon-only--bottom:focus .bx--assistive-text,
.bx--btn--icon-only--bottom:hover + .bx--assistive-text,
.bx--btn--icon-only--bottom:focus + .bx--assistive-text {
  bottom: 0;
  left: 50%; }

.bx--btn--icon-only--bottom::before {
  bottom: -0.32rem;
  border-width: 0 0.16rem 0.2rem 0.16rem;
  border-color: transparent transparent #3d3d3d transparent;
  transform: translate(-50%, 100%); }

.bx--btn--icon-only--bottom::after,
.bx--btn--icon-only--bottom:hover .bx--assistive-text,
.bx--btn--icon-only--bottom:focus .bx--assistive-text,
.bx--btn--icon-only--bottom:hover + .bx--assistive-text,
.bx--btn--icon-only--bottom:focus + .bx--assistive-text {
  bottom: -0.52rem;
  transform: translate(-50%, 100%); }

.bx--btn--icon-only,
.bx--btn--sm.bx--btn--icon-only,
.bx--btn--field.bx--btn--icon-only {
  padding-right: 0.52rem; }
  .bx--btn--icon-only .bx--btn__icon,
  .bx--btn--sm.bx--btn--icon-only .bx--btn__icon,
  .bx--btn--field.bx--btn--icon-only .bx--btn__icon {
    position: static; }
  .bx--btn--icon-only.bx--btn--ghost .bx--btn__icon,
  .bx--btn--sm.bx--btn--icon-only.bx--btn--ghost .bx--btn__icon,
  .bx--btn--field.bx--btn--icon-only.bx--btn--ghost .bx--btn__icon {
    margin: 0; }

.bx--btn--danger {
  background-color: #dc222b;
  border-width: 3px;
  border-style: solid;
  border-color: #dc222b;
  color: #ffffff; }
  .bx--btn--danger:hover {
    background-color: #ba1b23; }
  .bx--btn--danger:focus {
    border-color: #0062ff;
    outline-color: #f3f3f3; }
  .bx--btn--danger:disabled:hover, .bx--btn--danger:disabled:focus, .bx--btn--danger:hover.bx--btn--disabled, .bx--btn--danger:focus.bx--btn--disabled {
    color: #8c8c8c;
    background-color: #bebebe;
    border-color: #bebebe;
    text-decoration: none;
    outline-color: #bebebe; }
  .bx--btn--danger:active {
    background-color: #750e13; }
  .bx--btn--danger .bx--btn__icon,
  .bx--btn--danger .bx--btn__icon path {
    fill: #ffffff; }
  .bx--btn--danger:hover {
    color: #ffffff;
    border: 3px solid transparent; }

.bx--btn--sm {
  min-height: 1.28rem;
  padding: calc(0.375rem - 3px) 60px calc(0.375rem - 3px) 12px; }

.bx--btn--field {
  height: 40px;
  min-height: 40px;
  padding: calc(0.675rem - 3px) 60px calc(0.675rem - 3px) 12px; }

.bx--btn.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 6rem; }
  .bx--btn.bx--skeleton:hover, .bx--btn.bx--skeleton:focus, .bx--btn.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--btn.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--btn.bx--skeleton:before {
        animation: none; } }

.bx--btn--copy {
  position: relative;
  overflow: visible; }
  .bx--btn--copy .bx--btn__icon {
    margin-left: 0.2rem; }

.bx--btn--copy__feedback {
  position: absolute;
  display: none;
  top: 1.2rem;
  left: 50%; }
  .bx--btn--copy__feedback:focus {
    border: 2px solid red; }
  .bx--btn--copy__feedback:before {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1rem;
    letter-spacing: 0.32px;
    top: 1.1rem;
    padding: 0.25rem;
    color: #ffffff;
    content: attr(data-feedback);
    transform: translateX(-50%);
    white-space: nowrap;
    pointer-events: none;
    border-radius: 4px;
    font-weight: 400;
    z-index: 2; }
  .bx--btn--copy__feedback:after {
    top: 0.85rem;
    width: 0.6rem;
    height: 0.6rem;
    left: -0.3rem;
    border-right: 1px solid #3d3d3d;
    border-bottom: 1px solid #3d3d3d;
    content: '';
    transform: rotate(-135deg);
    z-index: 1; }
  .bx--btn--copy__feedback:before, .bx--btn--copy__feedback:after {
    position: absolute;
    display: block;
    background: #3d3d3d; }
  .bx--btn--copy__feedback--displayed {
    display: inline-flex; }

.bx--fieldset {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  margin-bottom: 2rem; }
  .bx--fieldset *,
  .bx--fieldset *:before,
  .bx--fieldset *:after {
    box-sizing: inherit; }

.bx--form-item {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  display: flex;
  flex-direction: column;
  flex: 1;
  align-items: flex-start; }

.bx--label {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  color: #565656;
  font-weight: 400;
  display: inline-block;
  vertical-align: baseline;
  margin-bottom: 0.5rem;
  line-height: 0.64rem; }
  .bx--label *,
  .bx--label *:before,
  .bx--label *:after {
    box-sizing: inherit; }

.bx--label .bx--tooltip__trigger {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px; }

.bx--label.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 3rem;
  height: 0.56rem; }
  .bx--label.bx--skeleton:hover, .bx--label.bx--skeleton:focus, .bx--label.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--label.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--label.bx--skeleton:before {
        animation: none; } }

input[type='number'] {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace; }

input[data-invalid],
.bx--text-input__field-wrapper[data-invalid],
.bx--text-area__wrapper[data-invalid] > .bx--text-area--invalid,
.bx--select-input__wrapper[data-invalid],
.bx--list-box[data-invalid],
.bx--combo-box[data-invalid] .bx--text-input {
  outline: 2px solid #da1e28;
  outline-offset: -2px; }

input[data-invalid] ~ .bx--form-requirement,
.bx--text-input__field-wrapper[data-invalid] ~ .bx--form-requirement,
.bx--text-area__wrapper[data-invalid] ~ .bx--form-requirement,
.bx--select-input__wrapper[data-invalid] ~ .bx--form-requirement,
.bx--time-picker[data-invalid] ~ .bx--form-requirement,
.bx--list-box[data-invalid] ~ .bx--form-requirement {
  max-height: 8rem;
  display: block;
  color: #da1e28; }

input:not(output):not([data-invalid]):-moz-ui-invalid {
  box-shadow: none; }

.bx--form-requirement {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  margin: 0.25rem 0 0;
  max-height: 0;
  overflow: hidden;
  line-height: 1.5;
  display: none; }
  .bx--form-requirement *,
  .bx--form-requirement *:before,
  .bx--form-requirement *:after {
    box-sizing: inherit; }

.bx--label + .bx--form__helper-text {
  margin-top: -0.24rem; }

.bx--form__helper-text {
  font-size: 0.75rem;
  font-style: italic;
  line-height: 1rem;
  letter-spacing: 0.32px;
  font-style: italic;
  color: #565656;
  z-index: 0;
  opacity: 1;
  margin-bottom: 0.5rem;
  max-width: 75%; }

.bx--label--disabled,
.bx--form__helper-text--disabled {
  color: #bebebe; }

@keyframes rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg); } }

@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg); } }

/* Stroke animations */
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240; }
  100% {
    stroke-dashoffset: 40; } }

@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40; }
  100% {
    stroke-dashoffset: 240; } }

.bx--loading {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  animation-name: rotate;
  animation-duration: 690ms;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  width: 10.5rem;
  height: 10.5rem; }
  .bx--loading *,
  .bx--loading *:before,
  .bx--loading *:after {
    box-sizing: inherit; }
  .bx--loading svg circle {
    animation-name: init-stroke;
    animation-duration: 10ms;
    animation-timing-function: cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--loading__svg {
  fill: transparent; }

.bx--loading__svg circle {
  stroke-width: 8;
  stroke-linecap: butt;
  stroke-dasharray: 240; }

.bx--loading__stroke {
  stroke: #0062ff;
  stroke-dashoffset: 40; }

.bx--loading--stop {
  animation: rotate-end-p1 700ms cubic-bezier(0.2, 0, 1, 0.9) forwards, rotate-end-p2 700ms cubic-bezier(0.2, 0, 1, 0.9) 700ms forwards; }
  .bx--loading--stop svg circle {
    animation-name: stroke-end;
    animation-duration: 700ms;
    animation-timing-function: cubic-bezier(0.2, 0, 1, 0.9);
    animation-delay: 700ms;
    animation-fill-mode: forwards; }

.bx--loading--small {
  width: 2rem;
  height: 2rem; }
  .bx--loading--small circle {
    stroke-width: 12; }

.bx--loading--small .bx--loading__svg {
  stroke: #0062ff; }

.bx--loading__background {
  stroke: #dcdcdc;
  stroke-dashoffset: 0; }

.bx--loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(243, 243, 243, 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 720ms cubic-bezier(0.4, 0.14, 0.3, 1);
  z-index: 8000; }

.bx--loading-overlay--stop {
  display: none; }

.bx--file {
  width: 100%; }

.bx--file--invalid {
  margin-right: 0.5rem;
  fill: #da1e28; }

.bx--file--label {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #000000;
  margin-bottom: 0.5rem; }
  .bx--file--label *,
  .bx--file--label *:before,
  .bx--file--label *:after {
    box-sizing: inherit; }

.bx--file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }

.bx--file-btn {
  display: inline-flex;
  margin: 0;
  padding-right: 2.56rem; }

.bx--label-description {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #565656;
  margin-bottom: 1rem; }
  .bx--label-description *,
  .bx--label-description *:before,
  .bx--label-description *:after {
    box-sizing: inherit; }

.bx--file-container {
  display: block;
  width: 100%;
  margin-top: 1.5rem; }

.bx--file__selected-file {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 1.6rem;
  max-width: 12rem;
  margin-bottom: 0.5rem;
  padding: 0 0.5rem 0 1rem;
  background-color: #ffffff;
  overflow: hidden; }
  .bx--file__selected-file:last-child {
    margin-bottom: 0; }
  .bx--file__selected-file .bx--inline-loading__animation,
  .bx--file__selected-file .bx--loading {
    right: -0.25rem;
    width: 1.5rem;
    height: 1.5rem; }

.bx--file__selected-file--invalid {
  outline: 2px solid #da1e28;
  outline-offset: -2px;
  margin-bottom: 0.25rem; }

.bx--file__selected-file--invalid + .bx--form-requirement {
  display: block;
  max-height: 8rem;
  color: #da1e28;
  font-weight: 400;
  margin: 0 0 0.5rem 0;
  overflow: visible; }

.bx--file-filename {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  display: block;
  overflow-x: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 300px;
  display: inline-block;
  align-items: center;
  color: #000000;
  margin-right: 1rem;
  padding: 1px 0;
  /*rtl:ignore*/
  direction: ltr;
  justify-content: flex-start;
  /*rtl:{flex-end}*/ }

.bx--file__state-container {
  display: flex;
  align-items: center; }
  .bx--file__state-container .bx--loading__svg {
    stroke: #000000; }

.bx--file__state-container .bx--file-complete {
  fill: #24a148;
  cursor: pointer; }
  .bx--file__state-container .bx--file-complete:focus {
    outline: 1px solid #0062ff; }

.bx--file__state-container .bx--file-close {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0; }

.bx--form-item.bx--checkbox-wrapper {
  margin-bottom: 0.32rem; }

.bx--form-item.bx--checkbox-wrapper:first-of-type {
  margin-top: 0.12rem; }

.bx--label + .bx--form-item.bx--checkbox-wrapper {
  margin-top: 0; }

.bx--form-item.bx--checkbox-wrapper:last-of-type {
  margin-bottom: 0.12rem; }

.bx--checkbox {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }

.bx--checkbox-label {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  line-height: 1.5rem;
  position: relative;
  display: flex;
  cursor: pointer;
  padding-left: 1.04rem;
  min-height: 0.96rem;
  user-select: none; }
  .bx--checkbox-label *,
  .bx--checkbox-label *:before,
  .bx--checkbox-label *:after {
    box-sizing: inherit; }

.bx--checkbox-label::before {
  box-sizing: border-box;
  content: '';
  width: 0.64rem;
  height: 0.64rem;
  margin: 0.08rem;
  position: absolute;
  left: 0;
  top: 0.08rem;
  background-color: transparent;
  border: 1px solid #000000;
  border-radius: 1px; }

.bx--checkbox-label::after {
  content: '';
  position: absolute;
  left: 0.24rem;
  top: 0.32rem;
  width: 0.28rem;
  height: 0.12rem;
  background: none;
  border-left: 2px solid #ffffff;
  border-bottom: 2px solid #ffffff;
  transform: scale(0) rotate(-45deg);
  transform-origin: bottom right;
  margin-top: -0.12rem; }

.bx--checkbox:checked + .bx--checkbox-label::before,
.bx--checkbox:indeterminate + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state='true']::before,
.bx--checkbox-label[data-contained-checkbox-state='mixed']::before {
  background-color: #000000;
  border-color: #000000;
  border-width: 1px; }

.bx--checkbox:checked + .bx--checkbox-label::after,
.bx--checkbox-label[data-contained-checkbox-state='true']::after {
  transform: scale(1) rotate(-45deg); }

.bx--checkbox:indeterminate + .bx--checkbox-label::after,
.bx--checkbox-label[data-contained-checkbox-state='mixed']::after {
  transform: scale(1) rotate(0deg);
  border-left: 0 solid #ffffff;
  border-bottom: 2px solid #ffffff;
  width: 0.32rem;
  top: 0.44rem; }

.bx--checkbox:focus + .bx--checkbox-label::before,
.bx--checkbox-label__focus::before,
.bx--checkbox:checked:focus + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state='true'].bx--checkbox-label__focus::before,
.bx--checkbox:indeterminate:focus + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state='mixed'].bx--checkbox-label__focus::before {
  border-color: #0062ff;
  border-width: 3px;
  width: 0.8rem;
  height: 0.8rem;
  left: -2px;
  top: 0; }

[disabled] ~ _ {
  font-size: inherit; }

.bx--checkbox:disabled + .bx--checkbox-label,
.bx--checkbox-label[data-contained-checkbox-disabled='true'] {
  cursor: not-allowed;
  color: #bebebe; }

.bx--checkbox:disabled + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-disabled='true']::before {
  border-color: #bebebe; }

.bx--checkbox:checked:disabled + .bx--checkbox-label::before,
.bx--checkbox:indeterminate:disabled + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state='true'][data-contained-checkbox-disabled='true']::before,
.bx--checkbox-label[data-contained-checkbox-state='mixed'][data-contained-checkbox-disabled='true']::before {
  background-color: #bebebe; }

.bx--list-box__wrapper--inline {
  display: inline-grid;
  align-items: center;
  grid-template: auto auto / auto auto;
  grid-gap: 0.16rem; }
  .bx--list-box__wrapper--inline .bx--label {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px; }
  .bx--list-box__wrapper--inline .bx--label,
  .bx--list-box__wrapper--inline .bx--form__helper-text,
  .bx--list-box__wrapper--inline .bx--form-requirement {
    margin: 0; }
  .bx--list-box__wrapper--inline .bx--form__helper-text {
    max-width: none; }
  .bx--list-box__wrapper--inline .bx--form-requirement {
    grid-column: 2; }

.bx--list-box {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  width: 100%;
  height: 1.6rem;
  max-height: 1.6rem;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8c8c8c;
  cursor: pointer;
  color: #000000;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--list-box *,
  .bx--list-box *:before,
  .bx--list-box *:after {
    box-sizing: inherit; }
  .bx--list-box:hover {
    background-color: #e5e5e5; }

.bx--list-box--expanded {
  border-bottom-color: #dcdcdc; }

.bx--list-box--expanded:hover {
  background-color: #ffffff; }

.bx--list-box--expanded:hover.bx--list-box--light:hover {
  background-color: #f3f3f3; }

.bx--list-box .bx--text-input {
  height: 100%; }

.bx--list-box__invalid-icon {
  position: absolute;
  top: 0.75rem;
  right: 2.5rem;
  fill: #da1e28; }

.bx--list-box--inline .bx--list-box__invalid-icon {
  top: 0.5rem; }

.bx--list-box[data-invalid] .bx--list-box__field {
  border-bottom: 0;
  padding-right: 4rem; }

.bx--list-box[data-invalid].bx--list-box--inline .bx--list-box__field {
  padding-right: 3.5rem; }

.bx--list-box--light {
  background-color: #f3f3f3; }

.bx--list-box--light.bx--list-box--expanded {
  border-bottom-width: 0; }

.bx--list-box--disabled:hover {
  background-color: #ffffff; }

.bx--list-box--light.bx--list-box--disabled {
  background-color: #f3f3f3; }

.bx--list-box--disabled,
.bx--list-box--disabled .bx--list-box__field,
.bx--list-box--disabled .bx--list-box__field:focus {
  border-bottom-width: 0;
  outline: none; }

.bx--list-box--disabled .bx--list-box__label,
.bx--list-box--disabled.bx--list-box--inline .bx--list-box__label {
  color: #bebebe; }

.bx--list-box--disabled .bx--list-box__menu-icon > svg {
  fill: #bebebe; }

.bx--list-box--disabled,
.bx--list-box--disabled .bx--list-box__field,
.bx--list-box--disabled .bx--list-box__menu-icon {
  cursor: not-allowed; }

.bx--list-box--disabled .bx--list-box__menu-item,
.bx--list-box--disabled .bx--list-box__menu-item:hover,
.bx--list-box--disabled .bx--list-box__menu-item--highlighted {
  color: #bebebe;
  text-decoration: none; }

.bx--list-box--disabled .bx--list-box__selection:hover {
  cursor: not-allowed; }

.bx--list-box--disabled.bx--list-box[data-invalid] .bx--list-box__field {
  padding-right: 3rem; }

.bx--list-box--disabled.bx--list-box[data-invalid].bx--list-box--inline .bx--list-box__field {
  padding-right: 2rem; }

.bx--list-box.bx--list-box--inline {
  background-color: #f3f3f3;
  border-width: 0; }
  .bx--list-box.bx--list-box--inline:hover {
    background-color: #e5e5e5; }

.bx--list-box.bx--list-box--inline.bx--list-box--expanded {
  border-bottom-width: 0; }

.bx--list-box.bx--list-box--inline.bx--list-box--expanded .bx--list-box__field[aria-expanded='true'] {
  border-width: 0; }

.bx--list-box.bx--list-box--inline.bx--list-box--disabled:hover,
.bx--list-box.bx--list-box--inline.bx--list-box--expanded:hover {
  background-color: #f3f3f3; }

.bx--list-box.bx--list-box--inline,
.bx--list-box.bx--list-box--inline .bx--list-box__field {
  height: 1.28rem; }

.bx--list-box.bx--list-box--inline .bx--list-box__field {
  padding: 0 2rem 0 0.5rem; }

.bx--list-box.bx--list-box--inline .bx--list-box__menu-icon {
  right: 0.5rem; }

.bx--list-box.bx--list-box--inline .bx--list-box__invalid-icon {
  right: 2rem; }

.bx--list-box--inline .bx--list-box__label {
  color: #000000; }

.bx--list-box__field {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  position: relative;
  display: inline-flex;
  align-items: center;
  vertical-align: top;
  height: 1.6rem;
  padding: 0 3rem 0 1rem;
  cursor: pointer;
  outline: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }
  .bx--list-box__field *,
  .bx--list-box__field *:before,
  .bx--list-box__field *:after {
    box-sizing: inherit; }
  .bx--list-box__field::-moz-focus-inner {
    border: 0; }

.bx--list-box__field:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--list-box__field[disabled] {
  outline: none;
  color: #bebebe; }

.bx--list-box__field .bx--text-input[value] {
  padding-right: 4.5rem; }

.bx--list-box[data-invalid] .bx--list-box__field .bx--text-input[value] {
  padding-right: 3.92rem; }

.bx--list-box[data-invalid] .bx--list-box__field .bx--text-input[value] + .bx--list-box__invalid-icon {
  right: 2.64rem; }

.bx--list-box__field .bx--text-input[value=''] {
  padding-right: 3rem; }

.bx--list-box[data-invalid] .bx--list-box__field .bx--text-input[value=''] {
  padding-right: 4.5rem; }

.bx--list-box[data-invalid] .bx--list-box__field .bx--text-input[value=''] + .bx--list-box__invalid-icon {
  right: 1.6rem; }

.bx--list-box__label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #000000;
  user-select: none;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap; }

.bx--list-box__menu-icon {
  position: absolute;
  right: 1rem;
  height: 100%;
  transition: transform 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  cursor: pointer; }

.bx--list-box__menu-icon > svg {
  fill: #000000;
  height: 100%; }

.bx--list-box__menu-icon--open {
  transform: rotate(180deg); }

.bx--list-box__selection {
  position: absolute;
  right: 1.32rem;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.2rem;
  width: 1.2rem;
  cursor: pointer;
  user-select: none;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--list-box__selection:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }

.bx--list-box__selection > svg {
  fill: #565656; }

.bx--list-box--disabled .bx--list-box__selection:focus {
  outline: none; }

.bx--list-box--disabled .bx--list-box__selection > svg {
  fill: #bebebe; }

.bx--list-box__selection--multi {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  position: static;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0;
  background-color: #3d3d3d;
  height: 0.96rem;
  width: auto;
  color: #ffffff;
  line-height: 0;
  padding: 0.32rem;
  padding-right: 0.08rem;
  margin-right: 0.4rem;
  border-radius: 0.48rem; }

.bx--list-box__selection--multi > svg {
  fill: #ffffff;
  margin-left: 0.16rem;
  width: 0.8rem;
  height: 0.8rem;
  padding: 0.08rem; }

.bx--list-box__selection--multi > svg:hover {
  border-radius: 50%;
  background-color: #4c4c4c;
  fill: #ffffff; }

.bx--list-box__selection--multi:focus,
.bx--list-box__selection--multi:hover {
  outline: none; }

.bx--list-box__menu {
  box-shadow: 0px 3px 3px 0 rgba(0, 0, 0, 0.1);
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  background-color: #ffffff;
  max-height: 5.6rem;
  overflow-y: auto;
  z-index: 9100; }

.bx--list-box__menu-item {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  height: 1.6rem;
  color: #565656;
  cursor: pointer;
  user-select: none;
  position: relative;
  transition: background 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--list-box__menu-item:hover {
    background-color: #e5e5e5; }
  .bx--list-box__menu-item:active {
    background-color: #dcdcdc; }

.bx--list-box--disabled .bx--list-box__menu-item:hover {
  background-color: transparent; }

.bx--list-box--disabled .bx--list-box__menu-item__option:hover {
  border-top-color: #dcdcdc; }

.bx--list-box__menu-item:first-of-type .bx--list-box__menu-item__option {
  border-top-color: transparent; }

.bx--list-box__menu-item:hover .bx--list-box__menu-item__option {
  color: #000000; }

.bx--list-box__menu-item:hover + .bx--list-box__menu-item .bx--list-box__menu-item__option {
  border-top-color: transparent; }

.bx--list-box--disabled .bx--list-box__menu-item:hover + .bx--list-box__menu-item .bx--list-box__menu-item__option {
  border-top-color: #dcdcdc; }

.bx--list-box__menu-item__option {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: block;
  height: 1.6rem;
  color: #565656;
  text-decoration: none;
  font-weight: normal;
  line-height: 0.64rem;
  padding: 0.44rem 0;
  margin: 0 1rem;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  border-top-color: #dcdcdc;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  transition: border-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), color 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--list-box__menu-item__option:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px;
    margin: 0;
    padding: 0.44rem 0.64rem;
    border-color: transparent; }
  .bx--list-box__menu-item__option:hover {
    color: #000000;
    border-color: transparent; }

.bx--list-box--disabled .bx--list-box__menu-item:hover .bx--list-box__menu-item__option,
.bx--list-box--disabled .bx--list-box__menu-item__option {
  color: #bebebe; }

.bx--list-box.bx--list-box--inline .bx--list-box__menu-item__option {
  margin: 0 0.5rem; }
  .bx--list-box.bx--list-box--inline .bx--list-box__menu-item__option:focus {
    margin: 0;
    padding-left: 0.5rem;
    padding-right: 0.5rem; }

.bx--list-box__menu-item--highlighted {
  background-color: #e5e5e5;
  color: #000000;
  border-color: transparent; }

.bx--list-box__menu-item--highlighted .bx--list-box__menu-item__option,
.bx--list-box__menu-item--highlighted + .bx--list-box__menu-item .bx--list-box__menu-item__option {
  border-top-color: transparent; }

.bx--list-box__menu-item--highlighted .bx--list-box__menu-item__option {
  color: #000000; }

.bx--list-box__menu-item--active {
  color: #000000;
  border-bottom-color: #dcdcdc; }
  .bx--list-box__menu-item--active:hover {
    background-color: #dcdcdc; }

.bx--list-box__menu-item--active .bx--list-box__menu-item__option {
  color: #000000; }

.bx--list-box__menu-item .bx--checkbox-label {
  width: 100%; }

.bx--list-box__menu-item .bx--checkbox-label-text {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden; }

.bx--list-box input[role='combobox'] {
  margin-bottom: 0;
  background-color: inherit;
  min-width: 0; }

.bx--combo-box .bx--text-input::placeholder {
  color: #565656;
  opacity: 1; }

.bx--combo-box .bx--text-input[disabled]::placeholder {
  color: #bebebe; }

.bx--combo-box.bx--list-box--expanded .bx--text-input {
  border-bottom-color: #dcdcdc; }

.bx--combo-box .bx--list-box__field,
.bx--combo-box.bx--list-box[data-invalid] .bx--list-box__field {
  padding: 0; }

.bx--radio-button-group {
  display: flex;
  align-items: center;
  margin-top: 0.24rem; }

.bx--radio-button-group--vertical {
  flex-direction: column;
  align-items: flex-start; }
  .bx--radio-button-group--vertical.bx--radio-button-group--label-left {
    align-items: flex-end; }
  .bx--radio-button-group--vertical .bx--radio-button__label {
    margin-right: 0; }
  .bx--radio-button-group--vertical .bx--radio-button__label:not(:last-of-type) {
    margin-bottom: 0.5rem; }

.bx--radio-button {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap;
  visibility: inherit; }

.bx--radio-button__label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  cursor: pointer;
  margin-right: 1rem; }

.bx--radio-button__appearance {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  background-color: transparent;
  border-radius: 50%;
  border: 1px solid #000000;
  flex-shrink: 0;
  height: 0.72rem;
  width: 0.72rem;
  margin-right: 0.5rem; }
  .bx--radio-button__appearance *,
  .bx--radio-button__appearance *:before,
  .bx--radio-button__appearance *:after {
    box-sizing: inherit; }

.bx--radio-button:checked + .bx--radio-button__label .bx--radio-button__appearance {
  display: flex;
  align-items: center;
  justify-content: center;
  border-color: #000000; }
  .bx--radio-button:checked + .bx--radio-button__label .bx--radio-button__appearance:before {
    content: '';
    display: inline-block;
    position: relative;
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    background-color: #000000; }
    @media screen and (-ms-high-contrast: active) {
      .bx--radio-button:checked + .bx--radio-button__label .bx--radio-button__appearance:before {
        background-color: windowText; } }

[disabled] ~ _ {
  font-size: inherit; }

.bx--radio-button:disabled + .bx--radio-button__label {
  color: #bebebe;
  cursor: not-allowed; }

.bx--radio-button:disabled + .bx--radio-button__label .bx--radio-button__appearance,
.bx--radio-button:disabled:checked + .bx--radio-button__label .bx--radio-button__appearance {
  border-color: #bebebe; }
  .bx--radio-button:disabled + .bx--radio-button__label .bx--radio-button__appearance::before,
  .bx--radio-button:disabled:checked + .bx--radio-button__label .bx--radio-button__appearance::before {
    background-color: #bebebe; }

.bx--radio-button:focus + .bx--radio-button__label .bx--radio-button__appearance {
  box-shadow: 0 0 0 2px #0062ff;
  outline: 1px solid transparent; }

.bx--radio-button__label.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 4rem;
  height: 0.72rem; }
  .bx--radio-button__label.bx--skeleton:hover, .bx--radio-button__label.bx--skeleton:focus, .bx--radio-button__label.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--radio-button__label.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--radio-button__label.bx--skeleton:before {
        animation: none; } }

.bx--radio-button__label.bx--skeleton .bx--radio-button__appearance {
  display: none; }

.bx--radio-button-wrapper .bx--radio-button__label {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0; }

.bx--radio-button-wrapper:not(:last-of-type) {
  margin-right: 1rem; }

.bx--radio-button-group--vertical .bx--radio-button-wrapper:not(:last-of-type) {
  margin-right: 0;
  margin-bottom: 0.5rem; }

.bx--radio-button-group--label-right .bx--radio-button__label,
.bx--radio-button-wrapper.bx--radio-button-wrapper--label-right .bx--radio-button__label {
  flex-direction: row; }

.bx--radio-button-group--label-left .bx--radio-button__label,
.bx--radio-button-wrapper.bx--radio-button-wrapper--label-left .bx--radio-button__label {
  flex-direction: row-reverse; }

.bx--radio-button-group--label-left .bx--radio-button__appearance,
.bx--radio-button-wrapper.bx--radio-button-wrapper--label-left .bx--radio-button__appearance {
  margin-right: 0;
  margin-left: 0.5rem; }

.bx--toggle {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }
  .bx--toggle:focus {
    outline: none; }

.bx--toggle__label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
  margin: 0.5rem 0; }

.bx--toggle__appearance {
  position: relative;
  width: 3rem;
  height: 1.5rem; }
  .bx--toggle__appearance:before {
    position: absolute;
    display: block;
    content: '';
    background-color: #8c8c8c;
    cursor: pointer;
    box-sizing: border-box;
    height: 1.5rem;
    width: 3rem;
    border-radius: 0.9375rem;
    top: 0;
    will-change: box-shadow;
    box-shadow: 0 0 0 1px transparent, 0 0 0 3px transparent;
    transition: box-shadow 70ms cubic-bezier(0.2, 0, 1, 0.9), background-color 70ms cubic-bezier(0.2, 0, 1, 0.9); }
  .bx--toggle__appearance:after {
    box-sizing: border-box;
    position: absolute;
    display: block;
    cursor: pointer;
    left: 0.1875rem;
    top: 0.1875rem;
    width: 1.125rem;
    height: 1.125rem;
    background-color: #ffffff;
    border-radius: 50%;
    content: '';
    transition: transform 70ms cubic-bezier(0.2, 0, 1, 0.9); }

.bx--toggle__check {
  fill: #ffffff;
  position: absolute;
  left: 0.375rem;
  top: 0.375rem;
  width: 0.375rem;
  height: 0.3125rem;
  z-index: 1;
  transition: 70ms cubic-bezier(0.2, 0, 1, 0.9);
  transform: scale(0.2); }

.bx--toggle__text--left,
.bx--toggle__text--right {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  position: relative;
  margin-left: 0.5rem; }

.bx--toggle__text--left {
  position: absolute;
  left: 3rem; }

.bx--toggle:checked + .bx--toggle__label .bx--toggle__text--left,
.bx--toggle:not(:checked) + .bx--toggle__label .bx--toggle__text--right {
  visibility: hidden; }

.bx--toggle:checked + .bx--toggle__label .bx--toggle__text--right,
.bx--toggle:not(:checked) + .bx--toggle__label .bx--toggle__text--left {
  display: inline; }

.bx--toggle:checked + .bx--toggle__label .bx--toggle__appearance:before {
  background-color: #24a148; }

.bx--toggle:checked + .bx--toggle__label .bx--toggle__appearance:after {
  background-color: #ffffff;
  transform: translateX(1.5rem); }

.bx--toggle + .bx--toggle__label .bx--toggle__appearance:before,
.bx--toggle + .bx--toggle__label .bx--toggle__appearance:before {
  box-shadow: 0 0 0 1px transparent, 0 0 0 3px transparent; }

.bx--toggle:focus + .bx--toggle__label .bx--toggle__appearance:before,
.bx--toggle:active + .bx--toggle__label .bx--toggle__appearance:before {
  box-shadow: 0 0 0 1px #f3f3f3, 0 0 0 3px #0062ff; }

.bx--toggle:disabled + .bx--toggle__label {
  cursor: not-allowed; }

.bx--toggle:disabled + .bx--toggle__label .bx--toggle__appearance:before {
  background-color: #ffffff; }

.bx--toggle:disabled + .bx--toggle__label .bx--toggle__appearance:after {
  background-color: #bebebe; }

.bx--toggle:disabled + .bx--toggle__label .bx--toggle__appearance:before, .bx--toggle:disabled + .bx--toggle__label .bx--toggle__appearance:after {
  cursor: not-allowed;
  transition: 70ms cubic-bezier(0.2, 0, 1, 0.9); }

.bx--toggle:disabled + .bx--toggle__label .bx--toggle__text--left,
.bx--toggle:disabled + .bx--toggle__label .bx--toggle__text--right {
  color: #bebebe; }

.bx--toggle:disabled:active + .bx--toggle__label .bx--toggle__appearance:before {
  box-shadow: none; }

.bx--toggle:disabled + .bx--toggle__label .bx--toggle__check {
  fill: #bebebe; }

.bx--toggle--small + .bx--toggle__label .bx--toggle__appearance {
  width: 2rem;
  height: 1rem; }
  .bx--toggle--small + .bx--toggle__label .bx--toggle__appearance:before {
    box-sizing: border-box;
    height: 1rem;
    width: 2rem;
    border-radius: 0.9375rem;
    top: 0; }
  .bx--toggle--small + .bx--toggle__label .bx--toggle__appearance:after {
    width: 0.625rem;
    height: 0.625rem;
    top: 0.1875rem;
    left: 0.1875rem; }

.bx--toggle--small:checked + .bx--toggle__label .bx--toggle__check {
  fill: #24a148;
  transform: scale(1) translateX(1rem); }

.bx--toggle--small + .bx--toggle__label .bx--toggle__text--left {
  left: 2rem; }

.bx--toggle--small:checked + .bx--toggle__label .bx--toggle__appearance:after {
  margin-left: 0px;
  transform: translateX(1.0625rem); }

.bx--toggle-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }
  .bx--toggle-input:focus {
    outline: none; }

.bx--toggle-input__label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  color: #565656;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  cursor: pointer; }

.bx--toggle__switch {
  position: relative;
  display: flex;
  align-items: center;
  width: 3rem;
  height: 1.5rem;
  margin: 0.5rem 0;
  cursor: pointer; }
  .bx--toggle__switch::before {
    box-sizing: border-box;
    position: absolute;
    top: 0;
    display: block;
    width: 3rem;
    height: 1.5rem;
    border-radius: 0.9375rem;
    content: '';
    background-color: #8c8c8c;
    will-change: box-shadow;
    box-shadow: 0 0 0 1px transparent, 0 0 0 3px transparent;
    transition: box-shadow 70ms cubic-bezier(0.2, 0, 1, 0.9), background-color 70ms cubic-bezier(0.2, 0, 1, 0.9); }
  .bx--toggle__switch::after {
    box-sizing: border-box;
    position: absolute;
    top: 0.1875rem;
    left: 0.1875rem;
    display: block;
    width: 1.125rem;
    height: 1.125rem;
    border-radius: 50%;
    background-color: #ffffff;
    content: '';
    transition: transform 70ms cubic-bezier(0.2, 0, 1, 0.9); }

.bx--toggle__text--off,
.bx--toggle__text--on {
  position: absolute;
  margin-left: 3.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  user-select: none; }

.bx--toggle-input:checked + .bx--toggle-input__label > .bx--toggle__switch > .bx--toggle__text--off,
.bx--toggle-input:not(:checked) + .bx--toggle-input__label > .bx--toggle__switch > .bx--toggle__text--on {
  visibility: hidden; }

.bx--toggle-input:checked + .bx--toggle-input__label > .bx--toggle__switch::before {
  background-color: #24a148; }

.bx--toggle-input:checked + .bx--toggle-input__label > .bx--toggle__switch::after {
  background-color: #ffffff;
  transform: translateX(1.5rem); }

.bx--toggle-input:focus + .bx--toggle-input__label > .bx--toggle__switch::before,
.bx--toggle-input:active + .bx--toggle-input__label > .bx--toggle__switch::before {
  box-shadow: 0 0 0 1px #f3f3f3, 0 0 0 3px #0062ff; }

.bx--toggle-input:disabled + .bx--toggle-input__label {
  cursor: not-allowed; }

.bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch {
  cursor: not-allowed; }
  .bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch::before {
    background-color: #ffffff; }
  .bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch::after {
    background-color: #bebebe; }
  .bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch::before, .bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch::after {
    cursor: not-allowed;
    transition: 70ms cubic-bezier(0.2, 0, 1, 0.9); }

.bx--toggle-input:disabled + .bx--toggle-input__label {
  color: #bebebe; }

.bx--toggle-input:disabled:active + .bx--toggle-input__label > .bx--toggle__switch::before {
  box-shadow: none; }

.bx--toggle-input--small + .bx--toggle-input__label > .bx--toggle__switch {
  width: 2rem;
  height: 1rem; }
  .bx--toggle-input--small + .bx--toggle-input__label > .bx--toggle__switch::before {
    width: 2rem;
    height: 1rem;
    border-radius: 0.9375rem; }
  .bx--toggle-input--small + .bx--toggle-input__label > .bx--toggle__switch::after {
    width: 0.625rem;
    height: 0.625rem; }

.bx--toggle-input--small + .bx--toggle-input__label .bx--toggle__text--off,
.bx--toggle-input--small + .bx--toggle-input__label .bx--toggle__text--on {
  margin-left: 2.5rem; }

.bx--toggle-input--small:checked + .bx--toggle-input__label > .bx--toggle__switch::after {
  transform: translateX(1.0625rem); }

.bx--toggle-input--small:checked + .bx--toggle-input__label .bx--toggle__check {
  fill: #24a148;
  transform: scale(1) translateX(1rem); }

.bx--toggle-input--small:disabled:checked + .bx--toggle-input__label .bx--toggle__check {
  fill: #bebebe; }

.bx--search {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%; }

.bx--search .bx--label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }

.bx--search-input {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.375rem;
  letter-spacing: 0;
  outline: 2px solid transparent;
  outline-offset: -2px;
  appearance: none;
  border: none;
  background-color: #ffffff;
  color: #000000;
  padding: 0 2.5rem;
  text-overflow: ellipsis;
  width: 100%;
  order: 1;
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  border-bottom: 1px solid #8c8c8c; }
  .bx--search-input *,
  .bx--search-input *:before,
  .bx--search-input *:after {
    box-sizing: inherit; }
  .bx--search-input:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--search-input::placeholder {
    color: #8c8c8c;
    font-weight: 400; }
  .bx--search-input::-ms-clear {
    display: none; }

.bx--search-input[disabled] {
  color: #bebebe;
  background-color: #f3f3f3;
  border-bottom: 1px solid transparent;
  cursor: not-allowed; }
  .bx--search-input[disabled]::placeholder {
    color: #bebebe;
    font-weight: 400; }

.bx--search-input[disabled] ~ .bx--search-magnifier {
  fill: #bebebe; }

.bx--search--light .bx--search-input {
  background: #f3f3f3; }

.bx--search--sm .bx--search-input {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  height: 1.28rem; }

.bx--search--xl .bx--search-input {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.375rem;
  letter-spacing: 0;
  height: 1.92rem;
  padding: 0 2.56rem 0 1.92rem; }

.bx--search-magnifier {
  left: 0.75rem;
  z-index: 2;
  position: absolute;
  height: 0.64rem;
  width: 0.64rem;
  top: 50%;
  transform: translateY(-50%);
  fill: #565656;
  pointer-events: none; }

.bx--search--xl .bx--search-magnifier {
  height: 0.8rem;
  width: 0.8rem;
  left: 0.96rem;
  transform: translate(-50%, -50%); }

.bx--search-close {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: absolute;
  right: 0; }
  .bx--search-close *,
  .bx--search-close *:before,
  .bx--search-close *:after {
    box-sizing: inherit; }
  .bx--search-close::-moz-focus-inner {
    border: 0; }
  .bx--search-close::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0.04rem;
    height: calc(100% - 2px);
    width: 2px;
    background-color: #ffffff;
    transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--search-close:hover {
    border-bottom: 1px solid #8c8c8c; }

.bx--search-button {
  flex-shrink: 0;
  margin-left: 0.125rem;
  background-color: #ffffff; }
  .bx--search-button svg {
    vertical-align: middle;
    fill: currentColor; }

.bx--search-close,
.bx--search-button {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9), border 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  cursor: pointer;
  visibility: visible;
  opacity: 1;
  height: 1.6rem;
  width: 1.6rem;
  fill: #000000;
  border: 1px solid transparent;
  border-left: 0; }
  .bx--search-close:hover,
  .bx--search-button:hover {
    background-color: #f3f3f3; }
  .bx--search-close:focus,
  .bx--search-button:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--search-close:active,
  .bx--search-button:active {
    outline: 2px solid #0062ff;
    outline-offset: -2px;
    background-color: #dcdcdc; }

.bx--search-close:hover::before {
  background-color: #f3f3f3; }

.bx--search-close:focus::before,
.bx--search-close:active::before {
  background-color: #0062ff; }

.bx--search-input:focus ~ .bx--search-close:hover {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--search--sm .bx--search-close,
.bx--search--sm ~ .bx--search-button {
  height: 1.28rem;
  width: 1.28rem; }

.bx--search--xl .bx--search-close,
.bx--search--xl ~ .bx--search-button {
  height: 1.92rem;
  width: 1.92rem; }

.bx--search-close--hidden {
  visibility: hidden;
  opacity: 0; }

.bx--search--lg.bx--skeleton .bx--search-input,
.bx--search--sm.bx--skeleton .bx--search-input {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 100%; }
  .bx--search--lg.bx--skeleton .bx--search-input:hover, .bx--search--lg.bx--skeleton .bx--search-input:focus, .bx--search--lg.bx--skeleton .bx--search-input:active,
  .bx--search--sm.bx--skeleton .bx--search-input:hover,
  .bx--search--sm.bx--skeleton .bx--search-input:focus,
  .bx--search--sm.bx--skeleton .bx--search-input:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--search--lg.bx--skeleton .bx--search-input:before,
  .bx--search--sm.bx--skeleton .bx--search-input:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--search--lg.bx--skeleton .bx--search-input:before,
      .bx--search--sm.bx--skeleton .bx--search-input:before {
        animation: none; } }
  .bx--search--lg.bx--skeleton .bx--search-input::placeholder,
  .bx--search--sm.bx--skeleton .bx--search-input::placeholder {
    color: transparent; }

.bx--select {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: flex;
  flex-direction: column; }
  .bx--select *,
  .bx--select *:before,
  .bx--select *:after {
    box-sizing: inherit; }

.bx--select-input__wrapper {
  position: relative;
  display: flex;
  align-items: center; }
  .bx--select-input__wrapper:hover .bx--select-input {
    background-color: #e5e5e5; }

.bx--select-input {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  height: 1.6rem;
  appearance: none;
  display: block;
  width: 8.96rem;
  min-width: 5.12rem;
  max-width: 17.92rem;
  padding: 0 1.68rem 0 1rem;
  color: #000000;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8c8c8c;
  border-radius: 0;
  cursor: pointer;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--select-input:hover {
    background-color: #e5e5e5; }
  .bx--select-input::-ms-expand {
    display: none; }

@-moz-document url-prefix() {
  .bx--select-input {
    padding-top: 0.16rem; }
    .bx--select-input:-moz-focusring, .bx--select-input::-moz-focus-inner {
      color: transparent;
      text-shadow: 0 0 0 #000;
      background-image: none; } }
  .bx--select-input:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--select-input:disabled, .bx--select-input:hover:disabled {
    cursor: not-allowed;
    background-color: #f3f3f3;
    color: #bebebe;
    border-bottom-color: #f3f3f3; }

.bx--select--disabled .bx--label,
.bx--select--disabled .bx--form__helper-text {
  color: #bebebe; }

.bx--select-input__wrapper[data-invalid] .bx--select-input {
  padding-right: 2.56rem; }

.bx--select-input__wrapper[data-invalid] .bx--select-input,
.bx--select-input__wrapper[data-invalid] .bx--select-input:focus {
  outline: 2px solid #da1e28;
  outline-offset: -2px; }

.bx--form-requirement {
  display: block;
  color: #da1e28;
  font-weight: 400;
  overflow: visible; }

.bx--select-input:disabled ~ .bx--select__arrow {
  fill: #bebebe; }

.bx--select--light .bx--select-input {
  background-color: #f3f3f3; }
  .bx--select--light .bx--select-input:hover {
    background-color: #ffffff; }
  .bx--select--light .bx--select-input:disabled, .bx--select--light .bx--select-input:hover:disabled {
    cursor: not-allowed;
    background-color: #f3f3f3;
    color: #bebebe; }

.bx--select__arrow {
  fill: #000000;
  position: absolute;
  right: 1rem;
  pointer-events: none; }

.bx--select-input__wrapper[data-invalid] .bx--select-input ~ .bx--select__invalid-icon {
  position: absolute;
  right: 1.36rem; }

.bx--select-input__wrapper[data-invalid] .bx--select-input ~ .bx--select__invalid-icon {
  fill: #da1e28; }

.bx--select-optgroup,
.bx--select-option {
  color: #000000; }

.bx--select-option[disabled] {
  opacity: 0.5;
  cursor: not-allowed; }

@-moz-document url-prefix() {
  .bx--select-option {
    background-color: #ffffff;
    color: #000000; }
  .bx--select-optgroup {
    color: #000000; } }

.bx--select--inline {
  display: flex;
  flex-direction: row;
  align-items: center; }

.bx--select--inline.bx--select--invalid .bx--label,
.bx--select--inline.bx--select--invalid .bx--form__helper-text {
  margin-top: 0.52rem;
  align-self: flex-start; }

.bx--select--inline .bx--form__helper-text {
  margin-bottom: 0;
  margin-left: 0.32rem; }

.bx--select--inline .bx--label {
  white-space: nowrap;
  margin: 0 0.5rem 0 0; }

.bx--select--inline .bx--select-input {
  background-color: transparent;
  color: #000000;
  border-bottom: none;
  padding-left: 0.5rem;
  padding-right: 1.04rem; }

@-moz-document url-prefix() {
  .bx--select--inline .bx--select-input {
    padding-top: 0; } }
  .bx--select--inline .bx--select-input:hover {
    background-color: #e5e5e5; }

.bx--select--inline .bx--select__arrow {
  bottom: auto;
  top: 1.125rem;
  right: 0.5rem; }

.bx--select--inline.bx--select--invalid .bx--select-input {
  padding-right: 2rem; }

.bx--select--inline.bx--select--invalid .bx--select-input ~ .bx--select__invalid-icon {
  right: 0.96rem; }

.bx--select--inline .bx--select-input:disabled {
  color: #bebebe;
  cursor: not-allowed; }
  .bx--select--inline .bx--select-input:disabled:hover {
    background-color: transparent; }
  .bx--select--inline .bx--select-input:disabled ~ * {
    cursor: not-allowed; }

.bx--select--inline .bx--select-input:disabled {
  cursor: not-allowed; }

.bx--select.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 100%;
  height: 2.5rem; }
  .bx--select.bx--skeleton:hover, .bx--select.bx--skeleton:focus, .bx--select.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--select.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--select.bx--skeleton:before {
        animation: none; } }

.bx--select.bx--skeleton .bx--select-input {
  display: none; }

.bx--text-input {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  background-color: #ffffff;
  width: 100%;
  height: 1.6rem;
  padding: 0 1rem;
  color: #000000;
  border: none;
  border-bottom: 1px solid #8c8c8c;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--text-input *,
  .bx--text-input *:before,
  .bx--text-input *:after {
    box-sizing: inherit; }
  .bx--text-input:focus, .bx--text-input:active {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--text-input-wrapper svg[hidden] {
    display: none; }

.bx--password-input {
  padding-right: 2.5rem; }

.bx--text-input::-webkit-input-placeholder {
  color: #8c8c8c; }

.bx--text-input--light {
  background-color: #f3f3f3; }

.bx--text-input__field-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%; }
  .bx--text-input__field-wrapper .bx--text-input__invalid-icon {
    position: absolute;
    right: 1rem;
    fill: #da1e28; }
  .bx--text-input__field-wrapper .bx--text-input--password__visibility {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font-family: inherit;
    vertical-align: baseline;
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    overflow: visible; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility *,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility *:before,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility *:after {
      box-sizing: inherit; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus {
      outline: 1px solid transparent; }
      .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus svg {
        outline: 1px solid #0062ff; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
      font-size: 0.875rem;
      font-weight: 400;
      line-height: 1.125rem;
      letter-spacing: 0.16px;
      position: absolute;
      z-index: 10000;
      display: flex;
      align-items: center;
      opacity: 0;
      pointer-events: none; }
      @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
        .bx--text-input__field-wrapper .bx--text-input--password__visibility::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
          display: inline-block; } }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility::after {
      transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--a11y::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--a11y::after {
      transition: none; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility::before {
      width: 0;
      height: 0;
      border-style: solid;
      content: ''; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
      box-sizing: content-box;
      color: inherit;
      opacity: 1;
      white-space: normal; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text {
      box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
      width: max-content;
      max-width: 8.32rem;
      height: auto;
      padding: 0.08rem 0.64rem;
      border-radius: 0.08rem;
      color: #ffffff;
      font-weight: 400;
      text-align: left;
      transform: translateX(-50%);
      pointer-events: none;
      background-color: #3d3d3d; }
      @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
        .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text {
          width: 8.32rem; } }
      @supports (-ms-accelerator: true) {
        .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text {
          width: 8.32rem; } }
      @supports (-ms-ime-align: auto) {
        .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text,
        .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text {
          width: 8.32rem; } }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility::after {
      content: attr(aria-label); }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--a11y::after {
      content: none; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover::after, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus::after {
      opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text {
      clip: auto;
      margin: auto;
      overflow: visible; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover.bx--tooltip--a11y::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus.bx--tooltip--a11y::before {
      animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text {
      bottom: 0;
      left: 50%; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility::before {
      bottom: -0.32rem;
      border-width: 0 0.16rem 0.2rem 0.16rem;
      border-color: transparent transparent #3d3d3d transparent;
      transform: translate(-50%, 100%); }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text {
      bottom: -0.52rem;
      transform: translate(-50%, 100%); }
  .bx--text-input__field-wrapper .bx--text-input--password__visibility,
  .bx--text-input__field-wrapper .bx--text-input--password__visibility__toggle.bx--tooltip__trigger {
    position: absolute;
    height: 0.64rem;
    width: 0.64rem;
    right: 1rem;
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer; }
    .bx--text-input__field-wrapper .bx--text-input--password__visibility svg,
    .bx--text-input__field-wrapper .bx--text-input--password__visibility__toggle.bx--tooltip__trigger svg {
      fill: #565656; }
  .bx--text-input__field-wrapper .bx--text-input--invalid {
    padding-right: 2.5rem; }
  .bx--text-input__field-wrapper .bx--text-input--invalid.bx--password-input {
    padding-right: 2.56rem; }
  .bx--text-input__field-wrapper .bx--text-input--invalid + .bx--text-input--password__visibility,
  .bx--text-input__field-wrapper .bx--text-input--invalid + .bx--text-input--password__visibility__toggle {
    right: 1rem; }

.bx--password-input-wrapper .bx--text-input__invalid-icon {
  right: 2.5rem; }

.bx--text-input:disabled + .bx--text-input--password__visibility svg,
.bx--text-input:disabled + .bx--text-input--password__visibility__toggle svg {
  opacity: 0.5;
  cursor: not-allowed; }

.bx--text-input:disabled {
  cursor: not-allowed;
  outline: none;
  background-color: #ffffff;
  border-bottom: 1px solid transparent;
  color: #bebebe; }

.bx--text-input--light:disabled {
  background-color: #f3f3f3; }

.bx--text-input:disabled::placeholder {
  opacity: 1;
  color: #bebebe; }

.bx--text-input--invalid {
  outline: 2px solid #da1e28;
  outline-offset: -2px;
  box-shadow: none; }
  .bx--text-input--invalid .bx--text-input--password__visibility,
  .bx--text-input--invalid .bx--text-input--password__visibility__toggle {
    right: 2.5rem; }

.bx--text-area {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  background-color: #ffffff;
  width: 100%;
  min-width: 10rem;
  min-height: 1.6rem;
  padding: 0.44rem 1rem;
  color: #000000;
  order: 3;
  resize: vertical;
  border: none;
  border-bottom: 1px solid #8c8c8c;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--text-area *,
  .bx--text-area *:before,
  .bx--text-area *:after {
    box-sizing: inherit; }
  .bx--text-area ~ .bx--form__helper-text {
    margin-top: 0;
    order: 2;
    font-style: italic; }
  .bx--text-area ~ .bx--form-requirement {
    order: 4;
    color: #da1e28;
    font-weight: 400;
    margin-top: 0.25rem; }
    .bx--text-area ~ .bx--form-requirement::before {
      display: none; }

.bx--text-area:focus,
.bx--text-area:active {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--text-area::placeholder {
  color: #8c8c8c;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  opacity: 1; }

.bx--text-area--light {
  background-color: #f3f3f3; }

.bx--text-area--invalid {
  padding-right: 2.5rem; }

.bx--text-area__wrapper {
  position: relative;
  display: flex; }

.bx--text-area__invalid-icon {
  position: absolute;
  right: 1rem;
  top: 0.75rem;
  fill: #da1e28; }

.bx--text-area:disabled {
  cursor: not-allowed;
  outline: none;
  background-color: #f3f3f3;
  border-bottom: 1px solid transparent; }

.bx--text-area:disabled::placeholder {
  color: #bebebe; }

bx--text-area.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  height: 4rem; }
  bx--text-area.bx--skeleton:hover, bx--text-area.bx--skeleton:focus, bx--text-area.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  bx--text-area.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      bx--text-area.bx--skeleton:before {
        animation: none; } }
  bx--text-area.bx--skeleton::placeholder {
    color: transparent; }

.bx--number {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: flex;
  flex-direction: column;
  position: relative; }
  .bx--number *,
  .bx--number *:before,
  .bx--number *:after {
    box-sizing: inherit; }

.bx--number input[type='number'] {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  box-sizing: border-box;
  display: inline-flex;
  width: 100%;
  min-width: 9.375rem;
  padding-left: 1rem;
  padding-right: 2rem;
  font-weight: 300;
  height: 1.6rem;
  color: #000000;
  background-color: #ffffff;
  border: none;
  border-radius: 0;
  border-bottom: 1px solid #8c8c8c;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -moz-appearance: textfield; }
  .bx--number input[type='number']:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--number input[type='number']:disabled ~ .bx--number__controls {
    cursor: not-allowed;
    pointer-events: none; }
  .bx--number input[type='number']:disabled ~ .bx--number__controls svg {
    fill: #bebebe; }
  .bx--number input[type='number']::-ms-clear {
    display: none; }
  .bx--number input[type='number']::-webkit-inner-spin-button {
    appearance: none; }

.bx--number input[type='number']:disabled,
.bx--number--readonly input[type='number'] {
  cursor: not-allowed;
  background-color: #f3f3f3;
  color: #bebebe; }

.bx--number__input-wrapper {
  display: flex;
  align-items: center; }
  .bx--number__input-wrapper ~ .bx--form-requirement {
    color: #da1e28;
    font-weight: 400;
    margin-top: 0.25rem;
    overflow: visible; }
    .bx--number__input-wrapper ~ .bx--form-requirement::before {
      display: none; }

.bx--number__controls {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: absolute;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }
  .bx--number__controls *,
  .bx--number__controls *:before,
  .bx--number__controls *:after {
    box-sizing: inherit; }

.bx--number__control-btn {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 1.28rem;
  height: 0.8rem;
  color: #000000; }
  .bx--number__control-btn *,
  .bx--number__control-btn *:before,
  .bx--number__control-btn *:after {
    box-sizing: inherit; }
  .bx--number__control-btn::-moz-focus-inner {
    border: 0; }
  .bx--number__control-btn svg {
    fill: currentColor;
    position: relative; }
  .bx--number__control-btn.up-icon svg {
    top: 0.2rem; }
  .bx--number__control-btn.down-icon svg {
    top: -0.2rem; }
  .bx--number__control-btn:focus {
    outline: 1px solid #0062ff;
    color: #000000;
    outline-width: 2px;
    outline-offset: -2px; }
  .bx--number__control-btn:hover {
    cursor: pointer; }
  .bx--number__control-btn:hover {
    color: #000000; }
  .bx--number__control-btn:disabled {
    cursor: not-allowed;
    color: #bebebe; }

.bx--number--readonly .bx--number__control-btn {
  display: none; }

.bx--number[data-invalid] .bx--form-requirement {
  display: inline-block;
  max-height: 8rem; }

.bx--number[data-invalid] input[type='number'] {
  outline: 2px solid #da1e28;
  outline-offset: -2px; }

.bx--number__invalid {
  position: absolute;
  right: 2rem;
  fill: #da1e28; }

.bx--number--light input[type='number'] {
  background-color: #f3f3f3; }

.bx--number--mobile {
  min-width: 5.76rem;
  width: auto; }
  .bx--number--mobile .bx--number__control-btn,
  .bx--number--mobile.bx--number--light .bx--number__control-btn {
    position: static;
    width: 1.6rem;
    height: 1.6rem;
    background-color: #ffffff; }
    .bx--number--mobile .bx--number__control-btn:hover, .bx--number--mobile .bx--number__control-btn:focus,
    .bx--number--mobile.bx--number--light .bx--number__control-btn:hover,
    .bx--number--mobile.bx--number--light .bx--number__control-btn:focus {
      background-color: #e5e5e5; }
    .bx--number--mobile .bx--number__control-btn:focus,
    .bx--number--mobile.bx--number--light .bx--number__control-btn:focus {
      outline-width: 2px;
      outline-offset: -2px; }
    .bx--number--mobile .bx--number__control-btn svg,
    .bx--number--mobile.bx--number--light .bx--number__control-btn svg {
      position: static; }
  .bx--number--mobile input[type='number'] {
    min-width: 2.56rem;
    width: auto;
    margin: 0;
    border-right: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    padding: 0;
    text-align: center;
    background-color: #ffffff; }
  .bx--number--mobile.bx--number--light input[type='number'] {
    background-color: #f3f3f3; }
  .bx--number--mobile.bx--number--light .bx--number__control-btn {
    background-color: #f3f3f3; }

.bx--number.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 100%;
  height: 2.5rem; }
  .bx--number.bx--skeleton:hover, .bx--number.bx--skeleton:focus, .bx--number.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--number.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--number.bx--skeleton:before {
        animation: none; } }
  .bx--number.bx--skeleton input[type='number'] {
    display: none; }

.bx--link {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  color: #0062ff;
  text-decoration: none;
  outline: none;
  transition: 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--link *,
  .bx--link *:before,
  .bx--link *:after {
    box-sizing: inherit; }
  .bx--link:hover {
    color: #0062ff;
    text-decoration: underline; }
  .bx--link:active, .bx--link:active:visited {
    color: #000000;
    text-decoration: underline; }
  .bx--link:focus {
    outline: 1px solid #0062ff; }
  .bx--link:not([href]) {
    color: #bebebe;
    cursor: not-allowed;
    pointer-events: none;
    touch-action: none; }
  .bx--link:visited {
    color: #0062ff; }

.bx--link--visited {
  color: #8a3ffc; }

.bx--link--disabled {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  display: inline;
  color: #bebebe;
  font-weight: 400;
  cursor: not-allowed; }
  .bx--link--disabled *,
  .bx--link--disabled *:before,
  .bx--link--disabled *:after {
    box-sizing: inherit; }

.bx--list--nested,
.bx--list--unordered,
.bx--list--ordered {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  counter-reset: listitem; }
  .bx--list--nested *,
  .bx--list--nested *:before,
  .bx--list--nested *:after,
  .bx--list--unordered *,
  .bx--list--unordered *:before,
  .bx--list--unordered *:after,
  .bx--list--ordered *,
  .bx--list--ordered *:before,
  .bx--list--ordered *:after {
    box-sizing: inherit; }

.bx--list__item {
  font-weight: 400;
  color: #000000;
  list-style-type: none;
  counter-increment: listitem;
  margin-left: 0.5rem;
  padding-left: 0.5rem;
  position: relative; }

.bx--list__item:before {
  position: absolute;
  left: -0.5rem; }

.bx--list--nested {
  margin-bottom: 0.16rem;
  margin-left: 2rem; }

.bx--list--unordered > .bx--list__item:before,
.bx--list--ordered > .bx--list__item:before {
  display: inline-block;
  margin-right: 0.5rem;
  margin-bottom: 0.16rem; }

.bx--list--unordered .bx--list--nested > .bx--list__item:before,
.bx--list--ordered .bx--list--nested > .bx--list__item:before {
  margin-right: 0.5rem;
  display: inline-block; }

.bx--list--unordered > .bx--list__item:before {
  content: '\002013'; }

.bx--list--unordered ul.bx--list--nested > .bx--list__item:before {
  content: '\0025AA'; }

.bx--list--unordered ol.bx--list--nested > .bx--list__item:before {
  content: counter(listitem, lower-alpha) "."; }

.bx--list--ordered > .bx--list__item:before {
  content: counter(listitem) "."; }

.bx--list--ordered ol.bx--list--nested {
  counter-reset: ol-counter; }

.bx--list--ordered ol.bx--list--nested > .bx--list__item {
  counter-increment: ol-counter; }

.bx--list--ordered ol.bx--list--nested > .bx--list__item:before {
  content: counter(ol-counter, lower-alpha) ".";
  width: 0.6rem; }

.bx--list--ordered ul.bx--list--nested > .bx--list__item:before {
  content: '\0025AA'; }

.bx--table-toolbar {
  display: flex;
  width: 100%;
  background: #ffffff;
  height: 3rem;
  position: relative; }

.bx--toolbar-content {
  display: flex;
  height: 3rem;
  width: 100%;
  justify-content: flex-end;
  transform: translate3d(0, 0, 0);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--batch-actions ~ .bx--toolbar-content {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

.bx--toolbar-content .bx--search .bx--search-input {
  background-color: transparent; }

.bx--batch-actions ~ .bx--toolbar-search-container {
  opacity: 1;
  transition: opacity 110ms;
  display: flex;
  align-items: center; }

.bx--toolbar-search-container-expandable {
  height: 3rem;
  width: 3rem;
  position: relative;
  transition: flex 240ms cubic-bezier(0.2, 0, 0.38, 0.9);
  box-shadow: none; }

.bx--toolbar-search-container-expandable .bx--search {
  width: 3rem;
  height: 100%;
  position: initial; }

.bx--toolbar-search-container-expandable .bx--search .bx--search-magnifier {
  height: 3rem;
  width: 3rem;
  padding: 1rem;
  left: 0;
  cursor: pointer;
  pointer-events: all;
  transition: background 110ms cubic-bezier(0, 0, 0.38, 0.9); }

.bx--toolbar-search-container-expandable .bx--search .bx--search-magnifier:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--toolbar-search-container-expandable .bx--search .bx--search-magnifier:hover {
  background: #f3f3f3; }

.bx--toolbar-search-container-expandable .bx--search .bx--search-input {
  outline: 2px solid #0062ff;
  outline-offset: -2px;
  height: 100%;
  visibility: hidden;
  padding: 0;
  background-color: transparent; }

.bx--toolbar-search-container-expandable .bx--search .bx--search-close {
  height: 3rem;
  width: 3rem; }
  .bx--toolbar-search-container-expandable .bx--search .bx--search-close:before {
    top: 2px;
    height: calc(100% - 4px);
    background-color: #e5e5e5; }

.bx--toolbar-search-container-active {
  flex: auto;
  transition: flex 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--toolbar-search-container-active .bx--search {
  width: 100%; }

.bx--toolbar-search-container-active .bx--search .bx--search-input {
  padding-left: 3rem;
  visibility: visible; }

.bx--toolbar-search-container-active .bx--search .bx--search-input:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--toolbar-search-container-active .bx--search .bx--search-input:focus + .bx--search-close {
  border: none;
  box-shadow: none;
  outline: none; }

.bx--toolbar-search-container-active .bx--search .bx--search-input:not(:placeholder-shown) {
  background: #f3f3f3;
  border: none; }

.bx--toolbar-search-container-active .bx--search .bx--search-magnifier:focus,
.bx--toolbar-search-container-active .bx--search .bx--search-magnifier:active,
.bx--toolbar-search-container-active .bx--search .bx--search-magnifier:hover {
  outline: none;
  border: none;
  background: transparent; }

.bx--toolbar-search-container-persistent .bx--search-close,
.bx--toolbar-search-container-persistent .bx--search-close:hover,
.bx--toolbar-search-container-active .bx--search .bx--search-close,
.bx--toolbar-search-container-active .bx--search .bx--search-close:hover {
  border: none;
  background-color: transparent; }

.bx--overflow-menu.bx--toolbar-action {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  display: flex;
  cursor: pointer;
  height: 3rem;
  width: 3rem;
  padding: 1rem;
  transition: background 110ms cubic-bezier(0, 0, 0.38, 0.9); }
  .bx--overflow-menu.bx--toolbar-action *,
  .bx--overflow-menu.bx--toolbar-action *:before,
  .bx--overflow-menu.bx--toolbar-action *:after {
    box-sizing: inherit; }
  .bx--overflow-menu.bx--toolbar-action::-moz-focus-inner {
    border: 0; }

.bx--toolbar-action {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  display: flex;
  cursor: pointer;
  height: 3rem;
  width: 3rem;
  transition: background 110ms cubic-bezier(0, 0, 0.38, 0.9); }
  .bx--toolbar-action *,
  .bx--toolbar-action *:before,
  .bx--toolbar-action *:after {
    box-sizing: inherit; }
  .bx--toolbar-action::-moz-focus-inner {
    border: 0; }

.bx--toolbar-action:hover:not([disabled]) {
  background: #f3f3f3; }

.bx--toolbar-action:hover[aria-expanded='true'] {
  background: #ffffff; }

.bx--toolbar-action[disabled] {
  cursor: not-allowed; }

.bx--toolbar-action[disabled] .bx--toolbar-action__icon {
  fill: #bebebe;
  cursor: not-allowed; }

.bx--toolbar-action:focus:not([disabled]),
.bx--toolbar-action:active:not([disabled]) {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }
  .bx--toolbar-action:focus:not([disabled]).bx--toolbar-search-container-expandable,
  .bx--toolbar-action:active:not([disabled]).bx--toolbar-search-container-expandable {
    outline: none; }

.bx--toolbar-action ~ .bx--btn {
  margin: 0;
  height: 3rem; }

.bx--overflow-menu--data-table {
  height: 3rem; }

.bx--toolbar-action__icon {
  height: 1rem;
  width: auto;
  max-width: 1rem;
  fill: #000000; }

.bx--toolbar-search-container-persistent {
  width: 100%;
  height: 3rem;
  opacity: 1;
  position: relative; }

.bx--toolbar-search-container-persistent + .bx--toolbar-content {
  position: relative;
  width: auto; }

.bx--toolbar-search-container-persistent .bx--search {
  position: initial; }

.bx--toolbar-search-container-persistent .bx--search .bx--search-magnifier {
  left: 1rem; }

.bx--toolbar-search-container-persistent .bx--search .bx--search-input {
  height: 3rem;
  padding-left: 3rem;
  border: none; }

.bx--toolbar-search-container-persistent .bx--search .bx--search-input:focus:not([disabled]) {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--toolbar-search-container-persistent .bx--search .bx--search-input:hover:not([disabled]) {
  background: #f3f3f3; }

.bx--toolbar-search-container-persistent .bx--search .bx--search-input:active:not([disabled]),
.bx--toolbar-search-container-persistent .bx--search .bx--search-input:not(:placeholder-shown) {
  background: #f3f3f3; }

.bx--toolbar-search-container-persistent .bx--search .bx--search-close {
  height: 3rem;
  width: 3rem; }

.bx--batch-actions--active ~ .bx--toolbar-search-container,
.bx--batch-actions--active ~ .bx--toolbar-content {
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  transform: translate3d(0, 48px, 0);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--batch-actions {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  align-items: center;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 100%;
  height: 100%;
  pointer-events: none;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  will-change: transform;
  background-color: #0062ff;
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9), opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transform: translate3d(0, 48px, 0); }

.bx--batch-actions:focus {
  outline: 1px solid #0062ff; }

.bx--batch-actions--active {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  pointer-events: all;
  transform: translate3d(0, 0, 0); }

.bx--action-list {
  position: absolute;
  top: 0;
  right: 0;
  display: flex; }

.bx--action-list .bx--btn {
  color: #ffffff; }

.bx--action-list .bx--btn .bx--btn__icon {
  fill: #ffffff;
  margin-left: 0.5rem; }

.bx--action-list .bx--btn .bx--btn__icon .st0 {
  fill: none; }

.bx--batch-download {
  padding: 0.04rem; }

.bx--action-list .bx--btn--primary:focus::before,
.bx--action-list .bx--btn--primary:focus::before,
.bx--action-list .bx--btn--primary::before,
.bx--action-list .bx--btn--primary::before,
.bx--action-list .bx--btn--primary:focus::after,
.bx--action-list .bx--btn--primary:focus::after,
.bx--action-list .bx--btn--primary::after,
.bx--action-list .bx--btn--primary::after {
  display: none; }

.bx--action-list .bx--btn--primary:focus {
  outline: 2px solid #ffffff;
  outline-offset: -0.08rem; }

.bx--action-list .bx--btn {
  min-width: 0; }

.bx--action-list .bx--btn--primary:nth-child(3):hover + .bx--btn--primary.bx--batch-summary__cancel::before,
.bx--action-list .bx--btn--primary:nth-child(3):focus + .bx--btn--primary.bx--batch-summary__cancel::before {
  opacity: 0; }

.bx--btn--primary.bx--batch-summary__cancel::before {
  display: block;
  position: absolute;
  opacity: 1;
  top: 0.6rem;
  left: 0;
  height: 1rem;
  width: 0.04rem;
  content: '';
  background-color: #ffffff;
  border: none;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--btn--primary.bx--batch-summary__cancel:hover::before {
  opacity: 0;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--batch-summary__cancel {
  padding-right: 1rem;
  position: relative; }

.bx--batch-summary {
  position: absolute;
  left: 0;
  margin-left: 1rem;
  display: flex;
  align-items: center;
  color: #ffffff; }

.bx--batch-summary__para {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px; }

.bx--table-toolbar--small {
  height: 1.28rem; }
  .bx--table-toolbar--small .bx--toolbar-search-container-expandable,
  .bx--table-toolbar--small .bx--toolbar-search-container-persistent {
    height: 1.28rem; }
  .bx--table-toolbar--small .bx--toolbar-search-container-expandable .bx--search .bx--search-input,
  .bx--table-toolbar--small .bx--toolbar-search-container-persistent .bx--search .bx--search-input {
    height: 1.28rem; }
  .bx--table-toolbar--small .bx--toolbar-search-container-expandable .bx--search .bx--search-close,
  .bx--table-toolbar--small .bx--toolbar-search-container-persistent .bx--search .bx--search-close {
    height: 1.28rem;
    width: 1.28rem; }
  .bx--table-toolbar--small .bx--toolbar-search-container-expandable .bx--search .bx--search-magnifier,
  .bx--table-toolbar--small .bx--toolbar-search-container-persistent .bx--search .bx--search-magnifier {
    height: 1.28rem;
    width: 1.28rem;
    padding: 0.5rem; }
  .bx--table-toolbar--small .bx--toolbar-search-container-expandable {
    width: 1.28rem; }
  .bx--table-toolbar--small .bx--toolbar-search-container-expandable .bx--search .bx--search-input {
    padding-left: 2rem; }
  .bx--table-toolbar--small .bx--toolbar-search-container-active {
    flex: auto;
    transition: flex 175ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input {
    visibility: visible; }
  .bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px;
    background: #f3f3f3; }
  .bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input:active,
  .bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input:not(:placeholder-shown) {
    background: #f3f3f3; }
  .bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-magnifier:focus,
  .bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-magnifier:active,
  .bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-magnifier:hover {
    outline: 2px solid transparent;
    outline-offset: -2px;
    background: transparent; }

.bx--table-toolbar--small .bx--batch-actions .bx--action-list {
  height: 1.28rem; }

.bx--table-toolbar--small .bx--toolbar-action {
  height: 1.28rem;
  width: 1.28rem;
  padding: 0.5rem; }

.bx--table-toolbar--small .bx--btn--primary {
  padding-top: 0.12rem;
  height: 1.28rem; }

.bx--table-toolbar--small .bx--btn--primary.bx--batch-summary__cancel::before {
  top: 0.32rem; }

.bx--table-toolbar--small .bx--toolbar-action ~ .bx--btn {
  height: 1.28rem;
  width: 6.4rem;
  overflow: hidden; }

.bx--data-table-container {
  min-width: 20rem;
  overflow-x: auto;
  padding-top: 0.125rem; }

.bx--data-table-header {
  background: #ffffff;
  padding: 1rem 0 1.5rem 1rem; }

.bx--data-table-header__title {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.625rem;
  letter-spacing: 0;
  color: #000000; }

.bx--data-table-header__description {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #000000; }

.bx--data-table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }

.bx--data-table thead {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  background-color: #dcdcdc; }

.bx--data-table tbody {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  background-color: #ffffff;
  width: 100%; }

.bx--data-table tr {
  border: none;
  height: 3rem;
  width: 100%; }

.bx--data-table tbody tr,
.bx--data-table tbody tr td,
.bx--data-table tbody tr th {
  transition: background-color 70ms cubic-bezier(0, 0, 0.38, 0.9); }

.bx--data-table tbody tr:hover {
  background: #f3f3f3; }

.bx--data-table tbody tr:hover td,
.bx--data-table tbody tr:hover th {
  color: #000000;
  background: #f3f3f3;
  border-bottom: 1px solid #f3f3f3;
  border-top: 1px solid #f3f3f3; }

.bx--data-table th,
.bx--data-table td {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  vertical-align: top;
  text-align: left; }

.bx--data-table th {
  color: #ffffff;
  background-color: #000000; }

.bx--data-table th:first-of-type:not(.bx--table-expand) {
  padding-left: 1rem; }

.bx--data-table th:last-of-type {
  position: relative;
  width: auto; }

.bx--data-table .bx--table-header-label {
  display: block;
  padding: 0.56rem 0;
  text-align: left; }

.bx--data-table td,
.bx--data-table tbody th {
  background: #ffffff;
  color: #000000;
  border-top: 1px solid #ffffff;
  border-bottom: 1px solid #dcdcdc;
  padding: 0.56rem 0.75rem;
  padding-bottom: 0.52rem; }
  .bx--data-table td + td:first-of-type,
  .bx--data-table tbody th + td:first-of-type {
    padding-left: 0.75rem; }

@supports (-moz-appearance: none) {
  .bx--data-table td {
    background-clip: padding-box; } }

.bx--data-table td:first-of-type {
  padding-left: 1rem; }

.bx--data-table td:last-of-type {
  padding-right: 1rem; }

.bx--data-table .bx--table-column-menu,
.bx--data-table .bx--table-column-menu:last-of-type {
  width: 2.08rem;
  min-width: 2.08rem;
  padding-top: 0.5rem;
  padding-right: 0.5rem; }

.bx--data-table td.bx--table-column-menu {
  padding-bottom: 0; }

.bx--data-table td.bx--table-column-menu .bx--overflow-menu[aria-expanded='false']:hover {
  background: #dcdcdc; }

.bx--data-table td.bx--table-column-menu .bx--overflow-menu[aria-expanded='false']:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--data-table td.bx--table-column-menu .bx--overflow-menu[aria-expanded='true']:focus {
  outline: none; }

@media screen and (hover: hover), (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .bx--data-table td.bx--table-column-menu .bx--overflow-menu .bx--overflow-menu__icon {
    opacity: 0; } }

.bx--data-table.bx--data-table--visible-overflow-menu td.bx--table-column-menu .bx--overflow-menu .bx--overflow-menu__icon,
.bx--data-table td.bx--table-column-menu .bx--overflow-menu:hover .bx--overflow-menu__icon,
.bx--data-table td.bx--table-column-menu .bx--overflow-menu:focus .bx--overflow-menu__icon,
.bx--data-table tr:hover td.bx--table-column-menu .bx--overflow-menu .bx--overflow-menu__icon {
  opacity: 1; }

.bx--table-row--menu-option .bx--overflow-menu-options__btn .bx--overflow-menu-options__option-content svg {
  margin-right: 0.5rem;
  position: relative;
  top: 0.12rem; }

.bx--data-table--zebra tbody tr:nth-child(even) td {
  border-bottom: 1px solid #ffffff; }

.bx--data-table--zebra tbody tr:nth-child(odd) td {
  background-color: #ffffff;
  border-bottom: 1px solid #ffffff;
  border-top: 1px solid #ffffff; }

.bx--data-table--zebra tbody tr:hover td {
  background-color: #f3f3f3;
  border-bottom: 1px solid #f3f3f3;
  border-top: 1px solid #f3f3f3; }

.bx--table-column-checkbox .bx--checkbox-label {
  padding-left: 1rem; }

.bx--data-table th.bx--table-column-checkbox {
  position: relative;
  background: #dcdcdc;
  padding: 0.48rem 0.5rem 0 1rem;
  width: 1.76rem;
  transition: background-color 70ms cubic-bezier(0, 0, 0.38, 0.9); }

.bx--data-table td.bx--table-column-checkbox {
  padding-top: 0.44rem;
  padding-bottom: 0; }

th.bx--table-column-checkbox:hover {
  background: #cacaca; }

.bx--data-table--zebra tbody tr:nth-child(odd).bx--data-table--selected td,
tr.bx--data-table--selected td {
  color: #000000;
  background-color: #dcdcdc;
  border-top: 1px solid #dcdcdc;
  border-bottom: 1px solid #bebebe; }

.bx--data-table--zebra tbody tr:first-of-type:nth-child(odd).bx--data-table--selected td,
tr.bx--data-table--selected:first-of-type td {
  border-top: 1px solid #bebebe; }

.bx--data-table--zebra tbody tr:last-of-type:nth-child(odd).bx--data-table--selected td,
.bx--data-table--zebra tbody tr:last-of-type:nth-child(even).bx--data-table--selected td,
tr.bx--data-table--selected:last-of-type td {
  border-top: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc; }

.bx--data-table--zebra tbody tr:nth-child(even).bx--data-table--selected td {
  border-bottom: 1px solid #bebebe; }

.bx--data-table--zebra tbody tr:nth-child(even).bx--data-table--selected:hover td {
  border-bottom: 1px solid #cacaca; }

.bx--data-table--zebra tbody tr:nth-child(odd).bx--data-table--selected:hover td,
.bx--data-table tbody .bx--data-table--selected:hover td {
  color: #000000;
  background: #cacaca;
  border-top: 1px solid #cacaca;
  border-bottom: 1px solid #cacaca; }

.bx--data-table--selected .bx--overflow-menu .bx--overflow-menu__icon {
  opacity: 1; }

.bx--data-table--compact thead tr,
.bx--data-table--compact tbody tr {
  height: 0.96rem; }

.bx--data-table--compact .bx--table-header-label {
  padding: 0.08rem 0; }

.bx--data-table--compact td {
  padding-top: 0.08rem;
  padding-bottom: 0.08rem; }

.bx--data-table--compact .bx--overflow-menu {
  width: 1.28rem;
  height: 0.92rem; }

.bx--data-table.bx--data-table--compact .bx--table-column-menu {
  padding-top: 0; }

.bx--data-table.bx--data-table--compact .bx--table-column-checkbox {
  padding-top: 0;
  padding-bottom: 0; }

.bx--data-table.bx--data-table--compact .bx--table-column-checkbox .bx--checkbox-label {
  min-height: 0.92rem;
  height: 0.92rem; }

.bx--data-table--short thead tr,
.bx--data-table--short tbody tr {
  height: 1.28rem; }

.bx--data-table--short .bx--table-header-label {
  padding: 0.28rem 0; }

.bx--data-table--short td {
  padding-top: 0.28rem;
  padding-bottom: 0.24rem; }

.bx--data-table--short .bx--overflow-menu {
  height: 1.24rem; }

.bx--data-table.bx--data-table--short .bx--table-column-menu {
  padding-top: 0; }

.bx--data-table.bx--data-table--short .bx--table-column-checkbox {
  padding-top: 0.12rem;
  padding-bottom: 0.12rem; }

.bx--data-table--tall thead tr,
.bx--data-table--tall tbody tr {
  height: 2.56rem; }

.bx--data-table--tall .bx--table-header-label {
  padding: 0.64rem 0; }

.bx--data-table--tall td {
  padding-top: 1rem; }

.bx--data-table--cell-secondary-text {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px; }

.bx--data-table.bx--data-table--tall .bx--table-column-menu,
.bx--data-table.bx--data-table--tall .bx--table-column-checkbox {
  padding-top: 0.48rem; }

.bx--data-table--static {
  width: auto; }

.bx--data-table_inner-container {
  background-color: #dcdcdc;
  padding-top: 1.92rem;
  transform: translateZ(0); }

.bx--data-table--sticky-header {
  display: block;
  overflow-y: scroll; }
  .bx--data-table--sticky-header thead,
  .bx--data-table--sticky-header tbody,
  .bx--data-table--sticky-header tr,
  .bx--data-table--sticky-header th,
  .bx--data-table--sticky-header td {
    display: flex; }
  .bx--data-table--sticky-header thead {
    position: fixed;
    top: 0;
    width: 100%;
    overflow: scroll;
    -ms-overflow-style: none;
    will-change: transform; }
  .bx--data-table--sticky-header thead tr th {
    border-bottom: 1px solid #bebebe; }
  .bx--data-table--sticky-header tbody {
    flex-direction: column;
    overflow-x: scroll;
    -ms-overflow-style: none;
    will-change: transform; }
  .bx--data-table--sticky-header tr {
    min-height: 1.92rem;
    height: auto; }
  .bx--data-table--sticky-header tr.bx--data-table--selected:first-of-type td {
    border-top: none; }
  .bx--data-table--sticky-header thead::-webkit-scrollbar,
  .bx--data-table--sticky-header tbody::-webkit-scrollbar {
    display: none; }

@-moz-document url-prefix() {
  .bx--data-table--sticky-header thead,
  .bx--data-table--sticky-header tbody {
    scrollbar-width: none; } }
  .bx--data-table--sticky-header tbody tr:last-of-type {
    border-bottom: 0; }
  .bx--data-table--sticky-header th:not(.bx--table-column-checkbox):not(.bx--table-column-menu):not(.bx--table-expand-v2):not(.bx--table-column-icon),
  .bx--data-table--sticky-header td:not(.bx--table-column-checkbox):not(.bx--table-column-menu):not(.bx--table-expand-v2):not(.bx--table-column-icon) {
    width: 100%;
    min-width: 0; }
  .bx--data-table--sticky-header .bx--table-header-label {
    max-width: calc(100% - 10px);
    display: block;
    overflow-x: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }

.bx--data-table--max-width {
  max-width: 36rem; }

.bx--data-table--sticky-header {
  max-height: 12rem; }

.bx--data-table tr.bx--parent-row:first-of-type td {
  border-top: 1px solid #dcdcdc; }

.bx--expandable-row--hidden td {
  border-top: 0;
  width: auto;
  padding: 1rem; }

tr.bx--parent-row:not(.bx--expandable-row) + tr[data-child-row] {
  height: 0;
  transition: height 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

tr.bx--parent-row:not(.bx--expandable-row) + tr[data-child-row] td {
  padding-top: 0;
  padding-bottom: 0;
  border: 0;
  background-color: #e5e5e5;
  transition: padding 150ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

tr.bx--parent-row:not(.bx--expandable-row) + tr[data-child-row] td .bx--child-row-inner-container {
  overflow: hidden;
  max-height: 0; }

tr.bx--parent-row.bx--expandable-row + tr[data-child-row] {
  transition: height 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

tr.bx--parent-row.bx--expandable-row + tr[data-child-row] td {
  padding-bottom: 0.92rem;
  transition: padding 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

tr.bx--parent-row.bx--expandable-row + tr[data-child-row] td .bx--child-row-inner-container {
  max-height: 100%; }

.bx--parent-row.bx--expandable-row > td,
.bx--parent-row.bx--expandable-row + tr[data-child-row] > td {
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #dcdcdc; }

.bx--parent-row:not(.bx--expandable-row) + tr[data-child-row] > td {
  box-shadow: none; }

.bx--parent-row.bx--expandable-row > td:first-of-type {
  box-shadow: none; }

tr.bx--parent-row:not(.bx--expandable-row) td,
tr.bx--parent-row.bx--expandable-row td,
tr.bx--parent-row.bx--expandable-row {
  transition: height 240ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

tr.bx--parent-row.bx--expandable-row + tr[data-child-row] td {
  transition: all 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

tr.bx--parent-row:not(.bx--expandable-row):first-of-type:hover td {
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5; }

tr.bx--parent-row.bx--expandable-row:hover td {
  background-color: #e5e5e5;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #dcdcdc;
  color: #000000; }

tr.bx--parent-row.bx--expandable-row:hover td:first-of-type {
  border-bottom: 1px solid #e5e5e5; }

tr.bx--parent-row.bx--expandable-row:hover + tr[data-child-row] td {
  background-color: #e5e5e5;
  color: #000000;
  border-bottom: 1px solid #dcdcdc; }

tr.bx--expandable-row--hover + tr[data-child-row] td {
  border-bottom: 1px solid #dcdcdc; }

tr.bx--expandable-row--hover {
  background-color: #e5e5e5; }

tr.bx--expandable-row--hover td {
  background-color: #e5e5e5;
  border-bottom: 1px solid #dcdcdc;
  border-top: 1px solid #e5e5e5;
  color: #000000; }

tr.bx--parent-row.bx--expandable-row.bx--expandable-row--hover td:first-of-type {
  border-bottom: 1px solid #e5e5e5; }

.bx--data-table td.bx--table-expand {
  width: 2.5rem;
  min-width: 2.5rem;
  height: 3rem;
  vertical-align: top;
  padding: 0; }

.bx--table-expand[data-previous-value='collapsed'] .bx--table-expand__svg {
  transform: rotate(270deg);
  transition: transform 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--table-expand__button {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  display: flex;
  justify-content: space-around;
  align-items: center;
  height: 100%;
  width: 100%; }
  .bx--table-expand__button *,
  .bx--table-expand__button *:before,
  .bx--table-expand__button *:after {
    box-sizing: inherit; }
  .bx--table-expand__button::-moz-focus-inner {
    border: 0; }

.bx--data-table--short .bx--table-expand__button {
  height: auto; }

.bx--table-expand__button:focus {
  outline: 1px solid transparent; }

.bx--table-expand__button:focus .bx--table-expand__svg {
  box-shadow: inset 0px 0px 0px 1px #0062ff; }

.bx--table-expand__svg {
  fill: #000000;
  transform: rotate(90deg);
  transition: transform 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

th.bx--table-expand {
  position: relative;
  vertical-align: middle; }

th.bx--table-expand + th.bx--table-column-checkbox {
  padding-left: 0.5rem; }

tr.bx--parent-row.bx--expandable-row td.bx--table-expand + td::after {
  position: absolute;
  content: '';
  left: 0;
  bottom: -0.04rem;
  height: 0.04rem;
  width: 0.32rem;
  background: #ffffff; }

tr.bx--parent-row.bx--expandable-row:hover td.bx--table-expand + td::after,
tr.bx--parent-row.bx--expandable-row.bx--expandable-row--hover td.bx--table-expand + td::after {
  background: #e5e5e5; }

tr.bx--parent-row.bx--data-table--selected td.bx--table-expand + td::after {
  display: none; }

tr.bx--parent-row.bx--data-table--selected:first-of-type td {
  background: #dcdcdc;
  border-top: 1px solid #bebebe;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #bebebe; }

tr.bx--parent-row.bx--data-table--selected td {
  background: #dcdcdc;
  color: #000000;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #bebebe; }

tr.bx--parent-row.bx--data-table--selected:last-of-type td {
  background: #dcdcdc;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #dcdcdc; }

tr.bx--parent-row.bx--data-table--selected:not(.bx--expandable-row):hover td {
  background: #cacaca;
  border-top: 1px solid #cacaca;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #cacaca; }

tr.bx--parent-row.bx--data-table--selected.bx--expandable-row td,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row td:first-of-type {
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #dcdcdc; }

tr.bx--parent-row.bx--data-table--selected.bx--expandable-row:hover td,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row:hover td:first-of-type,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row--hover td,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row--hover td:first-of-type {
  background: #cacaca;
  border-top: 1px solid #cacaca;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #cacaca; }

tr.bx--parent-row.bx--data-table--selected.bx--expandable-row + tr[data-child-row] td {
  color: #000000;
  background-color: #e5e5e5;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #bebebe;
  border-top: 1px solid #bebebe; }

tr.bx--parent-row.bx--data-table--selected.bx--expandable-row + tr[data-child-row]:last-of-type td {
  box-shadow: inset 0 -1px #bebebe;
  padding-bottom: 0.96rem; }

tr.bx--parent-row.bx--data-table--selected.bx--expandable-row:hover + tr[data-child-row] td,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row--hover + tr[data-child-row] td {
  background: #dcdcdc; }

.bx--data-table--sort th,
.bx--data-table--sort th:first-of-type:not(.bx--table-column-checkbox):not(.bx--table-expand) {
  padding: 0; }

.bx--data-table--sort th {
  height: 3rem;
  border-top: none;
  border-bottom: none; }

.bx--data-table--sort td {
  padding-left: 0.5rem;
  padding-right: 0.5rem; }

.bx--data-table--sort th:first-of-type .bx--table-sort {
  padding-left: 0.75rem; }

.bx--table-sort {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  position: relative;
  font: inherit;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  color: #ffffff;
  padding: 0 0.5rem;
  height: 100%;
  background-color: #000000;
  transition: background-color 70ms cubic-bezier(0, 0, 0.38, 0.9), outline 70ms cubic-bezier(0, 0, 0.38, 0.9); }
  .bx--table-sort *,
  .bx--table-sort *:before,
  .bx--table-sort *:after {
    box-sizing: inherit; }
  .bx--table-sort::-moz-focus-inner {
    border: 0; }

.bx--table-sort:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--table-sort:hover {
  color: #ffffff;
  background: #000000; }

.bx--table-sort:focus svg,
.bx--table-sort:hover svg {
  opacity: 1; }

.bx--table-sort .bx--table-sort__icon-inactive {
  display: block; }

.bx--table-sort .bx--table-sort__icon {
  display: none; }

.bx--table-sort__icon-unsorted {
  position: relative;
  left: 0.08rem;
  margin-left: 0.5rem;
  margin-right: 0;
  opacity: 0;
  fill: #ffffff;
  width: auto;
  min-width: 1rem; }

.bx--table-sort.bx--table-sort--active .bx--table-sort__icon-unsorted {
  display: none; }

.bx--table-sort.bx--table-sort--active .bx--table-sort__icon {
  display: block;
  opacity: 1; }

.bx--table-sort--ascending .bx--table-sort__icon {
  transform: rotate(180deg); }

.bx--table-sort__icon {
  position: relative;
  left: 0.08rem;
  margin-left: 0.5rem;
  margin-right: 0;
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transform: rotate(0);
  opacity: 0;
  fill: #ffffff;
  width: auto;
  min-width: 1rem; }

.bx--data-table--compact.bx--data-table--sort th {
  height: 0.96rem; }

.bx--data-table--compact.bx--data-table--sort th .bx--table-sort {
  padding-top: 0;
  padding-bottom: 0; }

.bx--data-table--short.bx--data-table--sort th {
  height: 1.28rem; }

.bx--data-table--short.bx--data-table--sort th .bx--table-sort {
  padding-top: 0;
  padding-bottom: 0; }

.bx--data-table--tall.bx--data-table--sort th {
  height: 2.56rem; }

.bx--data-table--tall.bx--data-table--sort th .bx--table-sort {
  padding-top: 0;
  padding-bottom: 0; }

.bx--data-table--tall.bx--data-table--sort th .bx--table-sort svg {
  align-self: flex-start;
  top: 0.5rem; }

.bx--data-table--tall.bx--data-table--sort th .bx--table-sort .bx--table-header-label {
  align-self: flex-start;
  position: relative;
  top: -0.32rem;
  max-height: 3rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; }

.bx--inline-edit-label {
  display: flex;
  justify-content: space-between;
  align-items: center; }
  .bx--inline-edit-label:hover .bx--inline-edit-label__icon {
    opacity: 1; }

.bx--inline-edit-label--inactive {
  display: none; }

.bx--inline-edit-label__action {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer; }
  .bx--inline-edit-label__action *,
  .bx--inline-edit-label__action *:before,
  .bx--inline-edit-label__action *:after {
    box-sizing: inherit; }
  .bx--inline-edit-label__action::-moz-focus-inner {
    border: 0; }
  .bx--inline-edit-label__action:hover {
    cursor: pointer; }
  .bx--inline-edit-label__action:focus {
    outline: 1px solid #0062ff;
    padding: 0.125rem; }
    .bx--inline-edit-label__action:focus .bx--inline-edit-label__icon {
      width: auto;
      opacity: 1; }

.bx--inline-edit-label__icon {
  fill: #000000;
  opacity: 0; }

.bx--inline-edit-input {
  display: none; }

.bx--inline-edit-input--active {
  display: block;
  margin-left: -0.48rem; }
  .bx--inline-edit-input--active input {
    padding-left: 0.75rem; }

.bx--data-table--short input {
  height: 1.28rem; }

.bx--data-table--short select {
  padding: 0.45rem 2.75rem 0.45rem 1rem; }

.bx--data-table--short .bx--select__arrow {
  top: 0.875rem; }

.bx--data-table.bx--skeleton th {
  border-bottom: 1px solid #0062ff;
  vertical-align: middle; }
  .bx--data-table.bx--skeleton th:nth-child(3n + 1) {
    width: 10%; }
  .bx--data-table.bx--skeleton th:nth-child(3n + 2) {
    width: 30%; }
  .bx--data-table.bx--skeleton th:nth-child(3n + 3) {
    width: 15%; }

.bx--data-table.bx--skeleton th span,
.bx--data-table.bx--skeleton td span {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 75%;
  height: 1rem;
  display: block; }
  .bx--data-table.bx--skeleton th span:hover, .bx--data-table.bx--skeleton th span:focus, .bx--data-table.bx--skeleton th span:active,
  .bx--data-table.bx--skeleton td span:hover,
  .bx--data-table.bx--skeleton td span:focus,
  .bx--data-table.bx--skeleton td span:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--data-table.bx--skeleton th span:before,
  .bx--data-table.bx--skeleton td span:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--data-table.bx--skeleton th span:before,
      .bx--data-table.bx--skeleton td span:before {
        animation: none; } }

.bx--data-table.bx--skeleton tr:hover td {
  border-color: #dcdcdc;
  background: transparent; }
  .bx--data-table.bx--skeleton tr:hover td:first-of-type, .bx--data-table.bx--skeleton tr:hover td:last-of-type {
    border-color: #dcdcdc; }

.bx--data-table-v2.bx--skeleton .bx--table-sort-v2 {
  pointer-events: none; }

.bx--structured-list--selection .bx--structured-list-td,
.bx--structured-list--selection .bx--structured-list-th {
  padding-left: 1rem;
  padding-right: 1rem; }
  .bx--structured-list--selection .bx--structured-list-td:first-child,
  .bx--structured-list--selection .bx--structured-list-th:first-child {
    padding-left: 1rem;
    padding-right: 1rem; }

.bx--structured-list-input {
  display: none; }

.bx--structured-list {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: table;
  overflow-x: auto;
  overflow-y: hidden;
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 5rem;
  background-color: transparent; }
  .bx--structured-list *,
  .bx--structured-list *:before,
  .bx--structured-list *:after {
    box-sizing: inherit; }
  .bx--structured-list.bx--structured-list--condensed .bx--structured-list-td,
  .bx--structured-list.bx--structured-list--condensed .bx--structured-list-th {
    padding: 0.5rem;
    padding-left: 0; }

.bx--structured-list-row {
  display: table-row;
  border-bottom: 1px solid #dcdcdc;
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--structured-list--selection .bx--structured-list-row:hover:not(.bx--structured-list-row--header-row):not(.bx--structured-list-row--selected) {
  background-color: #e5e5e5;
  cursor: pointer;
  border-bottom: 1px solid #e5e5e5; }

.bx--structured-list-row.bx--structured-list-row--selected {
  background-color: #dcdcdc; }

.bx--structured-list-row.bx--structured-list-row--header-row {
  border-bottom: 1px solid #dcdcdc;
  cursor: inherit; }

.bx--structured-list-row:focus:not(.bx--structured-list-row--header-row) {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--structured-list--selection .bx--structured-list-row:hover:not(.bx--structured-list-row--header-row) > .bx--structured-list-td,
.bx--structured-list-row.bx--structured-list-row--selected > .bx--structured-list-td {
  color: #000000; }

.bx--structured-list--selection .bx--structured-list-row:hover:not(.bx--structured-list-row--header-row) > .bx--structured-list-td {
  border-top: 1px solid #ffffff; }

.bx--structured-list-thead {
  display: table-header-group;
  vertical-align: middle; }

.bx--structured-list-th {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  display: table-cell;
  font-weight: 600;
  height: 1.6rem;
  text-align: left;
  text-transform: none;
  vertical-align: bottom; }
  .bx--structured-list-th *,
  .bx--structured-list-th *:before,
  .bx--structured-list-th *:after {
    box-sizing: inherit; }

.bx--structured-list-tbody {
  display: table-row-group;
  vertical-align: middle; }

.bx--structured-list-td {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  padding-top: 1rem;
  padding-right: 1rem;
  padding-bottom: 1.5rem;
  padding-left: 1rem;
  line-height: 1.3125rem;
  position: relative;
  display: table-cell;
  max-width: 36rem;
  transition: color 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--structured-list-td *,
  .bx--structured-list-td *:before,
  .bx--structured-list-td *:after {
    box-sizing: inherit; }

.bx--structured-list-th {
  color: #000000; }

.bx--structured-list-td {
  color: #565656; }

.bx--structured-list-content--nowrap {
  white-space: nowrap; }

.bx--structured-list-svg {
  display: inline-block;
  fill: transparent;
  vertical-align: middle;
  transition: all 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--structured-list-row:hover .bx--structured-list-svg {
  fill: #a4a4a4; }

.bx--structured-list-input:checked + .bx--structured-list-row .bx--structured-list-svg,
.bx--structured-list-input:checked + .bx--structured-list-td .bx--structured-list-svg {
  fill: #000000; }

.bx--structured-list.bx--skeleton .bx--structured-list-th:first-child {
  width: 8%; }

.bx--structured-list.bx--skeleton .bx--structured-list-th:nth-child(3n + 2) {
  width: 30%; }

.bx--structured-list.bx--skeleton .bx--structured-list-th:nth-child(3n + 3) {
  width: 15%; }

.bx--structured-list.bx--skeleton .bx--structured-list-th span {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 75%;
  height: 1rem;
  display: block; }
  .bx--structured-list.bx--skeleton .bx--structured-list-th span:hover, .bx--structured-list.bx--skeleton .bx--structured-list-th span:focus, .bx--structured-list.bx--skeleton .bx--structured-list-th span:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--structured-list.bx--skeleton .bx--structured-list-th span:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--structured-list.bx--skeleton .bx--structured-list-th span:before {
        animation: none; } }

.bx--structured-list.bx--skeleton .bx--structured-list-th span {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 75%;
  height: 1rem;
  display: block; }
  .bx--structured-list.bx--skeleton .bx--structured-list-th span:hover, .bx--structured-list.bx--skeleton .bx--structured-list-th span:focus, .bx--structured-list.bx--skeleton .bx--structured-list-th span:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--structured-list.bx--skeleton .bx--structured-list-th span:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--structured-list.bx--skeleton .bx--structured-list-th span:before {
        animation: none; } }

.bx--structured-list.bx--structured-list--selection.bx--skeleton .bx--structured-list-th:first-child {
  width: 5%; }
  .bx--structured-list.bx--structured-list--selection.bx--skeleton .bx--structured-list-th:first-child span {
    display: none; }

.bx--snippet {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline; }
  .bx--snippet *,
  .bx--snippet *:before,
  .bx--snippet *:after {
    box-sizing: inherit; }

.bx--snippet code {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px; }

.bx--snippet--inline {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  position: relative;
  display: inline;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 4px;
  background-color: #ffffff;
  color: #000000;
  cursor: pointer; }
  .bx--snippet--inline *,
  .bx--snippet--inline *:before,
  .bx--snippet--inline *:after {
    box-sizing: inherit; }
  .bx--snippet--inline:hover {
    background-color: #dcdcdc; }
  .bx--snippet--inline:active {
    background-color: #bebebe; }
  .bx--snippet--inline:focus {
    outline: none;
    border: 2px solid #0062ff; }

.bx--snippet--inline code {
  padding: 0 0.5rem; }

.bx--snippet--inline.bx--snippet--light {
  background-color: #f3f3f3; }
  .bx--snippet--inline.bx--snippet--light:hover {
    background-color: rgba(61, 61, 61, 0.1); }

.bx--snippet--single {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  background: #f3f3f3;
  border: 1px solid #dcdcdc;
  position: relative;
  max-width: 24rem;
  width: 100%;
  border: none;
  max-width: 30.4rem;
  min-width: 12.8rem;
  height: 2.5rem;
  padding: 0 56px 0 1rem; }

.bx--snippet--single .bx--snippet-container {
  display: flex;
  align-items: center;
  overflow-x: auto;
  position: relative;
  padding: 0 0 1rem 0;
  height: 2.24rem; }

.bx--snippet--single pre {
  white-space: nowrap;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  padding-right: 0.5rem; }

.bx--snippet--single::after {
  width: 0.64rem;
  height: 100%;
  content: '';
  position: absolute;
  top: 0;
  right: 2.24rem;
  background-image: linear-gradient(to right, transparent, #ffffff); }

.bx--snippet--multi {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  background: #f3f3f3;
  border: 1px solid #dcdcdc;
  position: relative;
  max-width: 24rem;
  width: 100%;
  border: none;
  padding: 1rem;
  min-width: 12.8rem;
  max-width: 100%; }

.bx--snippet--multi .bx--snippet-container {
  overflow: hidden;
  position: relative;
  max-height: 9.52rem;
  min-height: 2.24rem;
  transition: max-height 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--snippet--multi.bx--snippet--expand .bx--snippet-container {
  max-height: 60rem;
  transition: max-height 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--snippet--multi .bx--snippet-container pre {
  overflow: hidden;
  padding-bottom: 0.96rem; }

.bx--snippet--multi.bx--snippet--expand .bx--snippet-container pre {
  overflow-x: scroll; }

.bx--snippet--multi .bx--snippet-container pre::after {
  width: 0.64rem;
  height: 100%;
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  background-image: linear-gradient(to right, transparent, #ffffff); }

.bx--snippet--multi .bx--snippet-container pre code {
  overflow: hidden; }

.bx--snippet__icon {
  fill: #000000;
  height: 0.64rem;
  width: 0.64rem;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--snippet-button {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  background-color: #ffffff;
  outline: none;
  padding: 0;
  height: 2.5rem;
  width: 2.5rem;
  overflow: visible; }
  .bx--snippet-button *,
  .bx--snippet-button *:before,
  .bx--snippet-button *:after {
    box-sizing: inherit; }
  .bx--snippet-button:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px;
    outline-color: #0062ff; }

.bx--snippet--multi .bx--snippet-button {
  height: 2rem;
  width: 2rem;
  top: 0.5rem;
  right: 0.5rem; }

.bx--snippet-button:hover {
  background: #e5e5e5; }

.bx--snippet-button:active {
  background-color: #bebebe; }

.bx--btn--copy__feedback {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  z-index: 8000;
  font-weight: 400;
  left: inherit;
  top: 0.75rem;
  right: 1.25rem; }

.bx--btn--copy__feedback:before, .bx--btn--copy__feedback:after {
  background: #3d3d3d; }

.bx--btn--copy__feedback:after {
  border: none; }

button.bx--btn.bx--snippet-btn--expand {
  display: inline-flex;
  align-items: center;
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  padding: 0.5rem;
  padding-left: 1rem;
  color: #000000;
  background-color: #ffffff; }

button.bx--btn.bx--snippet-btn--expand .bx--snippet-btn--text {
  position: relative;
  top: -0.04rem; }

.bx--snippet-btn--expand--hide.bx--snippet-btn--expand {
  display: none; }

.bx--snippet-btn--expand .bx--icon-chevron--down {
  fill: #000000;
  margin-left: 0.5rem;
  margin-bottom: 0.04rem;
  transform: rotate(0deg);
  transition: 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

button.bx--btn.bx--snippet-btn--expand:hover {
  background: #e5e5e5;
  color: #000000; }

.bx--snippet-btn--expand:active {
  background-color: #bebebe; }

.bx--snippet-btn--expand:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--snippet--expand .bx--snippet-btn--expand .bx--icon-chevron--down {
  transform: rotate(180deg);
  transition: transform 240ms; }

.bx--snippet--code.bx--skeleton {
  height: 3.92rem; }

.bx--snippet--terminal.bx--skeleton {
  height: 2.24rem; }

.bx--snippet.bx--skeleton .bx--snippet-container {
  height: 100%; }

.bx--snippet.bx--skeleton code {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 100%;
  height: 1rem;
  display: block; }
  .bx--snippet.bx--skeleton code:hover, .bx--snippet.bx--skeleton code:focus, .bx--snippet.bx--skeleton code:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--snippet.bx--skeleton code:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--snippet.bx--skeleton code:before {
        animation: none; } }

.bx--snippet-button .bx--btn--copy__feedback {
  top: 1rem;
  left: 1rem;
  right: auto; }

.bx--snippet--inline .bx--btn--copy__feedback {
  right: auto;
  left: 50%; }

bx--snippet--multi.bx--skeleton {
  height: 3.92rem; }

.bx--snippet--single.bx--skeleton {
  height: 2.24rem; }

.bx--snippet.bx--skeleton .bx--snippet-container {
  height: 100%; }

.bx--snippet.bx--skeleton span {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 100%;
  height: 1rem;
  display: block;
  margin-top: 0.5rem; }
  .bx--snippet.bx--skeleton span:hover, .bx--snippet.bx--skeleton span:focus, .bx--snippet.bx--skeleton span:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--snippet.bx--skeleton span:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--snippet.bx--skeleton span:before {
        animation: none; } }
  .bx--snippet.bx--skeleton span:first-child {
    margin: 0; }
  .bx--snippet.bx--skeleton span:nth-child(2) {
    width: 85%; }
  .bx--snippet.bx--skeleton span:nth-child(3) {
    width: 95%; }

.bx--snippet--single.bx--skeleton .bx--snippet-container {
  padding-bottom: 0; }

.bx--snippet--inline .bx--btn--copy__feedback {
  right: auto; }

.bx--snippet--code.bx--skeleton {
  height: 3.92rem; }

.bx--snippet--terminal.bx--skeleton {
  height: 2.24rem; }

.bx--snippet.bx--skeleton .bx--snippet-container {
  height: 100%; }

.bx--snippet.bx--skeleton code {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 100%;
  height: 1rem;
  display: block; }
  .bx--snippet.bx--skeleton code:hover, .bx--snippet.bx--skeleton code:focus, .bx--snippet.bx--skeleton code:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--snippet.bx--skeleton code:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--snippet.bx--skeleton code:before {
        animation: none; } }

.bx--overflow-menu__trigger {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%; }
  .bx--overflow-menu__trigger *,
  .bx--overflow-menu__trigger *:before,
  .bx--overflow-menu__trigger *:after {
    box-sizing: inherit; }
  .bx--overflow-menu__trigger::-moz-focus-inner {
    border: 0; }

.bx--overflow-menu,
.bx--overflow-menu__trigger {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  width: 1.28rem;
  height: 1.28rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: outline 110ms cubic-bezier(0, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0, 0, 0.38, 0.9); }
  .bx--overflow-menu *,
  .bx--overflow-menu *:before,
  .bx--overflow-menu *:after,
  .bx--overflow-menu__trigger *,
  .bx--overflow-menu__trigger *:before,
  .bx--overflow-menu__trigger *:after {
    box-sizing: inherit; }
  .bx--overflow-menu:focus,
  .bx--overflow-menu__trigger:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--overflow-menu:hover,
  .bx--overflow-menu__trigger:hover {
    background-color: #e5e5e5; }

.bx--overflow-menu__trigger.bx--tooltip--a11y.bx--tooltip__trigger:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }
  .bx--overflow-menu__trigger.bx--tooltip--a11y.bx--tooltip__trigger:focus svg {
    outline: none; }

.bx--overflow-menu.bx--overflow-menu--open,
.bx--overflow-menu.bx--overflow-menu--open .bx--overflow-menu__trigger {
  background-color: #ffffff;
  transition: none;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.3); }

.bx--overflow-menu__icon {
  height: 0.64rem;
  width: 0.64rem;
  fill: #000000; }

.bx--overflow-menu-options {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.3);
  display: none;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
  z-index: 10000;
  background-color: #ffffff;
  width: 6.4rem;
  list-style: none;
  top: 32px;
  left: 0; }
  .bx--overflow-menu-options *,
  .bx--overflow-menu-options *:before,
  .bx--overflow-menu-options *:after {
    box-sizing: inherit; }
  .bx--overflow-menu-options::after {
    content: '';
    position: absolute;
    display: block;
    background-color: #ffffff;
    transition: background-color 110ms cubic-bezier(0, 0, 0.38, 0.9); }

.bx--overflow-menu-options[data-floating-menu-direction='bottom']::after {
  top: -0.12rem;
  left: 0;
  width: 1.28rem;
  height: 0.12rem; }

.bx--overflow-menu-options[data-floating-menu-direction='top']::after {
  bottom: -0.24rem;
  left: 0;
  width: 1.28rem;
  height: 0.24rem; }

.bx--overflow-menu-options[data-floating-menu-direction='left']::after {
  right: -0.24rem;
  top: 0;
  height: 1.28rem;
  width: 0.24rem; }

.bx--overflow-menu-options[data-floating-menu-direction='right']::after {
  top: 0;
  left: -0.24rem;
  height: 1.28rem;
  width: 0.24rem; }

.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction='top']::after,
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction='bottom']::after {
  left: auto;
  right: 0; }

.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction='left']::after,
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction='right']::after {
  top: auto;
  bottom: 0; }

.bx--overflow-menu-options--open {
  display: flex; }

.bx--overflow-menu-options__option {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: flex;
  background-color: transparent;
  align-items: center;
  width: 100%;
  height: 1.6rem;
  padding: 0;
  transition: background-color 110ms cubic-bezier(0, 0, 0.38, 0.9); }
  .bx--overflow-menu-options__option *,
  .bx--overflow-menu-options__option *:before,
  .bx--overflow-menu-options__option *:after {
    box-sizing: inherit; }

.bx--overflow-menu--divider {
  border-top: 1px solid #dcdcdc; }

a.bx--overflow-menu-options__btn::before {
  content: '';
  height: 100%;
  vertical-align: middle;
  display: inline-block; }

.bx--overflow-menu-options__btn {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  font-weight: 400;
  width: 100%;
  height: 100%;
  border: none;
  display: inline-flex;
  align-items: center;
  background-color: transparent;
  text-align: left;
  padding: 0 1rem;
  cursor: pointer;
  color: #565656;
  max-width: 11.25rem;
  transition: outline 110ms cubic-bezier(0, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0, 0, 0.38, 0.9), color 110ms cubic-bezier(0, 0, 0.38, 0.9); }
  .bx--overflow-menu-options__btn:hover {
    color: #000000; }
  .bx--overflow-menu-options__btn:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--overflow-menu-options__btn::-moz-focus-inner {
    border: none; }

.bx--overflow-menu-options__btn svg {
  fill: #565656; }

.bx--overflow-menu-options__btn:hover svg {
  fill: #000000; }

.bx--overflow-menu-options__option-content {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.bx--overflow-menu-options__option:hover {
  background-color: #e5e5e5; }

.bx--overflow-menu-options__option--danger {
  border-top: 1px solid #dcdcdc; }

.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:hover,
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:focus {
  color: #ffffff;
  background-color: #da1e28; }
  .bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:hover svg,
  .bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:focus svg {
    fill: #ffffff; }

.bx--overflow-menu-options__option--disabled:hover {
  background-color: #ffffff;
  cursor: not-allowed; }

.bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn {
  color: #bebebe;
  pointer-events: none; }
  .bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:hover, .bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:active, .bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:focus {
    outline: 2px solid transparent;
    outline-offset: -2px;
    background-color: #ffffff; }

.bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn svg {
  fill: #bebebe; }

.bx--overflow-menu--flip {
  left: -140px; }
  .bx--overflow-menu--flip:before {
    left: 145px; }

.bx--content-switcher {
  display: flex;
  justify-content: space-evenly;
  width: 100%;
  height: 1.6rem; }

.bx--content-switcher--disabled {
  cursor: not-allowed; }

.bx--content-switcher-btn {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  background-color: #ffffff;
  display: inline-flex;
  align-items: center;
  width: 100%;
  padding: 0.5rem 1rem;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-align: left;
  text-decoration: none;
  border: none;
  color: #565656;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  position: relative; }
  .bx--content-switcher-btn *,
  .bx--content-switcher-btn *:before,
  .bx--content-switcher-btn *:after {
    box-sizing: inherit; }
  .bx--content-switcher-btn:focus {
    box-shadow: inset 0 0 0 2px #0062ff;
    z-index: 3; }
  .bx--content-switcher-btn:hover {
    cursor: pointer; }
  .bx--content-switcher-btn:hover, .bx--content-switcher-btn:active {
    background-color: #e5e5e5;
    color: #000000;
    z-index: 3; }
  .bx--content-switcher-btn:disabled {
    color: #bebebe;
    background-color: #ffffff;
    pointer-events: none; }
    .bx--content-switcher-btn:disabled:hover {
      cursor: not-allowed; }

.bx--content-switcher-btn:first-child {
  border-top-left-radius: 0.16rem;
  border-bottom-left-radius: 0.16rem; }

.bx--content-switcher-btn:last-child {
  border-top-right-radius: 0.16rem;
  border-bottom-right-radius: 0.16rem; }

.bx--content-switcher-btn:not(:first-of-type)::before {
  content: '';
  display: block;
  height: 0.64rem;
  width: 0.04rem;
  background-color: #dcdcdc;
  position: absolute;
  z-index: 2;
  left: 0; }

.bx--content-switcher-btn.bx--content-switcher--selected::before,
.bx--content-switcher-btn.bx--content-switcher--selected + .bx--content-switcher-btn::before,
.bx--content-switcher-btn:focus::before,
.bx--content-switcher-btn:focus + .bx--content-switcher-btn::before,
.bx--content-switcher-btn:hover::before,
.bx--content-switcher-btn:hover + .bx--content-switcher-btn::before {
  background-color: transparent; }

.bx--content-switcher__icon {
  fill: #565656;
  transition: fill 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--content-switcher__icon + span {
  margin-left: 0.5rem; }

.bx--content-switcher__label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%; }

.bx--content-switcher-btn:hover .bx--content-switcher__icon,
.bx--content-switcher-btn:focus .bx--content-switcher__icon {
  fill: #000000; }

.bx--content-switcher-btn.bx--content-switcher--selected {
  background-color: #000000;
  color: #ffffff;
  z-index: 3; }
  .bx--content-switcher-btn.bx--content-switcher--selected:disabled {
    background-color: #8c8c8c;
    color: #bebebe; }

.bx--content-switcher-btn.bx--content-switcher--selected .bx--content-switcher__icon {
  fill: #ffffff; }

.flatpickr-calendar {
  background: transparent;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  text-align: center;
  padding: 0;
  animation: none;
  direction: ltr;
  border: 0;
  font-size: 14px;
  line-height: 24px;
  border-radius: 5px;
  position: absolute;
  width: 315px;
  box-sizing: border-box;
  touch-action: manipulation;
  background: #fff;
  box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08); }

.flatpickr-calendar.open,
.flatpickr-calendar.inline {
  opacity: 1;
  visibility: visible;
  overflow: visible;
  max-height: 640px; }

.flatpickr-calendar.open {
  display: inline-block;
  z-index: 99999; }

.flatpickr-calendar.animate.open {
  -webkit-animation: fpFadeInDown 110ms cubic-bezier(0, 0, 0.38, 0.9);
  animation: fpFadeInDown 110ms cubic-bezier(0, 0, 0.38, 0.9); }

.flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 2px; }

.flatpickr-calendar.static {
  position: absolute;
  top: calc(100% + 2px); }

.flatpickr-calendar.static.open {
  z-index: 999;
  display: block; }

.flatpickr-calendar.hasWeeks {
  width: auto; }

.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.flatpickr-calendar .hasWeeks .dayContainer {
  border-left: 0; }

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
  height: 40px;
  border-top: 1px solid #e6e6e6; }

.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
  height: auto; }

.flatpickr-calendar:before,
.flatpickr-calendar:after {
  position: absolute;
  display: block;
  pointer-events: none;
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  left: 22px; }

.flatpickr-calendar.rightMost:before,
.flatpickr-calendar.rightMost:after {
  left: auto;
  right: 22px; }

.flatpickr-calendar:before {
  border-width: 5px;
  margin: 0 -5px; }

.flatpickr-calendar:after {
  border-width: 4px;
  margin: 0 -4px; }

.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
  bottom: 100%; }

.flatpickr-calendar.arrowTop:before {
  border-bottom-color: #e6e6e6; }

.flatpickr-calendar.arrowTop:after {
  border-bottom-color: #fff; }

.flatpickr-calendar.arrowBottom:before,
.flatpickr-calendar.arrowBottom:after {
  top: 100%; }

.flatpickr-calendar.arrowBottom:before {
  border-top-color: #e6e6e6; }

.flatpickr-calendar.arrowBottom:after {
  border-top-color: #fff; }

.flatpickr-calendar:focus {
  outline: 0; }

.flatpickr-wrapper {
  position: relative;
  display: inline-block; }

.flatpickr-month {
  background: transparent;
  color: rgba(0, 0, 0, 0.9);
  fill: rgba(0, 0, 0, 0.9);
  height: 28px;
  line-height: 1;
  text-align: center;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  overflow: hidden; }

.flatpickr-prev-month,
.flatpickr-next-month {
  text-decoration: none;
  cursor: pointer;
  position: absolute;
  top: 0px;
  line-height: 16px;
  height: 28px;
  padding: 10px calc(3.57% - 1.5px);
  z-index: 3; }

.flatpickr-prev-month i,
.flatpickr-next-month i {
  position: relative; }

.flatpickr-prev-month.flatpickr-prev-month,
.flatpickr-next-month.flatpickr-prev-month {
  /*
        /*rtl:begin:ignore*/
  /*
        */
  left: 0;
  /*
        /*rtl:end:ignore*/
  /*
        */ }

/*
        /*rtl:begin:ignore*/
/*
        /*rtl:end:ignore*/
.flatpickr-prev-month.flatpickr-next-month,
.flatpickr-next-month.flatpickr-next-month {
  /*
        /*rtl:begin:ignore*/
  /*
        */
  right: 0;
  /*
        /*rtl:end:ignore*/
  /*
        */ }

/*
        /*rtl:begin:ignore*/
/*
        /*rtl:end:ignore*/
.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
  color: #959ea9; }

.flatpickr-prev-month:hover svg,
.flatpickr-next-month:hover svg {
  fill: #f64747; }

.flatpickr-prev-month svg,
.flatpickr-next-month svg {
  width: 14px; }

.flatpickr-prev-month svg path,
.flatpickr-next-month svg path {
  transition: fill 0.1s;
  fill: inherit; }

.numInputWrapper {
  position: relative;
  height: auto; }

.numInputWrapper input,
.numInputWrapper span {
  display: inline-block; }

.numInputWrapper input {
  width: 100%; }

.numInputWrapper span {
  position: absolute;
  right: 0;
  width: 14px;
  padding: 0 4px 0 2px;
  height: 50%;
  line-height: 50%;
  opacity: 0;
  cursor: pointer;
  border: 1px solid rgba(57, 57, 57, 0.05);
  box-sizing: border-box; }

.numInputWrapper span:hover {
  background: rgba(0, 0, 0, 0.1); }

.numInputWrapper span:active {
  background: rgba(0, 0, 0, 0.2); }

.numInputWrapper span:after {
  display: block;
  content: '';
  position: absolute;
  top: 33%; }

.numInputWrapper span.arrowUp {
  top: 0;
  border-bottom: 0; }

.numInputWrapper span.arrowUp:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid rgba(57, 57, 57, 0.6); }

.numInputWrapper span.arrowDown {
  top: 50%; }

.numInputWrapper span.arrowDown:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgba(57, 57, 57, 0.6); }

.numInputWrapper span svg {
  width: inherit;
  height: auto; }

.numInputWrapper span svg path {
  fill: rgba(0, 0, 0, 0.5); }

.numInputWrapper:hover {
  background: rgba(0, 0, 0, 0.05); }

.numInputWrapper:hover span {
  opacity: 1; }

.flatpickr-current-month {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: inherit;
  position: absolute;
  width: 75%;
  left: 12.5%;
  padding: 6.16px 0 0 0;
  height: 28px;
  display: inline-block;
  text-align: center;
  -webkit-transform: translate3d(0px, 0px, 0px);
  transform: translate3d(0px, 0px, 0px); }

.flatpickr-current-month.slideLeft {
  -webkit-transform: translate3d(-100%, 0px, 0px);
  transform: translate3d(-100%, 0px, 0px);
  -webkit-animation: fpFadeOut 400ms ease, fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeOut 400ms ease, fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1); }

.flatpickr-current-month.slideLeftNew {
  -webkit-transform: translate3d(100%, 0px, 0px);
  transform: translate3d(100%, 0px, 0px);
  -webkit-animation: fpFadeIn 400ms ease, fpSlideLeftNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeIn 400ms ease, fpSlideLeftNew 400ms cubic-bezier(0.23, 1, 0.32, 1); }

.flatpickr-current-month.slideRight {
  -webkit-transform: translate3d(100%, 0px, 0px);
  transform: translate3d(100%, 0px, 0px);
  -webkit-animation: fpFadeOut 400ms ease, fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeOut 400ms ease, fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1); }

.flatpickr-current-month.slideRightNew {
  -webkit-transform: translate3d(0, 0, 0px);
  transform: translate3d(0, 0, 0px);
  -webkit-animation: fpFadeIn 400ms ease, fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeIn 400ms ease, fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1); }

.flatpickr-current-month span.cur-month {
  font-family: inherit;
  font-weight: 600;
  color: inherit;
  display: inline-block;
  margin-left: 0.5ch;
  padding: 0; }

.flatpickr-current-month span.cur-month:hover {
  background: rgba(0, 0, 0, 0.05); }

.flatpickr-current-month .numInputWrapper {
  width: 6ch;
  display: inline-block; }

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: rgba(0, 0, 0, 0.9); }

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: rgba(0, 0, 0, 0.9); }

.flatpickr-current-month input.cur-year {
  background: transparent;
  box-sizing: border-box;
  color: inherit;
  cursor: default;
  padding: 0 0 0 0.5ch;
  margin: 0;
  display: inline-block;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  line-height: inherit;
  height: auto;
  border: 0;
  border-radius: 0;
  vertical-align: baseline; }

.flatpickr-current-month input.cur-year:focus {
  outline: 0; }

.flatpickr-current-month input.cur-year[disabled],
.flatpickr-current-month input.cur-year[disabled]:hover {
  font-size: 100%;
  color: rgba(0, 0, 0, 0.5);
  background: transparent;
  pointer-events: none; }

.flatpickr-weekdays {
  background: transparent;
  text-align: center;
  overflow: hidden;
  width: 315px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 28px; }

span.flatpickr-weekday {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  cursor: default;
  background: transparent;
  color: rgba(0, 0, 0, 0.54);
  margin: 0;
  text-align: center;
  display: block;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1; }

.dayContainer,
.flatpickr-weeks {
  padding: 1px 0 0 0; }

.flatpickr-days {
  position: relative;
  overflow: hidden;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 315px; }

.flatpickr-days:focus {
  outline: 0; }

.dayContainer {
  padding: 0;
  outline: 0;
  text-align: left;
  width: 315px;
  min-width: 315px;
  max-width: 315px;
  box-sizing: border-box;
  display: inline-block;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  -webkit-transform: translate3d(0px, 0px, 0px);
  transform: translate3d(0px, 0px, 0px);
  opacity: 1; }

.flatpickr-calendar.animate .dayContainer.slideLeft {
  -webkit-animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1); }

.flatpickr-calendar.animate .dayContainer.slideLeft,
.flatpickr-calendar.animate .dayContainer.slideLeftNew {
  -webkit-transform: translate3d(-100%, 0px, 0px);
  transform: translate3d(-100%, 0px, 0px); }

.flatpickr-calendar.animate .dayContainer.slideLeftNew {
  -webkit-animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1); }

.flatpickr-calendar.animate .dayContainer.slideRight {
  -webkit-animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transform: translate3d(100%, 0px, 0px);
  transform: translate3d(100%, 0px, 0px); }

.flatpickr-calendar.animate .dayContainer.slideRightNew {
  -webkit-animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
  animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1); }

.flatpickr-day {
  background: none;
  border: 1px solid transparent;
  border-radius: 150px;
  box-sizing: border-box;
  color: #393939;
  cursor: pointer;
  font-weight: 400;
  width: 14.2857143%;
  -webkit-flex-basis: 14.2857143%;
  -ms-flex-preferred-size: 14.2857143%;
  flex-basis: 14.2857143%;
  max-width: 40px;
  height: 40px;
  line-height: 40px;
  margin: 0;
  display: inline-block;
  position: relative;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center; }

.flatpickr-day.week.selected {
  border-radius: 0;
  box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7; }

.flatpickr-weekwrapper {
  display: inline-block;
  float: left; }

.flatpickr-weekwrapper .flatpickr-weeks {
  padding: 0 12px;
  box-shadow: 1px 0 0 #e6e6e6; }

.flatpickr-weekwrapper .flatpickr-weekday {
  float: none;
  width: 100%;
  line-height: 28px; }

.flatpickr-weekwrapper span.flatpickr-day {
  display: block;
  width: 100%;
  max-width: none; }

.flatpickr-innerContainer {
  display: block;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  box-sizing: border-box;
  overflow: hidden; }

.flatpickr-rContainer {
  display: inline-block;
  padding: 0;
  box-sizing: border-box; }

.flatpickr-time {
  text-align: center;
  outline: 0;
  display: block;
  height: 0;
  line-height: 40px;
  max-height: 40px;
  box-sizing: border-box;
  overflow: hidden;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.flatpickr-time:after {
  content: '';
  display: table;
  clear: both; }

.flatpickr-time .numInputWrapper {
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  width: 40%;
  height: 40px;
  float: left; }

.flatpickr-time .numInputWrapper span.arrowUp:after {
  border-bottom-color: #393939; }

.flatpickr-time .numInputWrapper span.arrowDown:after {
  border-top-color: #393939; }

.flatpickr-time.hasSeconds .numInputWrapper {
  width: 26%; }

.flatpickr-time.time24hr .numInputWrapper {
  width: 49%; }

.flatpickr-time input {
  background: transparent;
  box-shadow: none;
  border: 0;
  border-radius: 0;
  text-align: center;
  margin: 0;
  padding: 0;
  height: inherit;
  line-height: inherit;
  cursor: pointer;
  color: #393939;
  font-size: 14px;
  position: relative;
  box-sizing: border-box; }

.flatpickr-time input.flatpickr-hour {
  font-weight: bold; }

.flatpickr-time input.flatpickr-minute,
.flatpickr-time input.flatpickr-second {
  font-weight: 400; }

.flatpickr-time input:focus {
  outline: 0;
  border: 0; }

.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm {
  height: inherit;
  display: inline-block;
  float: left;
  line-height: inherit;
  color: #393939;
  font-weight: bold;
  width: 2%;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center; }

.flatpickr-time .flatpickr-am-pm {
  outline: 0;
  width: 18%;
  cursor: pointer;
  text-align: center;
  font-weight: 400; }

.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time .flatpickr-am-pm:focus {
  background: #f0f0f0; }

.flatpickr-input[readonly] {
  cursor: pointer; }

@-webkit-keyframes fpFadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes fpFadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

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

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

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

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

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

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

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

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

@-webkit-keyframes fpFadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes fpFadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@-webkit-keyframes fpFadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fpFadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.bx--date-picker {
  display: flex; }

.bx--date-picker--light .bx--date-picker__input {
  background: #f3f3f3; }

.bx--date-picker ~ .bx--label {
  order: 1; }

.bx--date-picker-container {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between; }

.bx--date-picker-input__wrapper {
  display: flex;
  align-items: center; }
  .bx--date-picker-input__wrapper ~ .bx--form-requirement {
    max-height: 8rem;
    display: block;
    color: #da1e28;
    font-weight: 400;
    margin-top: 0.25rem;
    overflow: visible; }
    .bx--date-picker-input__wrapper ~ .bx--form-requirement::before {
      display: none; }

.bx--date-picker.bx--date-picker--simple .bx--date-picker__input {
  width: 4.8rem; }

.bx--date-picker.bx--date-picker--simple.bx--date-picker--short .bx--date-picker__input {
  width: 5.7rem; }

.bx--date-picker.bx--date-picker--single .bx--date-picker-container {
  max-width: 11.52rem; }

.bx--date-picker.bx--date-picker--single .bx--date-picker__input {
  width: 11.52rem; }

.bx--date-picker__input {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.32px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: block;
  position: relative;
  height: 1.6rem;
  max-width: 11.52rem;
  padding: 0 1rem;
  background-color: #ffffff;
  border: none;
  color: #000000;
  border-bottom: 1px solid #8c8c8c;
  transition: 70ms cubic-bezier(0.2, 0, 0.38, 0.9) all; }
  .bx--date-picker__input *,
  .bx--date-picker__input *:before,
  .bx--date-picker__input *:after {
    box-sizing: inherit; }
  .bx--date-picker__input:focus, .bx--date-picker__input.bx--focused {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--date-picker__input[data-invalid], .bx--date-picker__input[data-invalid]:focus {
    outline: 2px solid #da1e28;
    outline-offset: -2px; }
  .bx--date-picker__input:disabled {
    color: #bebebe;
    background-color: #f3f3f3;
    border-bottom: 1px solid transparent;
    cursor: not-allowed; }
  .bx--date-picker__input:disabled::placeholder {
    color: #bebebe; }
  .bx--date-picker__input:disabled:hover {
    border-bottom: 1px solid transparent; }
  .bx--date-picker__input::placeholder {
    color: #8c8c8c;
    opacity: 1; }

.bx--date-picker__icon {
  position: absolute;
  right: 1rem;
  fill: #000000;
  cursor: pointer;
  z-index: 1; }

.bx--date-picker__icon ~ .bx--date-picker__input {
  padding-right: 3rem; }

.bx--date-picker__input:disabled ~ .bx--date-picker__icon {
  fill: #bebebe;
  cursor: not-allowed; }

.bx--date-picker--range > .bx--date-picker-container:first-child {
  margin-right: 0.04rem; }

.bx--date-picker--range .bx--date-picker-container,
.bx--date-picker--range .bx--date-picker__input {
  width: 5.74rem; }

.bx--date-picker__calendar,
.flatpickr-calendar.open {
  box-shadow: 0 12px 24px 0 rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.25rem 0.5rem 0.25rem;
  width: 11.52rem !important;
  height: 13.44rem;
  border-radius: 0;
  border: none;
  overflow: hidden;
  margin-top: -2px; }
  .bx--date-picker__calendar:before, .bx--date-picker__calendar:after,
  .flatpickr-calendar.open:before,
  .flatpickr-calendar.open:after {
    display: none; }
  .bx--date-picker__calendar:focus,
  .flatpickr-calendar.open:focus {
    outline: 1px solid #0062ff; }

.bx--date-picker__month,
.flatpickr-month {
  display: flex;
  align-items: center;
  width: 100%;
  height: 1.6rem;
  margin-bottom: 0.25rem; }

.bx--date-picker__month .flatpickr-prev-month,
.bx--date-picker__month .flatpickr-next-month,
.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 1.6rem;
  width: 1.6rem;
  padding: 0;
  fill: #000000;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--date-picker__month .flatpickr-prev-month:hover,
  .bx--date-picker__month .flatpickr-next-month:hover,
  .flatpickr-months .flatpickr-prev-month:hover,
  .flatpickr-months .flatpickr-next-month:hover {
    background-color: #e5e5e5; }

.flatpickr-current-month .numInputWrapper {
  width: 7ch; }

.bx--date-picker__month .flatpickr-current-month,
.flatpickr-month .flatpickr-current-month {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  padding: 0; }

.bx--date-picker__month .flatpickr-current-month svg,
.flatpickr-month .flatpickr-current-month svg {
  fill: #000000; }

.bx--date-picker__month .flatpickr-current-month .cur-month,
.flatpickr-month .flatpickr-current-month .cur-month {
  margin-right: 0.25rem;
  color: #000000; }

.bx--date-picker__month .numInputWrapper .numInput,
.flatpickr-month .numInputWrapper .numInput {
  font-weight: 600;
  color: #000000;
  background-color: #ffffff;
  border: none;
  border-radius: 0;
  padding: 0.25rem;
  -moz-appearance: textfield;
  /* Firefox */ }
  .bx--date-picker__month .numInputWrapper .numInput:focus,
  .flatpickr-month .numInputWrapper .numInput:focus {
    outline: 1px solid #0062ff; }
  .bx--date-picker__month .numInputWrapper .numInput::-webkit-outer-spin-button, .bx--date-picker__month .numInputWrapper .numInput::-webkit-inner-spin-button,
  .flatpickr-month .numInputWrapper .numInput::-webkit-outer-spin-button,
  .flatpickr-month .numInputWrapper .numInput::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
    /* <-- Apparently some margin are still there even though it's hidden */ }

.bx--date-picker__month .numInputWrapper span.arrowUp,
.bx--date-picker__month .numInputWrapper span.arrowDown,
.flatpickr-month .numInputWrapper span.arrowUp,
.flatpickr-month .numInputWrapper span.arrowDown {
  left: 2.6rem;
  border: none;
  width: 0.48rem; }
  .bx--date-picker__month .numInputWrapper span.arrowUp:hover,
  .bx--date-picker__month .numInputWrapper span.arrowDown:hover,
  .flatpickr-month .numInputWrapper span.arrowUp:hover,
  .flatpickr-month .numInputWrapper span.arrowDown:hover {
    background: none; }
    .bx--date-picker__month .numInputWrapper span.arrowUp:hover:after,
    .bx--date-picker__month .numInputWrapper span.arrowDown:hover:after,
    .flatpickr-month .numInputWrapper span.arrowUp:hover:after,
    .flatpickr-month .numInputWrapper span.arrowDown:hover:after {
      border-bottom-color: #0062ff;
      border-top-color: #0062ff; }
  .bx--date-picker__month .numInputWrapper span.arrowUp:after,
  .bx--date-picker__month .numInputWrapper span.arrowDown:after,
  .flatpickr-month .numInputWrapper span.arrowUp:after,
  .flatpickr-month .numInputWrapper span.arrowDown:after {
    border-bottom-color: #000000;
    border-top-color: #000000; }

.bx--date-picker__month .numInputWrapper span.arrowUp,
.flatpickr-month .numInputWrapper span.arrowUp {
  top: 4px; }

.bx--date-picker__month .numInputWrapper span.arrowDown,
.flatpickr-month .numInputWrapper span.arrowDown {
  top: 11px; }

span.bx--date-picker__weekday,
span.flatpickr-weekday {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #000000;
  font-weight: 400; }

.bx--date-picker__day,
.flatpickr-day {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  height: 1.6rem;
  width: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000000;
  border-radius: 0;
  border: none;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--date-picker__day:hover,
  .flatpickr-day:hover {
    background: #e5e5e5; }
  .bx--date-picker__day:focus,
  .flatpickr-day:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px;
    outline-color: #0062ff; }

.bx--date-picker__days .nextMonthDay,
.bx--date-picker__days .prevMonthDay {
  color: #565656; }

.bx--date-picker__day.today,
.flatpickr-day.today {
  position: relative;
  color: #0062ff;
  font-weight: 600; }
  .bx--date-picker__day.today::after,
  .flatpickr-day.today::after {
    content: '';
    position: absolute;
    display: block;
    bottom: 0.28rem;
    left: 50%;
    transform: translateX(-50%);
    height: 0.16rem;
    width: 0.16rem;
    background: #0062ff; }

.bx--date-picker__day.today.no-border,
.flatpickr-day.today.no-border {
  border: none; }

.bx--date-picker__day.today.selected {
  border: 2px solid #0062ff; }
  .bx--date-picker__day.today.selected::after {
    display: none; }

.bx--date-picker__day.disabled,
.flatpickr-day.disabled {
  cursor: not-allowed;
  opacity: 0.5;
  color: #000000; }
  .bx--date-picker__day.disabled:hover,
  .flatpickr-day.disabled:hover {
    background: transparent; }

.bx--date-picker__day.inRange,
.flatpickr-day.inRange {
  background: #c9deff;
  color: #000000; }

.bx--date-picker__day.selected,
.flatpickr-day.selected {
  color: #ffffff;
  background: #0062ff; }

.bx--date-picker__day.startRange.selected,
.flatpickr-day.startRange.selected {
  box-shadow: none;
  z-index: 2; }

.bx--date-picker__day.endRange:hover,
.flatpickr-day.endRange:hover {
  outline: 2px solid #0062ff;
  outline-offset: -2px;
  background: #ffffff;
  color: #000000; }

.bx--date-picker__day.endRange.inRange,
.flatpickr-day.endRange.inRange {
  outline: 2px solid #0062ff;
  outline-offset: -2px;
  background: #ffffff;
  z-index: 3; }

.bx--date-picker__day.endRange.inRange.selected,
.flatpickr-day.endRange.inRange.selected {
  color: #ffffff;
  background: #0062ff; }

.bx--date-picker__day.startRange.inRange:not(.selected),
.flatpickr-day.startRange.inRange:not(.selected) {
  outline: 2px solid #0062ff;
  outline-offset: -2px;
  background: #ffffff;
  z-index: 3; }

.bx--date-picker__days,
.dayContainer {
  width: 100%;
  min-width: 100%;
  height: 9.84rem; }

.flatpickr-innerContainer,
.flatpickr-rContainer {
  width: 100%;
  height: auto; }

.bx--date-picker__weekdays,
.flatpickr-weekdays,
.flatpickr-weekdaycontainer {
  width: 100%; }

.flatpickr-weekdays {
  height: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center; }

.flatpickr-weekdaycontainer {
  display: flex; }

.flatpickr-months {
  display: flex;
  width: 100%;
  position: relative; }

.flatpickr-prev-month,
.flatpickr-next-month {
  padding-top: 12px; }

.flatpickr-prev-month:hover svg,
.flatpickr-next-month:hover svg {
  fill: #000000; }

.flatpickr-next-month.disabled svg,
.flatpickr-prev-month.disabled svg {
  fill: #000000;
  opacity: 0.5;
  cursor: not-allowed; }

.flatpickr-next-month.disabled:hover svg,
.flatpickr-prev-month.disabled:hover svg {
  fill: #000000; }

.bx--date-picker.bx--skeleton input,
.bx--date-picker__input.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 100%; }
  .bx--date-picker.bx--skeleton input:hover, .bx--date-picker.bx--skeleton input:focus, .bx--date-picker.bx--skeleton input:active,
  .bx--date-picker__input.bx--skeleton:hover,
  .bx--date-picker__input.bx--skeleton:focus,
  .bx--date-picker__input.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--date-picker.bx--skeleton input:before,
  .bx--date-picker__input.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--date-picker.bx--skeleton input:before,
      .bx--date-picker__input.bx--skeleton:before {
        animation: none; } }
  .bx--date-picker.bx--skeleton input::-webkit-input-placeholder,
  .bx--date-picker__input.bx--skeleton::-webkit-input-placeholder {
    color: transparent; }

.bx--date-picker.bx--skeleton .bx--label {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 3rem;
  height: 0.56rem; }
  .bx--date-picker.bx--skeleton .bx--label:hover, .bx--date-picker.bx--skeleton .bx--label:focus, .bx--date-picker.bx--skeleton .bx--label:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--date-picker.bx--skeleton .bx--label:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--date-picker.bx--skeleton .bx--label:before {
        animation: none; } }

.bx--dropdown__wrapper--inline {
  display: inline-grid;
  align-items: center;
  grid-template: auto auto / auto min-content;
  grid-gap: 0.16rem; }
  .bx--dropdown__wrapper--inline .bx--label {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px; }
  .bx--dropdown__wrapper--inline .bx--label,
  .bx--dropdown__wrapper--inline .bx--form__helper-text,
  .bx--dropdown__wrapper--inline .bx--form-requirement {
    margin: 0; }
  .bx--dropdown__wrapper--inline .bx--form-requirement {
    grid-column: 2; }

.bx--dropdown {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  list-style: none;
  display: block;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8c8c8c;
  width: 100%;
  height: 1.6rem;
  cursor: pointer;
  color: #000000;
  outline: 2px solid transparent;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--dropdown *,
  .bx--dropdown *:before,
  .bx--dropdown *:after {
    box-sizing: inherit; }
  .bx--dropdown:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--dropdown:hover {
    background-color: #e5e5e5; }

.bx--dropdown--open {
  border-bottom-color: #dcdcdc; }

.bx--dropdown--invalid {
  outline: 2px solid #da1e28;
  outline-offset: -2px; }
  .bx--dropdown--invalid .bx--dropdown-text {
    padding-right: 2.24rem; }
  .bx--dropdown--invalid + .bx--form-requirement {
    display: inline-block;
    max-height: 8rem;
    color: #da1e28; }

.bx--dropdown__invalid-icon {
  position: absolute;
  top: 50%;
  right: 1.6rem;
  fill: #da1e28;
  transform: translateY(-50%); }

.bx--dropdown--open:hover {
  background-color: #ffffff; }

.bx--dropdown--open:focus {
  outline: 1px solid transparent; }

.bx--dropdown--open .bx--dropdown-list {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1); }

.bx--dropdown--light {
  background-color: #f3f3f3; }

.bx--dropdown--up .bx--dropdown-list {
  bottom: 2rem; }

.bx--dropdown__arrow {
  fill: #000000;
  position: absolute;
  right: 1rem;
  top: 0.52rem;
  pointer-events: none;
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transform-origin: 50% 45%; }

button.bx--dropdown-text {
  background: none;
  border: none;
  width: 100%;
  text-align: left; }
  button.bx--dropdown-text:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }

.bx--dropdown-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  display: block;
  height: 1.6rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1.68rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.bx--dropdown-list {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  outline: 2px solid transparent;
  outline-offset: -2px;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
  width: 100%;
  list-style: none;
  position: absolute;
  z-index: 9100;
  max-height: 0;
  transition: max-height 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  overflow: hidden auto; }
  .bx--dropdown-list *,
  .bx--dropdown-list *:before,
  .bx--dropdown-list *:after {
    box-sizing: inherit; }

.bx--dropdown:not(.bx--dropdown--open) .bx--dropdown-item {
  visibility: hidden; }

.bx--dropdown-item {
  transition: visibility 70ms cubic-bezier(0.2, 0, 0.38, 0.9), opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  opacity: 0;
  visibility: inherit; }
  .bx--dropdown-item:hover {
    background-color: #e5e5e5; }
    .bx--dropdown-item:hover + .bx--dropdown-item .bx--dropdown-link {
      border-color: transparent; }
  .bx--dropdown-item:active {
    background-color: #dcdcdc; }
  .bx--dropdown-item:first-of-type .bx--dropdown-link {
    border-top-color: transparent; }

.bx--dropdown-item:last-of-type .bx--dropdown-link {
  border-bottom: none; }

.bx--dropdown-link {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: block;
  height: 1.6rem;
  color: #565656;
  text-decoration: none;
  font-weight: normal;
  line-height: 0.64rem;
  padding: 0.44rem 0;
  margin: 0 1rem;
  border: 1px solid transparent;
  border-top-color: #dcdcdc;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap; }
  .bx--dropdown-link:hover {
    color: #000000;
    border-color: transparent; }

.bx--dropdown--focused,
.bx--dropdown-link:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px;
  margin: 0;
  padding: 0.44rem 0.64rem; }

.bx--dropdown-item:hover .bx--dropdown-link {
  border-bottom-color: #e5e5e5; }

.bx--dropdown--selected {
  display: none; }

.bx--dropdown--open .bx--dropdown__arrow {
  transform: rotate(-180deg); }

.bx--dropdown--open .bx--dropdown-list {
  max-height: 15rem;
  transition: max-height 110ms cubic-bezier(0, 0, 0.38, 0.9); }

.bx--dropdown--open .bx--dropdown-item {
  opacity: 1; }

.bx--dropdown--disabled {
  border-bottom-color: transparent;
  cursor: not-allowed; }
  .bx--dropdown--disabled:hover {
    background-color: #ffffff; }
  .bx--dropdown--disabled:focus {
    outline: none; }
  .bx--dropdown--disabled .bx--dropdown-text {
    color: #bebebe; }
  .bx--dropdown--disabled .bx--dropdown__arrow {
    fill: #bebebe; }
  .bx--dropdown--disabled.bx--dropdown--light:hover {
    background-color: #f3f3f3; }

.bx--dropdown--auto-width {
  width: auto;
  max-width: 16rem; }

.bx--dropdown--inline {
  justify-self: start;
  display: inline-block;
  border-bottom-color: transparent;
  width: auto;
  height: 1.28rem;
  background-color: #f3f3f3;
  transition: background 70ms cubic-bezier(0, 0, 0.38, 0.9); }
  .bx--dropdown--inline:hover {
    background-color: #e5e5e5; }
  .bx--dropdown--inline.bx--dropdown--disabled {
    background-color: #f3f3f3; }
  .bx--dropdown--inline .bx--dropdown__arrow {
    top: 0.32rem;
    right: 0.32rem; }

.bx--dropdown--inline.bx--dropdown--open {
  background-color: transparent; }

.bx--dropdown--inline .bx--dropdown-text {
  display: inline-block;
  padding: 0.28rem 1.28rem 0.28rem 0.75rem;
  height: 1.28rem;
  overflow: visible;
  color: #000000; }

.bx--dropdown--inline.bx--dropdown--disabled .bx--dropdown-text {
  color: #bebebe; }

.bx--dropdown--inline.bx--dropdown--disabled:focus .bx--dropdown-text {
  outline: 0; }

.bx--dropdown--inline.bx--dropdown--invalid .bx--dropdown__invalid-icon {
  right: 1.28rem; }

.bx--dropdown--inline.bx--dropdown--invalid .bx--dropdown-text {
  padding-right: 2.24rem; }

.bx--dropdown--inline.bx--dropdown--open:focus .bx--dropdown-list {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1); }

.bx--dropdown--inline .bx--dropdown-link {
  font-weight: normal;
  margin-right: 0.75rem;
  margin-left: 0.4rem; }
  .bx--dropdown--inline .bx--dropdown-link:focus {
    margin: 0;
    padding-left: 0.4rem; }

.bx--dropdown-v2.bx--skeleton,
.bx--dropdown.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5; }
  .bx--dropdown-v2.bx--skeleton:hover, .bx--dropdown-v2.bx--skeleton:focus, .bx--dropdown-v2.bx--skeleton:active,
  .bx--dropdown.bx--skeleton:hover,
  .bx--dropdown.bx--skeleton:focus,
  .bx--dropdown.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--dropdown-v2.bx--skeleton:before,
  .bx--dropdown.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--dropdown-v2.bx--skeleton:before,
      .bx--dropdown.bx--skeleton:before {
        animation: none; } }

@keyframes rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg); } }

@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg); } }

/* Stroke animations */
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240; }
  100% {
    stroke-dashoffset: 40; } }

@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40; }
  100% {
    stroke-dashoffset: 240; } }

.bx--modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  display: flex;
  align-items: center;
  justify-content: center;
  content: '';
  background-color: transparent;
  opacity: 0;
  visibility: hidden;
  transition: background-color 720ms cubic-bezier(0.4, 0.14, 1, 1), opacity 240ms cubic-bezier(0.4, 0.14, 1, 1), z-index 720ms cubic-bezier(0.4, 0.14, 1, 1), visibility 240ms cubic-bezier(0.4, 0.14, 1, 1); }
  .bx--modal.is-visible {
    z-index: 9000;
    visibility: visible;
    opacity: 1;
    background-color: rgba(23, 23, 23, 0.5);
    transition: background-color 720ms cubic-bezier(0, 0, 0.3, 1), opacity 240ms cubic-bezier(0, 0, 0.3, 1), z-index 720ms cubic-bezier(0, 0, 0.3, 1), visibility 240ms cubic-bezier(0, 0, 0.3, 1); }
  .bx--modal .bx--text-input,
  .bx--modal .bx--text-area,
  .bx--modal .bx--search-input,
  .bx--modal .bx--select-input,
  .bx--modal .bx--dropdown,
  .bx--modal .bx--dropdown-list,
  .bx--modal .bx--number input[type='number'] {
    background-color: #f3f3f3; }

.bx--modal.is-visible .bx--modal-container {
  transition: transform 240ms cubic-bezier(0, 0, 0.3, 1);
  transform: translate3d(0, 0, 0); }

.bx--modal-container {
  position: relative;
  display: flex;
  flex-direction: column;
  background-color: #ffffff;
  width: 100%;
  height: 100%;
  max-height: 100%;
  overflow: hidden;
  transform-origin: top center;
  transform: translate3d(0, -24px, 0);
  transition: transform 240ms cubic-bezier(0.4, 0.14, 1, 1); }
  @media (min-width: 42rem) {
    .bx--modal-container {
      width: 50%;
      max-width: 768px;
      max-height: 90%;
      height: auto; } }
  @media (min-width: 66rem) {
    .bx--modal-container {
      max-height: 80%; } }

.bx--modal-header,
.bx--modal-content {
  padding-right: 25%;
  padding-left: 1rem; }

.bx--modal-header,
.bx--modal-footer {
  flex-shrink: 0; }

.bx--modal-header {
  padding-top: 1rem;
  margin-bottom: 1rem; }

.bx--modal-header__label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  color: #565656;
  margin-bottom: 0.25rem; }

.bx--modal-header__heading {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.625rem;
  letter-spacing: 0;
  color: #000000; }

.bx--modal-content {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  overflow-y: auto;
  margin-bottom: 3rem;
  color: #000000;
  font-weight: 400; }
  .bx--modal-content:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }

.bx--modal-content > * {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px; }

.bx--modal-footer {
  display: flex;
  margin-top: auto;
  height: 4rem;
  background-color: #dcdcdc; }
  .bx--modal-footer button.bx--btn {
    max-width: none;
    flex: 1;
    height: 4rem;
    margin: 0;
    padding-top: 1rem;
    padding-bottom: 2rem; }

.bx--modal-close {
  position: absolute;
  top: 0;
  right: 0;
  height: 3rem;
  width: 3rem;
  padding: 0.48rem;
  border: 2px solid transparent;
  overflow: hidden;
  cursor: pointer;
  background-color: transparent;
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--modal-close:hover {
    background-color: #e5e5e5; }
  .bx--modal-close:focus {
    outline: none;
    border-color: #0062ff; }

.bx--modal-close::-moz-focus-inner {
  border: 0; }

.bx--modal-close__icon {
  fill: #000000;
  height: 0.8rem;
  width: 0.8rem; }

.bx--body--with-modal-open {
  overflow: hidden; }

.bx--multi-select .bx--list-box__menu {
  min-width: auto; }

.bx--multi-select .bx--list-box__menu-item__option .bx--checkbox-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center; }

.bx--multi-select .bx--list-box__menu-item__option > .bx--form-item {
  margin: 0;
  flex-direction: row; }

.bx--multi-select .bx--list-box__menu-item .bx--checkbox:checked ~ .bx--checkbox-label-text {
  color: #000000; }

.bx--multi-select--filterable .bx--list-box__selection--multi {
  position: absolute;
  left: 0.5rem;
  right: auto; }

.bx--multi-select--selected .bx--text-input {
  padding-left: 3.5rem; }

.bx--inline-notification {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: flex;
  justify-content: space-between;
  height: auto;
  min-height: 1.92rem;
  min-width: 11.52rem;
  max-width: 11.52rem;
  color: #ffffff;
  margin-top: 1rem;
  margin-bottom: 1rem; }
  .bx--inline-notification *,
  .bx--inline-notification *:before,
  .bx--inline-notification *:after {
    box-sizing: inherit; }
  @media (min-width: 42rem) {
    .bx--inline-notification {
      max-width: 24.32rem; } }
  @media (min-width: 66rem) {
    .bx--inline-notification {
      max-width: 29.44rem; } }
  @media (min-width: 99rem) {
    .bx--inline-notification {
      max-width: 33.28rem; } }

.bx--inline-notification--low-contrast {
  color: #000000;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2); }

.bx--inline-notification--error {
  border-left: 3px solid #fb4b53;
  background: #3d3d3d; }
  .bx--inline-notification--error .bx--inline-notification__icon,
  .bx--inline-notification--error .bx--toast-notification__icon {
    fill: #fb4b53; }

.bx--inline-notification--low-contrast.bx--inline-notification--error {
  border-left: 3px solid #da1e28;
  background: #fff0f1; }
  .bx--inline-notification--low-contrast.bx--inline-notification--error .bx--inline-notification__icon,
  .bx--inline-notification--low-contrast.bx--inline-notification--error .bx--toast-notification__icon {
    fill: #da1e28; }

.bx--inline-notification--success {
  border-left: 3px solid #3dbb61;
  background: #3d3d3d; }
  .bx--inline-notification--success .bx--inline-notification__icon,
  .bx--inline-notification--success .bx--toast-notification__icon {
    fill: #3dbb61; }

.bx--inline-notification--low-contrast.bx--inline-notification--success {
  border-left: 3px solid #24a148;
  background: #dafbe4; }
  .bx--inline-notification--low-contrast.bx--inline-notification--success .bx--inline-notification__icon,
  .bx--inline-notification--low-contrast.bx--inline-notification--success .bx--toast-notification__icon {
    fill: #24a148; }

.bx--inline-notification--info {
  border-left: 3px solid #408bfc;
  background: #3d3d3d; }
  .bx--inline-notification--info .bx--inline-notification__icon,
  .bx--inline-notification--info .bx--toast-notification__icon {
    fill: #408bfc; }

.bx--inline-notification--low-contrast.bx--inline-notification--info {
  border-left: 3px solid #054ada;
  background: #edf4ff; }
  .bx--inline-notification--low-contrast.bx--inline-notification--info .bx--inline-notification__icon,
  .bx--inline-notification--low-contrast.bx--inline-notification--info .bx--toast-notification__icon {
    fill: #054ada; }

.bx--inline-notification--info .bx--inline-notification__icon {
  display: none; }

.bx--inline-notification--warning {
  border-left: 3px solid #fdd13a;
  background: #3d3d3d; }
  .bx--inline-notification--warning .bx--inline-notification__icon,
  .bx--inline-notification--warning .bx--toast-notification__icon {
    fill: #fdd13a; }

.bx--inline-notification--low-contrast.bx--inline-notification--warning {
  border-left: 3px solid #fdd13a;
  background: #fff8e1; }
  .bx--inline-notification--low-contrast.bx--inline-notification--warning .bx--inline-notification__icon,
  .bx--inline-notification--low-contrast.bx--inline-notification--warning .bx--toast-notification__icon {
    fill: #fdd13a; }

.bx--inline-notification--warning .bx--inline-notification__icon path[opacity='0'] {
  fill: #000000;
  opacity: 1; }

.bx--inline-notification__details {
  display: flex;
  margin: 0 1rem; }

.bx--inline-notification__icon {
  flex-shrink: 0;
  margin-right: 1rem;
  margin-top: 0.56rem; }

.bx--inline-notification__text-wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0.75rem 0; }

.bx--inline-notification__title {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  margin: 0 0.25rem 0 0;
  line-height: 0.96rem; }

.bx--inline-notification__subtitle {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  word-break: break-word; }

.bx--inline-notification__action-button {
  height: 1.28rem;
  margin: 0.5rem 0; }
  .bx--inline-notification__action-button, .bx--inline-notification__action-button:hover, .bx--inline-notification__action-button:focus, .bx--inline-notification__action-button:active {
    color: #6ea6ff; }
  .bx--inline-notification__action-button:hover {
    background-color: #4c4c4c; }

.bx--inline-notification__close-button {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  height: 1.92rem;
  width: 1.92rem;
  min-width: 1.92rem;
  max-width: 1.92rem;
  transition: outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--inline-notification__close-button .bx--inline-notification__close-icon {
    height: 1rem;
    width: 1rem;
    fill: #ffffff; }

.bx--inline-notification--low-contrast .bx--inline-notification__close-button .bx--inline-notification__close-icon {
  fill: #000000; }

.bx--inline-notification--low-contrast .bx--inline-notification__action-button {
  color: #0062ff; }
  .bx--inline-notification--low-contrast .bx--inline-notification__action-button:active {
    color: #0530ad; }
  .bx--inline-notification--low-contrast .bx--inline-notification__action-button:active, .bx--inline-notification--low-contrast .bx--inline-notification__action-button:hover {
    background-color: #ffffff; }

.bx--toast-notification {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: flex;
  width: 11.52rem;
  height: auto;
  padding-left: 1rem;
  color: #ffffff;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  margin-right: 1rem;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2); }
  .bx--toast-notification *,
  .bx--toast-notification *:before,
  .bx--toast-notification *:after {
    box-sizing: inherit; }
  .bx--toast-notification:first-child {
    margin-top: 1rem; }
  @media (min-width: 99rem) {
    .bx--toast-notification {
      width: 14.08rem; } }

.bx--toast-notification--low-contrast {
  color: #000000; }

.bx--toast-notification--error {
  border-left: 3px solid #fb4b53;
  background: #3d3d3d; }
  .bx--toast-notification--error .bx--inline-notification__icon,
  .bx--toast-notification--error .bx--toast-notification__icon {
    fill: #fb4b53; }

.bx--toast-notification--low-contrast.bx--toast-notification--error {
  border-left: 3px solid #da1e28;
  background: #fff0f1; }
  .bx--toast-notification--low-contrast.bx--toast-notification--error .bx--inline-notification__icon,
  .bx--toast-notification--low-contrast.bx--toast-notification--error .bx--toast-notification__icon {
    fill: #da1e28; }

.bx--toast-notification--success {
  border-left: 3px solid #3dbb61;
  background: #3d3d3d; }
  .bx--toast-notification--success .bx--inline-notification__icon,
  .bx--toast-notification--success .bx--toast-notification__icon {
    fill: #3dbb61; }

.bx--toast-notification--low-contrast.bx--toast-notification--success {
  border-left: 3px solid #24a148;
  background: #dafbe4; }
  .bx--toast-notification--low-contrast.bx--toast-notification--success .bx--inline-notification__icon,
  .bx--toast-notification--low-contrast.bx--toast-notification--success .bx--toast-notification__icon {
    fill: #24a148; }

.bx--toast-notification--info {
  border-left: 3px solid #408bfc;
  background: #3d3d3d; }
  .bx--toast-notification--info .bx--inline-notification__icon,
  .bx--toast-notification--info .bx--toast-notification__icon {
    fill: #408bfc; }

.bx--toast-notification--low-contrast.bx--toast-notification--info {
  border-left: 3px solid #054ada;
  background: #edf4ff; }
  .bx--toast-notification--low-contrast.bx--toast-notification--info .bx--inline-notification__icon,
  .bx--toast-notification--low-contrast.bx--toast-notification--info .bx--toast-notification__icon {
    fill: #054ada; }

.bx--toast-notification--warning {
  border-left: 3px solid #fdd13a;
  background: #3d3d3d; }
  .bx--toast-notification--warning .bx--inline-notification__icon,
  .bx--toast-notification--warning .bx--toast-notification__icon {
    fill: #fdd13a; }

.bx--toast-notification--low-contrast.bx--toast-notification--warning {
  border-left: 3px solid #fdd13a;
  background: #fff8e1; }
  .bx--toast-notification--low-contrast.bx--toast-notification--warning .bx--inline-notification__icon,
  .bx--toast-notification--low-contrast.bx--toast-notification--warning .bx--toast-notification__icon {
    fill: #fdd13a; }

.bx--toast-notification--warning .bx--toast-notification__icon path[opacity='0'] {
  fill: #000000;
  opacity: 1; }

.bx--toast-notification__icon {
  flex-shrink: 0;
  margin-right: 1rem;
  margin-top: 1rem; }

.bx--toast-notification__details {
  margin-right: 1rem; }

.bx--toast-notification__close-button {
  outline: 2px solid transparent;
  outline-offset: -2px;
  background-color: transparent;
  border: none;
  cursor: pointer;
  margin-left: auto;
  padding: 0;
  height: 1.92rem;
  width: 1.92rem;
  min-height: 1.92rem;
  min-width: 1.92rem;
  transition: outline 110ms, background-color 110ms; }
  .bx--toast-notification__close-button:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--toast-notification__close-button .bx--toast-notification__close-icon {
    height: 1rem;
    width: 1rem;
    fill: #ffffff; }

.bx--toast-notification--low-contrast .bx--toast-notification__close-button .bx--toast-notification__close-icon {
  fill: #000000; }

.bx--toast-notification__title {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  font-weight: 600;
  margin-top: 1rem;
  word-break: break-word; }

.bx--toast-notification__subtitle {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #ffffff;
  margin-top: 0;
  margin-bottom: 1.5rem;
  word-break: break-word; }

.bx--toast-notification--low-contrast .bx--toast-notification__subtitle {
  color: #000000; }

.bx--toast-notification__caption {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #ffffff;
  margin-bottom: 1rem; }

.bx--toast-notification--low-contrast .bx--toast-notification__caption {
  color: #000000; }

.bx--tooltip__label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  display: inline-flex;
  align-items: center;
  color: #565656; }
  .bx--tooltip__label:focus {
    outline: 1px solid #0062ff; }
  .bx--tooltip__label .bx--tooltip__trigger {
    margin-left: 0.5rem; }

.bx--tooltip__trigger svg {
  fill: #565656; }

.bx--tooltip__trigger:not(.bx--btn--icon-only) {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  font-size: 1rem; }
  .bx--tooltip__trigger:not(.bx--btn--icon-only) *,
  .bx--tooltip__trigger:not(.bx--btn--icon-only) *:before,
  .bx--tooltip__trigger:not(.bx--btn--icon-only) *:after {
    box-sizing: inherit; }
  .bx--tooltip__trigger:not(.bx--btn--icon-only)::-moz-focus-inner {
    border: 0; }
  .bx--tooltip__trigger:not(.bx--btn--icon-only):focus {
    outline: 1px solid #0062ff;
    fill: #0353e9; }

.bx--tooltip__label--bold {
  font-weight: 600; }

.bx--tooltip {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: absolute;
  display: none;
  min-width: 8.32rem;
  max-width: 11.52rem;
  background: #3d3d3d;
  margin-top: 0.25rem;
  padding: 1rem;
  border-radius: 0.08rem;
  z-index: 10000;
  word-wrap: break-word;
  color: #ffffff; }
  .bx--tooltip *,
  .bx--tooltip *:before,
  .bx--tooltip *:after {
    box-sizing: inherit; }
  .bx--tooltip:focus {
    box-shadow: inset 0 0 0 1px #3d3d3d, inset 0 0 0 2px #f3f3f3;
    outline: 0; }
  .bx--tooltip p {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px; }
  .bx--tooltip button {
    padding-right: 2rem; }
  .bx--tooltip .bx--btn:focus {
    border-color: #ffffff;
    outline-color: #3d3d3d; }
  .bx--tooltip .bx--link {
    color: #6ea6ff;
    font-size: 0.56rem; }
    .bx--tooltip .bx--link:focus {
      outline: 1px solid #ffffff;
      outline-offset: 2px; }
    .bx--tooltip .bx--link:active {
      color: #ffffff; }
    .bx--tooltip .bx--link:visited {
      color: #6ea6ff; }
  .bx--tooltip .bx--tooltip__caret {
    border-left: 0.275rem solid transparent;
    border-right: 0.275rem solid transparent;
    border-bottom: 0.275rem solid #3d3d3d;
    position: absolute;
    left: 0;
    top: calc(-0.275rem + 1px);
    right: 0;
    width: 0;
    height: 0;
    margin: 0 auto;
    content: ''; }
  .bx--tooltip .bx--tooltip__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 1rem; }
  .bx--tooltip[data-floating-menu-direction='left'] .bx--tooltip__caret {
    left: auto;
    top: 50%;
    right: calc(-0.275rem + 1px);
    transform: rotate(90deg) translate(50%, -50%); }
  .bx--tooltip[data-floating-menu-direction='top'] .bx--tooltip__caret {
    top: auto;
    bottom: calc(-0.275rem + 1px);
    transform: rotate(180deg); }
  .bx--tooltip[data-floating-menu-direction='right'] .bx--tooltip__caret {
    left: calc(-0.275rem + 1px);
    top: 50%;
    right: auto;
    transform: rotate(270deg) translate(50%, -50%); }

.bx--tooltip__heading {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  margin-bottom: 0.5rem; }

.bx--tooltip--shown {
  display: block; }

/* begin legacy definition tooltip TODO: deprecate */
.bx--tooltip--definition {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative; }
  .bx--tooltip--definition *,
  .bx--tooltip--definition *:before,
  .bx--tooltip--definition *:after {
    box-sizing: inherit; }
  .bx--tooltip--definition .bx--tooltip__trigger {
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1rem;
    letter-spacing: 0.32px;
    display: inline-flex;
    position: relative;
    border-bottom: 1px dotted #0062ff;
    color: #000000; }
    .bx--tooltip--definition .bx--tooltip__trigger:hover {
      cursor: pointer; }
      .bx--tooltip--definition .bx--tooltip__trigger:hover + .bx--tooltip--definition__top,
      .bx--tooltip--definition .bx--tooltip__trigger:hover + .bx--tooltip--definition__bottom {
        display: block; }
    .bx--tooltip--definition .bx--tooltip__trigger:focus {
      outline: 1px solid #0062ff; }
      .bx--tooltip--definition .bx--tooltip__trigger:focus + .bx--tooltip--definition__top,
      .bx--tooltip--definition .bx--tooltip__trigger:focus + .bx--tooltip--definition__bottom {
        display: block; }

.bx--tooltip--definition__bottom,
.bx--tooltip--definition__top {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
  position: absolute;
  z-index: 1;
  display: none;
  background: #3d3d3d;
  width: 8.32rem;
  margin-top: 0.75rem;
  padding: 0.5rem 1rem;
  border-radius: 0.08rem;
  pointer-events: none;
  cursor: pointer; }
  .bx--tooltip--definition__bottom p,
  .bx--tooltip--definition__top p {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    color: #ffffff; }
  .bx--tooltip--definition__bottom .bx--tooltip__caret,
  .bx--tooltip--definition__top .bx--tooltip__caret {
    position: absolute;
    right: 0;
    left: 0;
    width: 0.6rem;
    height: 0.6rem;
    background: #3d3d3d;
    margin-left: 1rem; }

.bx--tooltip--definition__bottom .bx--tooltip__caret {
  top: -0.2rem;
  transform: rotate(-135deg); }

.bx--tooltip--definition__top {
  transform: translateY(-100%);
  margin-top: -1.28rem; }
  .bx--tooltip--definition__top .bx--tooltip__caret {
    bottom: -0.2rem;
    transform: rotate(45deg); }

.bx--tooltip--definition__align-end {
  right: 0; }

.bx--tooltip--definition__align-center {
  margin-left: 50%;
  transform: translateX(-50%); }

.bx--tooltip--definition__top.bx--tooltip--definition__align-center {
  margin-left: 50%;
  transform: translate(-50%, -100%); }

.bx--tooltip--definition__align-center .bx--tooltip__caret {
  left: auto;
  margin-left: auto;
  margin-right: calc(50% - 6px); }

.bx--tooltip--definition__align-end .bx--tooltip__caret {
  left: auto;
  margin-left: auto;
  margin-right: 0.64rem; }

/* end legacy definition tooltip */
.bx--tooltip--definition.bx--tooltip--a11y {
  display: inline-flex; }

.bx--tooltip--definition button.bx--tooltip--a11y {
  margin: 0; }

.bx--tooltip__trigger.bx--tooltip__trigger--definition {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  border-bottom: 0.04rem dotted #0062ff; }

.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top *,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top *:before,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top *:after {
    box-sizing: inherit; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    z-index: 10000;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
        display: inline-block; } }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after {
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--a11y::after {
    transition: none; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before {
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
    box-sizing: content-box;
    color: inherit;
    opacity: 1;
    white-space: normal; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    width: max-content;
    max-width: 8.32rem;
    height: auto;
    padding: 0.32rem 0.64rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    transform: translateX(-50%);
    pointer-events: none;
    background-color: #3d3d3d; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-accelerator: true) {
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-ime-align: auto) {
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after {
    content: attr(aria-label); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--a11y::after {
    content: none; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover::after, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus::after {
    opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text {
    clip: auto;
    margin: auto;
    overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus.bx--tooltip--a11y::before {
    animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before {
    top: -0.16rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text {
    top: -0.36rem;
    left: 0;
    transform: translate(0, -100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start::before {
    top: -0.16rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start:focus + .bx--assistive-text {
    top: -0.36rem;
    left: 0;
    transform: translate(0, -100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center::before {
    top: -0.16rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center:focus + .bx--assistive-text {
    top: -0.36rem;
    left: 50%;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end::before {
    top: -0.16rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end:focus + .bx--assistive-text {
    top: -0.36rem;
    right: 0;
    left: auto;
    transform: translate(0, -100%); }

.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom *,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom *:before,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom *:after {
    box-sizing: inherit; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    z-index: 10000;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
        display: inline-block; } }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after {
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--a11y::after {
    transition: none; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before {
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
    box-sizing: content-box;
    color: inherit;
    opacity: 1;
    white-space: normal; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    width: max-content;
    max-width: 8.32rem;
    height: auto;
    padding: 0.32rem 0.64rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    transform: translateX(-50%);
    pointer-events: none;
    background-color: #3d3d3d; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-accelerator: true) {
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-ime-align: auto) {
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text {
        width: 8.32rem; } }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after {
    content: attr(aria-label); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--a11y::after {
    content: none; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover::after, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus::after {
    opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text {
    clip: auto;
    margin: auto;
    overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus.bx--tooltip--a11y::before {
    animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text {
    bottom: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before {
    bottom: -0.16rem;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-color: transparent transparent #3d3d3d transparent;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text {
    bottom: -0.36rem;
    left: 0;
    transform: translate(0, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--a11y + .bx--assistive-text {
    bottom: -0.32rem;
    transform: translate(0, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start:focus + .bx--assistive-text {
    bottom: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start::before {
    bottom: -0.16rem;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-color: transparent transparent #3d3d3d transparent;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start:focus + .bx--assistive-text {
    bottom: -0.36rem;
    left: 0;
    transform: translate(0, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start.bx--tooltip--a11y + .bx--assistive-text {
    bottom: -0.32rem;
    transform: translate(0, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center:focus + .bx--assistive-text {
    bottom: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center::before {
    bottom: -0.16rem;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-color: transparent transparent #3d3d3d transparent;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center:focus + .bx--assistive-text {
    bottom: -0.36rem;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center.bx--tooltip--a11y + .bx--assistive-text {
    bottom: -0.32rem;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end:focus + .bx--assistive-text {
    bottom: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end::before {
    bottom: -0.16rem;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-color: transparent transparent #3d3d3d transparent;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end:focus + .bx--assistive-text {
    bottom: -0.36rem;
    right: 0;
    left: auto;
    transform: translate(0, 100%); }
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end.bx--tooltip--a11y + .bx--assistive-text {
    bottom: -0.32rem;
    transform: translate(0, 100%); }

/* begin tooltip icon (TODO: deprecate) */
.bx--tooltip--icon {
  display: inline-flex;
  align-items: center; }

.bx--tooltip--icon__top,
.bx--tooltip--icon__bottom {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible; }
  .bx--tooltip--icon__top *,
  .bx--tooltip--icon__top *:before,
  .bx--tooltip--icon__top *:after,
  .bx--tooltip--icon__bottom *,
  .bx--tooltip--icon__bottom *:before,
  .bx--tooltip--icon__bottom *:after {
    box-sizing: inherit; }
  .bx--tooltip--icon__top::before, .bx--tooltip--icon__top::after,
  .bx--tooltip--icon__bottom::before,
  .bx--tooltip--icon__bottom::after {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip--icon__top::before,
  .bx--tooltip--icon__bottom::before {
    right: 0;
    left: 0;
    width: 0;
    height: 0;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-style: solid;
    border-color: transparent transparent #3d3d3d transparent;
    margin: 0 auto;
    content: '';
    margin-top: 1px;
    margin-left: 50%; }
  .bx--tooltip--icon__top::after,
  .bx--tooltip--icon__bottom::after {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    min-width: 0.96rem;
    max-width: 8.32rem;
    height: 0.96rem;
    margin-left: 50%;
    padding: 0 1rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    content: attr(aria-label);
    transform: translateX(-50%);
    white-space: nowrap;
    pointer-events: none;
    background-color: #3d3d3d; }
  .bx--tooltip--icon__top:hover::before, .bx--tooltip--icon__top:hover::after, .bx--tooltip--icon__top:focus::before, .bx--tooltip--icon__top:focus::after,
  .bx--tooltip--icon__bottom:hover::before,
  .bx--tooltip--icon__bottom:hover::after,
  .bx--tooltip--icon__bottom:focus::before,
  .bx--tooltip--icon__bottom:focus::after {
    opacity: 1; }
  .bx--tooltip--icon__top:hover svg, .bx--tooltip--icon__top:focus svg,
  .bx--tooltip--icon__bottom:hover svg,
  .bx--tooltip--icon__bottom:focus svg {
    fill: #565656; }
  .bx--tooltip--icon__top:focus,
  .bx--tooltip--icon__bottom:focus {
    outline: 1px solid transparent; }
    .bx--tooltip--icon__top:focus svg,
    .bx--tooltip--icon__bottom:focus svg {
      outline: 1px solid #0062ff; }

.bx--tooltip--icon__top::before {
  top: 1px;
  transform: translate(-50%, calc(-100% - 9px)) rotate(180deg); }

.bx--tooltip--icon__top::after {
  top: 0;
  transform: translate(-50%, calc(-100% - 12px)); }

.bx--tooltip--icon__bottom::before {
  bottom: 0;
  transform: translate(-50%, 10px) rotate(0); }

.bx--tooltip--icon__bottom::after {
  bottom: 0;
  transform: translate(-50%, calc(100% + 10px)); }

.bx--tooltip--icon__top.bx--tooltip--icon__align-start::before {
  top: 1px;
  margin-left: 4px;
  transform: translate(0, calc(-100% - 9px)) rotate(180deg); }

.bx--tooltip--icon__top.bx--tooltip--icon__align-start::after {
  top: 0;
  margin-left: 0;
  transform: translate(0, calc(-100% - 12px)); }

.bx--tooltip--icon__top.bx--tooltip--icon__align-end::before {
  top: 1px;
  margin-right: 4px;
  left: auto;
  right: 0;
  transform: translate(0, calc(-100% - 9px)) rotate(180deg); }

.bx--tooltip--icon__top.bx--tooltip--icon__align-end::after {
  top: 0;
  margin-left: 0;
  right: 0;
  transform: translate(0, calc(-100% - 12px)); }

.bx--tooltip--icon__bottom.bx--tooltip--icon__align-start::before {
  bottom: 0;
  margin-left: 4px;
  transform: translate(0, 10px) rotate(0); }

.bx--tooltip--icon__bottom.bx--tooltip--icon__align-start::after {
  bottom: 0;
  margin-left: 0;
  transform: translate(0, calc(100% + 10px)); }

.bx--tooltip--icon__bottom.bx--tooltip--icon__align-end::before {
  bottom: 0;
  margin-right: 4px;
  left: auto;
  right: 0;
  transform: translate(0, 10px) rotate(0); }

.bx--tooltip--icon__bottom.bx--tooltip--icon__align-end::after {
  bottom: 0;
  margin-left: 0;
  right: 0;
  transform: translate(0, calc(100% + 10px)); }

.bx--tooltip--icon .bx--tooltip__trigger svg {
  margin-left: 0; }

/* end legacy tooltip icon */
.bx--tooltip__trigger:hover svg, .bx--tooltip__trigger:focus svg {
  fill: #565656; }

.bx--tooltip__trigger.bx--tooltip--top {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip--top *,
  .bx--tooltip__trigger.bx--tooltip--top *:before,
  .bx--tooltip__trigger.bx--tooltip--top *:after {
    box-sizing: inherit; }
  .bx--tooltip__trigger.bx--tooltip--top:focus {
    outline: 1px solid transparent; }
    .bx--tooltip__trigger.bx--tooltip--top:focus svg {
      outline: 1px solid #0062ff; }
  .bx--tooltip__trigger.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip--top::after,
  .bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    z-index: 10000;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip--top::after,
      .bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
        display: inline-block; } }
  .bx--tooltip__trigger.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip--top::after {
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--a11y::after {
    transition: none; }
  .bx--tooltip__trigger.bx--tooltip--top::before {
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }
  .bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
    box-sizing: content-box;
    color: inherit;
    opacity: 1;
    white-space: normal; }
  .bx--tooltip__trigger.bx--tooltip--top::after,
  .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    width: max-content;
    max-width: 8.32rem;
    height: auto;
    padding: 0.08rem 0.64rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    transform: translateX(-50%);
    pointer-events: none;
    background-color: #3d3d3d; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip--top::after,
      .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-accelerator: true) {
      .bx--tooltip__trigger.bx--tooltip--top::after,
      .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-ime-align: auto) {
      .bx--tooltip__trigger.bx--tooltip--top::after,
      .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text {
        width: 8.32rem; } }
  .bx--tooltip__trigger.bx--tooltip--top::after {
    content: attr(aria-label); }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--a11y::after {
    content: none; }
  .bx--tooltip__trigger.bx--tooltip--top:hover::before, .bx--tooltip__trigger.bx--tooltip--top:hover::after, .bx--tooltip__trigger.bx--tooltip--top:focus::before, .bx--tooltip__trigger.bx--tooltip--top:focus::after {
    opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
  .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text {
    clip: auto;
    margin: auto;
    overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top:focus.bx--tooltip--a11y::before {
    animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip--top::after,
  .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip--top::before {
    top: -0.32rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip--top::after,
  .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text {
    top: -0.52rem;
    left: 50%;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start::before {
    top: -0.32rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start:focus + .bx--assistive-text {
    top: -0.52rem;
    left: 0;
    transform: translate(0, -100%); }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center::before {
    top: -0.32rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center:focus + .bx--assistive-text {
    top: -0.52rem;
    left: 50%;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end:focus + .bx--assistive-text {
    top: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end::before {
    top: -0.32rem;
    border-width: 0.2rem 0.16rem 0 0.16rem;
    border-color: #3d3d3d transparent transparent transparent;
    transform: translate(-50%, -100%); }
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end:focus + .bx--assistive-text {
    top: -0.52rem;
    right: 0;
    left: auto;
    transform: translate(0, -100%); }

.bx--tooltip__trigger.bx--tooltip--right {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip--right *,
  .bx--tooltip__trigger.bx--tooltip--right *:before,
  .bx--tooltip__trigger.bx--tooltip--right *:after {
    box-sizing: inherit; }
  .bx--tooltip__trigger.bx--tooltip--right:focus {
    outline: 1px solid transparent; }
    .bx--tooltip__trigger.bx--tooltip--right:focus svg {
      outline: 1px solid #0062ff; }
  .bx--tooltip__trigger.bx--tooltip--right::before, .bx--tooltip__trigger.bx--tooltip--right::after,
  .bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    z-index: 10000;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip--right::before, .bx--tooltip__trigger.bx--tooltip--right::after,
      .bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
        display: inline-block; } }
  .bx--tooltip__trigger.bx--tooltip--right::before, .bx--tooltip__trigger.bx--tooltip--right::after {
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--a11y::after {
    transition: none; }
  .bx--tooltip__trigger.bx--tooltip--right::before {
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }
  .bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
    box-sizing: content-box;
    color: inherit;
    opacity: 1;
    white-space: normal; }
  .bx--tooltip__trigger.bx--tooltip--right::after,
  .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    width: max-content;
    max-width: 8.32rem;
    height: auto;
    padding: 0.08rem 0.64rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    transform: translateX(-50%);
    pointer-events: none;
    background-color: #3d3d3d; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip--right::after,
      .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-accelerator: true) {
      .bx--tooltip__trigger.bx--tooltip--right::after,
      .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-ime-align: auto) {
      .bx--tooltip__trigger.bx--tooltip--right::after,
      .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text {
        width: 8.32rem; } }
  .bx--tooltip__trigger.bx--tooltip--right::after {
    content: attr(aria-label); }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--a11y::after {
    content: none; }
  .bx--tooltip__trigger.bx--tooltip--right:hover::before, .bx--tooltip__trigger.bx--tooltip--right:hover::after, .bx--tooltip__trigger.bx--tooltip--right:focus::before, .bx--tooltip__trigger.bx--tooltip--right:focus::after {
    opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
  .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text {
    clip: auto;
    margin: auto;
    overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right:focus.bx--tooltip--a11y::before {
    animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip--right::before, .bx--tooltip__trigger.bx--tooltip--right::after,
  .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text {
    top: 50%;
    right: 0; }
  .bx--tooltip__trigger.bx--tooltip--right::before {
    right: -0.32rem;
    border-width: 0.16rem 0.2rem 0.16rem 0;
    border-color: transparent #3d3d3d transparent transparent;
    transform: translate(100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--right::after,
  .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text {
    right: -0.52rem;
    transform: translate(100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start:focus + .bx--assistive-text {
    top: 50%;
    right: 0; }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start::before {
    right: -0.32rem;
    border-width: 0.16rem 0.2rem 0.16rem 0;
    border-color: transparent #3d3d3d transparent transparent;
    transform: translate(100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start:focus + .bx--assistive-text {
    right: -0.52rem;
    transform: translate(100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center:focus + .bx--assistive-text {
    top: 50%;
    right: 0; }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center::before {
    right: -0.32rem;
    border-width: 0.16rem 0.2rem 0.16rem 0;
    border-color: transparent #3d3d3d transparent transparent;
    transform: translate(100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center:focus + .bx--assistive-text {
    right: -0.52rem;
    transform: translate(100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end:focus + .bx--assistive-text {
    top: 50%;
    right: 0; }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end::before {
    right: -0.32rem;
    border-width: 0.16rem 0.2rem 0.16rem 0;
    border-color: transparent #3d3d3d transparent transparent;
    transform: translate(100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end:focus + .bx--assistive-text {
    right: -0.52rem;
    transform: translate(100%, -50%); }

.bx--tooltip__trigger.bx--tooltip--bottom {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip--bottom *,
  .bx--tooltip__trigger.bx--tooltip--bottom *:before,
  .bx--tooltip__trigger.bx--tooltip--bottom *:after {
    box-sizing: inherit; }
  .bx--tooltip__trigger.bx--tooltip--bottom:focus {
    outline: 1px solid transparent; }
    .bx--tooltip__trigger.bx--tooltip--bottom:focus svg {
      outline: 1px solid #0062ff; }
  .bx--tooltip__trigger.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip--bottom::after,
  .bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    z-index: 10000;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip--bottom::after,
      .bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
        display: inline-block; } }
  .bx--tooltip__trigger.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip--bottom::after {
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--a11y::after {
    transition: none; }
  .bx--tooltip__trigger.bx--tooltip--bottom::before {
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }
  .bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
    box-sizing: content-box;
    color: inherit;
    opacity: 1;
    white-space: normal; }
  .bx--tooltip__trigger.bx--tooltip--bottom::after,
  .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    width: max-content;
    max-width: 8.32rem;
    height: auto;
    padding: 0.08rem 0.64rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    transform: translateX(-50%);
    pointer-events: none;
    background-color: #3d3d3d; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip--bottom::after,
      .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-accelerator: true) {
      .bx--tooltip__trigger.bx--tooltip--bottom::after,
      .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-ime-align: auto) {
      .bx--tooltip__trigger.bx--tooltip--bottom::after,
      .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text {
        width: 8.32rem; } }
  .bx--tooltip__trigger.bx--tooltip--bottom::after {
    content: attr(aria-label); }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--a11y::after {
    content: none; }
  .bx--tooltip__trigger.bx--tooltip--bottom:hover::before, .bx--tooltip__trigger.bx--tooltip--bottom:hover::after, .bx--tooltip__trigger.bx--tooltip--bottom:focus::before, .bx--tooltip__trigger.bx--tooltip--bottom:focus::after {
    opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
  .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text {
    clip: auto;
    margin: auto;
    overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom:focus.bx--tooltip--a11y::before {
    animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip--bottom::after,
  .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text {
    bottom: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip--bottom::before {
    bottom: -0.32rem;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-color: transparent transparent #3d3d3d transparent;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip--bottom::after,
  .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text {
    bottom: -0.52rem;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start:focus + .bx--assistive-text {
    bottom: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start::before {
    bottom: -0.32rem;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-color: transparent transparent #3d3d3d transparent;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start:focus + .bx--assistive-text {
    bottom: -0.52rem;
    left: 0;
    transform: translate(0, 100%); }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center:focus + .bx--assistive-text {
    bottom: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center::before {
    bottom: -0.32rem;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-color: transparent transparent #3d3d3d transparent;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center:focus + .bx--assistive-text {
    bottom: -0.52rem;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end:focus + .bx--assistive-text {
    bottom: 0;
    left: 50%; }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end::before {
    bottom: -0.32rem;
    border-width: 0 0.16rem 0.2rem 0.16rem;
    border-color: transparent transparent #3d3d3d transparent;
    transform: translate(-50%, 100%); }
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end:focus + .bx--assistive-text {
    bottom: -0.52rem;
    right: 0;
    left: auto;
    transform: translate(0, 100%); }

.bx--tooltip__trigger.bx--tooltip--left {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip--left *,
  .bx--tooltip__trigger.bx--tooltip--left *:before,
  .bx--tooltip__trigger.bx--tooltip--left *:after {
    box-sizing: inherit; }
  .bx--tooltip__trigger.bx--tooltip--left:focus {
    outline: 1px solid transparent; }
    .bx--tooltip__trigger.bx--tooltip--left:focus svg {
      outline: 1px solid #0062ff; }
  .bx--tooltip__trigger.bx--tooltip--left::before, .bx--tooltip__trigger.bx--tooltip--left::after,
  .bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.125rem;
    letter-spacing: 0.16px;
    position: absolute;
    z-index: 10000;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip--left::before, .bx--tooltip__trigger.bx--tooltip--left::after,
      .bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
        display: inline-block; } }
  .bx--tooltip__trigger.bx--tooltip--left::before, .bx--tooltip__trigger.bx--tooltip--left::after {
    transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--a11y::after {
    transition: none; }
  .bx--tooltip__trigger.bx--tooltip--left::before {
    width: 0;
    height: 0;
    border-style: solid;
    content: ''; }
  .bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
    box-sizing: content-box;
    color: inherit;
    opacity: 1;
    white-space: normal; }
  .bx--tooltip__trigger.bx--tooltip--left::after,
  .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
    width: max-content;
    max-width: 8.32rem;
    height: auto;
    padding: 0.08rem 0.64rem;
    border-radius: 0.08rem;
    color: #ffffff;
    font-weight: 400;
    text-align: left;
    transform: translateX(-50%);
    pointer-events: none;
    background-color: #3d3d3d; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .bx--tooltip__trigger.bx--tooltip--left::after,
      .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-accelerator: true) {
      .bx--tooltip__trigger.bx--tooltip--left::after,
      .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text {
        width: 8.32rem; } }
    @supports (-ms-ime-align: auto) {
      .bx--tooltip__trigger.bx--tooltip--left::after,
      .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text,
      .bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text {
        width: 8.32rem; } }
  .bx--tooltip__trigger.bx--tooltip--left::after {
    content: attr(aria-label); }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--a11y::after {
    content: none; }
  .bx--tooltip__trigger.bx--tooltip--left:hover::before, .bx--tooltip__trigger.bx--tooltip--left:hover::after, .bx--tooltip__trigger.bx--tooltip--left:focus::before, .bx--tooltip__trigger.bx--tooltip--left:focus::after {
    opacity: 1; }

@keyframes tooltip-fade {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
  .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text {
    clip: auto;
    margin: auto;
    overflow: visible; }
  .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left:focus.bx--tooltip--a11y::before {
    animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tooltip__trigger.bx--tooltip--left::before, .bx--tooltip__trigger.bx--tooltip--left::after,
  .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text {
    top: 50%;
    left: 0; }
  .bx--tooltip__trigger.bx--tooltip--left::before {
    left: -0.32rem;
    border-width: 0.16rem 0 0.16rem 0.2rem;
    border-color: transparent transparent transparent #3d3d3d;
    transform: translate(-100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--left::after,
  .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text {
    left: -0.52rem;
    transform: translate(-100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start:focus + .bx--assistive-text {
    top: 50%;
    left: 0; }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start::before {
    left: -0.32rem;
    border-width: 0.16rem 0 0.16rem 0.2rem;
    border-color: transparent transparent transparent #3d3d3d;
    transform: translate(-100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start::after,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start:focus + .bx--assistive-text {
    left: -0.52rem;
    transform: translate(-100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center:focus + .bx--assistive-text {
    top: 50%;
    left: 0; }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center::before {
    left: -0.32rem;
    border-width: 0.16rem 0 0.16rem 0.2rem;
    border-color: transparent transparent transparent #3d3d3d;
    transform: translate(-100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center::after,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center:focus + .bx--assistive-text {
    left: -0.52rem;
    transform: translate(-100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end:focus + .bx--assistive-text {
    top: 50%;
    left: 0; }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end::before {
    left: -0.32rem;
    border-width: 0.16rem 0 0.16rem 0.2rem;
    border-color: transparent transparent transparent #3d3d3d;
    transform: translate(-100%, -50%); }
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end::after,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end:hover .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end:focus .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end:hover + .bx--assistive-text,
  .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end:focus + .bx--assistive-text {
    left: -0.52rem;
    transform: translate(-100%, -50%); }

.bx--tabs {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #000000;
  height: auto;
  width: 100%;
  position: relative; }
  .bx--tabs *,
  .bx--tabs *:before,
  .bx--tabs *:after {
    box-sizing: inherit; }
  @media (min-width: 42rem) {
    .bx--tabs {
      background: none;
      min-height: 1.6rem; } }

.bx--tabs-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1rem;
  height: 1.6rem;
  cursor: pointer;
  color: #000000;
  outline: 2px solid transparent;
  border-bottom: 1px solid #8c8c8c;
  background-color: #ffffff; }
  @media (min-width: 42rem) {
    .bx--tabs-trigger {
      display: none; } }

.bx--tabs-trigger:focus,
.bx--tabs-trigger:active {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--tabs-trigger svg {
  width: 0.48rem;
  height: 0.28rem;
  fill: #000000;
  transition: transform 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--tabs-trigger--open:focus,
.bx--tabs-trigger--open:active {
  outline: 2px solid transparent;
  outline-offset: -2px;
  transition: outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--tabs-trigger--open {
  background: #dcdcdc; }

.bx--tabs-trigger--open svg {
  transform: rotate(-180deg);
  transition: transform 70ms;
  transform-origin: 50% 45%; }

.bx--tabs--light.bx--tabs-trigger {
  background-color: #f3f3f3; }

.bx--tabs-trigger-text {
  text-decoration: none;
  padding-top: 2px;
  color: #000000;
  font-weight: 400; }

.bx--tabs-trigger-text:hover {
  color: #000000; }

.bx--tabs-trigger-text:focus {
  outline: none; }

.bx--tabs__nav {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1);
  margin: 0;
  padding: 0;
  position: absolute;
  list-style: none;
  display: flex;
  flex-direction: column;
  z-index: 9100;
  background: #ffffff;
  transition: max-height 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  max-height: 600px;
  width: 100%; }
  @media (min-width: 42rem) {
    .bx--tabs__nav {
      flex-direction: row;
      background: none;
      box-shadow: none;
      z-index: auto;
      transition: inherit;
      width: auto; } }

.bx--tabs__nav--hidden {
  transition: max-height 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  overflow: hidden;
  max-height: 0; }
  @media (min-width: 42rem) {
    .bx--tabs__nav--hidden {
      display: flex;
      transition: inherit;
      overflow: visible;
      max-height: none; } }

.bx--tabs__nav-item {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  background-color: #ffffff;
  display: flex;
  padding: 0;
  cursor: pointer;
  width: 100%;
  height: 1.6rem;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tabs__nav-item *,
  .bx--tabs__nav-item *:before,
  .bx--tabs__nav-item *:after {
    box-sizing: inherit; }
  @media (min-width: 42rem) {
    .bx--tabs__nav-item {
      background: transparent;
      height: auto; }
      .bx--tabs__nav-item + .bx--tabs__nav-item {
        margin-left: 0.08rem; } }

.bx--tabs__nav-item .bx--tabs__nav-link {
  transition: color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), border-bottom-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }

@media (min-width: 42rem) {
  .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--selected) {
    background: transparent; } }

.bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--disabled) {
  background-color: #e5e5e5;
  box-shadow: 0 -1px 0 #e5e5e5; }
  @media (min-width: 42rem) {
    .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--disabled) {
      background-color: transparent;
      box-shadow: none; } }

.bx--tabs__nav-item--disabled,
.bx--tabs__nav-item--disabled:hover {
  cursor: not-allowed;
  outline: none; }

.bx--tabs__nav-item--disabled .bx--tabs__nav-link {
  pointer-events: none; }

.bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) {
  border: none;
  display: none;
  transition: color 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  @media (min-width: 42rem) {
    .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) {
      display: flex; }
      .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link {
        color: #000000;
        font-size: 0.875rem;
        font-weight: 600;
        line-height: 1.125rem;
        letter-spacing: 0.16px;
        border-bottom: 3px solid #0062ff; }
      .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link:focus,
      .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link:active {
        color: #000000;
        border-bottom: 2px solid #0062ff; } }

a.bx--tabs__nav-link {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: inline-block;
  color: #565656;
  text-decoration: none;
  font-weight: 400;
  padding: 0.75rem 0;
  width: calc(100% - 32px);
  height: 1.6rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin: 0 1rem;
  line-height: 0.64rem;
  border-bottom: 1px solid #dcdcdc;
  overflow: hidden;
  transition: border 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  a.bx--tabs__nav-link:focus, a.bx--tabs__nav-link:active {
    width: 100%;
    margin: 0;
    padding-left: 16px;
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  @media (min-width: 42rem) {
    a.bx--tabs__nav-link {
      border-bottom: 3px solid #dcdcdc;
      padding: 0.5rem 1rem;
      width: 6.4rem;
      margin: 0;
      line-height: inherit; }
      a.bx--tabs__nav-link:focus, a.bx--tabs__nav-link:active {
        width: 6.4rem;
        padding: 0.5rem 1rem;
        border-bottom: 2px; } }

.bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link {
  color: #000000; }
  @media (min-width: 42rem) {
    .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link {
      color: #000000;
      border-bottom: 3px solid #8c8c8c; } }

.bx--tabs__nav-item--disabled .bx--tabs__nav-link {
  color: #bebebe;
  border-bottom: 3px solid #f3f3f3; }

.bx--tabs__nav-item--disabled:hover .bx--tabs__nav-link {
  cursor: no-drop;
  border-bottom: 3px solid #f3f3f3; }

.bx--tabs__nav-item--disabled .bx--tabs__nav-link:focus,
.bx--tabs__nav-item--disabled a.bx--tabs__nav-link:active {
  outline: none;
  border-bottom: 3px solid #f3f3f3; }

.bx--tabs__nav-item:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled):not(.bx--tabs__nav-item--selected) .bx--tabs__nav-link:focus,
.bx--tabs__nav-item:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled):not(.bx--tabs__nav-item--selected) a.bx--tabs__nav-link:active {
  color: #565656; }

.bx--tabs.bx--skeleton {
  pointer-events: none;
  cursor: default; }

.bx--tabs.bx--skeleton .bx--tabs__nav-link {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 3rem;
  height: 0.48rem; }
  .bx--tabs.bx--skeleton .bx--tabs__nav-link:hover, .bx--tabs.bx--skeleton .bx--tabs__nav-link:focus, .bx--tabs.bx--skeleton .bx--tabs__nav-link:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--tabs.bx--skeleton .bx--tabs__nav-link:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--tabs.bx--skeleton .bx--tabs__nav-link:before {
        animation: none; } }

.bx--tabs.bx--skeleton .bx--tabs-trigger {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 4rem; }
  .bx--tabs.bx--skeleton .bx--tabs-trigger:hover, .bx--tabs.bx--skeleton .bx--tabs-trigger:focus, .bx--tabs.bx--skeleton .bx--tabs-trigger:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--tabs.bx--skeleton .bx--tabs-trigger:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--tabs.bx--skeleton .bx--tabs-trigger:before {
        animation: none; } }

.bx--tabs.bx--skeleton .bx--tabs-trigger svg {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }

.bx--tag {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  display: inline-flex;
  align-items: center;
  padding: 0 0.5rem;
  height: 1.5rem;
  margin: 0.25rem;
  border-radius: 0.6rem; }
  .bx--tag:not(:first-child) {
    margin-left: 0; }
  .bx--tag.bx--skeleton {
    background-color: #dcdcdc;
    color: #000000; }

.bx--tag--red {
  background-color: #fcd0d3;
  color: #a51920; }

.bx--tag--magenta {
  background-color: #ffcfe1;
  color: #a11950; }

.bx--tag--purple {
  background-color: #e6d6ff;
  color: #6e32c9; }

.bx--tag--blue {
  background-color: #c9deff;
  color: #054ada; }

.bx--tag--cyan {
  background-color: #b3e6ff;
  color: #0058a1; }

.bx--tag--teal {
  background-color: #92eeee;
  color: #006161; }

.bx--tag--green {
  background-color: #9deeb2;
  color: #10642a; }

.bx--tag--gray {
  background-color: #dcdcdc;
  color: #171717; }

.bx--tag--cool-gray {
  background-color: #d5d9e0;
  color: #13171a; }

.bx--tag--warm-gray {
  background-color: #e0dbda;
  color: #1a1717; }

.bx--tag--disabled {
  background-color: #f3f3f3;
  color: #bebebe; }
  .bx--tag--disabled:hover {
    cursor: not-allowed; }

.bx--tag--filter {
  background-color: #3d3d3d;
  color: #ffffff;
  cursor: pointer;
  padding-right: 0.08rem; }

.bx--tag--filter > svg {
  fill: #ffffff;
  margin-left: 0.16rem;
  padding: 0.08rem;
  width: 0.8rem;
  height: 0.8rem; }

.bx--tag--filter > svg:hover {
  border-radius: 50%;
  background-color: #4c4c4c; }

.bx--tag--filter:focus,
.bx--tag--filter:hover {
  outline: none; }

.bx--tag--filter:focus > svg {
  border: 2px solid #ffffff;
  border-radius: 50%; }

.bx--tag.bx--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 2.4rem;
  overflow: hidden; }
  .bx--tag.bx--skeleton:hover, .bx--tag.bx--skeleton:focus, .bx--tag.bx--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--tag.bx--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--tag.bx--skeleton:before {
        animation: none; } }

.bx--data-table-container + .bx--pagination {
  border-top: 0; }

.bx--pagination {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  width: 100%;
  background-color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #dcdcdc;
  height: 1.92rem; }
  .bx--pagination *,
  .bx--pagination *:before,
  .bx--pagination *:after {
    box-sizing: inherit; }

.bx--pagination .bx--select {
  height: 100%;
  align-items: center;
  grid-template-columns: auto 0; }

.bx--select-input__wrapper,
.bx--select-input--inline__wrapper {
  height: 100%; }

.bx--pagination .bx--select-input {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  width: auto;
  min-width: auto;
  height: 100%;
  padding: 0 2.5rem 0 1rem;
  margin-right: -0.65rem; }
  @media (min-width: 42rem) {
    .bx--pagination .bx--select-input {
      padding-right: 2.25rem;
      margin-right: 0; } }

.bx--pagination .bx--select-input:hover {
  background: #e5e5e5; }

.bx--pagination .bx--select__arrow {
  top: auto;
  bottom: auto; }
  @media (min-width: 42rem) {
    .bx--pagination .bx--select__arrow {
      right: 1rem; } }

.bx--pagination .bx--select__item-count .bx--select-input {
  border-right: 0.0625rem solid #dcdcdc; }

.bx--pagination .bx--select__page-number .bx--select-input {
  border-left: 1px solid #dcdcdc; }

.bx--pagination__left,
.bx--pagination__right {
  display: flex;
  height: 100%;
  align-items: center; }

.bx--pagination__left > .bx--form-item,
.bx--pagination__right > .bx--form-item {
  height: 100%; }

.bx--pagination__left .bx--pagination__text {
  margin-right: 0.04rem; }

.bx--pagination__right .bx--pagination__text {
  margin-right: 1rem;
  margin-left: 0.04rem; }

@media (min-width: 42rem) {
  .bx--pagination__left {
    padding: 0 1rem; } }

.bx--pagination__text {
  display: none; }
  @media (min-width: 42rem) {
    .bx--pagination__text {
      display: inline-block; } }

span.bx--pagination__text {
  margin-left: 1rem;
  color: #565656; }

.bx--pagination__button {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  border: none;
  background: none;
  cursor: pointer;
  height: 100%;
  margin: 0;
  padding: 0 0.56rem;
  border-left: 1px solid #dcdcdc;
  display: flex;
  justify-content: center;
  align-items: center;
  fill: #000000;
  transition: outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--pagination__button *,
  .bx--pagination__button *:before,
  .bx--pagination__button *:after {
    box-sizing: inherit; }

.bx--pagination__button:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--pagination__button:hover {
  background: #e5e5e5; }

.bx--pagination__button--no-index {
  fill: #bebebe;
  cursor: not-allowed; }

.bx--pagination__button:disabled:hover,
.bx--pagination__button--no-index:hover {
  cursor: not-allowed;
  fill: #bebebe;
  background: #ffffff; }

.bx--pagination--inline {
  height: 1.68rem;
  margin-top: -0.5rem;
  margin-bottom: -0.5rem;
  margin-right: -1rem; }

.bx--pagination--inline .bx--pagination__button {
  height: 1.6rem;
  border-left: 1px solid #dcdcdc;
  border-right: 1px solid #dcdcdc;
  margin: 0; }

.bx--pagination--inline .bx--pagination__button--forward {
  border-right: 0;
  padding: 0 1rem;
  margin-left: 1rem; }

.bx--pagination--inline .bx--pagination__button--backward {
  margin: 0 1rem;
  padding: 0 1rem; }

.bx--pagination.bx--skeleton .bx--skeleton__text {
  margin-right: 1rem;
  margin-bottom: 0; }

.bx--accordion {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  list-style: none;
  width: 100%; }
  .bx--accordion *,
  .bx--accordion *:before,
  .bx--accordion *:after {
    box-sizing: inherit; }

.bx--accordion__item {
  transition: all 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  border-top: 1px solid #dcdcdc;
  overflow: visible; }
  .bx--accordion__item:last-child {
    border-bottom: 1px solid #dcdcdc; }

.bx--accordion__heading {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  color: #000000;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  cursor: pointer;
  padding: 0.24rem 0;
  flex-direction: row-reverse;
  position: relative;
  width: 100%;
  margin: 0;
  transition: background-color cubic-bezier(0.2, 0, 0.38, 0.9) 110ms; }
  .bx--accordion__heading *,
  .bx--accordion__heading *:before,
  .bx--accordion__heading *:after {
    box-sizing: inherit; }
  .bx--accordion__heading::-moz-focus-inner {
    border: 0; }
  .bx--accordion__heading:hover:before, .bx--accordion__heading:focus:before {
    content: '';
    position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    height: calc(100% + 2px); }
  .bx--accordion__heading:hover:before {
    background-color: #e5e5e5; }
  .bx--accordion__heading:focus {
    outline: none; }
  .bx--accordion__heading:focus:before {
    border: 2px solid #0062ff;
    box-sizing: border-box; }

.bx--accordion__arrow {
  outline: 2px solid transparent;
  outline-offset: -2px;
  flex: 0 0 1rem;
  width: 1rem;
  height: 1rem;
  margin: 0 1rem 0 0;
  fill: #000000;
  transform: rotate(90deg);
  transition: all 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--accordion__title {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  margin: 0 0 0 1rem;
  width: 100%;
  text-align: left;
  z-index: 0; }

.bx--accordion__content {
  transition: height cubic-bezier(0.2, 0, 0.38, 0.9) 110ms, padding cubic-bezier(0.2, 0, 0.38, 0.9) 110ms;
  padding-left: 1rem;
  padding-right: 25%;
  height: 0;
  visibility: hidden;
  opacity: 0; }
  @media (max-width: 42rem) {
    .bx--accordion__content {
      padding-right: 3rem; } }
  .bx--accordion__content p {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.25rem;
    letter-spacing: 0.16px; }

.bx--accordion__item--active {
  overflow: visible; }
  .bx--accordion__item--active .bx--accordion__content {
    padding-bottom: 1.5rem;
    padding-top: 0.5rem;
    height: auto;
    visibility: visible;
    opacity: 1;
    transition: height cubic-bezier(0, 0, 0.38, 0.9) 110ms, padding-top cubic-bezier(0, 0, 0.38, 0.9) 110ms, padding-bottom cubic-bezier(0, 0, 0.38, 0.9) 110ms; }
  .bx--accordion__item--active .bx--accordion__arrow {
    /*rtl:ignore*/
    transform: rotate(-90deg);
    fill: #000000; }

.bx--accordion.bx--skeleton .bx--accordion__heading,
.bx--accordion.bx--skeleton .bx--accordion__button {
  cursor: default; }

.bx--accordion.bx--skeleton .bx--accordion__arrow {
  pointer-events: none;
  fill: #000000;
  cursor: default; }
  .bx--accordion.bx--skeleton .bx--accordion__arrow:hover, .bx--accordion.bx--skeleton .bx--accordion__arrow:focus, .bx--accordion.bx--skeleton .bx--accordion__arrow:active {
    border: none;
    outline: none;
    cursor: default; }

.bx--skeleton .bx--accordion__heading:focus .bx--accordion__arrow {
  border: none;
  outline: none;
  cursor: default; }

.bx--accordion__title.bx--skeleton__text {
  margin-bottom: 0; }

.bx--progress {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: flex;
  list-style: none; }
  .bx--progress *,
  .bx--progress *:before,
  .bx--progress *:after {
    box-sizing: inherit; }

.bx--progress-step {
  position: relative;
  display: inline-flex;
  flex-direction: row;
  min-width: 7rem;
  width: 5.12rem;
  overflow: visible; }
  .bx--progress-step .bx--tooltip__label {
    display: block; }

.bx--progress-line {
  position: absolute;
  left: 0;
  height: 1px;
  width: 5.12rem;
  border: 1px inset transparent; }

.bx--progress-step svg {
  position: relative;
  z-index: 1;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  margin: 9px 0.5rem 0 0;
  fill: #0062ff; }

.bx--progress-label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  line-height: 1.45;
  max-width: 3.52rem;
  margin: 0.5rem 0 0 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: box-shadow 110ms cubic-bezier(0.2, 0, 0.38, 0.9), color 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--progress-label::before {
    content: '';
    display: block; }

.bx--progress-label:hover {
  color: #0062ff;
  cursor: pointer;
  box-shadow: 0 0.04rem #0062ff; }

.bx--progress-label:focus {
  outline: none;
  color: #0062ff;
  box-shadow: 0 0.12rem 0 0 #0062ff; }

.bx--progress-label:active {
  color: #0062ff;
  box-shadow: 0 0.12rem 0 0 #0062ff; }

.bx--progress-label-overflow:hover ~ .bx--tooltip,
.bx--progress-label-overflow:focus ~ .bx--tooltip {
  visibility: visible; }

.bx--progress-step .bx--tooltip .bx--tooltip__caret {
  margin-left: 0.4rem; }

.bx--tooltip__text {
  padding: 0;
  margin: 0;
  font-weight: normal; }

.bx--progress-step .bx--tooltip {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  min-width: 4.6rem;
  width: 5rem;
  min-height: 1.5rem;
  margin-left: 0.88rem;
  margin-top: 1.6rem;
  padding: 0.5rem 1rem;
  display: block;
  visibility: hidden;
  color: #ffffff; }

.bx--progress-step .bx--tooltip_multi {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.16px;
  width: 6rem;
  height: auto;
  color: #ffffff; }

.bx--progress-optional {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  position: absolute;
  left: 0;
  margin-left: 1.5rem;
  margin-top: 1.12rem;
  color: #000000; }

.bx--progress-step--current .bx--progress-line {
  background-color: #0062ff; }

.bx--progress-step--current svg {
  width: 14px;
  height: 14px;
  fill: #0062ff;
  margin-top: 0.38rem; }

.bx--progress-step--incomplete svg {
  fill: #000000; }

.bx--progress-step--incomplete .bx--progress-line {
  background-color: #dcdcdc; }

.bx--progress-step--complete .bx--progress-line {
  background-color: #0062ff; }

.bx--progress-step-button {
  display: flex; }

.bx--progress-step-button--unclickable {
  outline: none; }

.bx--progress-step--disabled {
  cursor: not-allowed; }
  .bx--progress-step--disabled svg {
    fill: #bebebe;
    cursor: not-allowed; }
  .bx--progress-step--disabled .bx--progress-label,
  .bx--progress-step--disabled .bx--progress-label:hover {
    color: #bebebe;
    cursor: not-allowed;
    box-shadow: none; }
  .bx--progress-step--disabled .bx--progress-label:focus,
  .bx--progress-step--disabled .bx--progress-label:active {
    outline: none;
    box-shadow: none; }
  .bx--progress-step--disabled .bx--progress-line {
    cursor: not-allowed; }
  .bx--progress-step--disabled .bx--progress-label-overflow:hover ~ .bx--tooltip--definition .bx--tooltip--definition__bottom {
    display: none; }

.bx--progress__warning > path {
  fill: #da1e28; }

.bx--progress.bx--skeleton .bx--progress-label {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  height: 0.48rem;
  width: 1.6rem; }
  .bx--progress.bx--skeleton .bx--progress-label:hover, .bx--progress.bx--skeleton .bx--progress-label:focus, .bx--progress.bx--skeleton .bx--progress-label:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--progress.bx--skeleton .bx--progress-label:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--progress.bx--skeleton .bx--progress-label:before {
        animation: none; } }

.bx--progress--vertical {
  display: block; }

.bx--progress--vertical .bx--progress-step {
  display: list-item;
  min-height: 6rem;
  width: initial;
  min-width: initial; }
  .bx--progress--vertical .bx--progress-step svg {
    display: inline-block;
    margin: 0.1rem 0.5rem; }

.bx--progress--vertical .bx--progress-step--current svg {
  margin-left: 0.563rem; }

.bx--progress--vertical .bx--progress-label {
  display: inline-block;
  width: initial;
  max-width: none;
  vertical-align: top;
  margin: 0; }

.bx--progress--vertical .bx--progress-step .bx--tooltip {
  margin-top: 0.5rem; }

.bx--progress--vertical .bx--progress-optional {
  margin-top: auto;
  position: initial;
  margin-left: 2.25rem; }

.bx--progress--vertical .bx--progress-line {
  top: 0;
  left: 0;
  height: 100%;
  width: 1px; }

.bx--breadcrumb {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  display: inline; }
  @media (min-width: 42rem) {
    .bx--breadcrumb {
      display: flex;
      flex-wrap: wrap; } }

.bx--breadcrumb-item {
  position: relative;
  display: flex;
  align-items: center;
  margin-right: 0.5rem; }

.bx--breadcrumb-item::after {
  content: '/';
  color: #000000;
  margin-left: 0.5rem; }

.bx--breadcrumb--no-trailing-slash .bx--breadcrumb-item:last-child::after {
  content: ''; }

.bx--breadcrumb-item:last-child,
.bx--breadcrumb-item:last-child::after {
  margin-right: 0; }

.bx--breadcrumb .bx--link {
  white-space: nowrap; }

.bx--breadcrumb-item [aria-current='page'],
.bx--breadcrumb-item.bx--breadcrumb-item--current .bx--link {
  color: #000000;
  cursor: auto; }
  .bx--breadcrumb-item [aria-current='page']:hover,
  .bx--breadcrumb-item.bx--breadcrumb-item--current .bx--link:hover {
    text-decoration: none; }

.bx--breadcrumb.bx--skeleton .bx--link {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 4rem;
  height: 1rem; }
  .bx--breadcrumb.bx--skeleton .bx--link:hover, .bx--breadcrumb.bx--skeleton .bx--link:focus, .bx--breadcrumb.bx--skeleton .bx--link:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--breadcrumb.bx--skeleton .bx--link:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--breadcrumb.bx--skeleton .bx--link:before {
        animation: none; } }

.bx--toolbar {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  margin: 1rem 0; }
  .bx--toolbar > div {
    margin: 0 0.16rem; }
  .bx--toolbar .bx--search-input {
    height: 1.28rem;
    background-color: transparent;
    outline: none; }
  .bx--toolbar .bx--search-close {
    display: none; }
  .bx--toolbar .bx--overflow-menu__icon {
    fill: #565656;
    transition: fill 50ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--toolbar .bx--search-magnifier {
    fill: #565656;
    transform: scale(1.15);
    transition: all 175ms cubic-bezier(0.2, 0, 0.38, 0.9);
    top: 0.32rem;
    left: 0.24rem;
    cursor: pointer; }
  .bx--toolbar fieldset {
    border: 0;
    padding: 0; }
  .bx--toolbar .bx--toolbar-search--active {
    width: 10rem; }
    .bx--toolbar .bx--toolbar-search--active .bx--search-magnifier {
      transform: scale(1);
      top: 0.36rem; }
    .bx--toolbar .bx--toolbar-search--active .bx--search-input {
      background-color: #f3f3f3; }
    .bx--toolbar .bx--toolbar-search--active .bx--search-close {
      display: block; }
  .bx--toolbar .bx--checkbox-label {
    margin-bottom: 0; }
  .bx--toolbar .bx--overflow-menu--open > .bx--overflow-menu__icon {
    fill: #0062ff; }

.bx--toolbar-search {
  width: 1.8rem;
  transition: all 175ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--toolbar-search__btn {
  position: absolute;
  left: 0;
  top: 0;
  background: transparent;
  border: 0;
  height: 1.28rem;
  width: 1.28rem; }
  .bx--toolbar-search__btn:focus {
    outline: 1px solid #0062ff; }

.bx--toolbar-filter-icon {
  padding-left: 0;
  padding-right: 0; }

.bx--toolbar-menu__title {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  font-weight: 600;
  padding: 0.5rem 1.25rem; }

.bx--toolbar-menu__option {
  padding: 0.5rem 1.25rem; }

.bx--toolbar-menu__divider {
  width: 100%;
  border: 0;
  border-top: 1px solid #dcdcdc; }

.bx--radio-button-group {
  border: none; }

.bx--toolbar-search:not(.bx--toolbar-search--active) .bx--search-input {
  border-bottom: none; }

.bx--time-picker {
  display: flex;
  align-items: flex-end; }

.bx--time-picker[data-invalid] .bx--time-picker__input-field {
  outline: 2px solid #da1e28;
  outline-offset: -2px; }

.bx--time-picker__select {
  justify-content: center; }
  .bx--time-picker__select:not(:last-of-type) {
    margin: 0 0.125rem; }

.bx--time-picker__input {
  display: flex;
  flex-direction: column; }

.bx--time-picker .bx--select-input {
  min-width: auto;
  width: auto;
  padding-right: 1.92rem;
  line-height: 1; }

.bx--time-picker__input-field {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  outline: 2px solid transparent;
  outline-offset: -2px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.32px;
  display: flex;
  align-items: center;
  width: 4.875rem;
  height: 1.6rem;
  transition: outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--time-picker__input-field *,
  .bx--time-picker__input-field *:before,
  .bx--time-picker__input-field *:after {
    box-sizing: inherit; }

.bx--slider-container {
  display: flex;
  align-items: center;
  user-select: none; }

.bx--slider {
  position: relative;
  width: 100%;
  margin: 0 1rem;
  max-width: 25.6rem;
  min-width: 8rem; }

.bx--slider__range-label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  letter-spacing: 0.32px;
  color: #000000; }
  .bx--slider__range-label:last-of-type {
    margin-right: 1rem; }

.bx--slider__track {
  position: absolute;
  width: 100%;
  height: 0.08rem;
  background: #dcdcdc;
  cursor: pointer;
  transform: translate(0%, -50%); }

.bx--slider__track:before {
  content: '';
  position: absolute;
  display: inline-block;
  height: 0.16rem;
  width: 0.08rem;
  left: 50%;
  transform: translate(-50%, 0);
  top: -0.2rem;
  background: #dcdcdc; }

.bx--slider__filled-track {
  position: absolute;
  width: 100%;
  height: 0.08rem;
  background: #000000;
  transform-origin: left;
  pointer-events: none;
  transform: translate(0%, -50%);
  transition: background 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--slider__thumb {
  position: absolute;
  height: 0.56rem;
  width: 0.56rem;
  background: #000000;
  border-radius: 50%;
  box-shadow: inset 0 0 0 1px transparent, inset 0 0 0 2px transparent;
  top: 0;
  transform: translate(-50%, -50%);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), background 110ms cubic-bezier(0.2, 0, 0.38, 0.9), box-shadow 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  cursor: pointer;
  outline: none;
  z-index: 3; }
  .bx--slider__thumb:hover {
    transform: translate(-50%, -50%) scale(1.42857); }
  .bx--slider__thumb:focus {
    transform: translate(-50%, -50%) scale(1.42857);
    box-shadow: inset 0 0 0 2px #0062ff, inset 0 0 0 3px #ffffff;
    background-color: #0062ff; }
  .bx--slider__thumb:active {
    transform: translate(-50%, -50%) scale(1.42857);
    box-shadow: inset 0 0 0 2px #0062ff; }

.bx--slider__input {
  display: none; }

.bx--slider-text-input,
.bx-slider-text-input {
  width: 2.56rem;
  height: 1.6rem;
  padding: 0;
  text-align: center;
  -moz-appearance: textfield; }
  .bx--slider-text-input::-webkit-outer-spin-button, .bx--slider-text-input::-webkit-inner-spin-button,
  .bx-slider-text-input::-webkit-outer-spin-button,
  .bx-slider-text-input::-webkit-inner-spin-button {
    display: none; }

.bx--slider__thumb:focus ~ .bx--slider__filled-track {
  background-color: #0062ff; }

.bx--label--disabled ~ .bx--slider-container > .bx--slider__range-label {
  color: #bebebe; }

.bx--slider--disabled .bx--slider__thumb {
  background-color: #dcdcdc; }
  .bx--slider--disabled .bx--slider__thumb:hover {
    transform: translate(-50%, -50%);
    cursor: not-allowed; }
  .bx--slider--disabled .bx--slider__thumb:focus {
    box-shadow: none;
    outline: none;
    background-color: #dcdcdc;
    transform: translate(-50%, -50%); }
  .bx--slider--disabled .bx--slider__thumb:active {
    background: #dcdcdc;
    transform: translate(-50%, -50%); }

.bx--slider--disabled .bx--slider__track,
.bx--slider--disabled .bx--slider__filled-track,
.bx--slider--disabled .bx--slider__thumb:focus ~ .bx--slider__filled-track {
  background-color: #dcdcdc;
  cursor: not-allowed; }

.bx--slider--disabled ~ .bx--form-item .bx--slider-text-input,
.bx--slider--disabled ~ .bx--slider-text-input {
  background-color: #ffffff;
  color: #bebebe;
  transition: none;
  cursor: not-allowed; }
  .bx--slider--disabled ~ .bx--form-item .bx--slider-text-input:active, .bx--slider--disabled ~ .bx--form-item .bx--slider-text-input:focus, .bx--slider--disabled ~ .bx--form-item .bx--slider-text-input:hover,
  .bx--slider--disabled ~ .bx--slider-text-input:active,
  .bx--slider--disabled ~ .bx--slider-text-input:focus,
  .bx--slider--disabled ~ .bx--slider-text-input:hover {
    outline: none;
    color: #bebebe; }

.bx--slider-container.bx--skeleton .bx--slider__range-label {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 0.8rem;
  height: 0.48rem; }
  .bx--slider-container.bx--skeleton .bx--slider__range-label:hover, .bx--slider-container.bx--skeleton .bx--slider__range-label:focus, .bx--slider-container.bx--skeleton .bx--slider__range-label:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--slider-container.bx--skeleton .bx--slider__range-label:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--slider-container.bx--skeleton .bx--slider__range-label:before {
        animation: none; } }

.bx--slider-container.bx--skeleton .bx--slider__track {
  cursor: default;
  pointer-events: none; }

.bx--slider-container.bx--skeleton .bx--slider__thumb {
  left: 50%;
  cursor: default;
  pointer-events: none; }

.bx--tile {
  display: block;
  min-width: 8rem;
  min-height: 4rem;
  background-color: #ffffff;
  position: relative;
  padding: 1rem;
  outline: 2px solid transparent;
  outline-offset: -2px; }
  .bx--tile:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }

.bx--tile--clickable,
.bx--tile--selectable,
.bx--tile--expandable {
  transition: 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
  cursor: pointer; }
  .bx--tile--clickable:hover,
  .bx--tile--selectable:hover,
  .bx--tile--expandable:hover {
    background: #e5e5e5; }
  .bx--tile--clickable:hover .bx--tile__checkmark, .bx--tile--clickable:focus .bx--tile__checkmark,
  .bx--tile--selectable:hover .bx--tile__checkmark,
  .bx--tile--selectable:focus .bx--tile__checkmark,
  .bx--tile--expandable:hover .bx--tile__checkmark,
  .bx--tile--expandable:focus .bx--tile__checkmark {
    opacity: 1; }

.bx--tile--clickable:focus,
.bx--tile--expandable:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--tile--selectable {
  padding-right: 3rem; }

.bx--tile__checkmark,
.bx--tile__chevron {
  position: absolute;
  transition: 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  border: none;
  background: transparent; }

.bx--tile__checkmark {
  height: 1rem;
  top: 1rem;
  right: 1rem;
  opacity: 0; }
  .bx--tile__checkmark svg {
    border-radius: 50%;
    fill: #565656; }
  .bx--tile__checkmark:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }

.bx--tile__chevron {
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
  height: 1rem; }
  .bx--tile__chevron svg {
    transform-origin: center;
    transition: 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
    fill: #000000; }
  .bx--tile__chevron:hover {
    cursor: pointer; }
  .bx--tile__chevron:focus {
    outline: none; }

.bx--tile--expandable {
  overflow: hidden;
  transition: max-height 150ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--tile-content__above-the-fold {
  display: block; }

.bx--tile-content__below-the-fold {
  display: block;
  visibility: hidden;
  opacity: 0;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9), visibility 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--tile--is-expanded {
  overflow: visible;
  transition: max-height 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }
  .bx--tile--is-expanded .bx--tile__chevron svg {
    transform: rotate(-180deg); }
  .bx--tile--is-expanded .bx--tile-content__below-the-fold {
    visibility: visible;
    opacity: 1;
    transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9), visibility 110ms cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--tile--is-selected {
  outline: 1px solid #3d3d3d;
  outline-offset: -1px; }

.bx--tile--is-selected .bx--tile__checkmark {
  opacity: 1; }

.bx--tile-input:checked + .bx--tile > .bx--tile__checkmark svg {
  fill: #000000; }

.bx--tile-content {
  width: 100%;
  height: 100%; }

.bx--tile-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }

.bx--skeleton__text {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  width: 100%;
  height: 1rem;
  margin-bottom: 0.5rem; }
  .bx--skeleton__text:hover, .bx--skeleton__text:focus, .bx--skeleton__text:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--skeleton__text:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--skeleton__text:before {
        animation: none; } }

.bx--skeleton__heading {
  height: 1.5rem; }

.bx--icon--skeleton {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  display: inline-block;
  width: 0.64rem;
  height: 0.64rem; }
  .bx--icon--skeleton:hover, .bx--icon--skeleton:focus, .bx--icon--skeleton:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--icon--skeleton:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--icon--skeleton:before {
        animation: none; } }

.bx--skeleton__placeholder {
  position: relative;
  border: none;
  padding: 0;
  box-shadow: none;
  pointer-events: none;
  background: #e5e5e5;
  height: 4rem;
  width: 4rem; }
  .bx--skeleton__placeholder:hover, .bx--skeleton__placeholder:focus, .bx--skeleton__placeholder:active {
    border: none;
    outline: none;
    cursor: default; }
  .bx--skeleton__placeholder:before {
    content: '';
    width: 0%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #bebebe;
    animation: 3000ms ease-in-out skeleton infinite; }
    @media (prefers-reduced-motion: reduce) {
      .bx--skeleton__placeholder:before {
        animation: none; } }

@keyframes rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg); } }

@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg); } }

/* Stroke animations */
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240; }
  100% {
    stroke-dashoffset: 40; } }

@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40; }
  100% {
    stroke-dashoffset: 240; } }

@keyframes stroke {
  100% {
    stroke-dashoffset: 0; } }

.bx--inline-loading {
  display: flex;
  width: 100%;
  min-height: 2rem;
  align-items: center; }
  .bx--inline-loading .bx--loading__svg circle {
    stroke-width: 12; }
  .bx--inline-loading .bx--loading__stroke {
    stroke-dashoffset: 99; }

.bx--inline-loading__text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  color: #565656; }

.bx--inline-loading__animation {
  position: relative;
  width: 2rem;
  height: 2rem;
  display: flex;
  justify-content: center;
  align-items: center; }

.bx--inline-loading__checkmark-container {
  fill: #0062ff; }
  .bx--inline-loading__checkmark-container.bx--inline-loading__svg {
    width: 0.75rem;
    position: absolute;
    top: 0.75rem; }
  .bx--inline-loading__checkmark-container[hidden] {
    display: none; }

.bx--inline-loading__checkmark {
  fill: none;
  stroke: #0062ff;
  transform-origin: 50% 50%;
  stroke-width: 1.8;
  stroke-dasharray: 12;
  stroke-dashoffset: 12;
  animation-name: stroke;
  animation-duration: 0.25s;
  animation-fill-mode: forwards; }

.bx--inline-loading--error {
  fill: #da1e28;
  width: 0.64rem;
  height: 0.64rem; }
  .bx--inline-loading--error[hidden] {
    display: none; }

.bx--loading--small .bx--inline-loading__svg {
  stroke: #0062ff; }

/* If IE11 Don't show check animation */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .bx--inline-loading__checkmark-container {
    top: 1px;
    right: 0.5rem; }
  .bx--inline-loading__checkmark {
    animation: none;
    stroke-dashoffset: 0;
    stroke-dasharray: 0; } }

.bx--pagination-nav {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  line-height: 0; }
  .bx--pagination-nav *,
  .bx--pagination-nav *:before,
  .bx--pagination-nav *:after {
    box-sizing: inherit; }

.bx--pagination-nav__list {
  align-items: center;
  display: flex;
  list-style: none; }

.bx--pagination-nav__list-item {
  padding: 0; }
  .bx--pagination-nav__list-item:first-child {
    padding-left: 0; }
  .bx--pagination-nav__list-item:last-child {
    padding-right: 0; }

.bx--pagination-nav__page {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  border-radius: 0;
  color: #565656;
  display: block;
  font-weight: 400;
  line-height: 1;
  min-width: 3rem;
  outline: 0;
  padding: 1.0625rem 0.25rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: background-color, color;
  transition: 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  user-select: none; }
  .bx--pagination-nav__page *,
  .bx--pagination-nav__page *:before,
  .bx--pagination-nav__page *:after {
    box-sizing: inherit; }
  .bx--pagination-nav__page::-moz-focus-inner {
    border: 0; }
  .bx--pagination-nav__page:hover {
    background-color: #e5e5e5;
    color: #565656; }
  .bx--pagination-nav__page:focus {
    outline: 2px solid #0062ff;
    outline-offset: -2px; }
  .bx--pagination-nav__page:disabled, .bx--pagination-nav__page.bx--pagination-nav__page--disabled {
    background: none;
    color: rgba(86, 86, 86, 0.5);
    outline: none;
    pointer-events: none; }
  .bx--pagination-nav__page:not(.bx--pagination-nav__page--direction)::after {
    background-color: #0062ff;
    bottom: 0;
    content: '';
    display: block;
    height: 0.25rem;
    left: 50%;
    position: absolute;
    opacity: 0;
    transition: width 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
    width: 0; }
  .bx--pagination-nav__page--active + .bx--pagination-nav__page::after, .bx--pagination-nav__page.bx--pagination-nav__page--active::after {
    left: calc(50% - 0.5rem);
    opacity: 1;
    width: 1rem; }
  .bx--pagination-nav__page.bx--pagination-nav__page--active {
    background-color: initial;
    color: #565656;
    font-weight: 600;
    outline: none; }
  .bx--pagination-nav__page .bx--pagination-nav__icon {
    fill: currentColor;
    pointer-events: none; }

.bx--pagination-nav__page--direction {
  align-items: center;
  display: flex;
  height: 3rem;
  justify-content: center;
  line-height: 0;
  width: 3rem; }

.bx--pagination-nav__select {
  position: relative; }

.bx--pagination-nav__page--select {
  appearance: none;
  max-height: 3rem;
  text-indent: calc(50% - 4.5px); }

@-moz-document url-prefix() {
  .bx--pagination-nav__page--select {
    text-indent: 0; } }

.bx--pagination-nav__select-icon-wrapper {
  height: 100%;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%; }
  .bx--pagination-nav__select-icon-wrapper:not(.bx--pagination-nav__page--direction)::after {
    background-color: #0062ff;
    bottom: 0;
    content: '';
    display: block;
    height: 0.25rem;
    left: 50%;
    position: absolute;
    opacity: 0;
    transition: width 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
    width: 0; }
  .bx--pagination-nav__page--active + .bx--pagination-nav__select-icon-wrapper::after, .bx--pagination-nav__select-icon-wrapper.bx--pagination-nav__page--active::after {
    left: calc(50% - 0.5rem);
    opacity: 1;
    width: 1rem; }
  .bx--pagination-nav__page--active + .bx--pagination-nav__select-icon-wrapper .bx--pagination-nav__select-icon {
    display: none; }

.bx--pagination-nav__select-icon {
  left: calc(50% - 0.5rem);
  pointer-events: none;
  position: absolute;
  top: calc(50% - 0.5rem); }

.bx--pagination-nav__accessibility-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }

.bx--header {
  display: flex;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 3rem;
  background-color: #171717;
  border-bottom: 1px solid #3d3d3d;
  z-index: 6000; }

.bx--header__action {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  width: 3rem;
  height: 3rem;
  border: 0.08rem solid transparent;
  transition: background-color 110ms, border-color 110ms; }
  .bx--header__action *,
  .bx--header__action *:before,
  .bx--header__action *:after {
    box-sizing: inherit; }
  .bx--header__action::-moz-focus-inner {
    border: 0; }

.bx--header__action > svg.bx--navigation-menu-panel-collapse-icon,
.bx--header__action--active > svg.bx--navigation-menu-panel-expand-icon {
  display: none; }

.bx--header__action--active > svg.bx--navigation-menu-panel-collapse-icon {
  display: inline; }

.bx--header__action > svg.bx--navigation-menu-panel-collapse-icon,
.bx--header__action--active > svg.bx--navigation-menu-panel-expand-icon {
  display: none; }

.bx--header__action--active > svg.bx--navigation-menu-panel-collapse-icon {
  display: inline; }

.bx--header__action:hover {
  background-color: #353535; }

.bx--header__action--active {
  border-left: 1px solid #3d3d3d;
  border-right: 1px solid #3d3d3d;
  border-bottom: 1px solid #171717; }

.bx--header__action:focus {
  border-color: #ffffff;
  outline: none; }

.bx--header__action:active {
  background-color: #3d3d3d; }

.bx--header__action > svg {
  fill: #ffffff; }

.bx--header__menu-trigger {
  margin-right: -0.32rem; }

.bx--header__menu-trigger > svg {
  fill: #f3f3f3; }

.bx--header__menu-trigger:hover {
  fill: #2c2c2c; }

.bx--header__menu-toggle {
  display: block; }

@media (min-width: 66rem) {
  .bx--header__menu-toggle__hidden {
    display: none; } }

a.bx--header__name {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 2rem 0 1rem;
  text-decoration: none;
  font-weight: 600;
  letter-spacing: 0.1px;
  line-height: 20px;
  user-select: none;
  border: 0.08rem solid transparent;
  transition: border-color 110ms;
  outline: none; }

a.bx--header__name:focus {
  border-color: #ffffff; }

.bx--header__name--prefix {
  font-weight: 400; }

a.bx--header__name,
a.bx--header__name:hover {
  color: #f3f3f3; }

.bx--header__nav {
  height: 100%;
  padding-left: 1rem;
  position: relative;
  display: block; }
  @media (max-width: 66rem) {
    .bx--header__nav {
      display: none; } }
  .bx--header__nav::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 0.96rem;
    width: 0.04rem;
    background-color: #3d3d3d; }

.bx--header__menu-bar[role='menubar'] {
  display: flex;
  height: 100%; }

a.bx--header__menu-item[role='menuitem'] {
  display: flex;
  align-items: center;
  color: #bebebe;
  padding: 0 1rem;
  height: 100%;
  font-size: 0.56rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 0.72rem;
  text-decoration: none;
  user-select: none;
  border: 2px solid transparent;
  transition: background-color 110ms, border-color 110ms, color 110ms; }

a.bx--header__menu-item[role='menuitem']:hover {
  background-color: #2c2c2c;
  color: #f3f3f3; }

.bx--header__action:active,
a.bx--header__menu-item[role='menuitem']:active {
  background-color: #3d3d3d;
  color: #f3f3f3; }

a.bx--header__menu-item[role='menuitem']:focus {
  border-color: #ffffff;
  color: #f3f3f3;
  outline: none; }

a.bx--header__menu-item[role='menuitem']:hover > svg,
a.bx--header__menu-item[role='menuitem']:active > svg,
a.bx--header__menu-item[role='menuitem']:focus > svg {
  fill: #f3f3f3; }

.bx--header__submenu {
  position: relative; }

.bx--header__menu-title[role='menuitem'][aria-haspopup='true'] {
  position: relative; }

.bx--header__menu-title[role='menuitem'][aria-expanded='true'] {
  background-color: #282828;
  color: #ffffff;
  z-index: 6001; }

.bx--header__menu-title[role='menuitem'][aria-expanded='true'] > .bx--header__menu-arrow {
  transform: rotate(180deg); }

.bx--header__menu[role='menu'] {
  display: none; }

.bx--header__menu-title[role='menuitem'][aria-expanded='true'] + .bx--header__menu {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  width: 12.5rem;
  flex-direction: column;
  transform: translateY(100%);
  background-color: #282828;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.5);
  z-index: 6000; }

.bx--header__menu-title[role='menuitem'][aria-expanded='true'] + .bx--header__menu .bx--header__menu-item:hover {
  background-color: #353535; }

.bx--header__menu-title[role='menuitem'][aria-expanded='true'] + .bx--header__menu .bx--header__menu-item:active {
  background-color: #3d3d3d; }

.bx--header__menu .bx--header__menu-item[role='menuitem'] {
  height: 3rem; }

.bx--header__menu .bx--header__menu-item[role='menuitem']:hover {
  background-color: #282828;
  color: #f3f3f3; }

.bx--header__menu-arrow {
  fill: #bebebe;
  margin-left: 0.5rem;
  transition: transform 110ms, fill 110ms; }

.bx--header__global {
  display: flex;
  justify-content: flex-end;
  flex: 1 1 0%;
  height: 100%; }

.bx--skip-to-content {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  visibility: visible;
  white-space: nowrap; }

.bx--skip-to-content:focus {
  display: flex;
  align-items: center;
  top: 0;
  left: 0;
  width: auto;
  height: 3rem;
  clip: auto;
  border: 4px solid #0062ff;
  z-index: 9999;
  background-color: #171717;
  color: #f3f3f3;
  outline: none;
  padding: 0 1rem; }

.bx--header-panel {
  transition-timing-function: cubic-bezier(0.2, 0, 1, 0.9);
  position: fixed;
  top: 3rem;
  bottom: 0;
  right: 0;
  width: 0;
  background-color: #171717;
  border: none;
  will-change: width;
  transition: width 0.11s;
  overflow: hidden;
  z-index: 6000;
  color: #bebebe; }

.bx--header-panel--expanded {
  width: 16rem;
  border-left: 1px solid #3d3d3d;
  border-right: 1px solid #3d3d3d; }

.bx--panel--overlay {
  position: fixed;
  top: 3rem;
  right: 0;
  bottom: 0;
  width: 16rem;
  will-change: transform;
  transform: translate3d(100%, 0, 0);
  padding: 1rem 0;
  overflow-y: auto;
  z-index: 1000;
  background-color: #171717;
  height: 100%;
  overflow-x: hidden;
  transition: transform 0.11s cubic-bezier(0.2, 0, 0.38, 0.9); }

.bx--panel--expanded {
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.25);
  transform: translate3d(0, 0, 0); }

.bx--product-switcher__search {
  padding: 0 1rem;
  margin-bottom: 1.5rem; }

.bx--search--shell input {
  background-color: #dcdcdc; }

.bx--product-switcher__subheader,
.bx--product-switcher__all-btn {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  padding: 0.5rem;
  color: #bebebe; }

.bx--product-switcher__subheader {
  padding-left: 3.5rem; }

.bx--product-switcher__all-btn {
  padding-left: 3.5rem; }

.bx--product-switcher__all-btn,
.bx--product-switcher__back-btn {
  display: inline-block;
  background: transparent;
  width: 100%;
  border: none;
  color: #0062ff;
  cursor: pointer;
  text-align: left; }

.bx--product-switcher__all-btn:hover,
.bx--product-switcher__back-btn:hover {
  text-decoration: underline; }

.bx--product-switcher__all-btn:focus,
.bx--product-switcher__back-btn:focus {
  outline: none;
  box-shadow: inset 0 0 0 3px #0062ff; }

.bx--product-switcher__back-btn {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  padding: 0.5rem 1rem; }

.bx--product-switcher__back-arrow {
  fill: #0062ff;
  margin-right: 1rem; }

.bx--product-list__item {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center; }

.bx--product-list__item:hover {
  background: #dcdcdc; }

.bx--product-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  padding: 0.5rem 1rem;
  text-decoration: none; }

.bx--product-link:focus {
  outline: none;
  box-shadow: inset 0 0 0 3px #0062ff; }

.bx--product-switcher__icon {
  margin-right: 1rem; }

.bx--product-link__name {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  margin-left: 0.25rem;
  font-weight: 400;
  color: #bebebe; }

.bx--product-switcher__product-list .bx--overflow-menu {
  display: none;
  justify-content: center;
  align-items: center;
  width: 2.5rem; }
  .bx--product-switcher__product-list .bx--overflow-menu.bx--overflow-menu--open {
    display: flex; }

.bx--product-switcher__product-list .bx--overflow-menu > svg {
  fill: #bebebe; }

.bx--product-switcher__product-list .bx--overflow-menu:hover {
  background: #bebebe; }

.bx--product-switcher__product-list .bx--overflow-menu:hover > svg {
  fill: #bebebe; }

.bx--product-switcher__product-list .bx--overflow-menu:focus {
  display: flex;
  outline: none;
  box-shadow: inset 0 0 0 3px #0062ff; }

.bx--product-switcher__product-list .bx--overflow-menu-options__option:hover {
  background: #ffffff; }

.bx--product-list__item:hover .bx--overflow-menu {
  display: flex; }

.bx--switcher {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #bebebe; }

.bx--switcher__item {
  width: 100%;
  height: 2rem; }

.bx--switcher__item:nth-child(1) {
  margin-top: 1rem; }

.bx--switcher__item--divider {
  display: block;
  width: 8.96rem;
  height: 1px;
  margin: 0.5rem 1rem;
  background: #3d3d3d;
  border: none; }

.bx--switcher__item-link {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  display: block;
  height: 2rem;
  text-decoration: none;
  padding: 0.24rem 1rem;
  color: #bebebe; }
  .bx--switcher__item-link:hover:not(.bx--switcher__item-link--selected) {
    background: #2c2c2c;
    color: #f3f3f3;
    cursor: pointer; }
  .bx--switcher__item-link:focus {
    outline: 2px solid #ffffff;
    outline-offset: -2px; }
  .bx--switcher__item-link:active {
    background: #3d3d3d;
    color: #f3f3f3; }

.bx--switcher__item-link--selected {
  background: #282828;
  color: #f3f3f3; }

.bx--side-nav {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3rem;
  max-width: 16rem;
  color: #565656;
  background-color: #ffffff;
  will-change: width;
  transition: width 0.11s cubic-bezier(0.2, 0, 1, 0.9);
  overflow: hidden;
  z-index: 6000; }

.bx--side-nav--ux {
  top: 3rem;
  width: 16rem; }
  @media (max-width: 66rem) {
    .bx--side-nav--ux {
      width: 0; } }

.bx--side-nav--rail {
  width: 3rem; }

.bx--side-nav--hidden {
  width: 0; }

.bx--side-nav:not(.bx--side-nav--fixed):hover,
.bx--side-nav--expanded {
  width: 16rem; }

.bx--side-nav__overlay {
  position: absolute;
  top: 1.92rem;
  height: 0;
  width: 0;
  background-color: transparent;
  opacity: 0;
  transition: opacity 240ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 240ms cubic-bezier(0.2, 0, 0.38, 0.9); }

@media (max-width: 66rem) {
  .bx--side-nav__overlay-active {
    height: 100vh;
    width: 100%;
    background-color: rgba(23, 23, 23, 0.5);
    opacity: 1;
    transition: opacity 240ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 240ms cubic-bezier(0.2, 0, 0.38, 0.9); } }

.bx--header ~ .bx--side-nav {
  top: 3rem;
  height: calc(100% - 48px); }

.bx--side-nav--fixed {
  width: 16rem; }

.bx--side-nav--collapsed {
  width: 16rem;
  transform: translateX(-16rem); }

.bx--side-nav__navigation {
  display: flex;
  flex-direction: column;
  height: 100%; }

.bx--side-nav__header {
  display: flex;
  border-bottom: 1px solid #3d3d3d;
  width: 100%;
  height: 3rem;
  max-width: 100%; }
  .bx--side-nav:hover .bx--side-nav__header,
  .bx--side-nav--fixed .bx--side-nav__header,
  .bx--side-nav--expanded .bx--side-nav__header {
    height: auto; }

.bx--side-nav--ux .bx--side-nav__header {
  height: auto; }

.bx--side-nav__details {
  display: flex;
  flex-direction: column;
  padding-right: 1rem;
  flex: 1;
  min-width: 0;
  opacity: 0;
  visibility: hidden; }
  .bx--side-nav:hover .bx--side-nav__details,
  .bx--side-nav--fixed .bx--side-nav__details,
  .bx--side-nav--expanded .bx--side-nav__details {
    visibility: visible;
    opacity: 1; }

.bx--side-nav--ux .bx--side-nav__details {
  opacity: 1;
  visibility: inherit; }

.bx--side-nav__title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 0.56rem;
  font-weight: 600;
  letter-spacing: 0.1px;
  margin-top: 1rem;
  user-select: none; }

.bx--side-nav__title,
.bx--side-nav__select {
  padding-left: 0.5rem; }

.bx--side-nav__switcher {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between; }

.bx--side-nav__switcher-chevron {
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0.5rem;
  bottom: 0;
  fill: #565656; }

.bx--side-nav__select {
  outline: 2px solid transparent;
  outline-offset: -2px;
  appearance: none;
  flex: 1 1 0%;
  background-color: #171717;
  color: #f3f3f3;
  height: 100%;
  border: none;
  border-radius: 0;
  cursor: pointer;
  font-size: 0.48rem;
  height: 2rem;
  min-width: 0;
  padding-right: 2rem;
  transition: outline 110ms; }

.bx--side-nav__select:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--side-nav__footer {
  flex: 0 0 1.92rem;
  width: 100%;
  background-color: #ffffff; }

.bx--side-nav__toggle {
  outline: 2px solid transparent;
  outline-offset: -2px;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  height: 100%;
  text-align: left;
  transition: outline 110ms; }
  .bx--side-nav__toggle *,
  .bx--side-nav__toggle *:before,
  .bx--side-nav__toggle *:after {
    box-sizing: inherit; }
  .bx--side-nav__toggle::-moz-focus-inner {
    border: 0; }

.bx--side-nav__toggle:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--side-nav__toggle {
  padding-left: 1rem; }

.bx--side-nav__items {
  flex: 1 1 0%;
  overflow: hidden;
  padding: 1rem 0 0; }
  .bx--side-nav:hover .bx--side-nav__items,
  .bx--side-nav--fixed .bx--side-nav__items,
  .bx--side-nav--expanded .bx--side-nav__items {
    overflow-y: auto; }

.bx--side-nav--ux .bx--side-nav__items {
  overflow-y: auto; }

.bx--side-nav__item {
  width: 3rem;
  height: 3rem;
  overflow: hidden; }
  .bx--side-nav:hover .bx--side-nav__item,
  .bx--side-nav--fixed .bx--side-nav__item,
  .bx--side-nav--expanded .bx--side-nav__item {
    width: auto;
    height: auto; }

.bx--side-nav--ux .bx--side-nav__item {
  width: auto;
  height: auto; }

.bx--side-nav__item:not(.bx--side-nav__item--active):hover .bx--side-nav__item:not(.bx--side-nav__item--active) > .bx--side-nav__submenu:hover,
.bx--side-nav__item:not(.bx--side-nav__item--active) > .bx--side-nav__link:hover,
.bx--side-nav__menu[role='menu'] a.bx--side-nav__link[role='menuitem']:not(.bx--side-nav__link--current):not([aria-current='page']):hover,
.bx--side-nav a.bx--header__menu-item[role='menuitem']:hover,
.bx--side-nav .bx--header__menu-title[role='menuitem'][aria-expanded='true']:hover {
  background-color: #e5e5e5;
  color: #171717; }

.bx--side-nav__item:not(.bx--side-nav__item--active) > .bx--side-nav__link:hover > span,
.bx--side-nav__item:not(.bx--side-nav__item--active) .bx--side-nav__menu-item > .bx--side-nav__link:hover > span {
  color: #171717; }

.bx--side-nav__item--large {
  height: 3rem; }

.bx--side-nav__submenu[aria-haspopup='true'] {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  padding: 0 1rem;
  display: flex;
  align-items: center;
  color: #565656;
  height: 2rem;
  user-select: none;
  transition: color 110ms, background-color 110ms, outline 110ms; }
  .bx--side-nav__submenu[aria-haspopup='true'] *,
  .bx--side-nav__submenu[aria-haspopup='true'] *:before,
  .bx--side-nav__submenu[aria-haspopup='true'] *:after {
    box-sizing: inherit; }
  .bx--side-nav__submenu[aria-haspopup='true']::-moz-focus-inner {
    border: 0; }

.bx--side-nav__submenu:hover {
  background-color: #e5e5e5;
  color: #171717; }

.bx--side-nav__submenu:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

.bx--side-nav__submenu-title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left; }

.bx--side-nav__icon.bx--side-nav__submenu-chevron {
  flex: 1;
  display: flex;
  justify-content: flex-end; }

.bx--side-nav__submenu-chevron > svg {
  transition: transform 110ms;
  height: 0.64rem;
  width: 0.64rem; }

.bx--side-nav__submenu[aria-expanded='true'] .bx--side-nav__submenu-chevron > svg {
  transform: rotate(180deg); }

.bx--side-nav__item--large .bx--side-nav__submenu {
  height: 3rem; }

.bx--side-nav__item--active .bx--side-nav__submenu:hover {
  background-color: #e5e5e5;
  color: #171717; }

.bx--side-nav__item--active .bx--side-nav__submenu[aria-expanded='false'] {
  background-color: #e5e5e5;
  color: #171717;
  position: relative; }
  .bx--side-nav__item--active .bx--side-nav__submenu[aria-expanded='false']::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 4px;
    background-color: #0062ff; }

.bx--side-nav__item--active .bx--side-nav__submenu-title {
  font-weight: 600;
  color: #171717; }

.bx--side-nav__menu[role='menu'] {
  display: block;
  visibility: hidden;
  max-height: 0; }

.bx--side-nav__submenu[aria-expanded='true'] + .bx--side-nav__menu[role='menu'] {
  max-height: 60rem;
  visibility: inherit; }

.bx--side-nav__menu[role='menu'] a.bx--side-nav__link[role='menuitem'] {
  height: 2rem;
  min-height: 2rem;
  padding-left: 2rem;
  font-weight: 400; }

.bx--side-nav__item.bx--side-nav__item--icon a.bx--side-nav__link[role='menuitem'] {
  padding-left: 4.5rem; }

.bx--side-nav__menu[role='menu'] a.bx--side-nav__link--current,
.bx--side-nav__menu[role='menu'] a.bx--side-nav__link[aria-current='page'],
a.bx--side-nav__link--current {
  background-color: #dcdcdc; }
  .bx--side-nav__menu[role='menu'] a.bx--side-nav__link--current > span,
  .bx--side-nav__menu[role='menu'] a.bx--side-nav__link[aria-current='page'] > span,
  a.bx--side-nav__link--current > span {
    color: #171717;
    font-weight: 600; }

a.bx--side-nav__link--current > span.bx--side-nav__link-text {
  color: #171717;
  font-weight: 600; }

a.bx--side-nav__link,
.bx--side-nav a.bx--header__menu-item[role='menuitem'],
.bx--side-nav .bx--header__menu-title[role='menuitem'][aria-expanded='true'] + .bx--header__menu {
  outline: 2px solid transparent;
  outline-offset: -2px;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  letter-spacing: 0.16px;
  position: relative;
  display: flex;
  align-items: center;
  text-decoration: none;
  min-height: 2rem;
  padding: 0 1rem;
  transition: color 110ms, background-color 110ms, outline 110ms; }

.bx--side-nav__item--large a.bx--side-nav__link {
  height: 3rem; }

a.bx--side-nav__link > .bx--side-nav__link-text,
.bx--side-nav a.bx--header__menu-item[role='menuitem'] .bx--text-truncate-end {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #565656;
  font-size: 0.56rem;
  letter-spacing: 0.1px;
  line-height: 0.8rem;
  user-select: none; }

a.bx--side-nav__link:focus,
.bx--side-nav a.bx--header__menu-item[role='menuitem']:focus {
  outline: 2px solid #0062ff;
  outline-offset: -2px; }

a.bx--side-nav__link[aria-current='page'],
a.bx--side-nav__link--current {
  font-weight: 600; }

a.bx--side-nav__link[aria-current='page']::before,
a.bx--side-nav__link--current::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 4px;
  background-color: #0062ff; }

.bx--side-nav__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 1rem; }

.bx--side-nav__icon:not(.bx--side-nav__submenu-chevron) {
  margin-right: 1.5rem; }

.bx--side-nav__icon > svg {
  fill: #565656;
  width: 1rem;
  height: 1rem; }

.bx--side-nav__icon > svg.bx--side-nav-collapse-icon {
  display: none; }

.bx--side-nav--expanded .bx--side-nav__icon > svg.bx--side-nav-expand-icon {
  display: none; }

.bx--side-nav--expanded .bx--side-nav__icon > svg.bx--side-nav-collapse-icon {
  display: block; }

.bx--side-nav--fixed a.bx--side-nav__link,
.bx--side-nav--fixed .bx--side-nav__submenu[aria-haspopup='true'] {
  padding-left: 1rem; }

.bx--side-nav--fixed .bx--side-nav__menu[role='menu'] a.bx--side-nav__link {
  padding-left: 2rem; }

@media (max-width: 66rem) {
  .bx--side-nav .bx--header__nav {
    display: block; } }

.bx--side-nav__header-navigation {
  display: none; }
  @media (max-width: 66rem) {
    .bx--side-nav__header-navigation {
      display: block;
      position: relative;
      margin-bottom: 1.28rem; } }

.bx--side-nav__header-divider::after {
  content: '';
  position: absolute;
  height: 0.04rem;
  bottom: -0.64rem;
  left: 0.64rem;
  width: calc(100% - 32px);
  background: #dcdcdc; }

.bx--side-nav a.bx--header__menu-item[role='menuitem'] {
  color: #565656;
  white-space: nowrap;
  justify-content: space-between; }
  .bx--side-nav a.bx--header__menu-item[role='menuitem'][aria-expanded='true'] {
    background-color: transparent; }

.bx--side-nav .bx--header__menu-title[role='menuitem'][aria-expanded='true'] + .bx--header__menu {
  bottom: inherit;
  width: 100%;
  box-shadow: none;
  transform: none;
  background-color: transparent;
  padding: 0; }
  .bx--side-nav .bx--header__menu-title[role='menuitem'][aria-expanded='true'] + .bx--header__menu li {
    width: 100%; }
  .bx--side-nav .bx--header__menu-title[role='menuitem'][aria-expanded='true'] + .bx--header__menu a.bx--header__menu-item[role='menuitem'] {
    padding-left: 4.25rem;
    font-weight: 400; }
  .bx--side-nav .bx--header__menu-title[role='menuitem'][aria-expanded='true'] + .bx--header__menu a.bx--header__menu-item[role='menuitem']:hover {
    background-color: #e5e5e5;
    color: #171717; }

.bx--side-nav .bx--header__menu a.bx--header__menu-item[role='menuitem'] {
  height: inherit; }

.bx--side-nav a.bx--header__menu-item[role='menuitem']:hover .bx--header__menu-arrow,
.bx--side-nav a.bx--header__menu-item[role='menuitem']:focus .bx--header__menu-arrow,
.bx--side-nav .bx--header__menu-arrow {
  fill: #565656; }

.bx--navigation {
  position: fixed;
  top: 3rem;
  bottom: 0;
  left: 0;
  background-color: #282828;
  width: 16rem;
  z-index: 9100;
  box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.25);
  color: #f3f3f3; }

.bx--navigation--right {
  left: auto;
  right: 0; }

.bx--navigation svg {
  fill: #f3f3f3; }

.bx--navigation-section:not(:last-child)::after {
  display: block;
  content: '';
  height: 1px;
  background-color: #3d3d3d;
  margin: 0 1rem; }

.bx--navigation-item {
  position: relative;
  display: flex;
  align-items: center; }

.bx--navigation-item--active > a.bx--navigation-link {
  color: #ffffff;
  font-weight: 600; }

.bx--navigation-item--active::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 4px;
  background-color: #0062ff; }

a.bx--navigation-link {
  display: flex;
  align-items: center;
  color: #f3f3f3;
  text-decoration: none;
  font-size: 0.56rem;
  font-weight: 400;
  width: 100%;
  min-height: 2.5rem;
  padding-left: 1rem; }

a.bx--navigation-link:hover {
  background-color: #333333;
  color: #ffffff; }

a.bx--navigation-link:focus {
  outline: 0.12rem solid #0062ff;
  outline-offset: -0.12rem; }

.bx--navigation-item--icon > a.bx--navigation-link {
  padding-left: 0; }

.bx--navigation__category {
  width: 100%; }

.bx--navigation__category-toggle {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  display: flex;
  align-items: center; }
  .bx--navigation__category-toggle *,
  .bx--navigation__category-toggle *:before,
  .bx--navigation__category-toggle *:after {
    box-sizing: inherit; }
  .bx--navigation__category-toggle::-moz-focus-inner {
    border: 0; }

.bx--navigation__category-toggle:hover {
  background-color: #333333; }

.bx--navigation__category-toggle:focus {
  outline: 0.12rem solid #0062ff;
  outline-offset: -0.12rem; }

.bx--navigation__category-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-right: 1rem;
  width: 100%;
  color: #f3f3f3;
  font-size: 0.56rem;
  font-weight: 400;
  min-height: 2.5rem;
  padding-left: 1rem; }

.bx--navigation-item--icon .bx--navigation__category-title {
  padding-left: 0; }

.bx--navigation__category-items {
  display: none;
  visibility: hidden; }

.bx--navigation__category-item > a.bx--navigation-link {
  display: flex;
  align-items: center;
  min-height: 2rem;
  padding-left: 2rem; }

.bx--navigation__category-item {
  position: relative; }

.bx--navigation-item--icon .bx--navigation__category-item > a.bx--navigation-link {
  padding-left: 3.5rem; }

.bx--navigation__category-item--active::after {
  content: '';
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  width: 4px;
  background-color: #0062ff; }

.bx--navigation__category-item--active > a.bx--navigation-link {
  font-weight: 600;
  color: #ffffff; }

.bx--navigation__category--expanded .bx--navigation__category-title {
  font-weight: 600; }

.bx--navigation__category--expanded .bx--navigation__category-title > svg {
  transform: rotate(180deg); }

.bx--navigation__category--expanded .bx--navigation__category-items {
  display: block;
  visibility: inherit; }

.bx--navigation-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  height: 2.5rem;
  margin-right: 0.5rem; }

.bx--content {
  background: #f3f3f3;
  padding: 2rem;
  transform: translate3d(0, 0, 0);
  will-change: margin-left; }

.bx--header ~ .bx--content {
  margin-top: 3rem; }

.bx--side-nav ~ .bx--content {
  margin-left: 3rem; }

.bx--side-nav.bx--side-nav--expanded ~ .bx--content {
  margin-left: 16rem; }

body {
  transition: transform 500ms ease-in-out; }
  body .menu-drawer {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-100vh);
    transition: transform 500ms ease-in-out; }
    @media screen and (max-height: 600px) {
      body .menu-drawer {
        transform: translateY(-600px); } }
  body.open-menu {
    transform: translateY(100vh); }
    @media screen and (max-height: 600px) {
      body.open-menu {
        transform: translateY(600px); } }

.header {
  display: flex;
  flex-wrap: wrap; }
  .header ul,
  .header ol {
    list-style-type: none;
    margin: 0;
    padding: 0; }
    .header ul li:before,
    .header ol li:before {
      content: none; }
  .header .wrapper {
    order: 2;
    flex: 1 0 100%;
    padding: 0.8rem 1.2rem 2rem; }
  .header .row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap; }
  .header .logo {
    order: 2;
    line-height: 1; }
    .header .logo:hover .logo-site {
      fill: #ffffff; }
      .header .logo:hover .logo-site.white {
        fill: #000000; }
    @media (max-width: 350px) {
      .header .logo .logo-site {
        max-width: 8.8rem; } }
    .header .logo.white-hover:hover {
      background-color: #ffffff; }
  .header .menu-btn {
    order: 4;
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: auto;
    height: auto;
    padding: 0;
    font-size: 25px;
    line-height: 1.74;
    background: rgba(255, 255, 255, 0);
    border: none;
    color: #000000;
    transform: translate(0);
    text-transform: none;
    border-radius: 0;
    box-shadow: none;
    text-shadow: none;
    font-weight: bold;
    font-size: 1.6rem;
    color: black; }
    .header .menu-btn:before, .header .menu-btn:after {
      content: none; }
  .header .close-btn {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: auto;
    height: auto;
    padding: 0;
    font-size: 25px;
    line-height: 1.74;
    background: rgba(255, 255, 255, 0);
    border: none;
    color: #000000;
    transform: translate(0);
    text-transform: none;
    border-radius: 0;
    box-shadow: none;
    text-shadow: none;
    font-weight: bold;
    font-size: 1.6rem;
    color: white; }
    .header .close-btn:before, .header .close-btn:after {
      content: none; }
  .header .menu-drawer {
    order: 1;
    flex: 1 0 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    height: 100vh;
    min-height: 600px;
    overflow-y: scroll;
    background-color: #000000; }
    .header .menu-drawer .wrapper {
      width: 100%;
      height: 100%; }
    .header .menu-drawer .logo {
      order: 1; }
    .header .menu-drawer .close-btn {
      order: 2; }
    .header .menu-drawer .header-nav {
      order: 3;
      flex: 1 0 100%; }
    .header .menu-drawer .menu-title {
      font-size: 2.5rem;
      color: #ffffff; }
      @media (min-width: 600px) {
        .header .menu-drawer .menu-title {
          font-size: 4.32rem; } }
    .header .menu-drawer a:focus,
    .header .menu-drawer button:focus {
      outline: 3px solid #ffffff; }
  .header .header-nav {
    display: flex;
    justify-content: center;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: column; }
    @media (min-width: 900px) {
      .header .header-nav {
        display: block; } }
  .header .action-menu {
    order: 2;
    flex: 1 0 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 1rem; }
    @media (min-width: 900px) {
      .header .action-menu {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        flex-wrap: wrap; } }
    .header .action-menu .menu-item a {
      margin: 0 1rem;
      color: #f4c254;
      text-decoration: underline rgba(255, 255, 255, 0);
      transition: all 300ms ease-in-out; }
      .header .action-menu .menu-item a:hover {
        color: #ffffff;
        text-decoration: underline; }
      @media (min-width: 900px) {
        .header .action-menu .menu-item a {
          margin: 0 0 0 2rem; } }
  .header .menu-wrapper {
    order: 1;
    flex: 1 0 100%; }
  .header .max-width-1100 {
    max-width: 1100px; }
    @media (min-width: 900px) {
      .header .max-width-1100 {
        margin: 0 auto; } }
  .header .header-menu {
    margin-bottom: 2rem; }
    @media (min-width: 900px) {
      .header .header-menu {
        column-count: 2;
        margin-bottom: 2rem; } }
  .header .menu-item a {
    color: #ffffff;
    font-weight: bold;
    font-size: 1.5rem;
    text-decoration: underline rgba(255, 255, 255, 0);
    transition: all 300ms ease-in-out; }
    @media (min-width: 600px) {
      .header .menu-item a {
        font-size: 1.6rem; } }
    .header .menu-item a:hover {
      color: #f4c254;
      text-decoration: underline; }
  .header .underline {
    display: block; }
    .header .underline:after {
      content: "";
      display: block;
      width: 100%;
      height: 8px;
      margin-top: 0.6rem;
      background-color: #ffffff;
      position: relative; }

.footer {
  padding: 2rem 0;
  background-color: #000000;
  color: #ffffff; }
  .footer .wrapper {
    position: relative; }
    @media (min-width: 900px) {
      .footer .wrapper {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap; } }
  .footer .logo-div {
    transition: all 300ms ease-in-out; }
    @media (min-width: 1200px) {
      .footer .logo-div .logo {
        display: block;
        position: absolute;
        left: auto;
        top: 50%;
        transform: translateY(-50%); }
        .footer .logo-div .logo:hover {
          background-color: #ffffff; } }
    .footer .logo-div .logo:focus {
      outline: 3px solid #ffffff; }
    .footer .logo-div .logo:hover .logo-site {
      fill: #ffffff; }
      .footer .logo-div .logo:hover .logo-site.white {
        fill: #000000; }
    .footer .logo-div .logo-site {
      margin: 0 auto; }
    .footer .logo-div.white-hover:hover {
      background-color: #ffffff; }
  .footer .footer-nav ul,
  .footer .footer-nav ol {
    list-style-type: none;
    margin: 0;
    padding: 0; }
    .footer .footer-nav ul li:before,
    .footer .footer-nav ol li:before {
      content: none; }
  .footer .footer-nav .footer-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; }
  .footer .footer-nav .menu-item {
    margin: 0 0.6rem; }
    .footer .footer-nav .menu-item a {
      color: #ffffff;
      font-weight: bold;
      text-decoration: underline rgba(255, 255, 255, 0);
      transition: all 300ms ease-in-out; }
      .footer .footer-nav .menu-item a:hover, .footer .footer-nav .menu-item a:focus {
        color: #f4c254;
        text-decoration: underline; }
      .footer .footer-nav .menu-item a:focus {
        outline: 3px solid; }
  .footer .content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; }
    @media (min-width: 900px) {
      .footer .content {
        flex: 1 0 100%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        flex-wrap: wrap; } }
    .footer .content span {
      padding-right: 0.6rem;
      font-size: 0.76rem; }
    .footer .content a:focus {
      outline: 3px solid #ffffff; }
  .footer .footer-nav,
  .footer .content {
    padding-top: 0.8rem; }

.block.accordions .wrapper {
  max-width: 85%; }

.block.accordions details {
  position: relative;
  padding: 1rem 0;
  border-bottom: 3px solid #000000; }
  .block.accordions details > summary::-webkit-details-marker {
    display: none; }

.block.accordions .bx--accordion__item {
  padding: 0;
  border-top: none;
  border-bottom: 3px solid #000000; }
  .block.accordions .bx--accordion__item:last-child {
    border-bottom: 3px solid #000000; }

.block.accordions .bx--accordion__heading {
  padding: 1.2rem 0; }
  .block.accordions .bx--accordion__heading:hover:before, .block.accordions .bx--accordion__heading:focus:before {
    height: calc(100% + 1px); }
  .block.accordions .bx--accordion__heading:focus:before {
    border: 3px solid #000000; }

.block.accordions .bx--accordion__title,
.block.accordions .title {
  margin: 0;
  padding: 0;
  font-size: 25px;
  font-weight: bold;
  cursor: pointer;
  list-style-type: none; }
  .block.accordions .bx--accordion__title:focus,
  .block.accordions .title:focus {
    outline: 3px solid #000000;
    outline-offset: 5px; }

.block.accordions .bx--accordion__item--active .bx--accordion__content {
  padding: 0.5rem 0 1rem; }

.block.accordions .bx--accordion__content p {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit; }

.block.accordions .content > *:last-child {
  margin-bottom: 0; }

.block.accordions .bx--accordion__arrow {
  margin-right: 0;
  transform: none; }
  .block.accordions .bx--accordion__arrow svg {
    display: none; }

.block.accordions.style-1 .title {
  position: relative;
  padding-right: 3rem; }
  .block.accordions.style-1 .title:before {
    position: absolute;
    right: 12px;
    top: 8px;
    content: "";
    width: 3px;
    height: 24px;
    background: #000000;
    transform: translateX(50%);
    transition: transform 300ms ease-in-out; }
  .block.accordions.style-1 .title:after {
    position: absolute;
    right: 0;
    top: 20px;
    content: "";
    width: 24px;
    height: 3px;
    background: #000000;
    transform: translateY(-50%); }

.block.accordions.style-1 .item.open .title:before {
  transform: translateX(50%) rotate(90deg); }

.block.accordions.style-1 .bx--accordion__item--active .bx--accordion__arrow:before {
  transform: translate(50%, -50%) rotate(90deg); }

.block.accordions.style-1 .bx--accordion__arrow {
  width: 24px;
  height: 24px; }
  .block.accordions.style-1 .bx--accordion__arrow:before {
    position: absolute;
    right: 12px;
    top: 50%;
    content: "";
    width: 3px;
    height: 24px;
    background: #000000;
    transform: translate(50%, -50%);
    transition: transform 300ms ease-in-out; }
  .block.accordions.style-1 .bx--accordion__arrow:after {
    position: absolute;
    right: 0;
    top: 50%;
    content: "";
    width: 24px;
    height: 3px;
    background: #000000;
    transform: translate(0, -50%); }
  .block.accordions.style-1 .bx--accordion__arrow svg {
    display: none; }

.block.accordions.style-2 .title {
  padding-right: 6rem; }
  .block.accordions.style-2 .title:after {
    content: "Answer";
    position: absolute;
    right: 0;
    top: 1rem; }

.block.accordions.style-2 .bx--accordion__arrow {
  width: auto;
  height: auto;
  position: relative;
  font-weight: bold; }

.block.basic-content.left-align {
  text-align: left; }

.block.basic-content.center-align {
  text-align: center; }

.block.basic-content.right-align {
  text-align: right; }

.block.basic-content.style-1 .row {
  max-width: 800px;
  margin: 0 auto; }

@media (min-width: 900px) {
  .block.basic-content.style-2 .wrapper {
    max-width: 85%;
    padding: 0; } }

@media (min-width: 900px) {
  .block.basic-content.style-2 .row {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: nowrap;
    margin: 0 -2rem; } }

@media (min-width: 900px) {
  .block.basic-content.style-2 .row .col {
    margin: 0 2rem; } }

.grid .item {
  width: 100%;
  max-width: 380px;
  margin-bottom: 40px; }
  .grid .item .title:before {
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    margin-bottom: 1.4rem;
    background: #000000; }

.grid .image {
  position: relative;
  height: 220px;
  margin-bottom: 2rem;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 0;
  padding-top: 70%; }
  .grid .image img {
    display: none; }

.block.cards ul,
.block.cards ol {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  .block.cards ul li:before,
  .block.cards ol li:before {
    content: none; }

.block.cards .wrapper {
  max-width: 85%; }

.block.cards.grid .col {
  overflow: hidden; }

.block.cards.grid .items {
  display: flex;
  justify-content: space-evenly;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-left: -1.4rem;
  margin-right: -1.4rem; }

.block.cards.grid .item {
  margin-left: 1.4rem;
  margin-right: 1.4rem; }

.block.cards .title-wrapper {
  margin-bottom: 2rem; }

.block.cards .item .title {
  font-size: 1.25em;
  margin-bottom: 5px; }

.block.cards .item p {
  margin-bottom: 10px; }

.block.cards .item .subtitle {
  font-style: italic;
  margin-bottom: 15px; }

.block.cards .item .content {
  padding: 0; }

.block.hero.content-left .row {
  flex-direction: row; }

.block.hero.content-right .row {
  flex-direction: row-reverse; }

.block.hero.style-1 {
  position: relative;
  overflow: hidden; }
  .block.hero.style-1.content-left .label {
    justify-content: flex-end;
    left: 0;
    text-align: right; }
    .block.hero.style-1.content-left .label:after {
      right: 0;
      margin-left: 1rem;
      transform: translateX(100%); }
  @media (max-width: 599px) {
    .block.hero.style-1.content-left .title-wrapper {
      margin: 0 0 0 auto; } }
  @media (min-width: 600px) {
    .block.hero.style-1.content-left .image-wrapper {
      margin-left: auto; } }
  @media (max-width: 599px) {
    .block.hero.style-1.content-left .title {
      margin-right: 1rem; } }
  @media (min-width: 600px) {
    .block.hero.style-1.content-left .title {
      margin-left: 9%; } }
  @media (min-width: 900px) {
    .block.hero.style-1.content-left .title {
      margin-left: 0; } }
  @media (min-width: 600px) {
    .block.hero.style-1.content-left .titles,
    .block.hero.style-1.content-left .content {
      float: left; } }
  @media (min-width: 600px) {
    .block.hero.style-1.content-left .content .inner {
      margin-left: 0; } }
  .block.hero.style-1.content-left .image {
    right: 0; }
  .block.hero.style-1.content-left .label {
    padding-right: 29%; }
    @media (max-width: 599px) {
      .block.hero.style-1.content-left .label {
        padding-right: 0; } }
    @media (min-width: 900px) {
      .block.hero.style-1.content-left .label {
        padding-right: 0; } }
  .block.hero.style-1.content-right .label {
    justify-content: flex-end;
    flex-direction: row-reverse;
    right: 0; }
    @media (min-width: 600px) {
      .block.hero.style-1.content-right .label {
        justify-content: center;
        padding-left: calc(160px + 1%); } }
    @media (min-width: 900px) {
      .block.hero.style-1.content-right .label {
        margin-right: 0;
        margin-left: auto;
        justify-content: flex-end;
        padding-left: 0; } }
    .block.hero.style-1.content-right .label:after {
      left: 0;
      margin-right: 1rem;
      transform: translateX(-100%); }
  @media (max-width: 599px) {
    .block.hero.style-1.content-right .title-wrapper {
      margin: 0 auto 0 0; } }
  @media (min-width: 600px) {
    .block.hero.style-1.content-right .image-wrapper {
      margin-right: auto; } }
  @media (max-width: 599px) {
    .block.hero.style-1.content-right .title {
      margin-left: 1rem; } }
  @media (min-width: 600px) {
    .block.hero.style-1.content-right .title {
      margin-left: 59%; } }
  @media (min-width: 900px) {
    .block.hero.style-1.content-right .title {
      margin-left: auto;
      margin-right: 0; } }
  @media (min-width: 600px) {
    .block.hero.style-1.content-right .titles,
    .block.hero.style-1.content-right .content {
      float: right; } }
  @media (min-width: 600px) {
    .block.hero.style-1.content-right .content .inner {
      margin-right: 0;
      margin-left: auto; } }
  .block.hero.style-1.content-right .image {
    left: 0; }
  .block.hero.style-1.animate .label:after {
    transform: translateX(0); }
  .block.hero.style-1.animate .label .span {
    opacity: 1;
    transform: translate(0, 0); }
  .block.hero.style-1 .wrapper {
    max-width: none;
    padding: 0; }
  .block.hero.style-1 .row {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap; }
    @media (min-width: 600px) {
      .block.hero.style-1 .row {
        display: block; }
        .block.hero.style-1 .row:after {
          content: "";
          display: table;
          clear: both; } }
  .block.hero.style-1 .label {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: nowrap;
    margin-bottom: 2rem;
    padding-top: 1.5%;
    font-size: 1.25em; }
    @media (min-width: 900px) {
      .block.hero.style-1 .label {
        padding-top: 31px;
        width: calc(100% - 37.5%); } }
    @media (max-width: 599px) {
      .block.hero.style-1 .label {
        font-size: 0.75rem; } }
    .block.hero.style-1 .label .span {
      opacity: 0;
      transform: translate(0, 50%);
      transition: all 300ms ease-in-out 600ms; }
    .block.hero.style-1 .label:after {
      content: "";
      display: block;
      width: 15%;
      height: 0;
      margin-top: -1.5%;
      padding-bottom: 15%;
      flex: 1 0 15%;
      max-width: 15%;
      z-index: 1;
      transition: transform 300ms ease-in-out 300ms; }
      @media (min-width: 900px) {
        .block.hero.style-1 .label:after {
          width: 4rem;
          height: 4rem;
          flex: 1 0 4rem;
          max-width: 4rem;
          margin-top: -31px;
          padding-bottom: 0; } }
    .block.hero.style-1 .label.square-pink:after {
      background: #d6315b; }
    .block.hero.style-1 .label.square-teal:after {
      background: #6ecfb9; }
    .block.hero.style-1 .label.square-yellow:after {
      background: #f4c254; }
  .block.hero.style-1 .content {
    order: 3;
    width: 100%;
    padding: 2.4rem 2rem 0; }
    @media (min-width: 600px) {
      .block.hero.style-1 .content {
        position: relative;
        order: 2;
        width: 100%;
        padding: 0;
        z-index: 3; } }
    .block.hero.style-1 .content .content-wrapper {
      width: 85%;
      margin: 0 auto; }
    .block.hero.style-1 .content .inner {
      width: 50%; }
      @media (max-width: 599px) {
        .block.hero.style-1 .content .inner {
          width: 100%; } }
  .block.hero.style-1 .titles {
    order: 1;
    width: 60%; }
    @media (min-width: 600px) {
      .block.hero.style-1 .titles {
        order: 1;
        width: 100%;
        padding: 0;
        margin: 0 auto; } }
    @media (min-width: 600px) {
      .block.hero.style-1 .titles .label {
        align-items: center; } }
    @media (min-width: 900px) {
      .block.hero.style-1 .titles .label {
        align-items: flex-start; } }
    .block.hero.style-1 .titles .title-wrapper {
      width: 85%; }
      @media (min-width: 900px) {
        .block.hero.style-1 .titles .title-wrapper {
          margin: 0 auto; } }
    @media (max-width: 599px) {
      .block.hero.style-1 .titles .title {
        font-size: 24px; } }
    @media (min-width: 600px) {
      .block.hero.style-1 .titles .title {
        order: 2;
        width: 50%; } }
    @media (max-width: 599px) {
      .block.hero.style-1 .titles .title .h2 {
        font-size: 1.32rem; } }
  @media (min-width: 600px) {
    .block.hero.style-1 .title {
      margin-left: auto;
      margin-right: auto; } }
  .block.hero.style-1 .image-wrapper {
    position: relative;
    order: 2;
    width: 40%;
    z-index: 2; }
    @media (min-width: 600px) {
      .block.hero.style-1 .image-wrapper {
        order: 3; } }
    .block.hero.style-1 .image-wrapper .image {
      width: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      height: 0;
      padding-top: 100%; }
      .block.hero.style-1 .image-wrapper .image img {
        display: none; }

.block.hero.style-2 {
  position: relative;
  color: #ffffff;
  background-color: #000000; }
  @media (min-width: 600px) {
    .block.hero.style-2.content-right .label {
      transform: translateX(2rem); } }
  .block.hero.style-2.content-right .title-wrapper,
  .block.hero.style-2.content-right .inner {
    text-align: right; }
  @media (min-width: 900px) {
    .block.hero.style-2.content-right .image-wrapper {
      margin-right: auto;
      left: 0; } }
  @media (min-width: 900px) {
    .block.hero.style-2.content-right .title-wrapper,
    .block.hero.style-2.content-right .content {
      float: right; } }
  @media (min-width: 600px) {
    .block.hero.style-2.content-left .label {
      transform: translateX(-2rem); } }
  @media (min-width: 900px) {
    .block.hero.style-2.content-left .image-wrapper {
      margin-left: auto;
      right: 0; } }
  @media (min-width: 900px) {
    .block.hero.style-2.content-left .title-wrapper,
    .block.hero.style-2.content-left .content {
      float: left; } }
  @media (min-width: 600px) {
    .block.hero.style-2 .wrapper {
      max-width: 85%;
      padding: 0; } }
  .block.hero.style-2 .row {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    padding: 3rem 0; }
    @media (min-width: 900px) {
      .block.hero.style-2 .row {
        padding: 5rem 0;
        position: relative;
        display: block; }
        .block.hero.style-2 .row:after {
          content: "";
          display: table;
          clear: both; } }
  .block.hero.style-2 .col {
    width: 100%;
    padding: 20px; }
  .block.hero.style-2 .label {
    margin-bottom: 2.6rem;
    font-size: 1.25em; }
  @media (min-width: 900px) {
    .block.hero.style-2 .title-wrapper,
    .block.hero.style-2 .content {
      width: 60%; } }
  .block.hero.style-2 .h1,
  .block.hero.style-2 .h2,
  .block.hero.style-2 .h3,
  .block.hero.style-2 .h4,
  .block.hero.style-2 .h5,
  .block.hero.style-2 .block.timeline .timeline-title,
  .block.timeline .block.hero.style-2 .timeline-title,
  .block.hero.style-2 .block.timeline .title,
  .block.timeline .block.hero.style-2 .title,
  .block.hero.style-2 .h6 {
    font-size: 90px;
    line-height: 1; }
    @media (max-width: 599px) {
      .block.hero.style-2 .h1,
      .block.hero.style-2 .h2,
      .block.hero.style-2 .h3,
      .block.hero.style-2 .h4,
      .block.hero.style-2 .h5,
      .block.hero.style-2 .block.timeline .timeline-title,
      .block.timeline .block.hero.style-2 .timeline-title,
      .block.hero.style-2 .block.timeline .title,
      .block.timeline .block.hero.style-2 .title,
      .block.hero.style-2 .h6 {
        font-size: 40px; } }
  .block.hero.style-2 .image-wrapper {
    width: 85%;
    max-width: 350px;
    padding-top: 2.6rem;
    margin: 0 auto; }
    @media (min-width: 600px) {
      .block.hero.style-2 .image-wrapper {
        margin: 0; } }
    @media (min-width: 900px) {
      .block.hero.style-2 .image-wrapper {
        width: 40%;
        padding-top: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%); } }
    .block.hero.style-2 .image-wrapper .image {
      width: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      height: 0;
      padding-top: 133.33333%; }
      .block.hero.style-2 .image-wrapper .image img {
        display: none; }
  .block.hero.style-2 .btn {
    color: #ffffff;
    background-image: url(images/arrow-right-white.svg); }
    .block.hero.style-2 .btn:hover {
      color: #000000;
      background-color: #ffffff;
      background-image: url(images/arrow-right.svg); }

.block.hero.style-3 .wrapper {
  max-width: 85%;
  padding: 0; }

.block.hero.style-3 .content {
  width: 100%; }
  @media (min-width: 900px) {
    .block.hero.style-3 .content {
      max-width: 900px; } }

@media (max-width: 599px) {
  .block.hero.style-3 .title {
    line-height: 0.5; } }

.block.hero.style-3 .image-wrapper {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 -1rem; }

.block.hero.style-3 .image {
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 0;
  padding-top: 25%;
  flex: 1 0 calc(1 / 3 * 100% - 2rem);
  max-width: calc(1 / 3 * 100% - 2rem);
  margin-left: 1rem;
  margin-right: 1rem;
  margin-bottom: 2rem; }
  .block.hero.style-3 .image img {
    display: none; }
  .block.hero.style-3 .image:only-child {
    height: 0;
    padding-top: 35%;
    flex: 1 0 calc(100% - 2rem);
    max-width: none; }

.block.hero.style-4 .wrapper {
  padding: 0; }

.block.hero.style-4 .title-wrapper {
  max-width: 85%;
  margin: 0 auto; }

.block.hero.style-4 .title {
  margin-bottom: 3rem; }

.block.hero.style-4 .title,
.block.hero.style-4 .h1 {
  font-size: 6.2vw; }

.block.hero.style-4 .content {
  padding: 2.4rem 2rem 0; }
  @media (min-width: 600px) {
    .block.hero.style-4 .content {
      width: 58%;
      margin-left: auto;
      padding-right: 5%; } }

@media (max-width: 599px) {
  .block.hero.style-4 .content-wrapper {
    width: 85%;
    margin: 0 auto; } }

.block.hero .item {
  position: relative;
  margin-top: 3rem;
  padding-top: 0.8rem; }
  .block.hero .item .meta {
    font-size: 0.8rem; }
    .block.hero .item .meta .title {
      margin-bottom: 0;
      font-weight: bold; }
      .block.hero .item .meta .title:before {
        content: "";
        position: absolute;
        top: 0;
        display: block;
        width: 18rem;
        height: 6px;
        margin-bottom: 1.6rem;
        background-color: #000000; }
    .block.hero .item .meta time + time:before {
      content: "";
      display: inline-block;
      width: 0.24rem;
      height: 0.24rem;
      margin: 0 0.6rem;
      background-color: #000000;
      border-radius: 0.3rem;
      transform: translateY(-50%); }

.block.listing.grid .wrapper {
  max-width: 85%;
  padding: 0; }

.block.listing.grid .items {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap; }
  @media (min-width: 600px) {
    .block.listing.grid .items {
      margin-left: -1.4rem;
      margin-right: -1.4rem;
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
      flex-wrap: wrap; } }

.block.listing.grid .item {
  margin-left: 1rem;
  margin-right: 1rem; }
  @media (min-width: 600px) {
    .block.listing.grid .item {
      margin-left: 1.4rem;
      margin-right: 1.4rem;
      flex: 1 0 calc((1 / 2 * 100%) - 2.8rem);
      max-width: calc((1 / 2 * 100%) - 2.8rem); } }
  @media (min-width: 900px) {
    .block.listing.grid .item {
      flex: 1 0 calc((1 / 3 * 100%) - 2.8rem);
      max-width: calc((1 / 3 * 100%) - 2.8rem); } }

.block.listing.grid .no-records {
  margin-left: 35px; }
  @media (max-width: 599px) {
    .block.listing.grid .no-records {
      margin-left: 0; } }

.block.listing .item.record {
  flex: 1 0 calc((1 / 5 * 100%) - 2.8rem);
  max-width: calc((1 / 5 * 100%) - 2.8rem);
  min-width: 200px; }
  .block.listing .item.record .meta {
    font-size: 0.8rem; }
    .block.listing .item.record .meta .title {
      margin-bottom: 0.2rem;
      font-size: 1em;
      font-weight: 700;
      line-height: 1.4;
      text-decoration: underline; }
      .block.listing .item.record .meta .title:before {
        content: none; }
  .block.listing .item.record .image {
    height: 0;
    padding-top: 100%;
    margin-bottom: 1.4rem; }
    .block.listing .item.record .image.placeholder {
      background-image: url(images/logo-white-icon.svg);
      background-size: 60%;
      background-color: #000000;
      background-position: center; }
  .block.listing .item.record .author {
    margin-bottom: 0; }
  .block.listing .item.record .buttons {
    padding-top: 0; }

.block.listing .item.post .meta,
.block.listing .item.event .meta {
  font-size: 0.8rem; }
  .block.listing .item.post .meta time + time:before,
  .block.listing .item.event .meta time + time:before {
    content: "";
    display: inline-block;
    width: 0.24rem;
    height: 0.24rem;
    margin: 0 0.6rem;
    background-color: #000000;
    border-radius: 0.3rem;
    transform: translateY(-50%); }
  .block.listing .item.post .meta .category a,
  .block.listing .item.event .meta .category a {
    color: #000000;
    text-decoration: underline; }
  .block.listing .item.post .meta .date,
  .block.listing .item.post .meta .title,
  .block.listing .item.event .meta .date,
  .block.listing .item.event .meta .title {
    margin-bottom: 0.7rem; }
  .block.listing .item.post .meta .title,
  .block.listing .item.event .meta .title {
    text-decoration: underline; }
  .block.listing .item.post .meta p,
  .block.listing .item.event .meta p {
    margin-bottom: 0; }

.block.listing ul,
.block.listing ol {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  .block.listing ul li:before,
  .block.listing ol li:before {
    content: none; }

.block.listing .item-wrapper {
  max-width: 380px;
  margin: 0 auto; }

.block.listing .category {
  display: flex; }

.block.timeline .wrapper {
  max-width: 85%; }

@media (min-width: 900px) {
  .block.timeline .item {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap; } }

@media (min-width: 900px) {
  .block.timeline .col {
    flex: 1 0 50%;
    max-width: 50%; } }

.block.timeline .col.content {
  position: relative;
  padding-bottom: 2rem; }
  @media (min-width: 900px) {
    .block.timeline .col.content:after {
      content: "";
      width: 3px;
      height: 100%;
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      background-color: #000000; } }
  @media (min-width: 900px) {
    .block.timeline .col.content .title,
    .block.timeline .col.content .details {
      padding-right: 2rem; } }
  .block.timeline .col.content .title {
    margin-bottom: 0.28rem; }
  .block.timeline .col.content .details *:last-child {
    margin-bottom: 0; }

.block.timeline .col.media {
  max-width: 400px;
  padding-top: 14px; }
  @media (min-width: 900px) {
    .block.timeline .col.media {
      position: relative;
      padding-left: 2rem; } }
  .block.timeline .col.media:before {
    content: "";
    background-image: url(images/search.svg);
    background-color: #000000;
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center;
    width: 2rem;
    height: 2rem;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1; }
  .block.timeline .col.media:before {
    top: 14px;
    left: 2rem; }

.block.timeline .timeline-title {
  margin-bottom: 0;
  padding-bottom: 1rem; }

.block.timeline .item:not(:first-child) .timeline-title {
  padding-top: 1rem; }

.block.timeline .title {
  position: relative; }
  @media (min-width: 900px) {
    .block.timeline .title:after {
      content: "";
      width: 50px;
      height: 3px;
      display: block;
      position: absolute;
      top: calc(50% - 1.5px);
      right: 0;
      background-color: #000000; } }

.block.table {
  overflow: hidden; }
  .block.table .wrapper-table {
    overflow-x: scroll; }
  .block.table .content {
    max-width: 800px;
    margin: 0 auto;
    text-align: center; }
  .block.table .bx--data-table {
    width: auto; }
    .block.table .bx--data-table tr {
      height: auto; }
    .block.table .bx--data-table th {
      color: #000000;
      background-color: #f4c254; }
    .block.table .bx--data-table .bx--table-header-label {
      text-align: unset; }
    .block.table .bx--data-table th,
    .block.table .bx--data-table td {
      font-size: 25px; }
      @media (min-width: 600px) {
        .block.table .bx--data-table th,
        .block.table .bx--data-table td {
          font-size: 20px; } }
      @media (min-width: 900px) {
        .block.table .bx--data-table th,
        .block.table .bx--data-table td {
          font-size: 22px; } }
      @media (min-width: 1200px) {
        .block.table .bx--data-table th,
        .block.table .bx--data-table td {
          font-size: 25px; } }
    .block.table .bx--data-table td:last-of-type {
      text-align: right; }
    .block.table .bx--data-table td,
    .block.table .bx--data-table tbody th {
      border-bottom: none; }
    .block.table .bx--data-table .bx--table-header-label {
      padding: 0; }

.block.gallery .wrapper {
  max-width: 85%;
  padding: 0; }
  @media (min-width: 900px) {
    .block.gallery .wrapper {
      padding: 0 1.2rem; } }

@media (min-width: 900px) {
  .block.gallery .row {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap; } }

.block.gallery .col.content {
  padding: 0 2rem 2rem; }
  @media (min-width: 900px) {
    .block.gallery .col.content {
      flex: 1 0 60%;
      max-width: 60%;
      padding: 0 2.4rem 0 0; } }

.block.gallery .col.image {
  position: relative; }
  @media (min-width: 900px) {
    .block.gallery .col.image {
      flex: 1 0 40%;
      max-width: 40%; } }
  .block.gallery .col.image:before {
    content: "";
    background-image: url(images/search.svg);
    background-color: #000000;
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center;
    width: 2rem;
    height: 2rem;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1; }

.block.map .wrapper {
  max-width: 85%; }

.component.share {
  margin-bottom: 2rem;
  padding-top: 30px; }
  .component.share ul,
  .component.share ol {
    list-style-type: none;
    margin: 0;
    padding: 0; }
    .component.share ul li:before,
    .component.share ol li:before {
      content: none; }
  .component.share .wrapper {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap; }
  .component.share .toggle-share {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: auto;
    height: auto;
    padding: 0;
    font-size: 25px;
    line-height: 1.74;
    background: rgba(255, 255, 255, 0);
    border: none;
    color: #000000;
    transform: translate(0);
    text-transform: none;
    border-radius: 0;
    box-shadow: none;
    text-shadow: none;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-right: 1rem; }
    .component.share .toggle-share:before, .component.share .toggle-share:after {
      content: none; }
    .component.share .toggle-share:after {
      content: "";
      background-image: url(images/share.svg);
      background-color: #000000;
      background-size: 50%;
      background-repeat: no-repeat;
      background-position: center;
      width: 1.8rem;
      height: 1.8rem;
      margin-left: 0.6rem;
      border-radius: 1.8rem;
      display: inline-block;
      top: 0;
      left: 0;
      z-index: 1; }
  .component.share .social-menu {
    display: none;
    font-size: 0; }
    .component.share .social-menu.show {
      display: flex; }
    .component.share .social-menu .menu-item {
      display: inline-block;
      font-size: 0; }
      .component.share .social-menu .menu-item:not(:first-child) {
        margin-left: 10px; }
    .component.share .social-menu a {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      position: relative;
      width: 1.8rem;
      height: 1.8rem;
      border-radius: 1.8rem;
      background-color: #000000;
      color: #ffffff;
      font-size: 0;
      line-height: 1.8rem;
      transition: all 300ms ease-in-out; }
      .component.share .social-menu a:hover {
        background-color: #f4c254; }
    .component.share .social-menu svg {
      width: 0.9rem;
      height: 0.9rem; }

.component.notification,
.component.cookie-notice {
  max-width: none;
  margin: 0;
  border: none;
  align-items: center; }
  .component.notification .row,
  .component.cookie-notice .row {
    padding: 0.4rem 0; }
  .component.notification.hide,
  .component.cookie-notice.hide {
    display: none; }
  .component.notification .toggle-wrapper,
  .component.cookie-notice .toggle-wrapper {
    display: block; }
  .component.notification button,
  .component.cookie-notice button {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: auto;
    height: auto;
    padding: 0;
    font-size: 25px;
    line-height: 1.74;
    background: rgba(255, 255, 255, 0);
    border: none;
    color: #000000;
    transform: translate(0);
    text-transform: none;
    border-radius: 0;
    box-shadow: none;
    text-shadow: none; }
    .component.notification button:before, .component.notification button:after,
    .component.cookie-notice button:before,
    .component.cookie-notice button:after {
      content: none; }
  .component.notification h2,
  .component.cookie-notice h2 {
    margin: 0;
    font-family: "Inter"; }
  .component.notification h2,
  .component.notification p,
  .component.notification a,
  .component.notification button,
  .component.cookie-notice h2,
  .component.cookie-notice p,
  .component.cookie-notice a,
  .component.cookie-notice button {
    display: inline;
    font-size: 0.88rem;
    line-height: 1; }
  .component.notification a,
  .component.cookie-notice a {
    text-decoration: underline; }
  .component.notification button,
  .component.cookie-notice button {
    text-decoration: underline; }
  .component.notification .bx--inline-notification,
  .component.cookie-notice .bx--inline-notification {
    align-items: flex-start; }
  .component.notification .bx--inline-notification__text-wrapper,
  .component.cookie-notice .bx--inline-notification__text-wrapper {
    display: block; }
  .component.notification .bx--inline-notification__close-button,
  .component.cookie-notice .bx--inline-notification__close-button {
    display: flex;
    height: 1.92rem;
    width: 1.92rem;
    margin-right: 0.5rem; }
    .component.notification .bx--inline-notification__close-button:focus,
    .component.cookie-notice .bx--inline-notification__close-button:focus {
      outline-offset: 0; }
  .component.notification .bx--inline-notification__action-button,
  .component.cookie-notice .bx--inline-notification__action-button {
    height: auto;
    margin: 0;
    padding: 0; }
  .component.notification .bx--inline-notification__action-button,
  .component.notification .bx--inline-notification__close-button,
  .component.cookie-notice .bx--inline-notification__action-button,
  .component.cookie-notice .bx--inline-notification__close-button {
    transition: none; }

.component.notification {
  position: relative;
  color: #000000;
  background: #f4c254; }
  .component.notification .wrapper {
    padding: 0 2.4rem; }
  .component.notification .bx--inline-notification__close-button .bx--inline-notification__close-icon {
    fill: #000000; }
  .component.notification .bx--inline-notification__action-button:focus {
    outline-color: #000000; }
  .component.notification .bx--inline-notification__subtitle {
    margin: 0; }

.component.cookie-notice {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  color: #ffffff;
  background: #000000;
  z-index: 10; }
  .component.cookie-notice button,
  .component.cookie-notice a {
    color: #ffffff; }
  .component.cookie-notice .bx--inline-notification__close-button:focus {
    outline-color: #ffffff; }

.component.intro {
  text-align: center; }

.glide {
  position: relative;
  width: 100%;
  box-sizing: border-box; }
  .glide * {
    box-sizing: inherit; }
  .glide__track {
    overflow: hidden; }
  .glide__slides {
    position: relative;
    width: 100%;
    list-style: none;
    backface-visibility: hidden;
    transform-style: preserve-3d;
    touch-action: pan-Y;
    overflow: hidden;
    padding: 0;
    white-space: nowrap;
    display: flex;
    flex-wrap: nowrap;
    will-change: transform; }
    .glide__slides--dragging {
      user-select: none; }
  .glide__slide {
    width: 100%;
    height: 100%;
    flex-shrink: 0;
    white-space: normal;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent; }
    .glide__slide a {
      user-select: none;
      -webkit-user-drag: none;
      -moz-user-select: none;
      -ms-user-select: none; }
  .glide__arrows {
    -webkit-touch-callout: none;
    user-select: none; }
  .glide__bullets {
    -webkit-touch-callout: none;
    user-select: none; }
  .glide--rtl {
    direction: rtl; }

.glide__arrow {
  position: absolute;
  display: block;
  top: 50%;
  z-index: 2;
  color: white;
  text-transform: uppercase;
  padding: 9px 12px;
  background-color: transparent;
  border: 2px solid rgba(255, 255, 255, 0.5);
  border-radius: 4px;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  text-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.1);
  opacity: 1;
  cursor: pointer;
  transition: opacity 150ms ease, border 300ms ease-in-out;
  transform: translateY(-50%);
  line-height: 1; }
  .glide__arrow:focus {
    outline: none; }
  .glide__arrow:hover {
    border-color: white; }
  .glide__arrow--left {
    left: 2em; }
  .glide__arrow--right {
    right: 2em; }
  .glide__arrow--disabled {
    opacity: 0.33; }

.glide__bullets {
  position: absolute;
  z-index: 2;
  bottom: 2em;
  left: 50%;
  display: inline-flex;
  list-style: none;
  transform: translateX(-50%); }

.glide__bullet {
  background-color: rgba(255, 255, 255, 0.5);
  width: 9px;
  height: 9px;
  padding: 0;
  border-radius: 50%;
  border: 2px solid transparent;
  transition: all 300ms ease-in-out;
  cursor: pointer;
  line-height: 0;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  margin: 0 0.25em; }
  .glide__bullet:focus {
    outline: none; }
  .glide__bullet:hover, .glide__bullet:focus {
    border: 2px solid white;
    background-color: rgba(255, 255, 255, 0.5); }
  .glide__bullet--active {
    background-color: white; }

.glide--swipeable {
  cursor: grab;
  cursor: -moz-grab;
  cursor: -webkit-grab; }

.glide--dragging {
  cursor: grabbing;
  cursor: -moz-grabbing;
  cursor: -webkit-grabbing; }

.glide .slide-counter {
  display: inline-block;
  padding: 0.4rem 0;
  text-align: center;
  z-index: 1; }

.glide .glide__track {
  transition: height 300ms ease-in-out; }
  .glide .glide__track .glide__slide a:focus img {
    box-shadow: inset 0 0 3px #000000;
    transition: none; }

.glide .glide__arrows {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: nowrap; }

.glide .glide__arrow--left,
.glide .glide__arrow--right {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  width: auto;
  height: auto;
  padding: 0;
  font-size: 25px;
  line-height: 1.74;
  background: rgba(255, 255, 255, 0);
  border: none;
  color: #000000;
  transform: translate(0);
  text-transform: none;
  border-radius: 0;
  box-shadow: none;
  text-shadow: none;
  padding: 0.4rem 1.2rem;
  font-weight: 600;
  transition: all 300ms ease-in-out;
  color: #ffffff;
  background: #000000;
  font-size: 18px;
  z-index: 2; }
  .glide .glide__arrow--left:before, .glide .glide__arrow--left:after,
  .glide .glide__arrow--right:before,
  .glide .glide__arrow--right:after {
    content: none; }
  @media (min-width: 600px) {
    .glide .glide__arrow--left,
    .glide .glide__arrow--right {
      font-size: 20px; } }
  @media (min-width: 900px) {
    .glide .glide__arrow--left,
    .glide .glide__arrow--right {
      font-size: 22px;
      color: #000000;
      background: rgba(255, 255, 255, 0);
      text-decoration: underline; } }
  @media (min-width: 1200px) {
    .glide .glide__arrow--left,
    .glide .glide__arrow--right {
      font-size: 25px; } }
  .glide .glide__arrow--left:hover, .glide .glide__arrow--left:focus,
  .glide .glide__arrow--right:hover,
  .glide .glide__arrow--right:focus {
    color: #ffffff;
    background: #000000; }

.glide img {
  display: block;
  width: 100%; }

.component.large-title {
  margin-bottom: 2rem; }

.related-title {
  margin-bottom: 2rem; }

.block.single {
  padding-top: 2rem; }
  @media (max-width: 599px) {
    .block.single {
      margin-bottom: 0; } }
  .block.single .wrapper {
    padding: 0; }
    .block.single .wrapper.exhibit-wrapper {
      margin-left: 0; }
  .block.single .article {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    position: relative;
    padding-top: 2rem; }
    @media (min-width: 600px) {
      .block.single .article {
        display: block; }
        .block.single .article:after {
          content: "";
          display: table;
          clear: both; } }
    @media (max-width: 599px) {
      .block.single .article {
        display: block; } }
  .block.single .meta {
    font-size: 0.8rem; }
    .block.single .meta .title:before {
      content: "";
      position: absolute;
      top: 0;
      display: block;
      width: 18rem;
      height: 6px;
      margin-bottom: 1.6rem;
      background-color: #000000; }
    .block.single .meta time + time:before {
      content: "";
      display: inline-block;
      width: 0.24rem;
      height: 0.24rem;
      margin: 0 0.6rem;
      background-color: #000000;
      border-radius: 0.3rem;
      transform: translateY(-50%); }
    .block.single .meta .category a {
      color: #000000;
      text-decoration: underline; }
    .block.single .meta .date,
    .block.single .meta .title {
      margin-bottom: 1.2rem; }
    .block.single .meta p {
      margin-bottom: 0; }
  .block.single.record {
    padding-top: 0; }
    @media (min-width: 900px) {
      .block.single.record {
        padding-top: 2rem; } }
    .block.single.record .content {
      padding-top: 20px; }
    .block.single.record .title:before {
      content: none; }
    .block.single.record .title {
      text-shadow: 0.03em 0 rgba(255, 255, 255, 0), -0.03em 0 rgba(255, 255, 255, 0), 0 0.03em rgba(255, 255, 255, 0), 0 -0.03em rgba(255, 255, 255, 0), 0.06em 0 rgba(255, 255, 255, 0), -0.06em 0 rgba(255, 255, 255, 0), 0.09em 0 rgba(255, 255, 255, 0), -0.09em 0 rgba(255, 255, 255, 0), 0.12em 0 rgba(255, 255, 255, 0), -0.12em 0 rgba(255, 255, 255, 0), 0.15em 0 rgba(255, 255, 255, 0), -0.15em 0 rgba(255, 255, 255, 0);
      background-image: linear-gradient(90deg, #f4c254 50%, #ffffff 50%);
      background-size: 200% 10px;
      background-repeat: no-repeat;
      display: inline;
      padding-bottom: 3px;
      background-position: 0% 100%;
      transition: background-position 800ms ease-in-out 400ms; }
    .block.single.record.animate .underline {
      background-position: 0% 100%; }
    .block.single.record .content-wrapper {
      position: relative; }
      .block.single.record .content-wrapper .content-inner {
        display: flex;
        flex-wrap: wrap; }
        @media (min-width: 900px) {
          .block.single.record .content-wrapper .content-inner {
            display: block; } }
      .block.single.record .content-wrapper .text {
        order: 2;
        max-width: 100%;
        flex: 1 0 100%; }
        @media (min-width: 900px) {
          .block.single.record .content-wrapper .text {
            width: 55%;
            padding-right: 3rem; } }
      .block.single.record .content-wrapper .image {
        order: 1;
        max-width: 100%;
        flex: 1 0 100%;
        margin-bottom: 2rem; }
        @media (min-width: 900px) {
          .block.single.record .content-wrapper .image {
            position: absolute;
            top: 0;
            right: 0;
            width: 45%; } }
        .block.single.record .content-wrapper .image img {
          display: block; }
      .block.single.record .content-wrapper .label {
        font-weight: bold; }
      .block.single.record .content-wrapper .buttons {
        margin-bottom: 2rem; }
    .block.single.record .article > .text {
      margin-bottom: 2.6rem; }
    .block.single.record .article > .text,
    .block.single.record .content-inner {
      padding: 0 2rem; }
      @media (min-width: 900px) {
        .block.single.record .article > .text,
        .block.single.record .content-inner {
          width: 85%;
          margin-left: auto;
          margin-right: auto;
          padding: 0 1.2rem; } }
  .block.single.post .text, .block.single.event .text {
    width: 100%;
    margin: 0 auto;
    order: 1;
    flex: 1 0 100%;
    padding: 0 2rem; }
    @media (min-width: 900px) {
      .block.single.post .text, .block.single.event .text {
        width: 85%;
        padding: 0 1.2rem; } }
    .block.single.post .text .content, .block.single.event .text .content {
      padding-top: 1.6rem; }
  .block.single.post .image-wrapper, .block.single.event .image-wrapper {
    width: 100%;
    order: 2;
    flex: 1 0 100%;
    padding-top: 2rem; }
    @media (min-width: 600px) {
      .block.single.post .image-wrapper, .block.single.event .image-wrapper {
        width: 40%;
        float: right;
        padding-top: 0;
        padding-left: 1rem;
        padding-bottom: 1rem; } }
    .block.single.post .image-wrapper .image, .block.single.event .image-wrapper .image {
      width: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      height: 0;
      padding-top: 100%; }
      .block.single.post .image-wrapper .image img, .block.single.event .image-wrapper .image img {
        display: none; }
      .block.single.post .image-wrapper .image img, .block.single.event .image-wrapper .image img {
        display: block; }

.block.exhibit {
  margin-bottom: 2rem; }
  .block.exhibit ul,
  .block.exhibit ol {
    list-style-type: none;
    margin: 0;
    padding: 0; }
    .block.exhibit ul li:before,
    .block.exhibit ol li:before {
      content: none; }
  .block.exhibit .wrapper {
    max-width: 85%; }
  .block.exhibit .navigation {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap; }
  .block.exhibit .title {
    order: 1;
    width: 100%; }
  .block.exhibit .child-nav {
    order: 2;
    flex: 1 0 100%;
    width: 100%;
    margin-bottom: 1.4rem;
    padding: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap; }
    @media (min-width: 900px) {
      .block.exhibit .child-nav {
        position: absolute;
        left: 60%;
        display: block;
        width: auto;
        margin-bottom: 0; } }
    @media (max-width: 599px) {
      .block.exhibit .child-nav .btn {
        margin-left: 0;
        margin-right: 0; } }
    @media (max-width: 350px) {
      .block.exhibit .child-nav {
        flex-direction: column; }
        .block.exhibit .child-nav a:first-of-type {
          margin-bottom: 10px; } }
  .block.exhibit .table-of-contents {
    order: 1;
    flex: 1 0 100%;
    max-width: 360px;
    margin-top: 25px; }
    @media (min-width: 900px) {
      .block.exhibit .table-of-contents {
        max-width: none; } }
    .block.exhibit .table-of-contents:after {
      content: "";
      width: 100%;
      height: 3px;
      background-color: #000000;
      display: block;
      transform: scaleX(1); }
      @media (min-width: 900px) {
        .block.exhibit .table-of-contents:after {
          width: 100%;
          transform: scaleX(0.32);
          transform-origin: left; } }
    .block.exhibit .table-of-contents.open:after {
      transform: scaleX(1); }
    .block.exhibit .table-of-contents.open .button:after {
      content: "-"; }
    .block.exhibit .table-of-contents.open .items {
      display: grid;
      margin-top: 25px; }
    .block.exhibit .table-of-contents .button {
      position: relative;
      top: auto;
      left: auto;
      right: auto;
      width: auto;
      height: auto;
      padding: 0;
      font-size: 25px;
      line-height: 1.74;
      background: rgba(255, 255, 255, 0);
      border: none;
      color: #000000;
      transform: translate(0);
      text-transform: none;
      border-radius: 0;
      box-shadow: none;
      text-shadow: none; }
      .block.exhibit .table-of-contents .button:before, .block.exhibit .table-of-contents .button:after {
        content: none; }
      .block.exhibit .table-of-contents .button:after {
        content: "+";
        display: inline-block;
        padding-left: 0.6rem; }
      .block.exhibit .table-of-contents .button:focus {
        outline: 3px solid #000000;
        outline-offset: 10px; }
    .block.exhibit .table-of-contents a,
    .block.exhibit .table-of-contents .button {
      color: #000000;
      font-size: 0.8rem; }
    .block.exhibit .table-of-contents .items {
      display: none;
      padding-bottom: 0.4rem; }
      @media (min-width: 900px) {
        .block.exhibit .table-of-contents .items {
          grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
          grid-gap: 1rem; } }
      .block.exhibit .table-of-contents .items .item {
        line-height: 1;
        margin-bottom: 1rem; }

.page-template-the-collection .block.hero.style-1 {
  margin-bottom: 50px; }

.page-template-the-collection .fieldset.filters .facet-wrap {
  width: calc((2 / 5 * 100%) - 1.4rem); }

.page-template-the-collection .fieldset.filters .facet-label {
  margin: 0 2rem 0 0; }

.carbon-component {
  margin-bottom: 300px; }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2dsb2JhbC90eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9nbG9iYWwvdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9nbG9iYWwvYnV0dG9ucy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvbWl4aW5zL2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2dsb2JhbC9mb3Jtcy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvbWFpbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvZ2xvYmFsL2xheW91dC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvZ2xvYmFsL2d1dGVuYmVyZy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvZ2xvYmFsL2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9nbG9iYWwvbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2dsb2JhbC90YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2dsb2JhbC9mYWNldC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvbWl4aW5zL3Bvc2l0aW9uaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vZ2xvYmFscy9zY3NzL3N0eWxlcy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy9faGVscGVyLW1peGlucy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy9faGVscGVyLWNsYXNzZXMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9nbG9iYWxzL3Njc3MvX2Nzcy0taGVscGVycy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy9fY3NzLS1yZXNldC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL3R5cGUvX3N0eWxlcy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2xheW91dC9fY29udmVydC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL3R5cGUvX2ZvbnQtZmFtaWx5LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvdGhlbWVzL190aGVtZS1tYXBzLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvZ3JpZC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvbGF5b3V0L19icmVha3BvaW50LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9idXR0b24vX2J1dHRvbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvYnV0dG9uL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9nbG9iYWxzL3Njc3MvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9nbG9iYWxzL3Njc3MvX3RoZW1lLXRva2Vucy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL21vdGlvbi9tb3Rpb24uc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9nbG9iYWxzL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9nbG9iYWxzL3Njc3MvX2xheW91dC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy9fbGF5ZXIuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL2NvcHktYnV0dG9uL19jb3B5LWJ1dHRvbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2dsb2JhbHMvc2Nzcy9fc3BhY2luZy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvZm9ybS9fZm9ybS5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvbG9hZGluZy9fa2V5ZnJhbWVzLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9sb2FkaW5nL192YXJzLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9sb2FkaW5nL19sb2FkaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9sb2FkaW5nL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9nbG9iYWxzL3Njc3MvX21vdGlvbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvZmlsZS11cGxvYWRlci9fZmlsZS11cGxvYWRlci5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvY2hlY2tib3gvX2NoZWNrYm94LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9saXN0LWJveC9fbGlzdC1ib3guc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL2NvbWJvLWJveC9fY29tYm8tYm94LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9yYWRpby1idXR0b24vX3JhZGlvLWJ1dHRvbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdG9nZ2xlL190b2dnbGUuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3NlYXJjaC9fc2VhcmNoLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9zZWxlY3QvX3NlbGVjdC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdGV4dC1pbnB1dC9fdGV4dC1pbnB1dC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdGV4dC1hcmVhL190ZXh0LWFyZWEuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL251bWJlci1pbnB1dC9fbnVtYmVyLWlucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9saW5rL19saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9saXN0L19saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9kYXRhLXRhYmxlL19kYXRhLXRhYmxlLWFjdGlvbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvZGF0YS10YWJsZS9fZGF0YS10YWJsZS1jb3JlLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9kYXRhLXRhYmxlL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL2RhdGEtdGFibGUvX2RhdGEtdGFibGUtZXhwYW5kYWJsZS5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvZGF0YS10YWJsZS9fZGF0YS10YWJsZS1zb3J0LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9kYXRhLXRhYmxlL19kYXRhLXRhYmxlLWlubGluZS1lZGl0LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9kYXRhLXRhYmxlL19kYXRhLXRhYmxlLXNrZWxldG9uLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9zdHJ1Y3R1cmVkLWxpc3QvX3N0cnVjdHVyZWQtbGlzdC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvc3RydWN0dXJlZC1saXN0L19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9jb2xvcnMvbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9jb2RlLXNuaXBwZXQvX2NvZGUtc25pcHBldC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvY29kZS1zbmlwcGV0L19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL292ZXJmbG93LW1lbnUvX292ZXJmbG93LW1lbnUuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL2NvbnRlbnQtc3dpdGNoZXIvX2NvbnRlbnQtc3dpdGNoZXIuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL2RhdGUtcGlja2VyL19mbGF0cGlja3Iuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL2RhdGUtcGlja2VyL19kYXRlLXBpY2tlci5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvZHJvcGRvd24vX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9tb2RhbC9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL211bHRpLXNlbGVjdC9fbXVsdGktc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9ub3RpZmljYXRpb24vX2lubGluZS1ub3RpZmljYXRpb24uc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9ub3RpZmljYXRpb24vX3RvYXN0LW5vdGlmaWNhdGlvbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdG9vbHRpcC9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdGFicy9fdGFicy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdGFnL190YWcuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3RhZy9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9wYWdpbmF0aW9uL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9hY2NvcmRpb24vX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvcHJvZ3Jlc3MtaW5kaWNhdG9yL19wcm9ncmVzcy1pbmRpY2F0b3Iuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL2JyZWFkY3J1bWIvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3Rvb2xiYXIvX3Rvb2xiYXIuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3RpbWUtcGlja2VyL190aW1lLXBpY2tlci5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvc2xpZGVyL19zbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3RpbGUvX3RpbGUuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3NrZWxldG9uL19za2VsZXRvbi10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9za2VsZXRvbi9fc2tlbGV0b24taWNvbi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvc2tlbGV0b24vX3NrZWxldG9uLXBsYWNlaG9sZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9pbmxpbmUtbG9hZGluZy9fa2V5ZnJhbWVzLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy9pbmxpbmUtbG9hZGluZy9faW5saW5lLWxvYWRpbmcuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3BhZ2luYXRpb24tbmF2L19wYWdpbmF0aW9uLW5hdi5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdWktc2hlbGwvX2hlYWRlci5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdWktc2hlbGwvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdWktc2hlbGwvX3RoZW1lLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy91aS1zaGVsbC9faGVhZGVyLXBhbmVsLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy91aS1zaGVsbC9fcHJvZHVjdC1zd2l0Y2hlci5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY2FyYm9uL2NvbXBvbmVudHMvdWktc2hlbGwvX3N3aXRjaGVyLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jYXJib24vY29tcG9uZW50cy91aS1zaGVsbC9fc2lkZS1uYXYuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3VpLXNoZWxsL19uYXZpZ2F0aW9uLW1lbnUuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NhcmJvbi9jb21wb25lbnRzL3VpLXNoZWxsL19jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9wYXJ0aWFscy9oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL3BhcnRpYWxzL2Zvb3Rlci5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvYmxvY2tzL2FjY29yZGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2Jsb2Nrcy9iYXNpYy1jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9ibG9ja3MvY2FyZHMuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2Jsb2Nrcy9oZXJvLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9nbG9iYWwvYml0dGVycy5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvYmxvY2tzL2xpc3Rpbmcuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2Jsb2Nrcy90aW1lbGluZS5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvYmxvY2tzL3RhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9ibG9ja3MvZ2FsbGVyeS5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvYmxvY2tzL21hcC5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY29tcG9uZW50cy9zaGFyZS5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY29tcG9uZW50cy9ub3RpZmljYXRpb24uc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL2NvbXBvbmVudHMvaW50cm8uc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9ub2RlX21vZHVsZXMvQGdsaWRlanMvZ2xpZGUvc3JjL2Fzc2V0cy9zYXNzL2dsaWRlLmNvcmUuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9ub2RlX21vZHVsZXMvQGdsaWRlanMvZ2xpZGUvc3JjL2Fzc2V0cy9zYXNzL2dsaWRlLnRoZW1lLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9jb21wb25lbnRzL3NsaWRlci5zY3NzIiwid2VicGFjazovL21pZ2h0aWx5LXdvcmRwcmVzcy1idWlsZC8uL3NyYy9zdHlsZXMvY29tcG9uZW50cy9iYXNlLnNjc3MiLCJ3ZWJwYWNrOi8vbWlnaHRpbHktd29yZHByZXNzLWJ1aWxkLy4vc3JjL3N0eWxlcy9wYWdlcy9zaW5nbGUuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL3BhZ2VzL2V4aGliaXQuc2NzcyIsIndlYnBhY2s6Ly9taWdodGlseS13b3JkcHJlc3MtYnVpbGQvLi9zcmMvc3R5bGVzL3BhZ2VzL2Jhc2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBY0M7O0VBRUMsa0JBVHFDO0VBVXJDLGdCQ21DdUI7RURsQ3ZCLG9CQ3dCMkI7RUR2QjNCLGdCQ3FDdUI7RURwQ3ZCLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGNBQWM7RUNWZjtJRENBOztNQVdFLGtCQWxCNEIsSUF1QjdCO0VDWkQ7SURKQTs7TUFjRSxrQkFyQm9CLElBdUJyQjs7QUFoQkQ7O0VBRUMsa0JBVHNFO0VBVXRFLGdCQ21DdUI7RURsQ3ZCLG9CQ3dCMkI7RUR2QjNCLGdCQ3FDdUI7RURwQ3ZCLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGNBQWM7RUNWZjtJRENBOztNQVdFLGtCQWxCNkQsSUF1QjlEO0VDWkQ7SURKQTs7TUFjRSxpQkFyQnFELElBdUJ0RDs7QUFoQkQ7O0VBRUMsa0JBUnVCO0VBU3ZCLGdCQ21DdUI7RURsQ3ZCLG9CQ3dCMkI7RUR2QjNCLGdCQ3FDdUI7RURwQ3ZCLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGNBQWM7RUNWZjtJRENBOztNQVdFLGlCQWpCYyxJQXNCZjtFQ1pEO0lESkE7O01BY0UsZUFwQk8sSUFzQlI7O0FBaEJEOztFQUVDLGtCQVJ5RDtFQVN6RCxnQkNtQ3VCO0VEbEN2QixvQkN3QjJCO0VEdkIzQixnQkNxQ3VCO0VEcEN2QixhQUFhO0VBQ2Is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NEM7RUQ2ZTVDLHNCQWpkb0I7RU8vQnRCLGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLDhCQUE4QjtFQUM5QixtQkFBbUI7RUFDbkIsY0FBYztFQUNkLG1CQ0VzQztFRER0Qyw0REVrRWtFO0VGakVsRSxnQkV1RHNCO0VGdER0QixnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLGtER1YyQztFSFczQyw4QkFBZ0Q7RUFDaEQsb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQixrQkNQc0M7RVRBcEM7OztJQUdFLG1CQUFtQjtFUU12QjtJQUVFLG1CQUFtQjtJQUNuQixjSitGa0I7SUk5RmxCLG1CSjZGa0I7SUk1RmxCLHFCSjRGa0I7RUl6RnBCO0lBQ0Usa0JBQWtCO0lBQ2xCLGNDbkJvQztJRG9CcEMsY0FBYztJQUNkLGNDckJvQztJRHNCcEMsZUN0Qm9DO0VGWXRDOztJQU1JLGFIeUZnQjs7QUdwRnBCO0VBQ0UsVUFBVTtFQUNWLFNBQVM7O0FBR1g7RUNVQSx5QkppQnVCO0VJaEJ2QixpQkVnRXVCO0VGL0R2QixtQkFBbUI7RUFDbkIseUJEVmU7RUNXZixjSjBCZ0I7RUl4QmhCO0lBQ0UseUJKNENvQjtFSXpDdEI7SUFDRSxxQkpzQ1k7SUlyQ1osc0JKV1k7RUlSZDtJQUlFLGNKTVk7SUlMWix5QkpnRGtCO0lJL0NsQixxQkorQ2tCO0lJOUNsQixxQkFBcUI7SUFDckIsc0JKNkNrQjtFSTFDcEI7SUFDRSx5Qkp5QnFCO0VJdEJ2Qjs7SUFFRSxrQkRwQ2M7RUNVaEI7SURMSSxjSDZCWTs7QUd6QmhCO0VDTEEseUJKa0J1QjtFSWpCdkIsaUJFZ0V1QjtFRi9EdkIsbUJBQW1CO0VBQ25CLHlCREtlO0VDSmYsY0owQmdCO0VJeEJoQjtJQUNFLHlCSitDc0I7RUk1Q3hCO0lBQ0UscUJKc0NZO0lJckNaLHNCSldZO0VJUmQ7SUFJRSxjSk1ZO0lJTFoseUJKZ0RrQjtJSS9DbEIscUJKK0NrQjtJSTlDbEIscUJBQXFCO0lBQ3JCLHNCSjZDa0I7RUkxQ3BCO0lBQ0UseUJKNEJ1QjtFSXpCekI7O0lBRUUsa0JEckJjO0VBTmhCO0lBWUksY0hhWTs7QUdUaEI7RUNyQkEsNkJEdUJlO0VDdEJmLGlCRDRCTztFQzNCUCxtQkFBbUI7RUFDbkIscUJKZ0J1QjtFSWZ2QixjSmV1QjtFSWJ2QjtJQUNFLHlCSmlEcUI7RUk5Q3ZCO0lBQ0UscUJKc0NZO0lJckNaLHNCSldZO0VJUmQ7SUFJRSxjSk1ZO0lJTFoseUJKZ0RrQjtJSS9DbEIscUJKK0NrQjtJSTlDbEIscUJBQXFCO0lBQ3JCLHNCSjZDa0I7RUkxQ3BCO0lBQ0UseUJKOEJzQjtFSTNCeEI7O0lBRUUsa0JETGM7RUNyQmhCO0lEMkJJLGNIS2U7RUk1Qm5CO0lEMkJJLGNIUFk7SUdRWix5QkhuQm1CO0VJT3ZCO0lEZ0JJLHlCSFVtQjtFRy9CdkI7SUE4QkksdUJBQXVCO0lBQ3ZCLGNIbkRnQjtJR29CcEI7TUFrQ00sYUh0RGM7RUdvQnBCO0lBdUNJLGFIdEJlOztBRzBCbkI7RUNoRUEsNkJEa0VlO0VDakVmLGlCRWdFdUI7RUYvRHZCLG1CQUFtQjtFQUNuQix5QkRnRWU7RUMvRGYsY0o4QmdCO0VHdUNkLGtDR3pCNEM7RUYxQzlDO0lBQ0UseUJKbURlO0VJaERqQjtJQUNFLHFCSnNDWTtJSXJDWixzQkpXWTtFSVJkO0lBSUUsY0pNWTtJSUxaLHlCSmdEa0I7SUkvQ2xCLHFCSitDa0I7SUk5Q2xCLHFCQUFxQjtJQUNyQixzQko2Q2tCO0VJMUNwQjtJQUNFLHlCSmdDZ0I7RUk3QmxCOztJQUVFLGtCRHNDYztFQU5oQjtJQVlJLGdCQUFnQjtJQUNoQixtQkx4SDBDO0VLMkc5QztJQWtCSSxjSDdCdUI7SUdXM0I7TUFxQk0sYUhoQ3FCO0VJM0IzQjtJRGdFSSx5QkgvQmM7RUdLbEI7SUFtQ0ksY0hsR2dCO0lHbUdoQix1QkFBdUI7SUFDdkIseUJBQXlCO0lBckM3QjtNQXdDTSxhSHZHYztFRytEcEI7SUE2Q0ksa0NHakQ2QztFSElqRDtJQWlESSxrQ0czRGdEOztBSCtEcEQ7RVBuS0Usc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNU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SUtyRUUsYUFBYTtFTHFFZjtJSzlESSxVQUFVOztBQUdaO0VBQ0U7SUFDRSxVQUFVO0VBRVo7SUFDRSxVQUFVO0VMc0RoQjs7O0lLaERJLFVBQVU7SUFDVixZQUFZO0lBQ1osaUJBQWlCO0VMOENyQjs7O0lLeENJLDRERDlJeUM7RUpzTDdDOzs7OztJS0xJLE1BQU07SUFDTixTQUFTO0VMSWI7SUtjSSxhSHpMa0M7SUcwTGxDLHNDSDFMa0M7SUcyTGxDLHlEQUE2RDtJQUM3RCxpQ0FBaUM7RUxqQnJDOzs7OztJSytDSSxhQTlEeUM7SUF1RXZDLFNBQVM7SUFDVCxpQ0FBaUM7O0FMcER2Qzs7Ozs7RUtGSSxTQUFTO0VBQ1QsU0FBUzs7QUxDYjtFS3FCSSxnQkhyTWtDO0VHc01sQyxzQ0h0TWtDO0VHdU1sQyx5REFBNkQ7RUFDN0QsZ0NBQWdDOztBTHhCcEM7Ozs7O0VLNERJLGdCQWhGeUM7RUF5RnZDLGdDQUFnQzs7QUxqRXRDOzs7RUFHRSxzQkV2TG9DO0VGb0x0Qzs7O0lBTUksZ0JBQWdCO0VBTnBCOzs7SUFVSSxTQUFTOztBQUliO0VDNUpBLHlCRCtKYTtFQzlKYixpQkVnRXVCO0VGL0R2QixtQkFBbUI7RUFDbkIscUJEOEphO0VDN0piLGNKMEJnQjtFSXhCaEI7SUFDRSx5Qkp3RG1CO0VJckRyQjtJQUNFLHFCSnNDWTtJSXJDWixzQkpXWTtFSVJkO0lBSUUsY0pNWTtJSUxaLHlCSmdEa0I7SUkvQ2xCLHFCSitDa0I7SUk5Q2xCLHFCQUFxQjtJQUNyQixzQko2Q2tCO0VJMUNwQjtJQUNFLHlCSnFDb0I7RUlsQ3RCOztJQUVFLGFKQ2M7RUkzQmhCO0lEbUtJLGNIM0lZO0lHNElaLDZCQUE4Qzs7QUFJbEQ7RUFDRSxtQkVyTm9DO0VGc05wQyw0REczSW1FOztBSDhJckU7RUFDRSxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLDRER3RKc0U7O0FIMEp4RTtFVnZGQSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsb0JBQW9CO0VBQ3BCLG1CT2pDb0I7RUdxSGxCLFdFbE9v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Q3ZCLGdCQUFnQjtFQUNoQixtQkFBbUI7O0FBSXJCO0VBQ0Usa0JBQWtCO0VBQ2xCLFd2QnhTNEM7RXVCeVM1QyxZQUFZO0VBQ1osMERkaFQyQztFY2lUM0MsZUFBZTs7QUFHakI7RUFDRSxhckJyT2M7RXFCc09kLFlBQVk7O0FBR2Q7RUFDRSx5QkFBeUI7O0FBSTNCO0VBQ0Usa0JBQWtCO0VBQ2xCLGNoQnJUb0M7RWdCc1RwQyxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQixjaEJ6VG9DO0VnQjBUcEMsYWhCMVRvQztFZ0IyVHBDLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsaUVkeFUyQztFYzhUN0M7STVCdlBFLDBCTzJCWTtJUDFCWixvQkFBb0I7O0E0QnVRdEI7RUFDRSxhckIvUGM7O0FxQmtRaEI7RUFDRSxhQUFhOztBQUdmO0VBQ0UsYXJCbk9rQjs7QXFCdU9wQjtFeEJ1SkUsa0JDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLGlCQzdlNEM7RUQ2ZTVDLHNCQXJlb0I7RXdCZ1ZwQixnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQiw4QkFBOEI7RUFDOUIsVUFBVTtFQUNWLHlCckIzUWlCO0VxQjRRakIsZWhCelZvQztFZ0IwVnBDLFdBQVc7RUFDWCxjckIvUWlCO0VxQmdSakIsY0FBYztFQUNkLGdCaEI3Vm9DO0VnQjhWcEMsc0JoQjlWb0M7RWdCK1ZwQyxvQmhCL1ZvQztFZ0JnV3BDLHNCaEJoV29DOztBZ0JtV3RDO0VBQ0UsYXJCeFJpQjtFcUJ5UmpCLG9CaEJyV29DO0VnQnNXcEMsYWhCdFdvQztFZ0J1V3BDLGNoQnZXb0M7RWdCd1dwQyxnQmhCeFdvQzs7QWdCMld0QztFQUNFLGtCQUFrQjtFQUNsQix5QnJCalJzQjtFcUJrUnRCLGFyQnZTYzs7QXFCMFNoQjs7RUFFRSxhQUFhOztBQUlmO0U1Qi9VRSw0Q2lCbEMyQjtFV21YM0Isa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxRQUFRO0VBQ1IsV0E5WGlCO0VBK1hqQix5QnJCalVZO0VxQmtVWixrQmhCOVhvQztFZ0IrWHBDLGdCQUFnQjtFQUNoQixhWnpZWTs7QVk2WWQ7RXhCb0dFLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixxQkM3ZTRDO0VENmU1QyxzQkFqZG9CO0V3QitXcEIsY2hCdFlvQztFZ0J1WXBDLGNyQnJVYztFcUJzVWQsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsMkRkdFoyQztFYytZN0M7SUFVSSx5QnJCOVNhO0VxQm9TakI7SUFjSSx5QnJCaFRnQjs7QXFCb1RwQjtFQUNFLDZCQUE2Qjs7QUFHL0I7RUFFRSx5QnJCOVZZOztBcUJpV2Q7RUFFRSw2QkFBNkI7O0FBRy9CO0VBRUUsY3JCcldjOztBcUJ3V2hCO0VBR0UsNkJBQTZCOztBQUcvQjtFQUlFLHlCckJyWFk7O0FxQndYZDtFNUIzV0UsOEJBQThCO0VBQzlCLG9CQUFvQjtFNEI0V3BCLGNBQWM7RUFDZCxjaEJ6Ym9DO0VnQjBicEMsY3JCeFhjO0VxQnlYZCxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLG9CaEI3Ym9DO0VnQjhicEMsa0JBQW9CO0VBQ3BCLGN2QnBjNEM7RXVCcWM1QyxpQ0FBaUM7RUFDakMsb0NBQW9DO0VBQ3BDLHlCckJwWVk7RXFCcVlaLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLHlHZGpkMkM7RWNpYzdDO0k1QjFYRSwwQk8yQlk7SVAxQlosb0JBQW9CO0k0QjhZbEIsU0FBUztJQUNULHdCaEI1Y2tDO0lnQjZjbEMseUJBQXlCO0VBdkI3QjtJQTJCSSxjckJoWlk7SXFCaVpaLHlCQUF5Qjs7QUFJN0I7O0VBSUUsY3JCaFhrQjs7QXFCbVhwQjtFQUVFLGdCdkJwZTRDO0V1QmtlOUM7SUFLSSxTQUFTO0lBQ1Qsb0J2QnhlMEM7SXVCeWUxQyxxQnZCemUwQzs7QXVCNmU5QztFQUNFLHlCckJ6WWU7RXFCMFlmLGNyQnphYztFcUIwYWQseUJBQXlCOztBQUczQjs7RUFLRSw2QkFBNkI7O0FBRy9CO0VBRUUsY3JCdmJjOztBcUIwYmhCO0VBQ0UsY3JCM2JjO0VxQjRiZCw0QnJCM1prQjtFcUJ5WnBCO0lBS0kseUJyQjlaZ0I7O0FxQmthcEI7RUFFRSxjckJyY2M7O0FxQndjaEI7RUFDRSxXQUFXOztBQUdiO0VBQ0UsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2QixnQkFBZ0I7O0FBT2xCO0VBQ0UsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtFQUN6QixZQUFZOztBQy9oQmQ7RUFFSSxjdEJxRVk7RXNCcEVaLFVBQVU7O0FBSGQ7RUFPSSxjdEJ3R2dCOztBc0JwR3BCO0VBRUUsNEJ0QnNEWTs7QXNCbkRkOztFQUdFLFVBQVU7O0FDaEJaO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixtQmxCRG9DOztBa0JLdEM7RUFDRSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBRnpCO0lBS0kscUJBQXFCO0VBTHpCO0lBU0ksZUFBZTtFQVRuQjtJQWFJLHFCekJ2QjBDOztBeUIyQjlDO0U5QjJFQSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxVQUFVO0VBQ1YsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULG1CQUFtQjtFQUNuQixtQkFBbUI7RThCbEZqQixtQkFBbUI7O0FBR3JCO0UxQjZjRSxtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1oscUJDN2U0QztFRDZlNUMsc0JBamRvQjtFMEJNcEIsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2Ysa0J6QnJDNEM7O0F5QndDOUM7RTNCM0NFLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLHdCQUF3QjtFMkJ1Q3hCLDZCQUE2QjtFQUM3QixrQkFBa0I7RUFDbEIseUJ2QjhCYztFdUI3QmQsY0FBYztFQUNkLGVsQnpDb0M7RWtCMENwQyxjbEIxQ29DO0VrQjJDcEMsb0J6QmhENEM7RUZLNUM7OztJQUdFLG1CQUFtQjs7QTJCMkN2QjtFQUdFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLHFCdkJpQmM7RXVCdkJoQjtJQVNJLFdBQVc7SUFDWCxxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLHlCdkJRWTtJdUJMWjtNQWxCSjtRQW9CTSw0QkFBNEIsSUFFL0I7O0F2Q3NwSEw7RXVDanBISSxrQkFBa0I7O0FBR3BCO0VBQ0UsY3ZCdENrQjtFdUJ1Q2xCLG1CQUFtQjs7QUFHckI7O0VBTUUscUJ2QmhEa0I7RXVCMENwQjs7SUFTSSx5QnZCbkRnQjs7QXVCeURwQjtFQUdFLDZCdkJaWTtFdUJhWiw4QkFBOEI7O0FBSWhDO0U5QmlDQSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsb0JBQW9CO0VBQ3BCLG1CT2pDb0I7RXVCSGxCLFdsQjFHb0M7RWtCMkdwQyxlbEIzR29DO0VaZ0p0QztJQUdFLFlBQVk7SUFDWixhQUFhO0lBQ2IsZUFBZTtFQUdqQjtJQUNFLFdBQVc7SUFDWCxTQUFTO0lBQ1QsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sT0FBTztJQUNQLG1CT2pEa0I7SVBrRGxCLCtDQUErQztJQUUvQztNQVZGO1FBV0ksZUFBZSxJQUVsQjs7QThCdkREO0VBRUUsYUFBYTs7QUFHZjtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLFNBQVM7O0FBR1g7RUFDRSxrQnpCaEk0Qzs7QXlCbUk5QztFQUVFLGVBQWU7RUFDZixxQnpCdEk0Qzs7QXlCeUk5Qzs7RUFHRSxtQkFBbUI7O0FBR3JCOztFQUdFLDJCQUEyQjs7QUFHN0I7O0VBSUUsZUFBZTtFQUNmLG1CekIxSjRDOztBMEJFOUM7RS9Cb0dBLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFVBQVU7RUFDVixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsbUJBQW1CO0VBQ25CLG1CQUFtQjtFK0I3R25CO0lBSUksYUFBYTs7QUFJakI7RTNCbWVFLGtCQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixpQkM3ZTRDO0VENmU1QyxzQkFyZW9CO0UyQktwQixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YsZ0JBQTZCOztBQUcvQjtFQUNFLGtCQUFrQjtFQUNsQixXMUJ0QjRDO0UwQnVCNUMsYzFCdkI0QztFMEJvQjlDO0lBT0ksa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxXQUFXO0lBQ1gseUJ4QnNDVTtJd0JyQ1YsZUFBZTtJQUNmLHNCQUFzQjtJQUN0QixjMUJqQzBDO0kwQmtDMUMsVzFCbEMwQztJMEJtQzFDLHdCMUJuQzBDO0kwQm9DMUMsTUFBTTtJQUNOLHVCQUF1QjtJQUV2Qix3REFBd0Q7SUFDeEQsNEdqQnRDc0M7RWlCa0IxQztJQTBCSSxzQkFBc0I7SUFDdEIsa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxlQUFlO0lBQ2YsZTFCbEQwQztJMEJtRDFDLGMxQm5EMEM7STBCb0QxQyxlMUJwRDBDO0kwQnFEMUMsZ0IxQnJEMEM7STBCc0QxQyx5QnhCc0JZO0l3QnJCWixrQkFBa0I7SUFDbEIsV0FBVztJQUNYLHVEakJ2RHNDOztBaUIyRDFDO0VBQ0UsYXhCY2M7RXdCYmQsa0JBQWtCO0VBQ2xCLGMxQmhFNEM7RTBCaUU1QyxhMUJqRTRDO0UwQmtFNUMsZTFCbEU0QztFMEJtRTVDLGlCMUJuRTRDO0UwQm9FNUMsVUFBVTtFQUNWLDZDakJuRXdDO0VpQm9FeEMscUJBQXFCOztBQUd2Qjs7RTNCb2FFLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixxQkM3ZTRDO0VENmU1QyxzQkFqZG9CO0UyQmdEcEIsa0JBQWtCO0VBQ2xCLG1CMUI3RTRDOztBMEJnRjlDO0VBQ0Usa0JBQWtCO0VBQ2xCLFUxQmxGNEM7O0EwQnFGOUM7O0VBTUUsa0JBQWtCOztBQUdwQjs7RUFNRSxlQUFlOztBQUdqQjtFQUlJLHlCeEJ2QmU7O0F3Qm1CbkI7RUFRSSx5QnhCbkNZO0V3Qm9DWiw2QkFBd0M7O0FBTzVDOztFQUlJLHdEQUF3RDs7QUFHNUQ7O0VBR0ksZ0R4QnJDVTs7QXdCNENkO0VBQ0UsbUJBQW1COztBQUdyQjtFQUlJLHlCeEJsQ2dCOztBd0I4QnBCO0VBUUkseUJ4QnJDZ0I7O0F3QjZCcEI7RUFhSSxtQkFBbUI7RUFDbkIsNkNqQnhKc0M7O0FpQjRKMUM7O0VBTUUsY3hCeEhrQjs7QXdCMkhwQjtFQUdFLGdCQUFnQjs7QUFHbEI7RUFHRSxheEJqRWtCOztBd0J3RXBCO0VBR0UsVzFCMUw0QztFMEIyTDVDLFkxQjNMNEM7RTBCdUw5QztJQU9JLHNCQUFzQjtJQUN0QixZMUIvTDBDO0kwQmdNMUMsVzFCaE0wQztJMEJpTTFDLHdCQUF3QjtJQUN4QixNQUFNO0VBWFY7SUFlSSxlMUJ0TTBDO0kwQnVNMUMsZ0IxQnZNMEM7STBCd00xQyxjMUJ4TTBDO0kwQnlNMUMsZTFCek0wQzs7QTBCNk05QztFQUdFLGF4QjVIaUI7RXdCNkhqQixvQ0FBaUQ7O0FBR25EO0VBR0UsVTFCdk40Qzs7QTBCME45QztFQUlJLGdCQUFnQjtFQUNoQixnQ0FBd0M7O0FBUzVDO0UvQmxJQSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxVQUFVO0VBQ1YsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULG1CQUFtQjtFQUNuQixtQkFBbUI7RStCeUhuQjtJQUlJLGFBQWE7O0FBSWpCO0UzQjZQRSxrQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1osaUJDN2U0QztFRDZlNUMsc0JBcmVvQjtFMkIwT3BCLGN4QjNLYztFd0I0S2QsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsZUFBZTs7QUFHakI7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixXMUI3UDRDO0UwQjhQNUMsYzFCOVA0QztFMEIrUDVDLGdCQUE2QjtFQUM3QixlQUFlO0VBUGpCO0lBV0ksc0JBQXNCO0lBQ3RCLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sY0FBYztJQUNkLFcxQnhRMEM7STBCeVExQyxjMUJ6UTBDO0kwQjBRMUMsd0IxQjFRMEM7STBCMlExQyxXQUFXO0lBQ1gseUJ4QnhNVTtJd0J5TVYsdUJBQXVCO0lBRXZCLHdEQUF3RDtJQUN4RCw0R2pCOVFzQztFaUJ1UDFDO0lBNkJJLHNCQUFzQjtJQUN0QixrQkFBa0I7SUFDbEIsYzFCeFIwQztJMEJ5UjFDLGUxQnpSMEM7STBCMFIxQyxjQUFjO0lBQ2QsZTFCM1IwQztJMEI0UjFDLGdCMUI1UjBDO0kwQjZSMUMsa0JBQWtCO0lBQ2xCLHlCeEJsTlk7SXdCbU5aLFdBQVc7SUFDWCx1RGpCOVJzQzs7QWlCa1MxQzs7RUFFRSxrQkFBa0I7RUFDbEIsbUIxQnZTNEM7RUQ2ZTVDLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixxQkM3ZTRDO0VENmU1QyxzQkFqZG9CO0UyQjZRcEIsaUJBQWlCOztBQU1uQjs7RUFRRSxrQkFBa0I7O0FBR3BCO0VBSUkseUJ4QjFPZTs7QXdCc09uQjtFQVFJLHlCeEJ0UFk7RXdCdVBaLDZCQUF3Qzs7QUFPNUM7O0VBTUUsZ0R4QnBQWTs7QXdCMFBkO0VBQ0UsbUJBQW1COztBQUdyQjtFQUdFLG1CQUFtQjtFQUhyQjtJQU1JLHlCeEJsUGdCO0V3QjRPcEI7SUFVSSx5QnhCclBnQjtFd0IyT3BCO0lBZUksbUJBQW1CO0lBQ25CLDZDakJ4V3NDOztBaUJvVjFDO0VBeUJFLGN4Qm5Va0I7O0F3QnNVcEI7RUFHRSxnQkFBZ0I7O0FBTWxCO0VBRUksVzFCN1gwQztFMEI4WDFDLFkxQjlYMEM7RTBCMlg5QztJQU1NLFcxQmpZd0M7STBCa1l4QyxZMUJsWXdDO0kwQm1ZeEMsd0JBQXdCO0VBUjlCO0lBWU0sZTFCdll3QztJMEJ3WXhDLGdCMUJ4WXdDOztBMEIyWDlDOztFQW1CSSxtQjFCOVkwQzs7QTBCa1o5QztFQUVJLGdDQUF3Qzs7QUFGNUM7RUFNSSxheEJwVWU7RXdCcVVmLG9DQUFpRDs7QUFJckQ7RUFHRSxheEJqVGtCOztBeUI3R3BCO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsV0FBVzs7QUFHYjtFaEM2RkEsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsVUFBVTtFQUNWLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxtQkFBbUI7RUFDbkIsbUJBQW1COztBZ0NsR25CO0U3QmhCRSxzQkFBc0I7RUFDdEIsU0FBUztFQUNULFVBQVU7RUFDVixTQUFTO0VBQ1QsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQix3QkFBd0I7RUMwZXhCLGVDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLGlCQTdiZTtFSmdDZiw4QkFBOEI7RUFDOUIsb0JBQW9CO0VnQ2hFcEIsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWix5QnpCNERlO0V5QjNEZixjekJrRGM7RXlCakRkLGlCM0JyQjRDO0UyQnNCNUMsdUJBQXVCO0VBQ3ZCLFdBQVc7RUFDWCxRQUFRO0VBQ1IsaUhsQi9CMkM7RWtCaUMzQyxnQ3pCeUNZO0VKL0RaOzs7SUFHRSxtQkFBbUI7RTZCS3ZCO0loQ29ERSwwQk8yQlk7SVAxQlosb0JBQW9CO0VnQ3JEdEI7SUFxQkksY3pCc0NZO0l5QnJDWixnQkFBZ0I7RUF0QnBCO0lBMEJJLGFBQWE7O0FBSWpCO0VBQ0UsY3pCQWtCO0V5QkNsQix5QnpCRmtCO0V5QkdsQixvQ0FBb0M7RUFDcEMsbUJBQW1CO0VBSnJCO0lBT0ksY3pCTmdCO0l5Qk9oQixnQkFBZ0I7O0FBSXBCO0VBQ0UsYXpCWmtCOztBeUJlcEI7RUFDRSxtQnpCb0JlOztBeUJqQmpCO0U1QjhhRSxtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1oscUJDN2U0QztFRDZlNUMsc0JBamRvQjtFNEJxQ3BCLGVwQjVEb0M7O0FvQitEdEM7RTVCeWFFLGVDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLGlCQTdiZTtFNEJzQmYsZXBCakVvQztFb0JrRXBDLDRCcEJsRW9DOztBb0JxRXRDO0VBQ0UsYUFBYTtFQUNiLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsZXBCekVvQztFb0IwRXBDLGNwQjFFb0M7RW9CMkVwQyxRQUFRO0VBQ1IsMkJBQTJCO0VBRTNCLGF6QlpjO0V5QmFkLG9CQUFvQjs7QUFHdEI7RUFDRSxjcEJuRm9DO0VvQm9GcEMsYXBCcEZvQztFb0JxRnBDLGFwQnJGb0M7RW9Cc0ZwQyxnQ0FBZ0M7O0FBR2xDO0U3QmpHRSxzQkFBc0I7RUFDdEIsU0FBUztFQUNULFVBQVU7RUFDVixTQUFTO0VBQ1QsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQix3QkFBd0I7RUhzSDFCLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZUFBZTtFQTlDYiw4QkFBOEI7RUFDOUIsb0JBQW9CO0VnQ2dCcEIsa0JBQWtCO0VBQ2xCLFFBQVE7RTdCN0ZSOzs7SUFHRSxtQkFBbUI7RUg0SHZCO0lBQ0UsU0FBUztFZ0N2Q1g7SUFPSSxXQUFXO0lBQ1gsY0FBYztJQUNkLGtCQUFrQjtJQUNsQixPQUFPO0lBQ1AsWXBCcEdrQztJb0JxR2xDLHdCQUF3QjtJQUN4QixVQUFVO0lBQ1YseUJ6QjdCYTtJeUI4QmIsa0VsQm5IeUM7RWtCb0c3QztJQW9CSSxnQ3pCOUNVOztBeUJrRGQ7RUFDRSxjQUFjO0VBQ2QscUIzQnhINEM7RTJCeUg1Qyx5QnpCMUNlO0V5QnVDakI7SUFNSSxzQkFBc0I7SUFDdEIsa0JBQWtCOztBQUl0Qjs7RUFFRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2Qiw4TWxCNUkyQztFa0JnSjNDLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsVUFBVTtFQUNWLGNwQnhJb0M7RW9CeUlwQyxhcEJ6SW9DO0VvQjBJcEMsYXpCckVjO0V5QnNFZCw2QkFBNkI7RUFDN0IsY0FBYztFQWhCaEI7O0lBbUJJLHlCekI1QmdCO0V5QlNwQjs7SWhDaEVFLDBCTzJCWTtJUDFCWixvQkFBb0I7RWdDK0R0Qjs7SWhDaEVFLDBCTzJCWTtJUDFCWixvQkFBb0I7SWdDMkZsQix5QnpCdERnQjs7QXlCMERwQjtFQUVJLHlCekIzQ2dCOztBeUIrQ3BCOztFQUdJLHlCekI5RVU7O0F5QmtGZDtFaEM3R0UsMEJPMkJZO0VQMUJaLG9CQUFvQjs7QWdDZ0h0Qjs7RUFHSSxlcEJoTGtDO0VvQmlMbEMsY3BCakxrQzs7QW9CcUx0Qzs7RUFHSSxlcEJ4TGtDO0VvQnlMbEMsY3BCekxrQzs7QW9CNkx0QztFQUNFLGtCQUFrQjtFQUNsQixVQUFVOztBQUdaOztFaEN6REEsa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLG9CQUFvQjtFQUNwQixtQk9qQ29CO0V5QndGbEIsV0FBVztFaENyRGI7Ozs7SUFHRSxZQUFZO0lBQ1osYUFBYTtJQUNiLGVBQWU7RUFHakI7O0lBQ0UsV0FBVztJQUNYLFNBQVM7SUFDVCxZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixPQUFPO0lBQ1AsbUJPakRrQjtJUGtEbEIsK0NBQStDO0lBRS9DO01BVkY7O1FBV0ksZUFBZSxJQUVsQjtFZ0M2QkQ7O0lBTUksa0JBQWtCOztBQzFNdEI7RTlCTkUsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsd0JBQXdCO0U4QkV4QixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHNCQUFzQjtFOUJGdEI7OztJQUdFLG1CQUFtQjs7QThCRXZCO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixtQkFBbUI7RUFIckI7SUFNSSx5QjFCcUZhOztBMEJqRmpCO0U3QnlkRSxtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1oscUJDN2U0QztFRDZlNUMsc0JBamRvQjtFSm9EcEIsOEJBQThCO0VBQzlCLG9CQUFvQjtFaUMxRHBCLGNyQmxCb0M7RXFCbUJwQyxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLGNyQnJCb0M7RXFCc0JwQyxrQnJCdEJvQztFcUJ1QnBDLG1CckJ2Qm9DO0VxQndCcEMseUI1QjdCNEM7RTRCOEI1QyxjMUJ3Q2M7RTBCdkNkLHlCMUJnRGU7RTBCL0NmLFlBQVk7RUFDWixnQzFCbUNZO0UwQmxDWixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLCtHbkIxQzJDO0VtQjBCN0M7SUFvQkkseUIxQjZEYTtFMEJqRmpCO0lBeUJJLGFBQWE7O0FBSWY7RUE3QkY7SUE4Qkksb0JyQjdDa0M7SXFCZXRDO01BbUNNLGtCQUFrQjtNQUNsQix1QkFBdUI7TUFDdkIsc0JBQXNCLElBQ3ZCO0VBdENMO0lqQzZDRSwwQk8yQlk7SVAxQlosb0JBQW9CO0VpQzlDdEI7SUErQ0ksbUJBQW1CO0lBQ25CLHlCMUJ6QmdCO0kwQjBCaEIsYzFCMENnQjtJMEJ6Q2hCLDRCMUIzQmdCOztBMEIrQnBCOztFQUVFLGMxQm1Da0I7O0EwQmhDcEI7RUFDRSxzQnJCM0VvQzs7QXFCOEV0Qzs7RWpDUkUsMEJPUWlCO0VQUGpCLG9CQUFvQjs7QW9CUnRCO0Vhc0JFLGNBQWM7RUFDZCxjMUJSaUI7RTBCU2pCLGdCQUFnQjtFQUNoQixpQkFBaUI7O0FBR25CO0VBQ0UsYTFCY2tCOztBMEJYcEI7RUFDRSx5QjFCckJlO0UwQm9CakI7SUFJSSx5QjFCdkNVO0UwQm1DZDtJQVNJLG1CQUFtQjtJQUNuQix5QjFCbkVnQjtJMEJvRWhCLGMxQkFnQjs7QTBCSXBCO0VBQ0UsYTFCL0NZO0UwQmdEWixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLG9CQUFvQjs7QUFHdEI7RUFHRSxrQkFBa0I7RUFDbEIsY3JCekhvQzs7QXFCcUh0QztFQVVFLGExQmpEaUI7O0EwQm9EbkI7O0VBRUUsYzFCbkVjOztBMEJzRWhCO0VBQ0UsWUFBWTtFQUNaLG1CQUFtQjs7QUFJckI7RUFDRTtJQUNFLHlCMUJuRlU7STBCb0ZWLGMxQi9FWTtFMEJrRmQ7SUFDRSxjMUJuRlksSTBCb0ZiOztBQUdIO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixtQkFBbUI7O0FBR3JCOztFQUdFLG1CckJqS29DO0VxQmtLcEMsc0JBQXNCOztBQUd4QjtFQUNFLGdCQUFnQjtFQUNoQixvQnJCdktvQzs7QXFCMEt0QztFQUNFLG1CQUFtQjtFQUNuQixvQkFBaUM7O0FBR25DO0VBQ0UsNkJBQTZCO0VBQzdCLGMxQmhIYztFMEJpSGQsbUJBQW1CO0VBQ25CLG9CNUJ4TDRDO0U0QnlMNUMsc0JyQnBMb0M7O0FxQnNMcEM7RUFQRjtJQVFJLGNBQWMsSUFNakI7RUFkRDtJQVlJLHlCMUIzRmE7O0EwQitGakI7RUFDRSxZQUFZO0VBQ1osYUFBYTtFQUNiLGE1QnZNNEM7O0E0QjBNOUM7RUFFRSxtQnJCdk1vQzs7QXFCME10QztFQUdFLGNyQjdNb0M7O0FxQmdOdEM7RUFDRSxjMUIxS2tCO0UwQjJLbEIsbUJBQW1CO0VBRnJCO0lBS0ksNkJBQTZCO0VBTGpDO0lBU0ksbUJBQW1COztBQVR2QjtFQWNFLG1CQUFtQjs7QUFJckI7RWpDekZBLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsbUJPakNvQjtFMEJ1SGxCLFdBQVc7RUFDWCxjQUFjO0VqQ3JGaEI7SUFHRSxZQUFZO0lBQ1osYUFBYTtJQUNiLGVBQWU7RUFHakI7SUFDRSxXQUFXO0lBQ1gsU0FBUztJQUNULFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxtQk9qRGtCO0lQa0RsQiwrQ0FBK0M7SUFFL0M7TUFWRjtRQVdJLGVBQWUsSUFFbEI7O0FpQ21FRDtFQUNFLGFBQWE7O0FDM09mO0UvQk5FLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLHdCQUF3QjtFQzBleEIsbUJDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLHNCQWpkb0I7RUpvRHBCLDhCQUE4QjtFQUM5QixvQkFBb0I7RWtDMUVwQix5QjNCd0VlO0UyQnZFZixXQUFXO0VBQ1gsY3RCSm9DO0VzQktwQyxlN0JWNEM7RTZCVzVDLGMzQjJEYztFMkIxRGQsWUFBWTtFQUNaLGdDM0J1RFk7RTJCdERaLCtHcEJwQjJDO0VYVzNDOzs7SUFHRSxtQkFBbUI7RStCTHZCO0lsQzhERSwwQk8yQlk7SVAxQlosb0JBQW9CO0VrQzVDcEI7SUFDRSxhQUFhOztBQUlqQjtFQUNFLHFCN0I1QjRDOztBNkIrQjlDO0VsQ0RBLGNPMENnQjs7QTJCckNoQjtFQUNFLHlCM0I0Q2U7O0EyQnRDakI7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixXQUFXO0VBSmI7SUFPSSxrQkFBa0I7SUFDbEIsVzdCbEQwQztJNkJtRDFDLGEzQmdDZTtFMkJ6Q25CO0kvQjdDRSxzQkFBc0I7SUFDdEIsU0FBUztJQUNULFVBQVU7SUFDVixTQUFTO0lBQ1QsZUFBZTtJQUNmLG9CQUFvQjtJQUNwQix3QkFBd0I7SVlMMUIsa0JBQWtCO0lBQ2xCLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLGlCQUFpQjtJWkdmOzs7TUFHRSxtQkFBbUI7SVlIckI7TUFDRSw4QkFBOEI7TUFFOUI7UWZnREYsMEJPb0NZO0lRMUVkOzs7TVgyZEUsbUJDN2U0QztNRDZlNUMsZ0JFOWNZO01GOGNaLHFCQzdlNEM7TUQ2ZTVDLHNCQWpkb0I7TVdMcEIsa0JBQWtCO01BQ2xCLGNDdkJhO01Ed0JiLGFBQWE7TUFDYixtQkFBbUI7TUFDbkIsVUFBVTtNQUNWLG9CQUFvQjtNQUdwQjtRQWJGOzs7VUFjSSxxQkFBcUIsSUFFeEI7SUFFRDtNQUVFLHdERDVDMkM7SUMrQzdDO01BRUUsZ0JBQWdCO0lBSWxCO01BQ0UsUUFBUTtNQUNSLFNBQVM7TUFDVCxtQkFBbUI7TUFDbkIsV0FBVztJQUdiOztNQUVFLHVCQUF1QjtNQUN2QixjQUFjO01BR2QsVUFBVTtNQUVWLG1CQUFtQjtJQUtyQjs7Ozs7TUVDSSwwQ0FBWTtNRktkLGtCQUFrQjtNQUNsQixrQkhyRW9DO01Hc0VwQyxZQUFZO01BQ1osd0JIdkVvQztNRzRFcEMsc0JINUVvQztNRzZFcEMsY1JEaUI7TVFFakIsZ0JBQWdCO01BQ2hCLGdCQUFnQjtNQUNoQiwyQkFBMkI7TUFDM0Isb0JBQW9CO01BQ3BCLHlCUkxpQjtNUVFqQjtRQXZCRjs7Ozs7VUF3QkksY0h0RmtDLElHK0ZyQztNQU5rQztRQTNCbkM7Ozs7O1VBNEJJLGNIMUZrQyxJRytGckM7TUFIZ0M7UUE5QmpDOzs7OztVQStCSSxjSDdGa0MsSUcrRnJDO0lBRUQ7TUFDRSx5QkFBeUI7SUFHM0I7TUFDRSxhQUFhO0lBS2I7TUFFRSxVQUFVOztBQUdaO0VBQ0U7SUFDRSxVQUFVO0VBRVo7SUFDRSxVQUFVO0lBSWQ7OztNQUVFLFVBQVU7TUFDVixZQUFZO01BQ1osaUJBQWlCO0lBR25COzs7TUFHRSw0REQ5SXlDO0lDMEs3Qzs7Ozs7TUFlSSxTQUFTO01BQ1QsU0FBUztJQXJJYjtNQTJKSSxnQkhyTWtDO01Hc01sQyxzQ0h0TWtDO01HdU1sQyx5REFBNkQ7TUFDN0QsZ0NBQWdDO0lBMUlwQzs7Ozs7TUE4S0ksZ0JBaEZ5QztNQXlGdkMsZ0NBQWdDO0VtQmhOdEM7O0lBcUJJLGtCQUFrQjtJQUNsQixldEIzRGtDO0lzQjREbEMsY3RCNURrQztJc0I2RGxDLFc3QmxFMEM7STZCbUUxQyxVQUFVO0lBQ1YsU0FBUztJQUNULGdCQUFnQjtJQUNoQixlQUFlO0lBNUJuQjs7TUErQk0sYTNCRVU7RTJCakNoQjtJQW9DSSxxQjdCOUUwQztFNkIwQzlDO0lBd0NJLHNCdEI3RWtDO0VzQnFDdEM7O0lBZ0RJLFc3QjFGMEM7O0E2QjhGOUM7RUFDRSxhN0IvRjRDOztBNkJrRzlDOztFQU9FLFlBQVk7RUFDWixtQkFBbUI7O0FBTXJCO0VBQ0UsbUJBQW1CO0VBQ25CLGFBQWE7RUFDYix5QjNCTGtCO0UyQk1sQixvQ0FBb0M7RUFDcEMsYzNCTmtCOztBMkJTcEI7RUFDRSx5QjNCekNlOztBMkI0Q2pCO0VBQ0UsVUFBVTtFQUNWLGMzQmZrQjs7QTJCcUJwQjtFbEN6REUsMEJPUWlCO0VQUGpCLG9CQUFvQjtFa0MwRHBCLGdCQUFnQjtFQUZsQjs7SUFPSSxhN0IzSTBDOztBOEJHOUM7RWhDTkUsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsd0JBQXdCO0VDMGV4QixtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1osb0JDN2U0QztFRDZlNUMsc0JBdmNvQjtFSjBDcEIsOEJBQThCO0VBQzlCLG9CQUFvQjtFbUN6RXBCLHlCNUJ1RWU7RTRCdEVmLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsa0J2Qk5vQztFdUJPcEMscUI5Qlo0QztFOEJhNUMsYzVCeURjO0U0QnhEZCxRQUFRO0VBQ1IsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixnQzVCbURZO0U0QmxEWiwrR3JCeEIyQztFWFczQzs7O0lBR0UsbUJBQW1CO0VnQ0x2QjtJQW1CSSxhQUFhO0lBQ2IsUUFBUTtJQUNSLGtCQUFrQjtFQXJCdEI7SUF5QkksUUFBUTtJQUNSLGM1QnNEZTtJNEJyRGYsZ0JBQWdCO0lBQ2hCLG1COUIvQjBDO0k4Qkc5QztNQStCTSxhQUFhOztBQUtuQjs7RW5DMEJFLDBCTzJCWTtFUDFCWixvQkFBb0I7O0FtQ3RCdEI7RW5DZEEsY08wQ2dCO0VIcWFkLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixvQkM3ZTRDO0VENmU1QyxzQkF2Y29CO0UrQlNwQixVQUFVOztBQUdaO0VBQ0UseUI1QjZCZTs7QTRCMUJqQjtFQUNFLHFCOUJ2RDRDOztBOEIwRDlDO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7O0FBR2Y7RUFDRSxrQkFBa0I7RUFDbEIsVzlCakU0QztFOEJrRTVDLFk5QmxFNEM7RThCbUU1QyxhNUJnQmlCOztBNEJWbkI7RUFDRSxtQkFBbUI7RUFDbkIsYUFBYTtFQUNiLHlCNUJqQ2tCO0U0QmtDbEIsb0NBQW9DOztBQUd0QztFQUNFLGM1QjhCa0I7O0E0QjFCcEI7RW5DeURBLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsbUJPakNvQjtFNEIzQmxCLFl2QmxGb0M7RVpnSnRDO0lBR0UsWUFBWTtJQUNaLGFBQWE7SUFDYixlQUFlO0VBR2pCO0lBQ0UsV0FBVztJQUNYLFNBQVM7SUFDVCxZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixPQUFPO0lBQ1AsbUJPakRrQjtJUGtEbEIsK0NBQStDO0lBRS9DO01BVkY7UUFXSSxlQUFlLElBRWxCO0VtQ3JGRDtJQUtJLGtCQUFrQjs7QUMzRnRCO0VqQ0ZFLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLHdCQUF3QjtFaUNGeEIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixrQkFBa0I7RWpDRWxCOzs7SUFHRSxtQkFBbUI7O0FpQ0Z2QjtFaEN1ZUUsbUJDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLHNCQWpkb0I7RUpvRHBCLDhCQUE4QjtFQUM5QixvQkFBb0I7RW9DeEVwQix5RzlCWkM7RThCYUQsc0JBQXNCO0VBQ3RCLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGtCL0JkNEM7RStCZTVDLG1CL0JmNEM7RStCZ0I1QyxnQkFBZ0I7RUFDaEIsY3hCWm9DO0V3QmFwQyxjN0JvRGM7RTZCbkRkLHlCN0I0RGU7RTZCM0RmLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsZ0M3QjhDWTtFNkI3Q1osK0d0QjdCMkM7RXNCNkMzQywwQkFBMEI7RUFqQzVCO0lwQzJERSwwQk8yQlk7SVAxQlosb0JBQW9CO0VvQzVEdEI7SUF5QkksbUJBQW1CO0lBQ25CLG9CQUFvQjtFQTFCeEI7SUE4QkksYTdCUWdCO0U2QnRDcEI7SUFvQ0ksYUFBYTtFQXBDakI7SUF3Q0ksZ0JBQWdCOztBQUlwQjs7RUFFRSxtQkFBbUI7RUFDbkIseUI3QlZrQjtFNkJXbEIsYzdCVmtCOztBNkJhcEI7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBRnJCO0lBS0ksYzdCcUJlO0k2QnBCZixnQkFBZ0I7SUFDaEIsbUIvQmhFMEM7SStCaUUxQyxpQkFBaUI7SUFSckI7TUFXTSxhQUFhOztBQUtuQjtFakM1RUUsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsd0JBQXdCO0VpQ3dFeEIsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixtQkFBbUI7RWpDM0VuQjs7O0lBR0UsbUJBQW1COztBaUMyRXZCO0VqQ3RGRSxzQkFBc0I7RUFDdEIsU0FBUztFQUNULFVBQVU7RUFDVixTQUFTO0VBQ1QsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQix3QkFBd0I7RUhzSDFCLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZUFBZTtFQUdiLFdBQVc7RW9DNUNYLG9CQUFvQjtFQUNwQix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLGN4Qm5Gb0M7RXdCb0ZwQyxjeEJwRm9DO0V3QnFGcEMsYzdCaEJjO0VKckVkOzs7SUFHRSxtQkFBbUI7RUg0SHZCO0lBQ0UsU0FBUztFb0NsRFg7SUFVSSxrQkFBa0I7SUFDbEIsa0JBQWtCO0VBWHRCO0lBZUksV3hCN0ZrQztFd0I4RXRDO0lBbUJJLFl4QmpHa0M7RXdCOEV0QztJcEMzQkUsMEJPb0NZO0k2QmVWLGM3QmpDWTtJNkJrQ1osa0JBQWtCO0lBQ2xCLG9CQUFvQjtFQTFCeEI7SUE4QkksZUFBZTtFQTlCbkI7SUFrQ0ksYzdCM0NZO0U2QlNoQjtJQXNDSSxtQkFBbUI7SUFDbkIsYzdCOUVnQjs7QTZCa0ZwQjtFQUNFLGFBQWE7O0FBR2Y7RUFFSSxxQkFBcUI7RUFDckIsZ0J4QmhJa0M7O0F3QjZIdEM7RXBDdkRFLDBCT1FpQjtFUFBqQixvQkFBb0I7O0FvQ2lFdEI7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGE3QjdEaUI7O0E2QmdFbkI7RUFDRSx5QjdCcEVlOztBNkJ1RWpCO0VBQ0Usa0J4Qm5Kb0M7RXdCb0pwQyxXQUFXO0VBRmI7O0lBTUksZ0JBQWdCO0lBQ2hCLGF4QnpKa0M7SXdCMEpsQyxjeEIxSmtDO0l3QjJKbEMseUI3Qi9GVTtJNkJzRmQ7OztNQWFNLHlCN0IvRFc7STZCa0RqQjs7TUFpQk0sa0JBQWtCO01BQ2xCLG9CQUFvQjtJQWxCMUI7O01Bc0JNLGdCQUFnQjtFQXRCdEI7SUEyQkksa0J4QjdLa0M7SXdCOEtsQyxXQUFXO0lBQ1gsU0FBUztJQUNULCtCN0JsSFU7STZCbUhWLDhCN0JuSFU7STZCb0hWLFVBQVU7SUFDVixrQkFBa0I7SUFDbEIseUI3QjFHYTtFNkJ3RWpCO0lBdUNNLHlCN0I5R1c7RTZCdUVqQjtJQTJDTSx5QjdCaElROztBNkJzSWQ7RXBDMURBLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsbUJPakNvQjtFNkJ3RmxCLFdBQVc7RUFDWCxjQUFjO0VwQ3REaEI7SUFHRSxZQUFZO0lBQ1osYUFBYTtJQUNiLGVBQWU7RUFHakI7SUFDRSxXQUFXO0lBQ1gsU0FBUztJQUNULFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxtQk9qRGtCO0lQa0RsQiwrQ0FBK0M7SUFFL0M7TUFWRjtRQVdJLGVBQWUsSUFFbEI7RW9DOEJEO0lBTUksYUFBYTs7QUMxTWpCO0VsQ1BFLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLHdCQUF3QjtFQzBleEIsbUJDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLG9CQzdlNEM7RUQ2ZTVDLHNCQXZjb0I7RWlDL0JwQixjOUJzRWM7RThCckVkLHFCQUFxQjtFQUNyQixhQUFhO0VBQ2IsZ0R2QmhCMkM7RVhXM0M7OztJQUdFLG1CQUFtQjtFa0NKdkI7SUFTSSxjOUJnRVk7SThCL0RaLDBCQUEwQjtFQVY5QjtJQWVJLGM5Qm1EWTtJOEJsRFosMEJBQTBCO0VBaEI5QjtJckNvREUsMEJPb0NZO0U4QnhGZDtJQXdCSSxjOUJtRmdCO0k4QmxGaEIsbUJBQW1CO0lBQ25CLG9CQUFvQjtJQUNwQixrQkFBa0I7RUEzQnRCO0lBK0JJLGM5QjBDWTs7QThCdENoQjtFQUNFLGM5QnFFbUI7O0E4QmxFckI7RWxDOUNFLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLHdCQUF3QjtFQzBleEIsbUJDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLG9CQzdlNEM7RUQ2ZTVDLHNCQXZjb0I7RWlDUXBCLGVBQWU7RUFDZixjOUJnRWtCO0U4Qi9EbEIsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFbEM1Q25COzs7SUFHRSxtQkFBbUI7O0FtQ1B2Qjs7O0VuQ0pFLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLHdCQUF3QjtFQzBleEIsbUJDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLHNCQWpkb0I7RWtDckJwQix1QkFBdUI7RW5DRnZCOzs7Ozs7Ozs7SUFHRSxtQkFBbUI7O0FtQ0V2QjtFQUNFLGdCQUFnQjtFQUNoQixjL0IwRGM7RStCekRkLHFCQUFxQjtFQUNyQiwyQkFBMkI7RUFDM0IsbUJqQ2Y0QztFaUNnQjVDLG9CakNoQjRDO0VpQ2lCNUMsa0JBQWtCOztBQUdwQjtFQUNFLGtCQUFrQjtFQUNsQixhQUE4Qjs7QUFHaEM7RUFDRSxzQjFCckJvQztFMEJzQnBDLGlCakMzQjRDOztBaUM4QjlDOztFQUVFLHFCQUFxQjtFQUNyQixvQmpDakM0QztFaUNrQzVDLHNCMUI3Qm9DOztBMEJnQ3RDOztFQU1FLG9CakMzQzRDO0VpQzRDNUMscUJBQXFCOztBQUd2QjtFQUNFLGtCQUFrQjs7QUFHcEI7RUFHRSxrQkFBa0I7O0FBR3BCO0VBR0UsMkNBQTJDOztBQUc3QztFQUNFLDhCQUE4Qjs7QUFHaEM7RUFDRSx5QkFBeUI7O0FBRzNCO0VBR0UsNkJBQTZCOztBQUcvQjtFQUdFLDZDQUE2QztFQUM3QyxhQUFhOztBQUdmO0VBR0Usa0JBQWtCOztBQ3hGcEI7RUFDRSxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CaEMrRFk7RWdDOURaLFlsQ0g0QztFa0NJNUMsa0JBQWtCOztBQUdwQjtFQUNFLGFBQWE7RUFDYixZbENUNEM7RWtDVTVDLFdBQVc7RUFDWCx5QkFBeUI7RUFDekIsK0JBQStCO0VBQy9CLDRHekJuQjJDOztBeUJ1QjdDO0VBQ0Usa0RBQWtEOztBQUdwRDtFQUNFLDZCQUE2Qjs7QUFNL0I7RUFDRSxVQUFVO0VBQ1YseUJBQXlCO0VBQ3pCLGFBQWE7RUFDYixtQkFBbUI7O0FBTXJCO0VBQ0UsWWxDdkM0QztFa0N3QzVDLFdsQ3hDNEM7RWtDeUM1QyxrQkFBa0I7RUFDbEIsc0RkZ0NxRDtFYy9CckQsZ0JBQWdCOztBQUdsQjtFQUNFLFdsQy9DNEM7RWtDZ0Q1QyxZQUFZO0VBQ1osaUJBQWlCOztBQUduQjtFQUdFLFlsQ3ZENEM7RWtDd0Q1QyxXbEN4RDRDO0VrQ3lENUMsYXBCL0JtQjtFb0JnQ25CLE9BQU87RUFDUCxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLDBEekIvRHlDOztBeUJrRTNDO0V2Q0NFLDBCTzJCWTtFUDFCWixvQkFBb0I7O0F1Q0l0QjtFQUdFLG1CaEMrQ2tCOztBZ0M1Q3BCO0V2Q1hFLDBCTzJCWTtFUDFCWixvQkFBb0I7RXVDY3BCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLDZCQUE2Qjs7QUFHL0I7RUFHRSxZbEN6RjRDO0VrQzBGNUMsV2xDMUY0QztFa0NzRjlDO0lBT0ksUUFBUTtJQUNSLHdCQUF3QjtJQUN4Qix5QmhDTWE7O0FnQ0NqQjtFQUNFLFVBQVU7RUFDVixzRHpCOUcyQzs7QXlCaUg3QztFQUNFLFdBQVc7O0FBR2I7RUFHRSxrQnBCNUIrQjtFb0I2Qi9CLG1CQUFtQjs7QUFHckI7RXZDckRFLDBCTzJCWTtFUDFCWixvQkFBb0I7O0F1QzBEdEI7RUFJRSxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGFBQWE7O0FBR2Y7RUFHRSxtQmhDaEJrQjtFZ0NpQmxCLFlBQVk7O0FBR2Q7OztFQVNFLGFBQWE7RUFDYixZQUFZO0VBQ1osdUJBQXVCOztBQU16Qjs7OztFQVNFLFlBQVk7RUFDWiw2QkFBNkI7O0F4QzFHakM7RUloRUksc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsd0JBQXdCO0VIc0gxQixxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsVUFBVTtFQUNWLGVBQWU7RUFHYixXQUFXO0V1QzhDWCxhQUFhO0VBQ2IsZUFBZTtFQUNmLFlsQ2pMNEM7RWtDa0w1QyxXbENsTDRDO0VrQ21MNUMsYXBCekptQjtFb0IwSm5CLDBEekJ0THlDO0VYT3pDOzs7SUFHRSxtQkFBbUI7RUg0SHZCO0lBQ0UsU0FBUzs7QXVDbURYO0VwQzNMRSxzQkFBc0I7RUFDdEIsU0FBUztFQUNULFVBQVU7RUFDVixTQUFTO0VBQ1QsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQix3QkFBd0I7RUhzSDFCLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZUFBZTtFQUdiLFdBQVc7RXVDeURYLGFBQWE7RUFDYixlQUFlO0VBQ2YsWWxDNUw0QztFa0M2TDVDLFdsQzdMNEM7RWtDOEw1QywwRHpCaE15QztFWE96Qzs7O0lBR0UsbUJBQW1CO0VINEh2QjtJQUNFLFNBQVM7O0F1QzREWDtFQUNFLG1CaEMxRWtCOztBZ0M2RXBCO0VBQ0UsbUJoQ3JJWTs7QWdDd0lkO0VBQ0UsbUJBQW1COztBQUdyQjtFQUNFLGFoQ2xLa0I7RWdDbUtsQixtQkFBbUI7O0FBR3JCOztFdkNqSkUsMEJPMkJZO0VQMUJaLG9CQUFvQjtFdUNnSnRCOztJQU1JLGFBQWE7O0FBSWpCO0VBQ0UsU0FBUztFQUNULFlsQzlONEM7O0FrQ2lPOUM7RUFDRSxZbENsTzRDOztBa0N3TzlDO0VBQ0UsWWxDek80QztFa0MwTzVDLFdBQVc7RUFDWCxlbEMzTzRDO0VrQzRPNUMsYWhDbEtjOztBZ0N3S2hCO0VBQ0UsV0FBVztFQUNYLFlsQ3BQNEM7RWtDcVA1QyxVQUFVO0VBQ1Ysa0JBQWtCOztBQUdwQjtFQUVFLGtCQUFrQjtFQUNsQixXQUFXOztBQUdiO0VBQ0UsaUJBQWlCOztBQUduQjtFQUdFLFVwQjVPbUI7O0FvQitPckI7RUFHRSxZbEM1UTRDO0VrQzZRNUMsa0JwQnZMK0I7RW9Cd0wvQixZQUFZOztBQUdkO0V2Q2hORSwwQk8yQlk7RVAxQlosb0JBQW9COztBdUNxTnRCO0VBR0UsbUJoQ2xLa0I7O0FnQ3FLcEI7O0VBTUUsbUJoQzNLa0I7O0FnQzhLcEI7RUFHRSxZbEN6UzRDO0VrQzBTNUMsV2xDMVM0Qzs7QWtDNlM5Qzs7RUFFRSw0Q0FBNEM7RUFDNUMsa0NBQWtDO0VBQ2xDLDRHekJ2VDJDOztBeUI4VDdDO0VBQ0UsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLG1CQUFtQjtFQUNuQixvQnBCMVBnQztFb0IyUGhDLHFCcEIzUGdDO0VvQjRQaEMsV0FBVztFQUNYLFlBQVk7RUFDWixvQkFBb0I7RUFDcEIsNENBQTRDO0VBQzVDLHNCQUFzQjtFQUN0Qix5QmhDelFxQjtFZ0MwUXJCLDJKekI1VTJDO0V5QitVM0Msa0NBQWtDOztBQUdwQztFdkNwUkUsMEJPb0NZOztBZ0NvUGQ7RUFDRSxrREFBa0Q7RUFDbEQsbUJBQW1CO0VBQ25CLCtCQUErQjs7QUFJakM7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixhQUFhOztBQUdmO0VBQ0UsY2hDdFJjOztBZ0N5UmhCO0VBQ0UsYWhDdlJjO0VnQ3dSZCxtQmxDcFc0Qzs7QWtDdVc5QztFQUNFLFVBQVU7O0FBR1o7RUFDRSxnQjNCdldvQzs7QTJCMld0Qzs7Ozs7Ozs7RUFRRSxhQUFhOztBQUdmO0VBQ0UsMEJoQzNUWTtFZ0M0VFosd0IzQnhYb0M7O0EyQnlWdEM7RUFtQ0UsWUFBWTs7QUFJZDs7RUFNRSxVQUFVOztBQUdaO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsVzNCN1lvQztFMkI4WXBDLE9BQU87RUFDUCxZbENwWjRDO0VrQ3FaNUMsYzNCaFpvQztFMkJpWnBDLFdBQVc7RUFDWCx5QmhDOVVjO0VnQytVZCxZQUFZO0VBQ1oseUR6Qi9aMkM7O0F5QmthN0M7RUFDRSxVQUFVO0VBQ1YseURkcFZxRDs7QWN3VnZEO0VBQ0UsbUJsQ25hNEM7RWtDb2E1QyxrQkFBa0I7O0FBSXBCO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxpQmxDM2E0QztFa0M0YTVDLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsY2hDcldjOztBZ0N3V2hCO0VuQzRERSxtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1oscUJDN2U0QztFRDZlNUMsc0JBamRvQjs7QW1DNFp0QjtFQUNFLGUzQnBib0M7RTJCbWJ0Qzs7SUFLSSxlM0J4YmtDO0UyQm1idEM7O0lBY0ksZTNCamNrQztFMkJtYnRDOztJQXVCSSxlM0IxY2tDO0kyQjJjbEMsYzNCM2NrQztFMkJtYnRDOztJQWlDSSxlM0JwZGtDO0kyQnFkbEMsYzNCcmRrQztJMkJzZGxDLGVwQnphOEI7RW9Cc1lsQztJQXdDSSxjM0IzZGtDO0UyQm1idEM7SUE4Q0ksa0JwQjVaNEI7RW9COFdoQztJQW1ESSxVQUFVO0lBQ1Ysc0RkbGFtRDtFYzhXdkQ7SUEwREksbUJBQW1CO0VBMUR2QjtJdkN2WEUsMEJPMkJZO0lQMUJaLG9CQUFvQjtJdUN1YmxCLG1CaENqWWdCO0VnQ2dVcEI7O0lBMEVJLG1CaEMxWWdCO0VnQ2dVcEI7OztJdkN4V0UsOEJBQThCO0lBQzlCLG9CQUFvQjtJdUM4YmxCLHVCQUF1Qjs7QUFPM0I7RUFHRSxlM0JwaEJvQzs7QTJCdWhCdEM7RUFDRSxlM0J4aEJvQztFMkJ5aEJwQyxjM0J6aEJvQztFMkIwaEJwQyxlcEI3ZWdDOztBb0JnZmxDO0VBQ0Usb0IzQjloQm9DO0UyQitoQnBDLGUzQi9oQm9DOztBMkJraUJ0QztFQUVFLFkzQnBpQm9DOztBMkJ1aUJ0QztFQUdFLGUzQjFpQm9DO0UyQjJpQnBDLGEzQjNpQm9DO0UyQjRpQnBDLGdCQUFnQjs7QUNqakJsQjtFQUNFLGdCNUJJb0M7RTRCSHBDLGdCQUFnQjtFQUNoQixxQm5DSDRDOztBbUNTOUM7RUFDRSxtQmpDdURZO0VpQ3REWiwyQm5DWDRDOztBbUNjOUM7RXBDK2RFLGtCQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixxQkM3ZTRDO0VENmU1QyxpQkF2WGU7RW9DdEdmLGNqQ3NEYzs7QWlDbkRoQjtFcEMwZEUsbUJDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLHNCQWpkb0I7RW9DUHBCLGNqQ2lEYzs7QWlDM0NoQjtFQUNFLHlCQUF5QjtFQUN6QixpQkFBaUI7RUFDakIsV0FBVzs7QUFHYjtFcEM0Y0UsbUJDN2U0QztFRDZlNUMsZ0JFN2NhO0VGNmNiLHFCQzdlNEM7RUQ2ZTVDLHNCQXJab0I7RW9DckRwQix5QmpDZ0NZOztBaUM3QmQ7RXBDdWNFLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixxQkM3ZTRDO0VENmU1QyxzQkFqZG9CO0VvQ1lwQix5QmpDeUJZO0VpQ3hCWixXQUFXOztBQUdiO0VBQ0UsWUFBWTtFQUNaLFluQzlDNEM7RW1DK0M1QyxXQUFXOztBQUdiOzs7RUFHRSwrRDFCdkR5Qzs7QTBCMEQzQztFQUNFLG1CakMrRGtCOztBaUM1RHBCOztFQUVFLGNqQ1FjO0VpQ1BkLG1CakN5RGtCO0VpQ3hEbEIsZ0NqQ3dEa0I7RWlDdkRsQiw2QmpDdURrQjs7QWlDcERwQjs7RUFFRSxxQm5DdEU0QztFbUN1RTVDLHNCbkN2RTRDO0VtQ3dFNUMsbUJBQW1CO0VBQ25CLGdCQUFnQjs7QUFHbEI7RUFDRSxjakNKYztFaUNLZCx5QmpDVFk7O0FpQ1lkO0VBQ0Usa0JuQ2xGNEM7O0FtQ3FGOUM7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVzs7QUFHYjtFQUNFLGNBQWM7RUFDZCxrQkFBb0I7RUFDcEIsZ0JBQWdCOztBQUdsQjs7RUFFRSxtQmpDakNZO0VpQ2tDWixjakM3QmM7RWlDOEJkLDZCakNuQ1k7RWlDb0NaLGdDakNsQ1k7RWlDbUNaLHdCbkN0RzRDO0VtQ3VHNUMsdUI1QmxHb0M7RTRCMkZ0Qzs7SUFVSSxxQm5DMUcwQzs7QW1DOEdiO0VBQy9CO0lBQ0UsNEJBQTRCLElBQzdCOztBQUdIO0VBQ0Usa0JuQ3JINEM7O0FtQ3dIOUM7RUFDRSxtQm5Dekg0Qzs7QW1DNkg5Qzs7RUFFRSxjNUIxSG9DO0U0QjJIcEMsa0I1QjNIb0M7RTRCNEhwQyxtQm5Dakk0QztFbUNrSTVDLHFCbkNsSTRDOztBbUNxSTlDO0VBQ0UsaUJBQWlCOztBQUduQjtFQUdFLG1CakN6RVk7O0FpQzZFZDtFeEMvRUUsMEJPMkJZO0VQMUJaLG9CQUFvQjs7QXdDb0Z0QjtFQUdFLGFBQWE7O0FBR2Y7RUFHRTtJQUlFLFVBQVUsSUFDWDs7QUFHSDs7OztFQWlCRSxVQUFVOztBQUdaO0VBSUUsb0JuQy9MNEM7RW1DZ001QyxrQkFBa0I7RUFDbEIsWTVCNUxvQzs7QTRCcU10QztFQUNFLGdDakMxSVk7O0FpQzZJZDtFQUNFLHlCakNoTlk7RWlDaU5aLGdDakNqTlk7RWlDa05aLDZCakNsTlk7O0FpQ3FOZDtFQUNFLHlCakM3RmtCO0VpQzhGbEIsZ0NqQzlGa0I7RWlDK0ZsQiw2QmpDL0ZrQjs7QWlDcUdwQjtFQUNFLGtCbkM5TjRDOztBbUNpTzlDO0VBQ0Usa0JBQWtCO0VBQ2xCLG1CakNoS1k7RWlDaUtaLDhCbkNwTzRDO0VtQ3FPNUMsYzVCaE9vQztFNEJtT3BDLCtEMUIxT3lDOztBMEI2TzNDO0VBQ0Usb0I1QnZPb0M7RTRCd09wQyxpQkFBaUI7O0FBR25CO0VBQ0UsbUJqQzNNd0I7O0FpQytNMUI7O0VBS0UsY2pDcExjO0VpQ3FMZCx5QmpDcEprQjtFaUNxSmxCLDZCakNySmtCO0VpQ3NKbEIsZ0NqQ3ZKZ0I7O0FpQzJKbEI7O0VBS0UsNkJqQ2hLZ0I7O0FpQ29LbEI7OztFQVNFLDZCakM1S2tCO0VpQzZLbEIsZ0NqQzdLa0I7O0FpQ2lMcEI7RUFJRSxnQ2pDdExnQjs7QWlDeUxsQjtFQUlFLGdDakM3UHdCOztBaUNpUTFCOztFQUtFLGNqQ3RPYztFaUN1T2QsbUJqQ3ZRd0I7RWlDd1F4Qiw2QmpDeFF3QjtFaUN5UXhCLGdDakN6UXdCOztBaUM2UTFCO0VBR0UsVUFBVTs7QUFNWjs7RUFFRSxlNUJ6VG9DOztBNEI0VHRDO0VBQ0Usa0JBQW1COztBQUdyQjtF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RUQ2ZTVDLHNCQXphb0I7O0E2QzVEdEI7RTlDWEUsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsd0JBQXdCO0VDMGV4QixrQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1osaUJDN2U0QztFRDZlNUMsc0JBemFvQjtFNkNyRHBCLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixrQkFBa0I7RUFDbEIseUIxQzZDWTtFMEM1Q1osYzFDaURjO0UwQ2hEZCxlQUFlO0U5Q2pCZjs7O0lBR0UsbUJBQW1CO0U4Q0F2QjtJQWlCSSx5QjFDMENVO0UwQzNEZDtJQXFCSSx5QjFDTWM7RTBDM0JsQjtJQXlCSSxhQUFhO0lBQ2IseUIxQzBCbUI7O0EwQ3RCdkI7RUFDRSxpQjlCV2dDOztBOEJSbEM7RUFDRSx5QjFDcUNlO0UwQ3RDakI7SUFJSSx1QzFDZW1COztBMENWdkI7RTdDMGJFLGtCQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixpQkM3ZTRDO0VENmU1QyxzQkF6YW9CO0U4Q3pFdEIsbUIzQ0djO0UyQ0ZkLHlCM0NJYztFMkNIZCxrQkFBa0I7RUFDbEIsZ0J0Q09zQztFc0NOdEMsV0FBVztFRHNEVCxZQUFZO0VBQ1osa0JyQ2pEb0M7RXFDa0RwQyxrQnJDbERvQztFcUNtRHBDLGM1Q3hENEM7RTRDeUQ1QyxzQjVDekQ0Qzs7QTRDNEQ5QztFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixtQkFBa0M7RUFDbEMsZXJDN0RvQzs7QXFDZ0V0QztFQUNFLG1CQUFtQjtFN0N1YW5CLGtCQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixpQkM3ZTRDO0VENmU1QyxzQkF6YW9CO0U2Q0lwQixxQjlCdEJnQzs7QThCeUJsQztFQUNFLGNyQ3ZFb0M7RXFDd0VwQyxZQUFZO0VBQ1osV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sY3JDNUVvQztFcUM2RXBDLGlF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O0FBR1o7O0VsRDZTRSxtQkM3ZTRDO0VENmU1QyxnQkU3Y2E7RUY2Y2IscUJDN2U0QztFRDZlNUMsc0JBclpvQjtFa0QyR3BCLFVBQVU7O0FBR1o7O0VBRUUsYS9DbEljOztBK0NxSWhCOztFQUVFLHFCakQ3TTRDO0VpRDhNNUMsYy9DeEljOztBK0MySWhCOztFQUVFLGdCQUFnQjtFQUNoQixjL0M5SWM7RStDK0lkLHlCL0N0SWU7RStDdUlmLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsZ0JqRHhONEM7RWlEME41QywwQkFBMEI7RUFBRSxjQUFhO0VBVDNDOztJQVlJLDBCL0NqS21CO0UrQ3FKdkI7OztJQWtCSSx3QkFBd0I7SUFDeEIsU0FBUztJQUFFLHlFQUF3RTs7QUFJdkY7Ozs7RUFJRSxZQUFZO0VBQ1osWUFBWTtFQUNaLGMxQ3pPb0M7RTBDbU90Qzs7OztJQVNJLGdCQUFnQjtJQVRwQjs7OztNQVlNLDRCL0N4TGlCO00rQ3lMakIseUIvQ3pMaUI7RStDNEt2Qjs7OztJQWtCSSw0Qi9DaExZO0krQ2lMWix5Qi9DakxZOztBK0NxTGhCOztFQUVFLFFBQVE7O0FBR1Y7O0VBRUUsU0FBUzs7QUFHWDs7RWxEb09FLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixxQkM3ZTRDO0VENmU1QyxzQkFqZG9CO0VrRGdQcEIsYy9DdE1jO0UrQ3VNZCxnQkFBZ0I7O0FBR2xCOztFbEQ2TkUsbUJDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLHNCQWpkb0I7RWtEdVBwQixjMUM5UW9DO0UwQytRcEMsYTFDL1FvQztFMENnUnBDLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLGMvQ2xOYztFK0NtTmQsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixvRHhDalMyQztFd0NzUjdDOztJQWNJLG1CL0N6TGE7RStDMktqQjs7SXREL01FLDBCTzJCWTtJUDFCWixvQkFBb0I7SXNEaU9sQixzQi9Ddk9tQjs7QStDMk92Qjs7RUFFRSxjL0NsT2M7O0ErQ3FPaEI7O0VBRUUsa0JBQWtC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aURlO0VnRGhEZixZQUFZO0VBQ1osZ0NoRG9DWTtFZ0RuQ1osV0FBVztFQUNYLGMzQzdCb0M7RTJDOEJwQyxlQUFlO0VBQ2YsY2hEa0NjO0VnRGpDZCw4QkFBOEI7RUFDOUIsaUV6QzVDMkM7RVhXM0M7OztJQUdFLG1CQUFtQjtFb0RnQnZCO0l2RHlDRSwwQk8yQlk7SVAxQlosb0JBQW9CO0V1RDFDdEI7SUFxQkkseUJoRHdEYTs7QWdEcERqQjtFQUNFLDRCaERpQlk7O0FnRGRkO0V2RHNCRSwwQk9RaUI7RVBQakIsb0JBQW9CO0V1RHZCdEI7SUFJSSxzQjNDcERrQztFMkNnRHRDO0lBUUkscUJBQXFCO0lBQ3JCLGdCM0N6RGtDO0kyQzBEbEMsY2hEb0JlOztBZ0RoQm5CO0VBQ0Usa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixhM0NqRW9DO0UyQ2tFcEMsYWhEWWlCO0VnRFhqQiwyQkFBMkI7O0FBRzdCO0VBQ0UseUJoREdlOztBZ0RBakI7RUFDRSw4QkFBOEI7O0FBR2hDO0V0Q2ZJLDBDQUFZOztBc0NtQmhCO0VBQ0UseUJoRFJlOztBZ0RXakI7RUFDRSxZQUFZOztBQUdkO0VBQ0UsYWhEM0JZO0VnRDRCWixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFkzQzlGb0M7RTJDK0ZwQyxvQkFBb0I7RUFDcEIsMkR6QzNHMkM7RXlDNEczQyx5QkFBeUI7O0FBRzNCO0VBRUUsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixXQUFXO0VBQ1gsZ0JBQWdCO0VBTGxCO0l2RHhDRSwwQk8yQlk7SVAxQlosb0JBQW9COztBdURtRHRCO0VuRHdYRSxtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1oscUJDN2U0QztFRDZlNUMsc0JBamRvQjtFbUQyRnBCLGNBQWM7RUFDZCxjM0NuSG9DO0UyQ29IcEMsb0JsRHpINEM7RWtEMEg1Qyx1QmxEMUg0QztFa0QySDVDLGtCbEQzSDRDO0VrRDRINUMsc0IzQ3ZIb0M7RTJDd0hwQyxtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLHVCQUF1Qjs7QUFHekI7RXBEcklFLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLHdCQUF3QjtFSDZFeEIsOEJBQThCO0VBQzlCLG9CQUFvQjtFaUJibEIsMENBQVk7RWJ5YWQsbUJDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLHNCQWpkb0I7RW1EMkdwQix5QmhEdEVZO0VnRHVFWixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLGF2Q2pKWTtFdUNrSlosYUFBYTtFQUNiLDREekNySjJDO0V5Q3NKM0MscUJBQXFCO0VwRDNJckI7OztJQUdFLG1CQUFtQjs7QW9EMkl2QjtFQUVFLGtCQUFrQjs7QUFHcEI7RUFDRSxnS3pDL0oyQztFeUNrSzNDLFVBQVU7RUFDVixtQkFBbUI7RUFMckI7SUFRSSx5QmhEM0RhO0lnRG1EakI7TUFXTSx5QkFBeUI7RUFYL0I7SUFnQkkseUJoRGpFZ0I7RWdEaURwQjtJQW9CSSw2QkFBNkI7O0FBSWpDO0VBQ0UsbUJBQW1COztBQUdyQjtFdkRwR0UsOEJBQThCO0VBQzlCLG9CQUFvQjtFdURxR3BCLGNBQWM7RUFDZCxjM0NsTG9DO0UyQ21McEMsY2hEakhjO0VnRGtIZCxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLG9CM0N0TG9DO0UyQ3VMcEMsa0JBQW9CO0VBQ3BCLGNsRDdMNEM7RWtEOEw1Qyw2QkFBNkI7RUFDN0IseUJoRDVIWTtFZ0Q2SFosdUJBQXVCO0VBQ3ZCLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFkckI7SUFpQkksY2hEL0hZO0lnRGdJWix5QkFBeUI7O0FBSTdCOztFdkR6SUUsMEJPMkJZO0VQMUJaLG9CQUFvQjtFdUQySXBCLFNBQVM7RUFDVCx3QjNDek1vQzs7QTJDNE10QztFQUNFLDRCaEQ3R2U7O0FnRGdIakI7RUFDRSxhQUFhOztBQUdmO0VBQ0UsMEJBQTBCOztBQXZJNUI7RUEySUUsaUJBQWlCO0VBQ2pCLDBEekNqT3lDOztBeUNvTzNDO0VBQ0UsVUFBVTs7QUFHWjtFQUNFLGdDQUFnQztFQUNoQyxtQkFBbUI7RUFGckI7SUFLSSx5QmhENUphO0VnRHVKakI7SUFTSSxhQUFhO0VBVGpCO0lBYUksY2hEcElnQjtFZ0R1SHBCO0lBaUJJLGFoRHhJZ0I7RWdEdUhwQjtJQXFCSSx5QmhEM0thOztBZ0QrS2pCO0VBQ0UsV0FBVztFQUNYLGdCM0M1UG9DOztBMkMrUHRDO0VBQ0UsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQixnQ0FBZ0M7RUFDaEMsV0FBVztFQUNYLGUzQ3BRb0M7RTJDcVFwQyx5QmhEMU1vQjtFZ0QyTXBCLHlEekM3UXlDO0V5Q3NRM0M7SUFVSSx5QmhEekthO0VnRCtKakI7SUFjSSx5QmhEbE5rQjtFZ0RvTXRCO0lBa0JJLFkzQ2pSa0M7STJDa1JsQyxjM0NsUmtDOztBMkNzUnRDO0VBQ0UsNkJBQTZCOztBQUcvQjtFQUNFLHFCQUFxQjtFQUNyQix3Q2xEalM0QztFa0RrUzVDLGUzQzdSb0M7RTJDOFJwQyxpQkFBaUI7RUFDakIsY2hEOU5jOztBZ0RpT2hCO0VBRUUsY2hEMUxrQjs7QWdENkxwQjtFQUVFLFVBQVU7O0FBR1o7RUFFRSxjM0M5U29DOztBMkNpVHRDO0VBRUUsc0IzQ25Ub0M7O0EyQ3NUdEM7RXRDdlBJLDBDQUFZOztBc0M0UGhCO0VBQ0UsbUJBQW1CO0VBQ25CLHFCbERsVTRDO0VrRG1VNUMsbUIzQzlUb0M7RTJDMlR0QztJQU1JLFNBQVM7SUFDVCxvQjNDbFVrQzs7QTJDdVV0Qzs7RXZEOUxBLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsbUJPakNvQjtFUG1DcEI7Ozs7SUFHRSxZQUFZO0lBQ1osYUFBYTtJQUNiLGVBQWU7RUFHakI7O0lBQ0UsV0FBVztJQUNYLFNBQVM7SUFDVCxZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixPQUFPO0lBQ1AsbUJPakRrQjtJUGtEbEIsK0NBQStDO0lBRS9DO01BVkY7O1FBV0ksZUFBZSxJQUVsQjs7QXFCcExIO0VBQ0U7SUFDRSx1QkFBdUI7RUFFekI7SUFDRSx5QkFBeUI7O0FBSTdCO0VBQ0U7SUFDRSx5QkFBeUI7O0FBSTdCO0VBQ0U7SUFDRSwwQkFBMEI7O0FBSTlCO0FBQ0E7RUFDRTtJQUNFLHNCQUFzQjtFQUV4QjtJQUNFLHFCQzFCYTs7QUQ4QmpCO0VBQ0U7SUFDRSxxQkNoQ2E7RURrQ2Y7SUFDRSxzQkFBc0I7O0FtQ3JCeEI7RUFDRSxlQUFlO0VBQ2YsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLFd4Q1pTO0V3Q2FULGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLFdBQVc7RUFDWCw2QkFBNkI7RUFDN0IsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQiwwTTFDaEJ5QztFMENFM0M7SUFvQkksYXhDL0JPO0l3Q2dDUCxtQkFBbUI7SUFDbkIsVUFBVTtJQUNWLHVDakQrRDZCO0lpRDlEN0IsOEwxQzlCb0M7RTBDTXhDOzs7Ozs7O0lBc0NJLHlCakRxQ2E7O0FpRGpDakI7RUFDRSxzRDFDakRzQztFMENrRHRDLCtCQUErQjs7QUFHakM7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix5QmpEU1k7RWlEUlosV0FBVztFQUNYLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLDRCQUE0QjtFQUM1QixtQ0FBbUM7RUFDbkMseUQxQzVEeUM7RUwwSHZDO0krQ3pFSjtNQWNJLFVBQVU7TUFDVixnQkFBZ0I7TUFDaEIsZUFBZTtNQUNmLFlBQVksSUFNZjtFL0NrREc7SStDekVKO01BcUJJLGVBQWUsSUFFbEI7O0FBRUQ7O0VBRUUsa0JBQWtCO0VBQ2xCLGtCQUFrQjs7QUFHcEI7O0VBRUUsY0FBYzs7QUFHaEI7RUFDRSxpQkFBaUI7RUFDakIsbUJuRDFGNEM7O0FtRDZGOUM7RXBEZ1pFLGtCQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixpQkM3ZTRDO0VENmU1QyxzQkFyZW9CO0VvRHdGcEIsY2pEekJjO0VpRDBCZCxzQm5Eakc0Qzs7QW1Eb0c5QztFcER5WUUsa0JDN2U0QztFRDZlNUMsZ0JFOWNZO0VGOGNaLHFCQzdlNEM7RUQ2ZTVDLGlCQXZYZTtFb0RmZixjakRqQ2M7O0FpRG9DaEI7RXBEbVlFLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixvQkM3ZTRDO0VENmU1QyxzQkF2Y29CO0VvRHVFcEIsZ0JBQWdCO0VBQ2hCLG1CbkQ5RzRDO0VtRCtHNUMsY2pEekNjO0VpRDBDZCxnQkFBZ0I7RUFObEI7SXhEekNFLDBCTzJCWTtJUDFCWixvQkFBb0I7O0F3RHFEdEI7RXBEc1hFLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixvQkM3ZTRDO0VENmU1QyxzQkF2Y29COztBb0RxRnRCO0VBQ0UsYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1oseUJqRC9IWTtFaUQySGQ7SUFPSSxlQUFlO0lBQ2YsT0FBTztJQUNQLFlBQVk7SUFDWixTQUFTO0lBQ1QsaUJBQWlCO0lBQ2pCLG9CQUFvQjs7QUFJeEI7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixZQUFZO0VBQ1osV0FBVztFQUNYLGdCNUM1SW9DO0U0QzZJcEMsNkJBQTZCO0VBQzdCLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsNkJBQTZCO0VBQzdCLGtFMUM1SjJDO0UwQ2lKN0M7SUFjSSx5QmpEcERhO0VpRHNDakI7SUFrQkksYUFBYTtJQUNiLHFCakRsRVU7O0FpRHNFZDtFQUNFLFNBQVM7O0FBR1g7RUFDRSxhakQ3RmM7RWlEOEZkLGM1Q25Lb0M7RTRDb0twQyxhNUNwS29DOztBNEN1S3RDO0VBQ0UsZ0JBQWdCOztBQzdLbEI7RUFDRSxlQUFlOztBQUdqQjtFQUdFLFdBQVc7RUFDWCxZQUFZO0VBQ1osYUFBYTtFQUNiLG1CQUFtQjs7QUFHckI7RUFHRSxTQUFTO0VBQ1QsbUJBQW1COztBQUdyQjtFQUlFLGNsRDhDYzs7QWtEM0NoQjtFQUVJLGtCQUFrQjtFQUNsQixZcEQ5QjBDO0VvRCtCMUMsV0FBVzs7QUFJZjtFQU1FLG9CcER6QzRDOztBcURJOUM7RXZEUEUsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsd0JBQXdCO0V1REl4QixhQUFhO0VBQ2IsOEJBQThCO0VBQzlCLFlBQVk7RUFDWixtQjlDTG9DO0U4Q01wQyxtQjlDTm9DO0U4Q09wQyxtQjlDUG9DO0U4Q1FwQyxjbkRvRWlCO0VtRG5FakIsZ0JyRGQ0QztFcURlNUMsbUJyRGY0QztFRks1Qzs7O0lBR0UsbUJBQW1CO0VNcUhuQjtJaUR6SEo7TUFjSSxtQjlDYmtDLEk4Q3VCckM7RWpEaUdHO0lpRHpISjtNQWtCSSxtQjlDakJrQyxJOEN1QnJDO0VqRGlHRztJaUR6SEo7TUFzQkksbUI5Q3JCa0MsSThDdUJyQzs7QUFFRDtFQUNFLGNuRHVDYztFbUR0Q2QsMENBQTBDOztBQUc1QztFQ25CQSw4QnBEdUUyQjtFb0R0RTNCLG1CcERpRW1CO0VvRC9EbkI7O0lBRUUsYXBEa0V5Qjs7QW1EaEQzQjtFQ3ZCQSw4QnBEbUVtQjtFb0RsRW5CLG1CWGdEMkI7RVc5QzNCOztJQUVFLGFwRDhEaUI7O0FtRHJDbkI7RUM5QkEsOEJwRHdFMkI7RW9EdkUzQixtQnBEaUVtQjtFb0QvRG5COztJQUVFLGFwRG1FeUI7O0FtRHRDM0I7RUNsQ0EsOEJwRG9FbUI7RW9EbkVuQixtQlhpQjZCO0VXZjdCOztJQUVFLGFwRCtEaUI7O0FtRDNCbkI7RUN6Q0EsOEJwRDBFMkI7RW9EekUzQixtQnBEaUVtQjtFb0QvRG5COztJQUVFLGFwRHFFeUI7O0FtRDdCM0I7RUM3Q0EsOEJwRHNFbUI7RW9EckVuQixtQlh2QjRCO0VXeUI1Qjs7SUFFRSxhcERpRWlCOztBbURsQm5CO0VBQ0UsYUFBYTs7QUFHZjtFQ3hEQSw4QnBEeUUyQjtFb0R4RTNCLG1CcERpRW1CO0VvRC9EbkI7O0lBRUUsYXBEb0V5Qjs7QW1EYjNCO0VDNURBLDhCcERxRW1CO0VvRHBFbkIsbUI5QzRPRDtFOEMxT0M7O0lBRUUsYXBEZ0VpQjs7QW1ERm5CO0VBR0UsYVY4S3lCO0VVN0t6QixVQUFVOztBQUdaO0VBQ0UsYUFBYTtFQUNiLGNyRDVGNEM7O0FxRCtGOUM7RUFDRSxjQUFjO0VBQ2Qsa0JyRGpHNEM7RXFEa0c1QyxtQjlDN0ZvQzs7QThDZ0d0QztFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGtCQUE4Qjs7QUFHaEM7RXREaVlFLG1CQzdlNEM7RUQ2ZTVDLGdCRTdjYTtFRjZjYixxQkM3ZTRDO0VENmU1QyxzQkFyWm9CO0VzRHNCcEIscUJBQWlDO0VBQ2pDLG9COUMxR29DOztBOEM2R3RDO0V0RDJYRSxtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1oscUJDN2U0QztFRDZlNUMsc0JBamRvQjtFc0R3RnBCLHNCQUFzQjs7QUFHeEI7RUFDRSxlOUNuSG9DO0U4Q29IcEMsZ0JBQTZCO0VBRi9CO0lBUUksY25EakRpQjtFbUR5Q3JCO0lBWUkseUJuRDNCcUI7O0FtRCtCekI7RTFEdkRFLDhCQUE4QjtFQUM5QixvQkFBb0I7RTBEd0RwQixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLFlBQVk7RUFDWixlQUFlO0VBQ2YsVUFBVTtFQUNWLGU5QzVJb0M7RThDNklwQyxjOUM3SW9DO0U4QzhJcEMsa0I5QzlJb0M7RThDK0lwQyxrQjlDL0lvQztFOENnSnBDLGlINUMzSjJDO0U0QzZJN0M7SUFrQkksWUFBWTtJQUNaLFdBQVc7SUFDWCxhbkQxRWU7O0FtRDhFbkI7RUFHSSxhbkQ3RlU7O0FtRDBGZDtFQU9JLGNuRHpGWTtFbURrRmhCO0lBVU0sY1ZtR21CO0VVN0d6QjtJQWVNLHlCVjRMbUI7O0FZdFd6QjtFekRQRSxzQkFBc0I7RUFDdEIsU0FBUztFQUNULFVBQVU7RUFDVixTQUFTO0VBQ1QsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQix3QkFBd0I7RXlESXhCLGFBQWE7RUFDYixlaERIb0M7RWdESXBDLFlBQVk7RUFDWixrQnZEVjRDO0V1RFc1QyxjckRzRWlCO0VxRHJFakIsa0J2RFo0QztFdURhNUMscUJ2RGI0QztFdURjNUMsa0J2RGQ0QztFdURlNUMsMENBQTBDO0V6RFYxQzs7O0lBR0UsbUJBQW1CO0V5REp2QjtJQWNJLGdCdkRsQjBDO0VJNkgxQztJbUR6SEo7TUFrQkksZWhEakJrQyxJZ0RtQnJDOztBQUVEO0VBQ0UsY3JEMkNjOztBcUR4Q2hCO0VEZEEsOEJwRHVFMkI7RW9EdEUzQixtQnBEaUVtQjtFb0QvRG5COztJQUVFLGFwRGtFeUI7O0FxRHJEM0I7RURsQkEsOEJwRG1FbUI7RW9EbEVuQixtQlhnRDJCO0VXOUMzQjs7SUFFRSxhcEQ4RGlCOztBcUQxQ25CO0VEekJBLDhCcER3RTJCO0VvRHZFM0IsbUJwRGlFbUI7RW9EL0RuQjs7SUFFRSxhcERtRXlCOztBcUQzQzNCO0VEN0JBLDhCcERvRW1CO0VvRG5FbkIsbUJYaUI2QjtFV2Y3Qjs7SUFFRSxhcEQrRGlCOztBcURoQ25CO0VEcENBLDhCcEQwRTJCO0VvRHpFM0IsbUJwRGlFbUI7RW9EL0RuQjs7SUFFRSxhcERxRXlCOztBcURsQzNCO0VEeENBLDhCcERzRW1CO0VvRHJFbkIsbUJYdkI0QjtFV3lCNUI7O0lBRUUsYXBEaUVpQjs7QXFEdkJuQjtFRC9DQSw4QnBEeUUyQjtFb0R4RTNCLG1CcERpRW1CO0VvRC9EbkI7O0lBRUUsYXBEb0V5Qjs7QXFEdEIzQjtFRG5EQSw4QnBEcUVtQjtFb0RwRW5CLG1COUM0T0Q7RThDMU9DOztJQUVFLGFwRGdFaUI7O0FxRFhuQjtFQUdFLGFadUx5QjtFWXRMekIsVUFBVTs7QUFHWjtFQUNFLGNBQWM7RUFDZCxrQnZEbkY0QztFdURvRjVDLGdCdkRwRjRDOztBdUR1RjlDO0VBQ0Usa0J2RHhGNEM7O0F1RDJGOUM7RTVEWEUsOEJBQThCO0VBQzlCLG9CQUFvQjtFNERZcEIsNkJBQTZCO0VBQzdCLFlBQVk7RUFDWixlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixlaEQ3Rm9DO0VnRDhGcEMsY2hEOUZvQztFZ0QrRnBDLG1CaEQvRm9DO0VnRGdHcEMsa0JoRGhHb0M7RWdEaUdwQyxpRG5DdEVxQjtFbUMyRHZCO0k1RDFCRSwwQk8yQlk7SVAxQlosb0JBQW9CO0U0RHlCdEI7SUFrQkksWUFBWTtJQUNaLFdBQVc7SUFDWCxhckQ5QmU7O0FxRGtDbkI7RUFHRSxhckRqRFk7O0FxRG9EZDtFeERvWEUsbUJDN2U0QztFRDZlNUMsZ0JFN2NhO0VGNmNiLHFCQzdlNEM7RUQ2ZTVDLHNCQXJab0I7RXdEb0NwQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHNCQUFzQjs7QUFHeEI7RXhENFdFLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixxQkM3ZTRDO0VENmU1QyxzQkFqZG9CO0V3RHdHcEIsY3JEbkRpQjtFcURvRGpCLGFBQWE7RUFDYixxQnZEdEk0QztFdUR1STVDLHNCQUFzQjs7QUFHeEI7RUFFRSxjckR0RWM7O0FxRHlFaEI7RXhEOFZFLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixxQkM3ZTRDO0VENmU1QyxzQkFqZG9CO0V3RHNIcEIsY3JEakVpQjtFcURrRWpCLG1CdkRuSjRDOztBdURzSjlDO0VBRUUsY3JEbEZjOztBc0RnT2hCO0V6RHVNRSxrQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1osaUJDN2U0QztFRDZlNUMsc0JBcmVvQjtFeURnU3BCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsY3REbk9jO0VzRCtOaEI7STdEOU9FLDBCT29DWTtFc0QwTWQ7SUFXSSxtQnhEalQwQzs7QXdEcVQ5QztFQUNFLGF0RDNPYzs7QVJqQmxCO0VJN0RJLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLHdCQUF3QjtFSHNIMUIscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULFVBQVU7RUFDVixlQUFlO0U2RDZMYixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixlQUFlO0UxRHpUZjs7O0lBR0UsbUJBQW1CO0VINEh2QjtJQUNFLFNBQVM7RTZEb0xYO0k3RGpRRSwwQk9vQ1k7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O0U5RHpNQSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxVQUFVO0VBQ1YsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULG1CQUFtQjtFQUNuQixtQkFBbUI7O0ErRGpIbkI7RTNEK2VFLGtCQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixpQkM3ZTRDO0VENmU1QyxzQkFyZW9CO0UyRFJwQixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGlCMURGNEM7RTBERzVDLGNBQWM7RUFDZCxlMURKNEM7RTBESzVDLHFCbkRBb0M7RW1EUHRDO0lBVUksY0FBYztFQVZsQjtJQ1BBLHlCekQ0RWM7SXlEM0VkLGN6RDhFZ0I7O0F3RHREaEI7RUN6QkEseUJoQjJFMkI7RWdCMUUzQixjaEIrRTJCOztBZW5EM0I7RUM3QkEseUJoQnNEK0I7RWdCckQvQixjaEIwRCtCOztBZTFCL0I7RUNqQ0EseUJoQmlFOEI7RWdCaEU5QixjaEJxRThCOztBZWpDOUI7RUNyQ0EseUJoQkk0QjtFZ0JINUIsY2hCUTRCOztBZWdDNUI7RUN6Q0EseUJoQndCNEI7RWdCdkI1QixjaEI0QjRCOztBZWdCNUI7RUM3Q0EseUJoQnFGNEI7RWdCcEY1QixjaEJ5RjRCOztBZXpDNUI7RUNqREEseUJoQjRDNkI7RWdCM0M3QixjaEJnRDZCOztBZUk3QjtFQ3JEQSx5QmhCa0M0QjtFZ0JqQzVCLGNoQnlDNkI7O0FlZTdCO0VDekRBLHlCaEJjaUM7RWdCYmpDLGNoQnFCa0M7O0FldUNsQztFQzdEQSx5QmhCK0ZpQztFZ0I5RmpDLGNoQnNHa0M7O0FldENsQztFQ2pFQSx5QmhCaUM0QjtFZ0JoQzVCLGNoQmtDNEI7RWU4QjVCO0lBSUksbUJBQW1COztBQUt2QjtFQzFFQSx5QnpEc0V1QjtFeURyRXZCLGN6RHlGbUI7RXdEZGpCLGVBQWU7RUFDZixzQm5EL0RvQzs7QW1Ea0V0QztFQUNFLGF4RFNpQjtFd0RSakIsb0JuRHBFb0M7RW1EcUVwQyxnQm5EckVvQztFbURzRXBDLGFuRHRFb0M7RW1EdUVwQyxj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dkRoQm9DO0V1RGlCcEMsNkJ0RG1QZ0Q7O0FzRGhQbEQ7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFc5RDVCNEM7RThENkI1QyxZOUQ3QjRDO0U4RDhCNUMsa0JBQWtCO0VBQ2xCLHNCQUFtQztFQUNuQyxhNUQ0QnFCOztBNER6QnZCO0UvRDBjRSxtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1oscUJDN2U0QztFRDZlNUMsc0JBamRvQjtFK0RTcEIsaUJBQWlCO0VBQ2pCLGtCdkRqQ29DO0V1RGtDcEMsb0JBQWlDO0VBQ2pDLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsdUJBQXVCO0VBQ3ZCLHlHckRqRDJDO0VxRHlDN0M7SUFZSSxXQUFXO0lBQ1gsY0FBYzs7QUFJbEI7RUFDRSxjNUR3QmM7RTREdkJkLGVBQWU7RUFDZiw2QjVEc0JjOztBNERuQmhCO0VBQ0UsYUFBYTtFQUNiLGM1RGlCYztFNERoQmQsaUM1RGdCYzs7QTREYmhCO0VBQ0UsYzVETHFCO0U0RE1yQixpQzVETnFCOztBNERVdkI7O0VBRUUsbUJBQW1COztBQUdyQjtFQUNFLG1CdkR2RW9DOztBdUQwRXRDO0VBQ0UsVUFBVTtFQUNWLFNBQVM7RUFDVCxtQkFBbUI7O0FBSXJCO0UvRHVaRSxtQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1osb0JDN2U0QztFRDZlNUMsc0JBdmNvQjtFK0RrRHBCLGlCdkRuRm9DO0V1RG9GcEMsV3ZEcEZvQztFdURxRnBDLGtCOUQxRjRDO0U4RDJGNUMsb0J2RHRGb0M7RXVEdUZwQyxrQnZEdkZvQztFdUR3RnBDLG9COUQ3RjRDO0U4RDhGNUMsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixjNURmaUI7O0E0RG1CbkI7RS9EeVlFLG1CQzdlNEM7RUQ2ZTVDLGdCRTljWTtFRjhjWixvQkM3ZTRDO0VENmU1QyxzQkF2Y29CO0UrRGdFcEIsV3ZEakdvQztFdURrR3BDLFlBQVk7RUFDWixjNUR2QmlCOztBNEQyQm5CO0UvRGlZRSxrQkM3ZTRDO0VENmU1QyxnQkU5Y1k7RUY4Y1osaUJDN2U0QztFRDZlNUMs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d0VJLFlBQVk7SUF4RWhCO01BMkVJLGFBQWE7TUFDYixnQkFBZ0I7SUE1RXBCO012SDRDQyxrQkFBa0I7TUFDbEIsU0FBUztNQUNULFVBQVU7TUFDVixXQUFXO01BQ1gsV0FBVztNQUNYLFlBQVk7TUFDWixVQUFVO01BQ1YsZUZOb0I7TUVPcEIsaUJGRHNCO01FRXRCLGtDRnlCbUM7TUV4Qm5DLFlBQVk7TUFDWixjRnFCYztNRXBCZCx1QkFBdUI7TUFDdkIsb0JBQW9CO01BQ3BCLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsaUJBQWlCO01BQ2pCO1FBRUMsYUFBYTtNdUgvRGY7UUFrRkksWUFBWTtRQUNaLHFCQUFxQjtRQUNyQixvQkFBb0I7TUFwRnhCO1FBdUZJLDBCekhYVztReUhZWCxvQnpIc0J1QjtJeUg5RzNCOztNQTZGRyxjekhqQlk7TXlIa0JaLGlCQUFpQjtJQTlGcEI7TUFpR0csYUFBYTtNQUViLHNCQUFzQjtNekhqRnhCO1F5SGxCRDtVQXFHSSwyREFBMkQ7VUFDM0QsY0FBYyxJQU1mO01BNUdIO1FBeUdJLGNBQWM7UUFDZCxtQkFBbUI7O0FDdkd2QjtFQUVFLG1CQUFtQjs7QUFGckI7RUFNRyxvQ0FBb0M7O0FBTnZDO0VBU0csa0JBQWtCOztBdEhKckI7RUFDQyxvQkFBb0IiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIkaDEtZm9udC1zaXplOiA0LjMycmVtOyAvLyAxMDhweFxuJGgyLWZvbnQtc2l6ZTogMy42cmVtOyAvLyA5MHB4XG4kaDMtZm9udC1zaXplOiAycmVtOyAvLyA1MHB4XG4kaDQtZm9udC1zaXplOiAxLjMycmVtOyAvLyAzM3B4XG4kaDUtZm9udC1zaXplOiAxcmVtOyAvLyAyNXB4XG4kaDYtZm9udC1zaXplOiAwLjlyZW07IC8vIDIwcHhcblxuJGhlYWRpbmdzOiBcImgxXCIgNC4zMnJlbSAxLjkycmVtIDIuMDRyZW0gMS4yLCBcImgyXCIgMy42cmVtIDEuOTJyZW0gMi4zMnJlbSAxLjIsXG5cdFwiaDNcIiAycmVtIDEuNHJlbSAxLjMycmVtIDEuMiwgXCJoNFwiIDEuMzJyZW0gMC45NnJlbSAxLjMycmVtIDEuMixcblx0XCJoNVwiIDFyZW0gMC42NHJlbSAwLjkycmVtIDEuMywgXCJoNlwiIDAuOXJlbSAwLjhyZW0gMC43cmVtIDEuNTtcblxuQGVhY2ggJGhlYWRpbmcsICRkZXNrdG9wLXNpemUsICR0YWJsZXQtc2l6ZSwgJG1vYmlsZS1zaXplLFxuXHQkbGluZS1oZWlnaHQgaW4gJGhlYWRpbmdzXG57XG5cdCN7JGhlYWRpbmd9LFxuXHQuI3skaGVhZGluZ30ge1xuXHRcdGZvbnQtc2l6ZTogJG1vYmlsZS1zaXplOyAvLyBtb2JpbGUgZm9udCBzaXplXG5cdFx0bGluZS1oZWlnaHQ6ICRoZWFkaW5nLWxpbmUtaGVpZ2h0O1xuXHRcdGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LWZhbWlseTtcblx0XHRmb250LXdlaWdodDogJGhlYWRpbmctZm9udC13ZWlnaHQ7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0Zm9udC1zaXplOiAkdGFibGV0LXNpemU7IC8vIHRhYmxldCBmb250IHNpemVcblx0XHR9XG5cdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRmb250LXNpemU6ICRkZXNrdG9wLXNpemU7IC8vIGRlc2t0b3AgZm9udCBzaXplXG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBsaW5rLXN0eWxlKCkge1xuXHRmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG5cdGxldHRlci1zcGFjaW5nOiAwLjE1NWVtO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRmb250LXdlaWdodDogJGJvbGQ7XG59XG5cbmh0bWwsXG4ucCB7XG5cdGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuXHRmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG5cdGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LXdlaWdodDtcblx0bGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0OyAvLyBkZXNrdG9wIGxpbmUgaGVpZ2h0XG5cdGZvbnQtc2l6ZTogJG1vYmlsZS1mb250LXNpemU7IC8vIG1vYmlsZSBmb250IHNpemVcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0Zm9udC1zaXplOiAkdGFibGV0LWZvbnQtc2l6ZTsgLy8gdGFibGV0IGZvbnQgc2l6ZVxuXHR9XG5cdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdGZvbnQtc2l6ZTogJGRlc2t0b3AtZm9udC1zaXplOyAvLyBkZXNrdG9wIGZvbnQgc2l6ZVxuXHR9XG5cdEBpbmNsdWRlIGRlc2t0b3AtdXAge1xuXHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplOyAvLyBiYXNlIG9yIGxhcmdlIGZvbnQgc2l6ZVxuXHR9XG59XG5cbnAge1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRhIHtcblx0XHRjb2xvcjogJHJlZDtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0fVxufVxuXG5hIHtcblx0Y29sb3I6ICRhY3Rpb24tY29sb3I7XG5cdHRleHQtZGVjb3JhdGlvbi1za2lwOiBhdXRvO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGFsbCAkYmFzZS1kdXJhdGlvbiAkYmFzZS10aW1pbmc7XG5cdG91dGxpbmUtb2Zmc2V0OiAkZm9jdXMtb3V0bGluZS1vZmZzZXQ7XG5cdG91dGxpbmU6ICRmb2N1cy1vdXRsaW5lLXdpZHRoIHNvbGlkIHJnYmEoMCwwLDAsMCk7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6ICRidG4tdGV4dC1jb2xvci1ob3Zlcjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0Ji5pdGVtIHtcblx0XHRcdC50aXRsZSB7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogJGZvY3VzLW91dGxpbmU7XG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcblx0fVxufVxuXG5ociB7XG5cdGJvcmRlci1ib3R0b206ICRiYXNlLWJvcmRlcjtcblx0Ym9yZGVyLWxlZnQ6IDA7XG5cdGJvcmRlci1yaWdodDogMDtcblx0Ym9yZGVyLXRvcDogMDtcblx0bWFyZ2luOiAkYmFzZS1zcGFjaW5nIDA7XG59XG5cbmJsb2NrcXVvdGUge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0Zm9udC13ZWlnaHQ6ICRib2xkO1xuXHQmID4gKiB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDI7XG5cdH1cblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogY2FsYygxMDAlICsgMnJlbSk7XG5cdFx0aGVpZ2h0OiBjYWxjKDEwMCUgKyAyMHB4KTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAtMTBweDtcblx0XHRsZWZ0OiAtMXJlbTtcblx0XHRyaWdodDogLTFyZW07XG5cdFx0Ym90dG9tOiAtMTBweDtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cdH1cbn1cblxuLmJsb2NrLmJhc2ljLWNvbnRlbnQuc3R5bGUtMiB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdC5jb2w6b25seS1jaGlsZCB7XG5cdFx0YmxvY2txdW90ZTphZnRlciB7XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0d2lkdGg6IGNhbGMoMTAwJSArIDIwJSArIDIuNHJlbSk7XG5cdFx0XHRcdGxlZnQ6IGNhbGMoLTEwJSAtIDEuMnJlbSk7XG5cdFx0XHRcdHJpZ2h0OiBjYWxjKC0xMCUgLSAxLjJyZW0pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBUaGlzIGhhcHBlbnMgaW4gSGVybyBTdHlsZSA1ICYgdGhlIEV4aGliaXRcbi8vIFdpbGwgYmUgYnVpbHQgb3V0IHRvIGhhcHBlbiBvbiBhbGwgaW50ZXJpb3IgcGFnZSB0aXRsZXNcbkBtaXhpbiB1bmRlcmxpbmUoKSB7XG5cdHRleHQtc2hhZG93OiAwLjAzZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdC0wLjAzZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAwIDAuMDNlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdDAgLTAuMDNlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAwLjA2ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdC0wLjA2ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAwLjA5ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdC0wLjA5ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAwLjEyZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdC0wLjEyZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAwLjE1ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdC0wLjE1ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICR5ZWxsb3cgNTAlLCAkdHJhbnNwYXJlbnQgNTAlKTtcblx0YmFja2dyb3VuZC1zaXplOiAyMDAlIDEwcHg7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWJvdHRvbTogM3B4O1xuXHQvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCU7IC8vIEJlZm9yZSBhbmltYXRpb25cblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMTAwJTsgLy8gQW5pbWF0aW9uIHBvc2l0aW9uXG5cdC5yZWFkeSAmIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCU7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAwbXMgZWFzZS1pbi1vdXQgMG1zO1xuXHR9XG5cdC5hbmltYXRlICYge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAlIDEwMCU7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiA4MDBtcyBlYXNlLWluLW91dCA0MDBtcztcblx0fVxufVxuLy8gVGl0bGVzXG4udGl0bGUge1xuXHQvLyBOZXcgbGluZXMgaW4gYSB0aXRsZSBncm91cFxuXHQubGluZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRsaW5lLWhlaWdodDogJGhlYWRpbmctbGluZS1oZWlnaHQ7XG5cdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdH1cblx0Ly8gVGV4dCBjb2xvcnMgZm9yIGxpbmVzXG5cdC53aGl0ZSB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxuXHQueWVsbG93IHtcblx0XHRjb2xvcjogJHllbGxvdztcblx0fVxuXHQudW5kZXJsaW5lIHtcblx0XHRAaW5jbHVkZSB1bmRlcmxpbmUoKTtcblx0fVxufVxuXG4uY29tcG9uZW50LnBhZ2UtdGl0bGUge1xuXHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHQud3JhcHBlciB7XG5cdFx0Ly8gQ2lyY2xlIGJhY2sgdG8gYWRkIG1vYmlsZVxuXHRcdG1heC13aWR0aDogJHBlcmNlbnRhZ2U7XG5cdFx0cGFkZGluZzogMDtcblx0fVxuXHQudGl0bGUge1xuXHRcdC8vIEBpbmNsdWRlIHVuZGVybGluZSgpO1xuXHRcdGZvbnQtc2l6ZTogMi42cmVtOyAvLyA2NXB4XG5cdFx0dGV4dC1zaGFkb3c6IDAuMDNlbSAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksXG5cdFx0XHQtMC4wM2VtIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgMCAwLjAzZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSxcblx0XHRcdDAgLTAuMDNlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAwLjA2ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdFx0LTAuMDZlbSAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIDAuMDllbSAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksXG5cdFx0XHQtMC4wOWVtIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgMC4xMmVtIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSxcblx0XHRcdC0wLjEyZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAwLjE1ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdFx0LTAuMTVlbSAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAkeWVsbG93IDUwJSwgJHRyYW5zcGFyZW50IDUwJSk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAyMDAlIDEwcHg7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcblx0XHRwYWRkaW5nLWJvdHRvbTogM3B4O1xuXHRcdC8vIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTsgLy8gQmVmb3JlIGFuaW1hdGlvblxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAlIDEwMCU7IC8vIEFuaW1hdGlvbiBwb3NpdGlvblxuXHR9XG5cdCYucmVhZHkgLnRpdGxlIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCU7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAwbXMgZWFzZS1pbi1vdXQgMG1zO1xuXHR9XG5cdCYuYW5pbWF0ZSAudGl0bGUge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAlIDEwMCU7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiA4MDBtcyBlYXNlLWluLW91dCA0MDBtcztcblx0fVxufVxuIiwiLy8gQnJlYWtwb2ludHNcblxuQG1peGluIHRpbnktcGhvbmVzIHtcblx0QG1lZGlhIChtYXgtd2lkdGg6IDM1MHB4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cbkBtaXhpbiBtb2JpbGUtb25seSB7XG5cdEBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0QG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cbkBtaXhpbiB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0QG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cbkBtaXhpbiBkZXNrdG9wLXVwIHtcblx0QG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gYmlnLWRlc2t0b3AtdXAge1xuXHRAbWVkaWEgKG1pbi13aWR0aDogMTgwMHB4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUludGVyOndnaHRANDAwOzUwMDs3MDAmZGlzcGxheT1zd2FwXCIpO1xuXG4vLyBQYXRoc1xuJGltZy1wYXRoOiBcIi4uLy4uL3N0YXRpYy9cIjtcblxuLy8gVHlwb2dyYXBoeVxuJHNhbnMtc2VyaWY6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcblxuJGJhc2UtZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiRoZWFkaW5nLWZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG5cbi8vIEZvbnQgU2l6ZVxuJGJhc2UtZm9udC1zaXplOiAyNXB4O1xuJGRlc2t0b3AtZm9udC1zaXplOiAyMnB4O1xuJHRhYmxldC1mb250LXNpemU6IDIwcHg7XG4kbW9iaWxlLWZvbnQtc2l6ZTogMThweDtcblxuLy8gTGluZSBIZWlnaHRcbiRiYXNlLWxpbmUtaGVpZ2h0OiAxLjc0O1xuJGhlYWRpbmctbGluZS1oZWlnaHQ6IDEuMjtcblxuLy8gRm9udCBXZWlnaHRcbiRiYXNlLWZvbnQtd2VpZ2h0OiA0MDA7XG4kaGVhZGluZy1mb250LXdlaWdodDogNzAwO1xuJGJvbGQ6IGJvbGQ7XG5cbi8vIE90aGVyIFNpemVzXG4kc2l0ZS13aWR0aDogMTgwMHB4O1xuJHBlcmNlbnRhZ2U6IDg1JTtcbiRib3R0b20tbWFyZ2luOiAxMDBweDtcbiRiYXNlLWJvcmRlci1yYWRpdXM6IDBweDtcbiRiYXNlLXNwYWNpbmc6IDEuNWVtO1xuJHNtYWxsLXNwYWNpbmc6ICRiYXNlLXNwYWNpbmcgLyAyO1xuJGJhc2Utei1pbmRleDogMDtcblxuLy8gQ29sb3JzXG4kcGluazogI2Q2MzE1YjtcbiRyZWQ6ICNEODAwMDA7XG4kdGVhbDogIzZlY2ZiOTtcbiR5ZWxsb3c6ICNmNGMyNTQ7XG4kZGFyay1ncmF5OiAjMzMzO1xuJG1lZGl1bS1ncmF5OiAjOTk5O1xuJGxpZ2h0LWdyYXk6ICNkZGQ7XG4kYmxhY2s6ICMwMDAwMDA7XG4kd2hpdGU6ICNmZmZmZmY7XG4kdHJhbnNwYXJlbnQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG5cbiRwcmltYXJ5OiAkYmxhY2s7XG4kc2Vjb25kYXJ5OiAkeWVsbG93O1xuJGxpbmtzOiAkcHJpbWFyeTtcbiRob3ZlcjogJHNlY29uZGFyeTtcblxuLy8gRm9udCBDb2xvcnNcbiRiYXNlLWZvbnQtY29sb3I6ICMwMDA7XG4kYWN0aW9uLWNvbG9yOiAkcHJpbWFyeTtcbiRlcnJvci1jb2xvcjogJHJlZDtcblxuJGJhc2UtZm9udC1jb2xvcjogJGJsYWNrO1xuJGNvbG9yLXNlbGVjdGlvbjogJGxpZ2h0LWdyYXk7XG5cbi8vIEJ1dHRvbnNcbiRidG4tYmctY29sb3I6ICR0cmFuc3BhcmVudDtcbiRidG4tdGV4dC1jb2xvcjogJGJsYWNrO1xuJGJ0bi10ZXh0LWNvbG9yLWhvdmVyOiAkd2hpdGU7XG4kYnRuLWJvcmRlci1yYWRpdXM6IDA7XG5cbi8vIEJvcmRlclxuJGJhc2UtYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4kYmFzZS1ib3JkZXI6IDNweCBzb2xpZCAkYmFzZS1ib3JkZXItY29sb3I7XG5cbi8vIEJhY2tncm91bmQgQ29sb3JzXG4kdmlld3BvcnQtYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4vLyBGb2N1c1xuJGZvY3VzLW91dGxpbmUtY29sb3I6ICRibGFjaztcbiRmb2N1cy1vdXRsaW5lLXdpZHRoOiAzcHg7XG4kZm9jdXMtb3V0bGluZTogJGZvY3VzLW91dGxpbmUtd2lkdGggc29saWQgJGZvY3VzLW91dGxpbmUtY29sb3I7XG4kZm9jdXMtb3V0bGluZS1vZmZzZXQ6IDEwcHg7XG5cbi8vIFRyYW5zaXRpb25zXG4kYmFzZS1kdXJhdGlvbjogMzAwbXM7XG4kYmFzZS10aW1pbmc6IGVhc2UtaW4tb3V0O1xuIiwiLy8gVGhlIGJ1dHRuIGhhcyBiZWVuIHVwZGF0ZWQgdG8gQ2FyYm9uIERlc2lnbidzIGJ1dHRvbi5cbi8vIFRoZSBwcmUtQ2FyYm9uIHN0eWxlcyBuZWVkIHRvIHN0YXkuXG5cbi8vIEdsb2JhbCBCdXR0b24gU3R5bGVzXG5idXR0b24ge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdCYubGctaWNvbjpmb2N1cyB7XG5cdFx0b3V0bGluZTogJGZvY3VzLW91dGxpbmUtd2lkdGggc29saWQgJHdoaXRlICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuI3skYWxsLWJ1dHRvbnN9IHtcblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogJGZvY3VzLW91dGxpbmU7XG5cdFx0b3V0bGluZS1vZmZzZXQ6ICRmb2N1cy1vdXRsaW5lLW9mZnNldDtcblx0fVxufVxuXG5AbWl4aW4gYnRuLWJhc2UoKSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiAzcHggNDZweCAzcHggMDtcblxuXHRmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG5cdGZvbnQtc2l6ZTogJG1vYmlsZS1mb250LXNpemU7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRsaW5lLWhlaWdodDogMS40O1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuXHRjb2xvcjogJGJ0bi10ZXh0LWNvbG9yO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWJnLWNvbG9yO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcblxuXHR0cmFuc2l0aW9uOiBhbGwgJGJhc2UtZHVyYXRpb24gJGJhc2UtdGltaW5nO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0YXBwZWFyYW5jZTogbm9uZTtcblx0Ym94LXNpemluZzogY29udGVudC1ib3g7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWctcGF0aCArIFwiYXJyb3ctcmlnaHQuc3ZnXCIpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDI4cHggMTVweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMTBweCkgNTAlO1xuXG5cdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0Zm9udC1zaXplOiAkdGFibGV0LWZvbnQtc2l6ZTsgLy8gdGFibGV0IGZvbnQgc2l6ZVxuXHR9XG5cdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdGZvbnQtc2l6ZTogJGRlc2t0b3AtZm9udC1zaXplOyAvLyBkZXNrdG9wIGZvbnQgc2l6ZVxuXHR9XG5cdEBpbmNsdWRlIGRlc2t0b3AtdXAge1xuXHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplOyAvLyBiYXNlIG9yIGxhcmdlIGZvbnQgc2l6ZVxuXHR9XG5cblx0Ji5wcmV2IHtcblx0XHRwYWRkaW5nOiAzcHggMCAzcHggNDZweDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltZy1wYXRoICsgXCJhcnJvdy1sZWZ0LnN2Z1wiKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDUwJTtcblx0fVxuXHQmLnByZXYsXG5cdCYubmV4dCB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cdCY6aG92ZXIge1xuXHRcdC8vIGJhY2tncm91bmQtY29sb3I6ICRidG4tdGV4dC1jb2xvcjtcblx0XHRjb2xvcjogJGJ0bi10ZXh0LWNvbG9yLWhvdmVyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltZy1wYXRoICsgXCJhcnJvdy1yaWdodC13aGl0ZS5zdmdcIik7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7XG5cblx0XHQmLnByZXY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWctcGF0aCArIFwiYXJyb3ctbGVmdC13aGl0ZS5zdmdcIik7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcdFxuXHRcdH1cblxuXHR9XG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6ICRmb2N1cy1vdXRsaW5lO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAzcHg7XG5cdH1cblx0JjpkaXNhYmxlZCB7XG5cdFx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdH1cblx0Ji5sZy1wcmV2OmZvY3VzLCBcblx0Ji5sZy1uZXh0OmZvY3VzIHtcblx0XHRvdXRsaW5lOiAkZm9jdXMtb3V0bGluZS13aWR0aCBzb2xpZCAkd2hpdGU7XG5cdH1cbn1cblxuLy8gVGhlbWUgQnV0dG9uc1xuLmJsb2NrIHtcblx0Ly8gQ2FyYm9uIGJ1dHRvbiBjbGFzc1xuXHQuYngtLWJ0biB7XG5cdFx0bWluLWhlaWdodDogYXV0bztcblx0fVxuXHQuYnV0dG9ucyAuYnRuIHtcblx0XHRAaW5jbHVkZSBidG4tYmFzZSgpO1xuXHR9XG5cdC5idXR0b25zIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0cGFkZGluZy10b3A6IDFyZW07XG5cdFx0cGFkZGluZy1ib3R0b206IDVweDtcblx0XHR6LWluZGV4OiAxO1xuXG5cdFx0bWFyZ2luLWxlZnQ6IC0xcmVtO1xuXHRcdG1hcmdpbi1yaWdodDogLTFyZW07XG5cdFx0LmJ0biB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMXJlbTtcblx0XHRcdG1hcmdpbi1yaWdodDogMXJlbTtcblx0XHRcdFxuXHRcdH1cblx0fVxuXHRwICsgLmJ1dHRvbnMge1xuXHRcdHBhZGRpbmctdG9wOiAwOyAvLyBUb3AgcGFkZGluZyBmb3IgYnV0dG9ucyB1bmRlciBwYXJhZ3JhcGhzXG5cdH1cbn1cblxuLy8gc2tpcCBuYXYgYnV0dG9ucyB0aHJvdWdoIHRoZSBzaXRlXG4uc2tpcC1uYXYge1xuXHRAaW5jbHVkZSBza2lwLW5hdigpO1xufSIsIkBpbXBvcnQgXCJwb3NpdGlvbmluZ1wiO1xuQGltcG9ydCBcInR5cGVcIjtcblxuQG1peGluIGxpZ2h0Ym94KCkge1xuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltZy1wYXRoICsgXCJzZWFyY2guc3ZnXCIpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDUwJTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHR3aWR0aDogMnJlbTtcblx0XHRoZWlnaHQ6IDJyZW07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cbn1cblxuQG1peGluIGltYWdlX2NvdmVyKCkge1xuXHR3aWR0aDogMTAwJTtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRpbWcge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuQG1peGluIGNsZWFyTGlzdCgpIHtcblx0dWwsXG5cdG9sIHtcblx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bGk6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBjbGVhckJ0bigpIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0b3A6IGF1dG87XG5cdGxlZnQ6IGF1dG87XG5cdHJpZ2h0OiBhdXRvO1xuXHR3aWR0aDogYXV0bztcblx0aGVpZ2h0OiBhdXRvO1xuXHRwYWRkaW5nOiAwO1xuXHRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcblx0bGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuXHRiYWNrZ3JvdW5kOiAkdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogbm9uZTtcblx0Y29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogMDtcblx0Ym94LXNoYWRvdzogbm9uZTtcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiBub25lO1xuXHR9XG59XG5cbkBtaXhpbiBhc3BlY3QtcmF0aW8oJHdpZHRoLCAkaGVpZ2h0KSB7XG5cdC8vIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vYXNwZWN0LXJhdGlvLWJveGVzL1xuXHQvLyBjYWxjKDU5MS40NCAvIDExMjcuMzQgKiAxMDAlKTtcblx0aGVpZ2h0OiAwO1xuXHRwYWRkaW5nLXRvcDogJGhlaWdodCAvICR3aWR0aCAqIDEwMCU7XG59XG4vLyBAbWl4aW4gYXNwZWN0UmF0aW8oJHNpemUpIHtcbi8vIFx0d2lkdGg6IDEwMCU7XG4vLyBcdGhlaWdodDogMDtcbi8vIFx0cGFkZGluZy1ib3R0b206ICRzaXplO1xuLy8gfVxuXG4vLyBNaXhpbnMgcmVxdWlyZWQgZm9yIEJpdHRlcnNcbkBtaXhpbiBjbGVhcmZpeCB7XG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0ZGlzcGxheTogdGFibGU7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdH1cbn1cbi8vIFZhcnMgcmVxdWlyZWQgZm9yIEJpdHRlcnNcbiRhbGwtYnV0dG9uczogXCJidXR0b24sIFt0eXBlPSdidXR0b24nXSwgW3R5cGU9J3Jlc2V0J10sIFt0eXBlPSdzdWJtaXQnXVwiO1xuJGFsbC1idXR0b25zLWFjdGl2ZTogXCJidXR0b246YWN0aXZlLCBbdHlwZT0nYnV0dG9uJ106YWN0aXZlLCBbdHlwZT0ncmVzZXQnXTphY3RpdmUsIFt0eXBlPSdzdWJtaXQnXTphY3RpdmVcIjtcbiRhbGwtYnV0dG9ucy1mb2N1czogXCJidXR0b246Zm9jdXMsIFt0eXBlPSdidXR0b24nXTpmb2N1cywgW3R5cGU9J3Jlc2V0J106Zm9jdXMsIFt0eXBlPSdzdWJtaXQnXTpmb2N1c1wiO1xuJGFsbC1idXR0b25zLWhvdmVyOiBcImJ1dHRvbjpob3ZlciwgW3R5cGU9J2J1dHRvbiddOmhvdmVyLCBbdHlwZT0ncmVzZXQnXTpob3ZlciwgW3R5cGU9J3N1Ym1pdCddOmhvdmVyXCI7XG4kYWxsLXRleHQtaW5wdXRzOiBcIlt0eXBlPSdjb2xvciddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0ZXh0J10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J3dlZWsnXSwgaW5wdXQ6bm90KFt0eXBlXSksIHRleHRhcmVhXCI7XG4kYWxsLXRleHQtaW5wdXRzLWFjdGl2ZTogXCJbdHlwZT0nY29sb3InXTphY3RpdmUsIFt0eXBlPSdkYXRlJ106YWN0aXZlLCBbdHlwZT0nZGF0ZXRpbWUnXTphY3RpdmUsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmFjdGl2ZSwgW3R5cGU9J2VtYWlsJ106YWN0aXZlLCBbdHlwZT0nbW9udGgnXTphY3RpdmUsIFt0eXBlPSdudW1iZXInXTphY3RpdmUsIFt0eXBlPSdwYXNzd29yZCddOmFjdGl2ZSwgW3R5cGU9J3NlYXJjaCddOmFjdGl2ZSwgW3R5cGU9J3RlbCddOmFjdGl2ZSwgW3R5cGU9J3RleHQnXTphY3RpdmUsIFt0eXBlPSd0aW1lJ106YWN0aXZlLCBbdHlwZT0ndXJsJ106YWN0aXZlLCBbdHlwZT0nd2VlayddOmFjdGl2ZSwgaW5wdXQ6bm90KFt0eXBlXSk6YWN0aXZlLCB0ZXh0YXJlYTphY3RpdmVcIjtcbiRhbGwtdGV4dC1pbnB1dHMtZm9jdXM6IFwiW3R5cGU9J2NvbG9yJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J2VtYWlsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBpbnB1dDpub3QoW3R5cGVdKTpmb2N1cywgdGV4dGFyZWE6Zm9jdXNcIjtcbiRhbGwtdGV4dC1pbnB1dHMtaG92ZXI6IFwiW3R5cGU9J2NvbG9yJ106aG92ZXIsIFt0eXBlPSdkYXRlJ106aG92ZXIsIFt0eXBlPSdkYXRldGltZSddOmhvdmVyLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpob3ZlciwgW3R5cGU9J2VtYWlsJ106aG92ZXIsIFt0eXBlPSdtb250aCddOmhvdmVyLCBbdHlwZT0nbnVtYmVyJ106aG92ZXIsIFt0eXBlPSdwYXNzd29yZCddOmhvdmVyLCBbdHlwZT0nc2VhcmNoJ106aG92ZXIsIFt0eXBlPSd0ZWwnXTpob3ZlciwgW3R5cGU9J3RleHQnXTpob3ZlciwgW3R5cGU9J3RpbWUnXTpob3ZlciwgW3R5cGU9J3VybCddOmhvdmVyLCBbdHlwZT0nd2VlayddOmhvdmVyLCBpbnB1dDpub3QoW3R5cGVdKTpob3ZlciwgdGV4dGFyZWE6aG92ZXJcIjtcbiRhbGwtdGV4dC1pbnB1dHMtaW52YWxpZDogXCJbdHlwZT0nY29sb3InXTppbnZhbGlkLCBbdHlwZT0nZGF0ZSddOmludmFsaWQsIFt0eXBlPSdkYXRldGltZSddOmludmFsaWQsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmludmFsaWQsIFt0eXBlPSdlbWFpbCddOmludmFsaWQsIFt0eXBlPSdtb250aCddOmludmFsaWQsIFt0eXBlPSdudW1iZXInXTppbnZhbGlkLCBbdHlwZT0ncGFzc3dvcmQnXTppbnZhbGlkLCBbdHlwZT0nc2VhcmNoJ106aW52YWxpZCwgW3R5cGU9J3RlbCddOmludmFsaWQsIFt0eXBlPSd0ZXh0J106aW52YWxpZCwgW3R5cGU9J3RpbWUnXTppbnZhbGlkLCBbdHlwZT0ndXJsJ106aW52YWxpZCwgW3R5cGU9J3dlZWsnXTppbnZhbGlkLCBpbnB1dDpub3QoW3R5cGVdKTppbnZhbGlkLCB0ZXh0YXJlYTppbnZhbGlkXCI7XG5cbi8vIFRyaWFuZ2xlIGhlbHBlciBtaXhpblxuLy8gUmVmOiBodHRwczovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL3Nhc3MvY3NzLXRyaWFuZ2xlLW1peGluL1xuLy8gQHBhcmFtIHtEaXJlY3Rpb259ICRkaXJlY3Rpb24gLSBUcmlhbmdsZSBkaXJlY3Rpb24sIGVpdGhlciBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAgb3IgYGxlZnRgXG4vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW2N1cnJlbnRjb2xvcl0gLSBUcmlhbmdsZSBjb2xvclxuLy8gQHBhcmFtIHtMZW5ndGh9ICRzaXplIFsxZW1dIC0gVHJpYW5nbGUgc2l6ZVxuQG1peGluIHRyaWFuZ2xlKCRkaXJlY3Rpb24sICRjb2xvcjogY3VycmVudGNvbG9yLCAkc2l6ZTogMWVtKSB7XG5cdEBpZiBub3QgaW5kZXgodG9wIHJpZ2h0IGJvdHRvbSBsZWZ0LCAkZGlyZWN0aW9uKSB7XG5cdFx0QGVycm9yICdEaXJlY3Rpb24gbXVzdCBiZSBlaXRoZXIgdG9wLCByaWdodCwgYm90dG9tIG9yIGxlZnQuJztcblx0fVxuXG5cdHdpZHRoOiAwO1xuXHRoZWlnaHQ6IDA7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdHotaW5kZXg6IDI7XG5cdHRyYW5zZm9ybTogc2NhbGUoMS4wMSk7XG5cdGZvbnQtc2l6ZTogMDtcblxuXHQkcGVycGVuZGljdWxhci1ib3JkZXJzOiAkc2l6ZSAvICgxICsgMiAvIDMpIHNvbGlkIHRyYW5zcGFyZW50O1xuXG5cdEBpZiAkZGlyZWN0aW9uID09IHRvcCB7XG5cdFx0Ym9yZGVyLWxlZnQ6ICRwZXJwZW5kaWN1bGFyLWJvcmRlcnM7XG5cdFx0Ym9yZGVyLXJpZ2h0OiAkcGVycGVuZGljdWxhci1ib3JkZXJzO1xuXHRcdGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkICRjb2xvcjtcblx0fSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGJvdHRvbSB7XG5cdFx0Ym9yZGVyLWxlZnQ6ICRwZXJwZW5kaWN1bGFyLWJvcmRlcnM7XG5cdFx0Ym9yZGVyLXJpZ2h0OiAkcGVycGVuZGljdWxhci1ib3JkZXJzO1xuXHRcdGJvcmRlci10b3A6ICRzaXplIHNvbGlkICRjb2xvcjtcblx0fSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcblx0XHRib3JkZXItYm90dG9tOiAkcGVycGVuZGljdWxhci1ib3JkZXJzO1xuXHRcdGJvcmRlci10b3A6ICRwZXJwZW5kaWN1bGFyLWJvcmRlcnM7XG5cdFx0Ym9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkICRjb2xvcjtcblx0fSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuXHRcdGJvcmRlci1ib3R0b206ICRwZXJwZW5kaWN1bGFyLWJvcmRlcnM7XG5cdFx0Ym9yZGVyLXRvcDogJHBlcnBlbmRpY3VsYXItYm9yZGVycztcblx0XHRib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkICRjb2xvcjtcblx0fVxufVxuXG5AbWl4aW4gc2tpcC1uYXYoKSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDE0MHB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmb250LXNpemU6IDJlbTtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdGJhY2tncm91bmQ6ICRibGFjaztcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHotaW5kZXg6IC05OTk5OTk7XG5cdCY6Zm9jdXMge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0ei1pbmRleDogOTk5OTk5O1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDA7XG5cdH1cbn0iLCIkX2Zvcm0tYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiRpbnB1dC1wYWRkaW5nOiAwLjY1ZW0gMC44ZW0gMC42ZW07XG5cbmZvcm0sXG5ib2R5IC5nZm9ybV93cmFwcGVyIGZvcm0ge1xuXHRtYXgtd2lkdGg6IDgwMHB4O1xuXHRtYXJnaW46IDA7XG5cdGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcblx0Y29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG59XG5cbmZpZWxkc2V0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogMDtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG5sZWdlbmQge1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZyAvIDI7XG5cdHBhZGRpbmc6IDA7XG59XG5cbmxhYmVsIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdG1hcmdpbi1ib3R0b206ICRzbWFsbC1zcGFjaW5nIC8gMjtcbn1cblxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LXNpemU6IDE2cHg7XG59XG5cbiN7JGFsbC10ZXh0LWlucHV0c30ge1xuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0cGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cblx0Y29sb3I6IGluaGVyaXQ7XG5cdGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IC8vICRfZm9ybS1iYWNrZ3JvdW5kLWNvbG9yXG5cdGJvcmRlcjogJGJhc2UtYm9yZGVyO1xuXHRib3JkZXItcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xuXHRib3gtc2hhZG93OiBub25lO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRhcHBlYXJhbmNlOiBub25lO1xuXHQvLyB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGJhc2UtZHVyYXRpb24gJGJhc2UtdGltaW5nO1xuXHQmOmhvdmVyIHtcblx0XHRib3JkZXItY29sb3I6IHNoYWRlKCRiYXNlLWJvcmRlci1jb2xvciwgMjAlKTtcblx0fVxuXHQmOmZvY3VzIHtcblx0XHRib3JkZXItY29sb3I6IHJnYmEoMjMzLDEwLDg5LC42KTtcblx0XHRvdXRsaW5lOiAkZm9jdXMtb3V0bGluZTtcblx0XHRvdXRsaW5lLW9mZnNldDogNXB4O1xuXHRcdH1cblx0JjpkaXNhYmxlZCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogc2hhZGUoJF9mb3JtLWJhY2tncm91bmQtY29sb3IsIDUlKTtcblx0XHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0Ym9yZGVyOiAkYmFzZS1ib3JkZXI7XG5cdFx0fVxuXHR9XG5cdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogdGludCgkYmFzZS1mb250LWNvbG9yLCA2MCUpO1xuXHR9XG59XG5cblt0eXBlPVwicmFuZ2VcIl0ge1xuXHRtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZztcbn1cblxudGV4dGFyZWEge1xuXHRyZXNpemU6IHZlcnRpY2FsO1xufVxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpbyBidXR0b25zXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5ib2R5IC5nZm9ybV93cmFwcGVyIC5nZmllbGRfY2hlY2tib3ggLmdjaG9pY2UgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuYm9keSAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3JhZGlvIC5nY2hvaWNlIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0b3BhY2l0eTogMDtcblx0JiArIGxhYmVsIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0Zm9udC1zaXplOiAyMnB4O1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHR3aWR0aDogMXJlbTtcblx0XHRcdGhlaWdodDogMXJlbTtcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbi1yaWdodDogMC42cmVtO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMTZyZW0pO1xuXHRcdH1cblx0fVxuXHQmOmNoZWNrZWQgKyBsYWJlbCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdFx0fVxuXHR9XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmJvZHkgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9yYWRpbyAuZ2Nob2ljZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuXHQmICsgbGFiZWw6YmVmb3JlIHtcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdH1cbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImZpbGVcIl0sXG5zZWxlY3Qge1xuXHQmOmZvY3VzIHtcblx0XHRib3JkZXItY29sb3I6ICRiYXNlLWJvcmRlci1jb2xvcjtcblx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdH1cbn1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuXHRtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZztcblx0d2lkdGg6IDEwMCU7XG59XG5cbi8qIEN1c3RvbSBzZWxlY3Qgc3R5bGluZyAqL1xuc2VsZWN0LFxuYm9keSAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX2Nocm9tZSBzZWxlY3QsXG5ib2R5XG5cdC5nZm9ybV93cmFwcGVyLmdmX2Jyb3dzZXJfY2hyb21lXG5cdC5nZm9ybV9maWVsZHNcblx0LmdmaWVsZFxuXHRkaXYuZ2lucHV0X2NvbXBsZXhcblx0c3Bhbi5naW5wdXRfcmlnaHRcblx0c2VsZWN0LFxuYm9keSAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX2Nocm9tZSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgc2VsZWN0IHtcblx0Ly8gZGlzcGxheTogYmxvY2s7XG5cdGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0bGluZS1oZWlnaHQ6IDEuMztcblx0cGFkZGluZzogMC42NWVtIGNhbGMoMC43ZW0gKyAxNHB4KSAwLjUyZW0gMC43ZW07XG5cdG1heC13aWR0aDogMTAwJTtcblx0Ly8gaGVpZ2h0OiAzOC43NXB4O1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRtYXJnaW46IDAgMCAwLjJyZW07XG5cdGJvcmRlcjogMXB4IHNvbGlkICRibGFjaztcblx0Ym94LXNoYWRvdzogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cztcblx0LW1vei1hcHBlYXJhbmNlOiBub25lO1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdGFwcGVhcmFuY2U6IG5vbmU7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0Lyogbm90ZTogYmcgaW1hZ2UgYmVsb3cgdXNlcyAyIHVybHMuIFRoZSBmaXJzdCBpcyBhbiBzdmcgZGF0YSB1cmkgZm9yIHRoZSBhcnJvdyBpY29uLCBhbmQgdGhlIHNlY29uZCBpcyB0aGUgZ3JhZGllbnQuIFxuICAgICAgZm9yIHRoZSBpY29uLCBpZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGNvbG9yLCBiZSBzdXJlIHRvIHVzZSBgJTIzYCBpbnN0ZWFkIG9mIGAjYCwgc2luY2UgaXQncyBhIHVybC4gWW91IGNhbiBhbHNvIHN3YXAgaW4gYSBkaWZmZXJlbnQgc3ZnIGljb24gb3IgYW4gZXh0ZXJuYWwgaW1hZ2UgcmVmZXJlbmNlXG4gICAgKi9cblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWctcGF0aCArIFwiZG93bi1hcnJvdy5zdmdcIiksXG5cdFx0bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHdoaXRlIDAlLCAkd2hpdGUgMTAwJSk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIHJlcGVhdDtcblx0LyogYXJyb3cgaWNvbiBwb3NpdGlvbiAoMWVtIGZyb20gdGhlIHJpZ2h0LCA1MCUgdmVydGljYWwpICwgdGhlbiBncmFkaWVudCBwb3NpdGlvbiovXG5cdGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuN2VtIHRvcCA1NCUsIDAgMDtcblx0LyogaWNvbiBzaXplLCB0aGVuIGdyYWRpZW50ICovXG5cdGJhY2tncm91bmQtc2l6ZTogMTRweCBhdXRvLCAxMDAlO1xuXG5cdC8qIEhpZGUgYXJyb3cgaWNvbiBpbiBJRSBicm93c2VycyAqL1xuXHQmOjotbXMtZXhwYW5kIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LyogU2V0IG9wdGlvbnMgdG8gbm9ybWFsIHdlaWdodCAqL1xuXHRvcHRpb24ge1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdH1cblxuXHQvKiBEaXNhYmxlZCBzdHlsZXMgKi9cblx0JjpkaXNhYmxlZCxcblx0JlthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSB7XG5cdFx0Y29sb3I6IGdyYXl0ZXh0O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVTLUFTQ0lJLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwd2lkdGglM0QlMjIyOTIuNCUyMiUyMGhlaWdodCUzRCUyMjI5Mi40JTIyJTNFJTNDcGF0aCUyMGZpbGwlM0QlMjJncmF5dGV4dCUyMiUyMGQlM0QlMjJNMjg3JTIwNjkuNGExNy42JTIwMTcuNiUyMDAlMjAwJTIwMC0xMy01LjRIMTguNGMtNSUyMDAtOS4zJTIwMS44LTEyLjklMjA1LjRBMTcuNiUyMDE3LjYlMjAwJTIwMCUyMDAlMjAwJTIwODIuMmMwJTIwNSUyMDEuOCUyMDkuMyUyMDUuNCUyMDEyLjlsMTI4JTIwMTI3LjljMy42JTIwMy42JTIwNy44JTIwNS40JTIwMTIuOCUyMDUuNHM5LjItMS44JTIwMTIuOC01LjRMMjg3JTIwOTVjMy41LTMuNSUyMDUuNC03LjglMjA1LjQtMTIuOCUyMDAtNS0xLjktOS4yLTUuNS0xMi44eiUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKSxcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRsaWdodC1ncmF5IDAlLCAkbGlnaHQtZ3JheSAxMDAlKTtcblx0fVxuXG5cdCY6ZGlzYWJsZWQ6aG92ZXIsXG5cdCZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0ge1xuXHRcdGJvcmRlci1jb2xvcjogI2FhYTtcblx0fVxuXG5cdC8vICYuZmFjZXR3cC1kcm9wZG93biB7XG5cdC8vIFx0cGFkZGluZzogMTBweDtcblx0Ly8gXHRjb2xvcjogJHdoaXRlO1xuXHQvLyBcdGxldHRlci1zcGFjaW5nOiAwLjVweDtcblx0Ly8gXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHQvLyBcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0Ly8gXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2Rvd24tYXJyb3cuc3ZnJyksXG5cdC8vIFx0XHRsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkYmxhY2sgMCUsICRibGFjayAxMDAlKTtcblx0Ly8gfVxufVxuXG5ib2R5IC5nZm9ybV93cmFwcGVyLmdmX2Jyb3dzZXJfY2hyb21lIHNlbGVjdCB7XG5cdHBhZGRpbmc6IDJweCAzMnB4IDJweCAxMHB4O1xufVxuXG4vKiBTdXBwb3J0IGZvciBydGwgdGV4dCwgZXhwbGljaXQgc3VwcG9ydCBmb3IgQXJhYmljIGFuZCBIZWJyZXcgKi9cbipbZGlyPVwicnRsXCJdIHNlbGVjdCxcbjpyb290OmxhbmcoYXIpIHNlbGVjdCxcbjpyb290OmxhbmcoaXcpIHNlbGVjdCB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgMC43ZW0gdG9wIDUwJSwgMCAwO1xuXHRwYWRkaW5nOiAwLjZlbSAwLjhlbSAwLjVlbSAxLjRlbTtcbn1cblxuLy8gU3R5bGluZyBkYXRlIHBpY2tlciBtb2R1bGVcbi51aS1kYXRlcGlja2VyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdC51aS1kYXRlcGlja2VyLXRpdGxlIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0fVxuXHQudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdH1cbn1cblxuLy8gRW5kIGN1c3RvbSBzZWxlY3Qgc3R5bGluZ1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLy8gU3VibWl0cyBhcmUgc3R5bGVkIGluIGJ1dHRvbnMuc2Nzc1xuXG5mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0cGFkZGluZzogM3B4IDQ2cHggM3B4IDhweDtcblxuXHRmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG5cdGZvbnQtc2l6ZTogMjRweDtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG5cdGNvbG9yOiAkYnRuLXRleHQtY29sb3I7XG5cdGJhY2tncm91bmQtY29sb3I6ICRidG4tYmctY29sb3I7XG5cdGJvcmRlcjogbm9uZTtcblxuXHR0cmFuc2l0aW9uOiBhbGwgJGJhc2UtZHVyYXRpb24gJGJhc2UtdGltaW5nO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0YXBwZWFyYW5jZTogbm9uZTtcblx0Ym94LXNpemluZzogY29udGVudC1ib3g7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltZy1wYXRoICsgXCJhcnJvdy1yaWdodC5zdmdcIik7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMjhweCAxNXB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgNTAlO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1nLXBhdGggKyBcImFycm93LXJpZ2h0LXdoaXRlLnN2Z1wiKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcblx0fVxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiAkZm9jdXMtb3V0bGluZTtcblx0XHRvdXRsaW5lLW9mZnNldDogM3B4O1xuXHR9XG5cdCY6ZGlzYWJsZWQge1xuXHRcdGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG59XG5cbi8vIEdyYXZpdHkgRm9ybXNcbmJvZHkgLmdmb3JtX3dyYXBwZXIge1xuXHQvLyBSZXNldHNcblx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHQvLyBTZXR0aW5nIGNvbXBsZXggZmllbGRzIHdpdGggb25seSBvbmUgY2hpbGQgdG8gc3BhbiB0aGUgZW50aXJlIHdpZHRoXG5cdC8vIFRoaXMgaXMgdXNlZCBvbiB0aGUgQm9vayBhIFRvdXIgZm9ybSBmb3IgY2l0eSBhbmQgc3RhdGUgZmllbGRzXG5cdC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyIHNwYW46b25seS1vZi10eXBlIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0fVxuXHRzcGFuLmdmb3JtX2Rlc2NyaXB0aW9uIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXHQuZ2Zvcm1fZmllbGRzIC5nZmllbGQsXG5cdC5nZmllbGQuZ2ZfcmlnaHRfaGFsZixcblx0LnRvcF9sYWJlbCAuZ2ZpZWxkLmdmX3JpZ2h0X2hhbGYge1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdH1cblx0LmRlc2NyaXB0aW9uLFxuXHQuZ2ZpZWxkX2Rlc2NyaXB0aW9uLFxuXHQuZ3NlY3Rpb25fZGVzY3JpcHRpb24sXG5cdC5pbnN0cnVjdGlvbiB7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHR9XG5cdC5maWVsZF9zdWJsYWJlbF9hYm92ZSAuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lciBsYWJlbCxcblx0LmZpZWxkX3N1YmxhYmVsX2Fib3ZlIGRpdltjbGFzcyo9XCJnZmllbGRfZGF0ZV9cIl0uZ2lucHV0X2NvbnRhaW5lciBsYWJlbCxcblx0LmZpZWxkX3N1YmxhYmVsX2Fib3ZlIGRpdltjbGFzcyo9XCJnZmllbGRfdGltZV9cIl0uZ2lucHV0X2NvbnRhaW5lciBsYWJlbCxcblx0LmZpZWxkX3N1YmxhYmVsX2JlbG93IC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyIGxhYmVsLFxuXHQuZmllbGRfc3VibGFiZWxfYmVsb3cgZGl2W2NsYXNzKj1cImdmaWVsZF9kYXRlX1wiXS5naW5wdXRfY29udGFpbmVyIGxhYmVsLFxuXHQuZmllbGRfc3VibGFiZWxfYmVsb3cgZGl2W2NsYXNzKj1cImdmaWVsZF90aW1lX1wiXS5naW5wdXRfY29udGFpbmVyIGxhYmVsIHtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHR9XG5cdCYuZ3Jhdml0eS10aGVtZSAuZ2ZpZWxkX2xhYmVsIHtcblx0XHRmb250LXNpemU6IGluaGVyaXQ7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0fVxuXHQuZ2lucHV0X2NvbXBsZXhcblx0XHQuZ2lucHV0X2xlZnRcblx0XHRpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSk6bm90KFt0eXBlPVwiaW1hZ2VcIl0pOm5vdChbdHlwZT1cImZpbGVcIl0pLFxuXHQuZ2lucHV0X2NvbXBsZXhcblx0XHQuZ2lucHV0X3JpZ2h0XG5cdFx0aW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cImltYWdlXCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKSxcblx0LmdpbnB1dF9jb21wbGV4XG5cdFx0aW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cImltYWdlXCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuXHRcdC8vIGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0fVxuXHQuZmllbGRfc3VibGFiZWxfYmVsb3cgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIgbGFiZWwge1xuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdH1cblx0aW1nLmdmb3JtX2FqYXhfc3Bpbm5lciB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cdC5nZm9ybV9mb290ZXIge1xuXHRcdHBhZGRpbmctdG9wOiAxNXB4O1xuXHR9XG5cdC50b3BfbGFiZWwgZGl2LmdpbnB1dF9jb250YWluZXIsXG5cdC50b3BfbGFiZWwgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMSxcblx0LnRvcF9sYWJlbCBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc18yLFxuXHQudG9wX2xhYmVsIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzMge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblx0LmdmaWVsZF9yZXF1aXJlZCB7XG5cdFx0Y29sb3I6ICRlcnJvci1jb2xvcjtcblx0XHQmLmdmaWVsZF9yZXF1aXJlZF9hc3RlcmlzayB7XG5cdFx0XHRmb250LXNpemU6IDI1cHg7XG5cdFx0fVxuXHR9XG5cdC5maWVsZF9kZXNjcmlwdGlvbl9iZWxvdyAuZ2ZpZWxkX2Rlc2NyaXB0aW9uIHtcblx0XHRwYWRkaW5nLXRvcDogNnB4O1xuXHR9XG5cdGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwic3VibWl0XCJdKTpub3QoW3R5cGU9XCJidXR0b25cIl0pOm5vdChbdHlwZT1cImltYWdlXCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cdFx0Zm9udC1zaXplOiBpbmhlcml0O1xuXHR9XG5cdC5nZm9ybV9mb290ZXIgaW5wdXQuYnV0dG9uLFxuXHQuZ2Zvcm1fcGFnZV9mb290ZXIgaW5wdXQuYnV0dG9uLFxuXHQuZ2Zvcm1fZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5cdC5nZm9ybV9wYWdlX2Zvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcblx0XHRmb250LXNpemU6IDI0cHg7XG5cdH1cblx0LmdmaWVsZF9jaGVja2JveCAuZ2Nob2ljZSBsYWJlbCxcblx0LmdmaWVsZF9yYWRpbyAuZ2Nob2ljZSBsYWJlbCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0fVxuXHQvLyBFbmQgUmVzZXRzXG5cblx0Ly8gRXJyb3IgU3R5bGluZ1xuXHRkaXYudmFsaWRhdGlvbl9lcnJvciB7XG5cdFx0Y29sb3I6ICRlcnJvci1jb2xvcjtcblx0XHRmb250LXNpemU6IDFlbTtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0Ym9yZGVyLXRvcDogM3B4IHNvbGlkICRlcnJvci1jb2xvcjtcblx0XHRib3JkZXItYm90dG9tOiAzcHggc29saWQgJGVycm9yLWNvbG9yO1xuXHRcdHBhZGRpbmc6IDE2cHggMCAxNnB4IDA7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cdC52YWxpZGF0aW9uX21lc3NhZ2Uge1xuXHRcdGNvbG9yOiAkZXJyb3ItY29sb3I7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcblx0fVxuXHQuZ2ZpZWxkX2Vycm9yIC5nZmllbGRfbGFiZWwge1xuXHRcdGNvbG9yOiAkZXJyb3ItY29sb3I7XG5cdH1cblx0LmdmaWVsZC5nZmllbGRfZXJyb3IsXG5cdC5nZmllbGQuZ2ZpZWxkX2Vycm9yLmdmaWVsZF9jb250YWluc19yZXF1aXJlZC5nZmllbGRfY3JlZGl0Y2FyZF93YXJuaW5nIHtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0fVxuXHQuZ2ZpZWxkX2Vycm9yXG5cdFx0aW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cImJ1dHRvblwiXSk6bm90KFt0eXBlPVwiaW1hZ2VcIl0pOm5vdChbdHlwZT1cImZpbGVcIl0pLFxuXHQuZ2ZpZWxkX2Vycm9yIHRleHRhcmVhIHtcblx0XHRib3JkZXI6IDNweCBzb2xpZCAkZXJyb3ItY29sb3I7XG5cdH1cblx0Ji5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIHtcblx0XHRwYWRkaW5nLXRvcDogMjBweDtcblx0fVxuXHQmLmdmb3JtX3ZhbGlkYXRpb25fZXJyb3Jcblx0XHQuZ2Zvcm1fYm9keVxuXHRcdC5nZm9ybV9maWVsZHNcblx0XHQuZ2ZpZWxkLmdmaWVsZF9lcnJvcjpub3QoLmdmX2xlZnRfaGFsZik6bm90KC5nZl9yaWdodF9oYWxmKSB7XG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDFweCkge1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdC8vIEVuZCBFcnJvciBTdHlsaW5nXG59XG5cbi8vIGJvZHkgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2JvZHkge1xuLy8gICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbi8vIH0iLCJAaW1wb3J0IFwiLi9taXhpbnMvYmFzZVwiO1xuQGltcG9ydCBcIi4vZ2xvYmFsL2Jhc2VcIjtcbkBpbXBvcnQgXCIuL2NhcmJvbi9nbG9iYWxzL3Njc3Mvc3R5bGVzLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3BhcnRpYWxzL2Jhc2VcIjtcbkBpbXBvcnQgXCIuL2Jsb2Nrcy9iYXNlXCI7XG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL2Jhc2VcIjtcbkBpbXBvcnQgXCIuL3BhZ2VzL2Jhc2VcIjtcblxuLmNhcmJvbi1jb21wb25lbnQge1xuXHRtYXJnaW4tYm90dG9tOiAzMDBweDtcbn1cbiIsImh0bWwge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkdmlld3BvcnQtYmFja2dyb3VuZC1jb2xvcjtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0Jjo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0dG9wOiAwcHg7XG5cdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0XHR6LWluZGV4OiAtMTtcblx0fVxufVxuXG4uYmxvY2sge1xuXHRtYXJnaW46IDAgYXV0byA3NXB4O1xuXHQmOmxhc3Qtb2YtdHlwZS5oZXJvLnN0eWxlLTIge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0bWFyZ2luOiAwIGF1dG8gMjAwcHg7XG5cdH1cbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcblx0Ym94LXNpemluZzogaW5oZXJpdDtcblx0Jjpmb2N1cyB7XG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcblx0fVxufVxuXG5odG1sLFxuYm9keSB7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG5cdG1hcmdpbjogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHQmLmZyb250LWVuZCB7XG5cdFx0cGFkZGluZy10b3A6IDIwMHB4O1xuXHR9XG59XG5cbi5wYWdlLXdyYXBwZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRtaW4taGVpZ2h0OiAxMDAlO1xuXHRtYWluIHtcblx0XHRmbGV4OiAxO1xuXHR9XG59XG5cbi53cmFwcGVyLFxuLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIge1xuXHRtYXgtd2lkdGg6ICRzaXRlLXdpZHRoO1xuXHRtYXJnaW46IGF1dG87XG5cdHBhZGRpbmc6IDAgMnJlbTtcblx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0cGFkZGluZzogMCAxLjJyZW07XG5cdH1cblx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxufVxuLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIge1xuXHQud3JhcHBlciB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdH1cbn1cblxuLnZpc3VhbGx5LWhpZGRlbixcbi52aXN1YWxseS1oaWRlLWxhYmVsLFxuLnZpc3VhbGx5LWhpZGUtdGV4dCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDk5OTk5OTk5OXB4O1xuXHR3aWR0aDogMDtcblx0aGVpZ2h0OiAwO1xuXHRvcGFjaXR5OiAwO1xufVxuXG4uYWxpZ24tbGVmdCxcbi50ZXh0LWFsaWduLWxlZnQge1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRleHQtYWxpZ24tY2VudGVyLFxuLmFsaWduLWNlbnRlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5hbGlnbi1yaWdodCxcbi50ZXh0LWFsaWduLXJpZ2h0IHtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb250ZW50LWxlZnQgLnJvdyB7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cbi5jb250ZW50LXJpZ2h0IC5yb3cge1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuLmNvbnRlbnQtY2VudGVyIC5yb3cge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdC5idXR0b25zIHtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxufVxuXG4vLyBoaWRlcyB0aGUgbWVudSBmcm9tIHNjcmVlbiByZWFkZXJzIHdoZW4gbm90IG9wZW5cbi5zdG9wLWl0IHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaW1hZ2UtdG9wLWxlZnQge1xufVxuLmltYWdlLXRvcC1yaWdodCB7XG59XG4uaW1hZ2UtdG9wLWNlbnRlciB7XG59XG4uaW1hZ2UtYm90dG9tLWxlZnQge1xufVxuLmltYWdlLWJvdHRvbS1yaWdodCB7XG59XG4uaW1hZ2UtYm90dG9tLWNlbnRlciB7XG59XG4uaW1hZ2UtY2VudGVyIHtcbn1cbiIsIi8vIEdlbmVyYWxcbi5mcm9udC1lbmQgLndwLWJsb2NrLWdyb3VwIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBDb2x1bW5zXG4ud3AtYmxvY2stY29sdW1uIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxufVxuIiwidWwsXG5vbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDE3cHg7XG4gICAgdWwsXG4gICAgb2wge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxN3B4O1xuICAgIH1cbn1cblxuZGwge1xuICAgIG1hcmdpbjogMDtcbn1cblxuZHQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5kZCB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vLyBSZW1vdmUgZGVmYXVsdCBzdW1tYXJ5IGFycm93cyBmb3IgYWNjb3JkaW9uc1xuLy8gc3VtbWFyeSB7XG4vLyAgIGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG4vLyB9XG4vLyBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcbi8vICAgZGlzcGxheTogbm9uZTtcbi8vICAgYmFja2dyb3VuZDogbm9uZTtcbi8vICAgY29sb3I6IHRyYW5zcGFyZW50O1xuLy8gfVxuIiwiLy8gTG9nb3NcblxuLy8gVXNlZCBpbiB0aGUgZm9vdGVyXG4ubG9nby1zaXRlIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXgtd2lkdGg6IDkuOHJlbTtcblx0dHJhbnNpdGlvbjogYWxsICRiYXNlLWR1cmF0aW9uICRiYXNlLXRpbWluZztcblx0Ji53aGl0ZSB7XG5cdFx0ZmlsbDogJHdoaXRlO1xuXHR9XG59XG5cbi53aGl0ZS1zdmcge1xuXHRmaWxsOiAkd2hpdGU7XG59XG5cbi8vIFNtYWxsZXIgbG9nbyB1c2VkIGluIHRoZSBmb290ZXIgZm9yIExvdWlzdmlsbGUgVG91cmlzbVxuLmxvZ28tc21hbGwge1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdG1heC13aWR0aDogNS44cmVtO1xufVxuXG5maWd1cmUge1xuXHRtYXJnaW46IDA7XG59XG5cbmltZyxcbnBpY3R1cmUge1xuXHRtYXJnaW46IDA7XG5cdG1heC13aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4uZW1iZWQtY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXHRoZWlnaHQ6IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdG1heC13aWR0aDogMTAwJTtcblx0aWZyYW1lLFxuXHRvYmplY3QsXG5cdGVtYmVkIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG59XG5cbi5ibG9jay52aWRlbyB7XG5cdC53cmFwcGVyIHtcblx0XHRtYXgtd2lkdGg6ICRwZXJjZW50YWdlO1xuXHR9XG59XG4iLCJ0YWJsZSB7XG5cdG1pbi13aWR0aDogNTAwcHg7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHR0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50aGVhZCB7XG5cdGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1saW5lLWhlaWdodDtcblx0dmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxudGJvZHkge1xuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG50aCxcbnRkIHtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0Ym9yZGVyLWxlZnQ6IDEwcHggc29saWQgJHdoaXRlO1xuXHRib3JkZXItcmlnaHQ6IDEwcHggc29saWQgJHdoaXRlO1xufVxuXG50aCB7XG5cdHBhZGRpbmc6ICRzbWFsbC1zcGFjaW5nO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xufVxuXG50cjpmaXJzdC1jaGlsZCB0ZCB7XG5cdHBhZGRpbmctdG9wOiAwLjhlbTtcbn1cblxudGQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IDAuNGVtIDAuNzVlbTtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gKDAuNzVlbSAqIDIpKTtcblx0XHRoZWlnaHQ6IDFweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXHR9XG59XG5cbnRkLmFtb3VudCB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG50cjpsYXN0LWNoaWxkIHRkLFxudGQuYW1vdW50IHtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogbm9uZTtcblx0fVxufVxuIiwiLy8gR2VuZXJhbCBmYWNldCBzdHlsZXNcbi5maWVsZHNldC5maWx0ZXJzIHtcblx0bWFyZ2luLWJvdHRvbTogMi40cmVtO1xuXHQuZmFjZXQtd3JhcCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIGZsZXgoJGp1c3RpZnk6IGZsZXgtc3RhcnQsICRhbGlnbjogZmxleC1zdGFydCwgJHdyYXA6IG5vd3JhcCk7XG5cdFx0d2lkdGg6IGNhbGMoKDEgLyAzICogMTAwJSkgLSAyLjhyZW0pO1xuXHRcdG1pbi13aWR0aDogMzAwcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMC42cmVtO1xuXHRcdHBhZGRpbmc6IDAuNHJlbSAwO1xuXHRcdC8vICY6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0Ly8gXHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cdFx0Ly8gXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdC8vIH1cblx0fVxuXHQvLyBTdHlsaW5nIHRoZSBmYWNldCBsYWJlbHNcblx0LmZhY2V0LWxhYmVsIHtcblx0XHRtYXJnaW46IDAgMXJlbSAwIDA7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHR9XG5cdC50aXRsZSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdH1cblx0aW5wdXRbdHlwZT1cInRleHRcIl0ge1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcblx0XHRmb250LXNpemU6ICRoNi1mb250LXNpemU7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTtcblx0fVxuXHQuZmFjZXR3cC1mYWNldCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRmb250LXNpemU6ICRoNi1mb250LXNpemU7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTtcblx0fVxuXG5cdC8vIERhdGUgcmFuZ2Vcblx0LmZhY2V0d3AtdHlwZS1kYXRlX3JhbmdlIHtcblx0XHQmLmZhY2V0d3AtZmFjZXQtZW5kX2RhdGUge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0fVxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAzcHg7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdFx0fVxuXHR9XG5cdC8vIFNlbGVjdFxuXHQuZmFjZXR3cC10eXBlLWZzZWxlY3Qge1xuXHRcdC5mcy1kcm9wZG93biB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHR9XG5cdFx0LmZzLXdyYXAge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHRcdC5mcy1sYWJlbC13cmFwIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdH1cblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogM3B4O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0YmFja2dyb3VuZDogJGJsYWNrO1xuXHRcdH1cblx0fVxuXHQvLyBDaGVja2JveGVzICYgUmFkaW8gYnV0dG9uc1xuXHQuZmFjZXR3cC1jaGVja2JveCxcblx0LmZhY2V0d3AtcmFkaW8ge1xuXHRcdC8vIFJlc2V0XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHR0ZXh0LWluZGVudDogLTk5OTlweDsgLy8gaGlkZXMgXCJZZXMvTm9cIiB0ZXh0XG5cdFx0Ly8gRW5kIHJlc2V0XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHdpZHRoOiAxcmVtO1xuXHRcdFx0aGVpZ2h0OiAxcmVtO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwLjZyZW07XG5cdFx0XHRib3JkZXI6IDJweCBzb2xpZCAkYmxhY2s7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRmbG9hdDogbGVmdDsgLy8gZ2V0cyB0aGUgY2hlY2tib3ggYmFjayBpbiB2aWV3IGFmdGVyIHRoZSBhYm92ZSAtOTk5OXB4XG5cdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4xNnJlbSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuY2hlY2tlZCB7XG5cdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCZbZGF0YS12YWx1ZT1cIjBcIl0ge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0JiN0ZXh0IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdC5mYWNldHdwLWNvdW50ZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuLy8gRXZlbnRzIFBhZ2Vcbi5wYWdlLWlkLTE3MTcge1xuXHQuZmllbGRzZXQuZmlsdGVycyAuZmFjZXQtd3JhcDpmaXJzdC1vZi10eXBlIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93OyAvLyB0aGlzIGNvdW50ZXJhY3RzIFRoZSBDb2xsZWN0aW9uJ3MgXCJPbiBWaWV3XCIgZmFjZXRcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdH1cbn1cblxuLy8gU2VhcmNoXG4uZmllbGRzZXQuc2VhcmNoLWJhciB7XG5cdC8vIFN0eWxpbmcgdGhlIGZhY2V0IGxhYmVsc1xuXHQuZmFjZXQtbGFiZWwge1xuXHRcdG1hcmdpbjogMCAwIDAuNnJlbTtcblx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdH1cblx0LmZhY2V0d3AtdHlwZS1zZWFyY2gge1xuXHRcdC5mYWNldHdwLWlucHV0LXdyYXAge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRAaW5jbHVkZSBmbGV4KCR3cmFwOiB3cmFwLCAkYWxpZ246IGZsZXgtc3RhcnQpO1xuXHRcdH1cblx0XHQuZmFjZXR3cC1pY29uIHtcblx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGhlaWdodDogNDRweDtcblx0XHRcdHBhZGRpbmctbGVmdDogMC40cmVtO1xuXHRcdH1cblx0XHRpbnB1dC5mYWNldHdwLXNlYXJjaCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwLjZyZW07XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDEuOHJlbTtcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0fVxuXHRcdGJ1dHRvbiB7XG5cdFx0XHRAaW5jbHVkZSBjbGVhckJ0bigpO1xuXHRcdFx0QGluY2x1ZGUgYnRuLWJhc2UoKTtcblx0XHR9XG5cdFx0YnV0dG9uOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDZweDtcblx0XHR9XG5cdFx0LmZhY2V0d3Atc2VhcmNoLXN1Ym1pdCB7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogMXJlbTtcblx0XHR9XG5cdH1cbn1cbi8vIExvYWQgTW9yZSBCdG5cbi5sb2FkLW1vcmUtYnRuIHtcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHQuZmFjZXQtbGFiZWwge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0YnV0dG9uIHtcblx0XHRAaW5jbHVkZSBjbGVhckJ0bjtcblx0XHRAaW5jbHVkZSBidG4tYmFzZSgpO1xuXHRcdCY6bm90KC5wcmV2KTpiZWZvcmUge1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDMzcHgpO1xuXHRcdH1cblx0XHQmOm5vdCgucHJldik6YWZ0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWctcGF0aCArIFwiYXJyb3ctZG93bi5zdmdcIik7XG5cdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdGhlaWdodDogMjhweDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuXHRcdH1cblx0XHQmOmhvdmVyOm5vdCgucHJldik6YWZ0ZXIge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1cHgpO1xuXHRcdH1cblx0fVxufVxuXG4vLyAvLyBGYWNldCBTdGFydC9FbmQgRGF0ZVxuLy8gLmZpZWxkc2V0IC5mYWNldHdwLXR5cGUtZGF0ZV9yYW5nZSB7XG4vLyBcdGRpc3BsYXk6IGZsZXg7XG4vLyBcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbi8vIFx0LmZsYXRwaWNrci1hbHQge1xuLy8gXHRcdHBhZGRpbmc6IDRweCA2cHggNXB4IDA7XG4vLyBcdFx0Ym9yZGVyOiBub25lO1xuLy8gXHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbi8vIFx0XHRmb250LXNpemU6IDE1cHg7XG4vLyBcdFx0QG1lZGlhIChtaW4td2lkdGg6IDQwMHB4KSB7XG4vLyBcdFx0XHRtYXgtd2lkdGg6IDEwMHB4O1xuLy8gXHRcdH1cblxuLy8gXHRcdCY6OnBsYWNlaG9sZGVyIHtcbi8vIFx0XHRcdGNvbG9yOiAkYmxhY2s7XG4vLyBcdFx0fVxuLy8gXHRcdCY6bGFzdC1jaGlsZCB7XG4vLyBcdFx0XHRtYXJnaW4tbGVmdDogMTVweDtcbi8vIFx0XHR9XG4vLyBcdH1cbi8vIH1cblxuLy8gLy8gRmFjZXQgc2VhcmNoIGJhclxuLy8gLmZpZWxkc2V0LnNlYXJjaC1maWVsZCB7XG4vLyBcdC5mYWNldC1sYWJlbCB7XG4vLyBcdFx0QGV4dGVuZCAudmlzdWFsbHktaGlkZGVuO1xuLy8gXHR9XG4vLyB9XG4vLyAuZmFjZXR3cC1mYWNldC5mYWNldHdwLXR5cGUtc2VhcmNoIHtcbi8vIFx0LmZhY2V0d3Atc2VhcmNoLXdyYXAge1xuLy8gXHRcdGRpc3BsYXk6IGZsZXg7XG4vLyBcdH1cbi8vIFx0LmZhY2V0d3AtaW5wdXQtd3JhcCxcbi8vIFx0LmZhY2V0d3Atc2VhcmNoIHtcbi8vIFx0XHR3aWR0aDogMTAwJTtcbi8vIFx0fVxuLy8gXHQuZmFjZXR3cC1pbnB1dC13cmFwIHtcbi8vIFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG4vLyBcdFx0QG1lZGlhICgkdGFibGV0KSB7XG4vLyBcdFx0XHRAaW5jbHVkZSBmbGV4KCRhbGlnbjogZmxleC1zdGFydCk7XG4vLyBcdFx0fVxuLy8gXHRcdC8vIFJlc2V0IGJ1dHRvblxuLy8gXHRcdGJ1dHRvbjpsYXN0LWNoaWxkIHtcbi8vIFx0XHRcdGhlaWdodDogYXV0bztcbi8vIFx0XHRcdHBhZGRpbmc6IDEycHggMjBweDtcbi8vIFx0XHRcdGJvcmRlcjogbm9uZTtcbi8vIFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuLy8gXHRcdFx0Y29sb3I6ICRncmVlbjtcbi8vIFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG4vLyBcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gXHRcdFx0QG1lZGlhICgkdGFibGV0KSB7XG4vLyBcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vIFx0XHRcdFx0Ym90dG9tOiAtMzBweDtcbi8vIFx0XHRcdFx0cmlnaHQ6IDEyNHB4O1xuLy8gXHRcdFx0XHRwYWRkaW5nOiA1cHggMDtcbi8vIFx0XHRcdFx0ei1pbmRleDogMztcbi8vIFx0XHRcdH1cbi8vIFx0XHR9XG4vLyBcdH1cbi8vIFx0aW5wdXQuZmFjZXR3cC1zZWFyY2gge1xuLy8gXHRcdGZsZXg6IDEgMCAwO1xuLy8gXHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XG4vLyBcdFx0cGFkZGluZzogNXB4IDMwcHggNXB4IDE1cHg7XG4vLyBcdFx0Ym9yZGVyLXJhZGl1czogMDtcbi8vIFx0XHRib3JkZXI6IDNweCBzb2xpZCByZ2JhKDMzLCAzMywgMzMsIDAuMjUpO1xuLy8gXHR9XG4vLyBcdC5mYWNldHdwLWljb24sXG4vLyBcdC5mYWNldHdwLWJ0biB7XG4vLyBcdFx0ZGlzcGxheTogbm9uZTtcbi8vIFx0fVxuLy8gXHRpbnB1dCxcbi8vIFx0YnV0dG9uIHtcbi8vIFx0XHRoZWlnaHQ6IDUwcHg7XG4vLyBcdH1cbi8vIFx0LmZhY2V0d3Atc2VhcmNoLXN1Ym1pdCB7XG4vLyBcdFx0QGluY2x1ZGUgYnRuLWJhc2UoKTtcbi8vIFx0XHRoZWlnaHQ6IGF1dG87XG4vLyBcdFx0bWFyZ2luOiAwO1xuLy8gXHRcdHBhZGRpbmc6IDE0cHggMjBweDtcbi8vIFx0XHRib3JkZXI6IDNweCBzb2xpZCAkZ3JlZW47XG4vLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuLy8gXHRcdGNvbG9yOiAkd2hpdGU7XG4vLyBcdFx0QG1lZGlhICgkdGFibGV0KSB7XG4vLyBcdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcbi8vIFx0XHR9XG4vLyBcdFx0Jjpob3Zlcixcbi8vIFx0XHQmOmZvY3VzIHtcbi8vIFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbi8vIFx0XHRcdGNvbG9yOiAkZ3JlZW47XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyB9XG5cbi8vIC8vIFN0eWxpbmcgdGhlIGZhY2V0IGRyb3Bkb3duc1xuLy8gLmZpZWxkc2V0IHtcbi8vIFx0LmZzLWxhYmVsLXdyYXAge1xuLy8gXHRcdGJvcmRlcjogbm9uZTtcbi8vIFx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgJGJsYWNrO1xuLy8gXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbi8vIFx0XHQuZnMtbGFiZWwge1xuLy8gXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuLy8gXHRcdFx0Y29sb3I6ICRibGFjaztcbi8vIFx0XHR9XG4vLyBcdFx0LmZzLWFycm93IHtcbi8vIFx0XHRcdGJvcmRlci10b3A6IDVweCBzb2xpZCAkYmxhY2s7XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyBcdC5mcy1kcm9wZG93biB7XG4vLyBcdFx0d2lkdGg6IDEwMCU7XG4vLyBcdFx0Y29sb3I6ICRibGFjaztcbi8vIFx0fVxuLy8gfVxuXG4vLyAvLyBNYXAgLSBSZXZlcnNlIGNvbG9ycyBmb3IgdGhlIEZhY2V0IGRyb3Bkb3duc1xuLy8gLmJsb2NrLmludGVyYWN0aXZlLW1hcCB7XG4vLyBcdC5mcy1sYWJlbC13cmFwIHtcbi8vIFx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgJHdoaXRlO1xuLy8gXHRcdGJhY2tncm91bmQtY29sb3I6ICR0cmFuc3BhcmVudDtcbi8vIFx0XHRAbWVkaWEgKCRtYXAtYnJlYWtwb2ludCkge1xuLy8gXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuLy8gXHRcdH1cbi8vIFx0XHQuZnMtbGFiZWwge1xuLy8gXHRcdFx0Y29sb3I6ICR3aGl0ZTtcbi8vIFx0XHR9XG4vLyBcdFx0LmZzLWFycm93IHtcbi8vIFx0XHRcdGJvcmRlci10b3A6IDVweCBzb2xpZCAkd2hpdGU7XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyB9XG5cbi8vIC8vIFN0eWxpbmcgdGhlIGZhY2V0IHJhbmdlc1xuLy8gLmZpZWxkc2V0IHtcbi8vIFx0LmZhY2V0d3AtdHlwZS1zbGlkZXIge1xuLy8gXHRcdHBhZGRpbmctdG9wOiAyMHB4OyAvLyBBbGlnbmluZyB0aGUgcmFuZ2VzIHdpdGggb3RoZXIgZmFjZXRzXG4vLyBcdFx0LmZhY2V0d3Atc2xpZGVyLWxhYmVsICsgZGl2IHtcbi8vIFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vIFx0XHRcdG1hcmdpbi1sZWZ0OiAxNXB4O1xuLy8gXHRcdH1cbi8vIFx0fVxuLy8gXHQubm9VaS1ob3Jpem9udGFsIC5ub1VpLWhhbmRsZSB7XG4vLyBcdFx0d2lkdGg6IDE1cHg7XG4vLyBcdFx0aGVpZ2h0OiAxNXB4O1xuLy8gXHRcdHRvcDogLTcuNXB4O1xuLy8gXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcbi8vIFx0fVxuLy8gXHQubm9VaS1ob3Jpem9udGFsIHtcbi8vIFx0XHRoZWlnaHQ6IDJweDtcbi8vIFx0fVxuLy8gXHQubm9VaS10YXJnZXQge1xuLy8gXHRcdGJvcmRlci1jb2xvcjogJGJsYWNrO1xuLy8gXHRcdCY6YmVmb3JlLFxuLy8gXHRcdCY6YWZ0ZXIge1xuLy8gXHRcdFx0Y29udGVudDogXCJcIjtcbi8vIFx0XHRcdHdpZHRoOiAycHg7XG4vLyBcdFx0XHRoZWlnaHQ6IDE2cHg7XG4vLyBcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyBcdFx0XHR0b3A6IDA7XG4vLyBcdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG4vLyBcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4vLyBcdFx0fVxuLy8gXHRcdCY6YmVmb3JlIHtcbi8vIFx0XHRcdGxlZnQ6IC0xcHg7XG4vLyBcdFx0fVxuLy8gXHRcdCY6OmFmdGVyIHtcbi8vIFx0XHRcdHJpZ2h0OiAtMXB4O1xuLy8gXHRcdH1cbi8vIFx0fVxuLy8gXHQubm9VaS1jb25uZWN0IHtcbi8vIFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG4vLyBcdH1cbi8vIFx0Lm5vVWktaGFuZGxlIHtcbi8vIFx0XHRib3JkZXI6IG5vbmU7XG4vLyBcdFx0YmFja2dyb3VuZDogJGdyZWVuO1xuLy8gXHR9XG4vLyBcdC5mYWNldHdwLWZhY2V0IHtcbi8vIFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuLy8gXHR9XG4vLyBcdC8vIFJhbmdlIHJlc2V0IGJ0blxuLy8gXHQuZmFjZXR3cC1zbGlkZXItcmVzZXQge1xuLy8gXHRcdGRpc3BsYXk6IGJsb2NrO1xuLy8gXHRcdG1hcmdpbi10b3A6IDEwcHg7XG4vLyBcdFx0cGFkZGluZzogMDtcbi8vIFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuLy8gXHRcdGJvcmRlcjogbm9uZTtcbi8vIFx0XHRib3gtc2hhZG93OiBub25lO1xuLy8gXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcbi8vIFx0XHRmb250LWZhbWlseTogJHNlcmlmO1xuLy8gXHRcdGZvbnQtc2l6ZTogMTVweDtcbi8vIFx0XHRjb2xvcjogJGdyZWVuO1xuLy8gXHR9XG4vLyB9XG4vLyAvLyBNYXAgZmFjZXQgcmFuZ2VzXG4vLyAuYmxvY2suaW50ZXJhY3RpdmUtbWFwIHtcbi8vIFx0Lm5vVWktdGFyZ2V0IHtcbi8vIFx0XHRib3JkZXItY29sb3I6ICNkZGRkZGQ7XG4vLyBcdFx0JjpiZWZvcmUsXG4vLyBcdFx0JjphZnRlciB7XG4vLyBcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyBcdC5ub1VpLWNvbm5lY3Qge1xuLy8gXHRcdGJhY2tncm91bmQ6ICNkZGRkZGQ7XG4vLyBcdH1cbi8vIFx0Lm5vVWktaGFuZGxlIHtcbi8vIFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG4vLyBcdH1cbi8vIH1cblxuLy8gLy8gU2VhcmNoIGZhY2V0IHJhbmdlc1xuLy8gLmJsb2NrLnNlYXJjaC1yZXN1bHRzIHtcbi8vIFx0Lm5vVWktaGFuZGxlIHtcbi8vIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG4vLyBcdH1cbi8vIH1cblxuLy8gLy8gUmFkaW8gYnV0dG9uIGZhY2V0c1xuLy8gLmZpZWxkc2V0IC5mYWNldHdwLXR5cGUtcmFkaW8ge1xuLy8gXHRkaXNwbGF5OiBmbGV4O1xuLy8gXHQuZmFjZXR3cC1yYWRpbyB7XG4vLyBcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuLy8gXHRcdHBhZGRpbmctbGVmdDogMjVweDtcbi8vIFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuLy8gXHRcdCY6YmVmb3JlIHtcbi8vIFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG4vLyBcdFx0XHR3aWR0aDogMTVweDtcbi8vIFx0XHRcdGhlaWdodDogMTVweDtcbi8vIFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkO1xuLy8gXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuLy8gXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuLy8gXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuLy8gXHRcdFx0bGVmdDogMDtcbi8vIFx0XHRcdHRvcDogNTAlO1xuLy8gXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuLy8gXHRcdH1cbi8vIFx0XHQmICsgLmZhY2V0d3AtcmFkaW8ge1xuLy8gXHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG4vLyBcdFx0fVxuLy8gXHRcdCYuY2hlY2tlZCxcbi8vIFx0XHQmOmhvdmVyLFxuLy8gXHRcdCY6Zm9jdXMge1xuLy8gXHRcdFx0YmFja2dyb3VuZDogbm9uZTtcbi8vIFx0XHRcdGNvbG9yOiAkZ3JlZW47XG4vLyBcdFx0XHQmOmJlZm9yZSB7XG4vLyBcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcbi8vIFx0XHRcdH1cbi8vIFx0XHR9XG4vLyBcdH1cbi8vIH1cbiIsIkBtaXhpbiBjZW50ZXIoKSB7XG59XG5cbkBtaXhpbiBmbGV4KCRqdXN0aWZ5OiBjZW50ZXIsICRhbGlnbjogY2VudGVyLCAkZGlyOiByb3csICR3cmFwOiB3cmFwKSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG5cdGFsaWduLWl0ZW1zOiAkYWxpZ247XG5cdC8vIGZsZXgtZGlyZWN0aW9uOiAkZGlyO1xuXHRmbGV4LXdyYXA6ICR3cmFwO1xufVxuIiwiLmNhcmJvbi1hcHAge1xuXHRidXR0b24ge1xuXHRcdG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwNjJmZiAhaW1wb3J0YW50O1xuXHRcdFx0Y29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcblx0XHRcdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXHQuYngtLWJ0bi0tcHJpbWFyeSxcblx0LmJ4LS1idG4tLXNlY29uZGFyeSB7XG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdC8vIGlucHV0Om5vdChbdHlwZV0pe1xuXHQvLyAgIGJvcmRlcjogbm9uZTtcblx0Ly8gICBib3JkZXItcmFkaXVzOiAwO1xuXHQvLyAgIGJveC1zaGFkb3c6IG5vbmU7XG5cdC8vICAgbWFyZ2luLWJvdHRvbTogMDtcblx0Ly8gICBwYWRkaW5nOiAwIDFyZW07XG5cdC8vICAgdHJhbnNpdGlvbjogbm9uZTtcblx0Ly8gfVxuXHQvLyBbdHlwZT1idXR0b25dOmhvdmVyIHtcblx0Ly8gICBjb2xvcjogIzAwMDtcblx0Ly8gICBib3JkZXI6IDA7XG5cdC8vICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC8vIH1cblx0LmJ4LS1kYXRhLXRhYmxlIHRoOmxhc3Qtb2YtdHlwZSB7XG5cdFx0d2lkdGg6IDMwMHB4O1xuXHR9XG5cdC5ieC0tZGF0YS10YWJsZSAuY2VsbC1hZGRyZXNzIGEge1xuXHRcdGNvbG9yOiAjZTkwYTU5O1xuXHR9XG5cdC5ieC0tZmlsZV9fZHJvcC1jb250YWluZXIge1xuXHRcdGJvcmRlcjogMXB4IGRhc2hlZCAjMDAwO1xuXHRcdHBhZGRpbmc6IDE1cHg7XG5cdH1cblx0LmJ4LS1jb21iby1ib3guYngtLWxpc3QtYm94IHtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cdFx0fVxuXHRcdC5ieC0tbGlzdC1ib3hfX2ZpZWxkIHtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5ieC0tcGFnaW5hdGlvbl9fbGVmdCB7XG5cdFx0bWluLXdpZHRoOiAzMjBweDtcblx0fVxuXHQuYngtLXBhZ2luYXRpb25fX3JpZ2h0IHtcblx0XHRtaW4td2lkdGg6IDIzOHB4O1xuXHR9XG59XG50YWJsZS5ieC0tZGF0YS10YWJsZSB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdHRib2R5IHRoLFxuXHR0ZCB7XG5cdFx0cGFkZGluZzogMC44NzVyZW0gMC43NXJlbTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMC44MTI1cmVtO1xuXHR9XG59XG4uYngtLXRhYmxlLXNvcnQge1xuXHRtaW4td2lkdGg6IDA7XG59XG4uYngtLXBhZ2luYXRpb24gLmJ4LS1zZWxlY3QtaW5wdXQge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxuLmJ4LS1wYWdpbmF0aW9uX19idXR0b24ge1xuXHRtaW4td2lkdGg6IDA7XG59XG4uYngtLXRvb2x0aXBfX3RyaWdnZXI6bm90KC5ieC0tYnRuLS1pY29uLW9ubHkpIHtcblx0bWluLXdpZHRoOiAwO1xufVxuLmJ4LS1vdmVyZmxvdy1tZW51LmJ4LS10b29sYmFyLWFjdGlvbiB7XG5cdG1pbi13aWR0aDogMDtcbn1cbi5jdi1jb21iby1ib3guYngtLWxpc3QtYm94X193cmFwcGVyIHtcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIPCfjI0gR2xvYmFsXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8vIElmIHRydWUsIGluY2x1ZGVzIGZvbnQgZmFjZSBtaXhpbnMgaW4gYF9jc3MtLWZvbnQtZmFjZS5zY3NzYCBkZXBlbmRpbmcgb24gdGhlIGBjc3MtLXBsZXhgIGZlYXR1cmUgZmxhZ1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHR5cGUgQm9vbFxuLy8vIEBncm91cCBmZWF0dXJlLWZsYWdzXG4kY3NzLS1mb250LWZhY2U6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgdHJ1ZSwgaW5jbHVkZXMgdGhlIGBjc3MtaGVscGVycygpYCBtaXhpblxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHR5cGUgQm9vbFxuLy8vIEBncm91cCBmZWF0dXJlLWZsYWdzXG4kY3NzLS1oZWxwZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgdHJ1ZSwgaW5jbHVkZXMgdGhlIGBjc3MtYm9keSgpYCBtaXhpblxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHR5cGUgQm9vbFxuLy8vIEBncm91cCBmZWF0dXJlLWZsYWdzXG4kY3NzLS1ib2R5OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgdHJ1ZSwgdGhlIGBsYXllcigpYCBtaXhpbiBzZXRzIGBib3gtc2hhZG93YCB2YWx1ZXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIEJvb2xcbi8vLyBAZ3JvdXAgZmVhdHVyZS1mbGFnc1xuJGNzcy0tdXNlLWxheWVyOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgdHJ1ZSwgaW5jbHVkZSByZXNldCBDU1Ncbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIEJvb2xcbi8vLyBAZ3JvdXAgZmVhdHVyZS1mbGFnc1xuJGNzcy0tcmVzZXQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgdHJ1ZSwgaW5jbHVkZSBkZWZhdWx0IHR5cGVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIEJvb2xcbi8vLyBAZ3JvdXAgZmVhdHVyZS1mbGFnc1xuJGNzcy0tZGVmYXVsdC10eXBlOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIFVzZWQgd2l0aCBgY3NzLS1mb250LWZhY2VgIGZlYXR1cmUgZmxhZywgaWYgdHJ1ZSwgdXNlcyBQbGV4IGZvbnQgZmFtaWxpZXMgaW5zdGVhZCBvZiBIZWx2ZXRpY2Fcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIEJvb2xcbi8vLyBAZ3JvdXAgZmVhdHVyZS1mbGFnc1xuJGNzcy0tcGxleDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBUaGlzIGZlYXR1cmUgZmxhZyB3YXMgdXNlZCBkdXJpbmcgZGV2ZWxvcG1lbnQgb2YgdGhlIHYxMCBleHBlcmltZW50YWwgZ3JpZC5cbi8vLyBUT0RPOiByZW1vdmUgaW4gbmV4dCBtYWpvciByZWxlYXNlLiBTeW5jZWQgaW4gYGZlYXR1cmUtZmxhZ3NgIGFzIGFuIGFkYXB0ZXIgaW4gdGhlIGludGVyaW1cbi8vLyBAZGVwcmVjYXRlZCAoRm9yIHYxMCkgdjEwIGFsd2F5cyB1c2VzIGBAY2FyYm9uL2dyaWRgXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBCb29sXG4vLy8gQGdyb3VwIGZlYXR1cmUtZmxhZ3NcbiRjc3MtLXVzZS1leHBlcmltZW50YWwtZ3JpZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBUaGlzIGZlYXR1cmUgZmxhZyB3YXMgdXNlZCBkdXJpbmcgZGV2ZWxvcG1lbnQgb2YgdGhlIHYxMCBleHBlcmltZW50YWwgZ3JpZC5cbi8vLyBUT0RPOiByZW1vdmUgaW4gbmV4dCBtYWpvciByZWxlYXNlLiBTeW5jZWQgaW4gYGZlYXR1cmUtZmxhZ3NgIGFzIGFuIGFkYXB0ZXIgaW4gdGhlIGludGVyaW0uXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBCb29sXG4vLy8gQGdyb3VwIGZlYXR1cmUtZmxhZ3Ncbi8vLyBAZGVwcmVjYXRlZCAoRm9yIHYxMCkgdjEwIGFsd2F5cyB1c2VzIGBAY2FyYm9uL2dyaWRgXG4kY3NzLS11c2UtZXhwZXJpbWVudGFsLWdyaWQtZmFsbGJhY2s6IGZhbHNlICFkZWZhdWx0O1xuXG5AaW1wb3J0IFwiZmVhdHVyZS1mbGFnc1wiO1xuQGltcG9ydCBcInZhcnNcIjtcbkBpbXBvcnQgXCJjb2xvcnNcIjtcbkBpbXBvcnQgXCJ0aGVtZVwiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcImxheW91dFwiO1xuQGltcG9ydCBcImxheWVyXCI7XG5AaW1wb3J0IFwic3BhY2luZ1wiO1xuQGltcG9ydCBcInR5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCIuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2VcIjtcbi8vQGltcG9ydCAnY3NzLS1yZXNldCc7XG5AaW1wb3J0IFwiY3NzLS1mb250LWZhY2VcIjtcbkBpbXBvcnQgXCJjc3MtLWhlbHBlcnNcIjtcbi8vQGltcG9ydCAnY3NzLS1ib2R5JztcbkBpbXBvcnQgXCIuLi9ncmlkL2dyaWRcIjtcblxuLy8gVXNlIHRoZSBncmF5IDEwIHRoZW1lXG4kY2FyYm9uLS10aGVtZTogJGNhcmJvbi0tdGhlbWUtLWcxMDtcbkBpbmNsdWRlIGNhcmJvbi0tdGhlbWUoKTtcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyDimqDvuI8gTWFuYWdlIGRlcHJlY2F0aW9uc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBXZSBmbGFnIHRoaXMgdmFyaWFibGUgYXMgdHJ1ZSBpZiBzb21lb25lIHVzZXMgdGhlIGdsb2JhbHMvc2Nzcy9zdHlsZXMuc2Nzc1xuLy8vIGVudHJ5LXBvaW50LiBUaGlzIGFsbG93cyB1cyB0byBjb2xsZWN0IGFsbCB0aGUgbWVzc2FnZXMgYW5kIGRpc3BsYXkgdGhlbSBhdFxuLy8vIHRoZSBlbmQgb2YgdGhlIGZpbGUgaW5zdGVhZCBvZiBicmluZ2luZyBpdCB1cCBwZXItY29tcG9uZW50LlxuLy8vXG4vLy8gSWYgYSBjb25zdW1lciBpbnN0ZWFkIGdldHMgdGhlIGNvbXBvbmVudHMgYnkgaW1wb3J0aW5nIHRoZSBwYXJ0aWFsIGRpcmVjdGx5LFxuLy8vIHRoaXMgdmFyaWFibGUgX3dpbGwgbm90XyBiZSBzZXQgdG8gdHJ1ZSwgc28gdGhlIGRlcHJlY2F0aW9uIG1lc3NhZ2Ugd2lsbCBiZVxuLy8vIGRpc3BsYXllZCBhZnRlciB0aGUgQGltcG9ydC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAdHlwZSBCb29sXG4vLy8gQGdyb3VwIGdsb2JhbC1kZXByZWNhdGVcbiRkZXByZWNhdGlvbnMtLWVudHJ5OiB0cnVlO1xuXG4vLy8gQ29sbGVjdCBhbGwgZGVwcmVjYXRpb24gcmVhc29ucyBpbnRvIHRoaXMgbGlzdCB0aHJvdWdob3V0IHRoZSBpbXBvcnQgY3ljbGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGdyb3VwIGdsb2JhbC1kZXByZWNhdGVcbiRkZXByZWNhdGlvbnMtLXJlYXNvbnM6ICgpO1xuXG4vLy8gVGhpcyBtZXNzYWdlIHdpbGwgYmUgcHJlcGVuZGVkIHRvIGFueSBkZXByZWNhdGlvbiBub3RpY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGdyb3VwIGdsb2JhbC1kZXByZWNhdGVcbiRkZXByZWNhdGlvbnMtLW1lc3NhZ2U6IFwiRGVwcmVjYXRlZCBjb2RlIHdhcyBmb3VuZCwgdGhpcyBjb2RlIHdpbGwgYmUgcmVtb3ZlZCBiZWZvcmUgdGhlIG5leHQgcmVsZWFzZSBvZiBDYXJib24uXCI7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8g8J+NlSBDb21wb25lbnRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvblwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvY29weS1idXR0b24vY29weS1idXR0b25cIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL2ZpbGUtdXBsb2FkZXIvZmlsZS11cGxvYWRlclwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3hcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL2NvbWJvLWJveC9jb21iby1ib3hcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b25cIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3RvZ2dsZS90b2dnbGVcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2hcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3RcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3RleHQtaW5wdXQvdGV4dC1pbnB1dFwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvdGV4dC1hcmVhL3RleHQtYXJlYVwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvbnVtYmVyLWlucHV0L251bWJlci1pbnB1dFwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvZm9ybS9mb3JtXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9saW5rL2xpbmtcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL2xpc3QtYm94L2xpc3QtYm94XCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9saXN0L2xpc3RcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL2RhdGEtdGFibGUvZGF0YS10YWJsZVwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvc3RydWN0dXJlZC1saXN0L3N0cnVjdHVyZWQtbGlzdFwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvY29kZS1zbmlwcGV0L2NvZGUtc25pcHBldFwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvb3ZlcmZsb3ctbWVudS9vdmVyZmxvdy1tZW51XCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9jb250ZW50LXN3aXRjaGVyL2NvbnRlbnQtc3dpdGNoZXJcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9kcm9wZG93bi9kcm9wZG93blwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvbG9hZGluZy9sb2FkaW5nXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9tb2RhbC9tb2RhbFwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvbXVsdGktc2VsZWN0L211bHRpLXNlbGVjdFwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uL2lubGluZS1ub3RpZmljYXRpb25cIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi90b2FzdC1ub3RpZmljYXRpb25cIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3Rvb2x0aXAvdG9vbHRpcFwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvdGFicy90YWJzXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy90YWcvdGFnXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb25cIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3Byb2dyZXNzLWluZGljYXRvci9wcm9ncmVzcy1pbmRpY2F0b3JcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvdG9vbGJhci90b29sYmFyXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy90aW1lLXBpY2tlci90aW1lLXBpY2tlclwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvc2xpZGVyL3NsaWRlclwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvdGlsZS90aWxlXCI7XG5AaW1wb3J0IFwiLi4vLi4vY29tcG9uZW50cy9za2VsZXRvbi9za2VsZXRvblwiO1xuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvaW5saW5lLWxvYWRpbmcvaW5saW5lLWxvYWRpbmdcIjtcbkBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL3BhZ2luYXRpb24tbmF2L3BhZ2luYXRpb24tbmF2XCI7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8g8J+UrCBFeHBlcmltZW50YWxcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGltcG9ydCBcIi4uLy4uL2NvbXBvbmVudHMvdWktc2hlbGwvdWktc2hlbGxcIjtcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyDwn5mIIEhpZGRlbiAoTm90IGV4cG9zZWQgb24gd2Vic2l0ZSlcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDeWNsZSB0aHJvdWdoIGFsbCB0aGUgZGVwcmVjYXRpb24gcmVhc29ucywgaWYgYW55IGV4aXN0LCB0aGF0IGhhdmUgYmVlblxuLy8gYWNjdW11bGF0ZWQgdGhyb3VnaCB0aGUgQGltcG9ydCBwcm9jZXNzLlxuQGlmIChsZW5ndGgoJGRlcHJlY2F0aW9ucy0tcmVhc29ucykgPiAwKSB7XG5cdCRkZXByZWNhdGlvbnMtLW1lc3NhZ2U6IFwiXCI7XG5cdEBlYWNoICRyZWFzb24gaW4gJGRlcHJlY2F0aW9ucy0tcmVhc29ucyB7XG5cdFx0JGRlcHJlY2F0aW9ucy0tbWVzc2FnZTogXCIjeyRkZXByZWNhdGlvbnMtLW1lc3NhZ2V9IFJFQVNPTjogI3skcmVhc29ufVwiO1xuXHR9XG5cblx0QHdhcm4gJGRlcHJlY2F0aW9ucy0tbWVzc2FnZTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gICBDYXRlZ29yeSAgICAgICAgICAgICB8fCAgRGVzY3JpcHRpb25cbi8vICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gICBNaXNjICAgICAgICAgICAgICAgICB8fCAgR2VuZXJhbCBoZWxwZXIgQG1peGluc1xuLy8gICBEZXByZWNhdGVkICAgICAgICAgICB8fCAgTm90IHVzZWQgYW55bW9yZVxuLy8gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJ3ZhcnMnO1xuQGltcG9ydCAnY3NzLS1yZXNldCc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5cbi8vLyBBZGRzIHRleHQgb3ZlcmZsb3cgc3R5bGluZ1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbZmFsc2VdIC0gVmFsdWUgb2Ygd2lkdGggaWYgeW91IHdhbnQgdG8gc2V0IHdpZHRoLCBlbHNlIG5vdGhpbmdcbi8vLyBAZXhhbXBsZSBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93KDMwMHB4KTtcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiB0ZXh0LW92ZXJmbG93KCR3aWR0aDogZmFsc2UpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gYXBwbHkgYSB3aWR0aCBpZiB3aWR0aCBwYXJhbWV0ZXIgZXhpc3RzXG4gIEBpZiAoJHdpZHRoKSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBwbGFjZWhvbGRlciB0ZXh0IGNvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNpemUgWydzbWFsbCddIC0gU2l6ZSBvZiBib3ggc2hhZG93XG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgcGxhY2Vob2xkZXItY29sb3JzO1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIHBsYWNlaG9sZGVyLWNvbG9ycyB7XG4gIGNvbG9yOiAkdGV4dC0wMztcbn1cblxuLy8vIEFkZHMgc21hbGwgb3IgbGFyZ2UgYm94IHNoYWRvd1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzaXplIFsnc21hbGwnXSAtIHNpemUgb2YgYm94IHNoYWRvd1xuLy8vIEBleGFtcGxlIEBpbmNsdWRlIGJveC1zaGFkb3coKTsgQGluY2x1ZGUgYm94LXNoYWRvdygnbGFyZ2UnKTtcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiBib3gtc2hhZG93KCRzaXplOiAnc21hbGwnKSB7XG4gIC8vIExhcmdlIC0gRm9yIGRyb3Bkb3duc1xuICBAaWYgKCRzaXplID09ICdsYXJnZScpIHtcbiAgICBib3gtc2hhZG93OiA2cHggNnB4IDZweCAwICRib3gtc2hhZG93O1xuICB9XG5cbiAgQGlmICgkc2l6ZSA9PSAnc21hbGwnKSB7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCAzcHggMCAkYm94LXNoYWRvdztcbiAgfVxufVxuXG4vLy8gQWRkcyBvdXRsaW5lIHN0eWxlcyBkZXBlbmRpbmcgb24gc3BlY2lmaWMgdHlwZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0eXBlIFsnYm9yZGVyJ10gLSBUeXBlIG9mIG91dGxpbmUgZnJvbTogYGJvcmRlcmAsIGBibHVycmVkYCwgYG91dGxpbmVgLCBgaW52YWxpZGAsIGByZXNldGBcbi8vLyBAZXhhbXBsZSBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4vLy8gQGdyb3VwIGdsb2JhbC1oZWxwZXJzXG5AbWl4aW4gZm9jdXMtb3V0bGluZSgkdHlwZTogJ2JvcmRlcicpIHtcbiAgQGlmICgkdHlwZSA9PSAnYm9yZGVyJykge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCAkZm9jdXM7XG4gIH1cblxuICBAaWYgKCR0eXBlID09ICdibHVycmVkJykge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCAkZm9jdXM7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgQGlmICgkdHlwZSA9PSAnb3V0bGluZScpIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICB9XG5cbiAgQGlmICgkdHlwZSA9PSAnb3V0bGluZS1jb21wYXQnKSB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGZvY3VzO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICBAaWYgKCR0eXBlID09ICdpbnZhbGlkJykge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCAkc3VwcG9ydC0wMTtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgfVxuXG4gIEBpZiAoJHR5cGUgPT0gJ3Jlc2V0Jykge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgfVxufVxuXG4vLy8gQWRkcyByb3RhdGlvbmFsIHRyYW5zZm9ybWF0aW9uXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge051bWJlcn0gJGRlZyAtIEhvdyBtYW55IGRlZ3JlZXMgdG8gcm90YXRlXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGVlZCAtIFNwZWVkIG9mIHJvdGF0aW9uXG4vLy8gQHBhcmFtIHtWYWx1ZX0gJG9yaWdpbiBbY2VudGVyXSAtIGB0cmFuc2Zvcm0tb3JpZ2luYFxuLy8vIEBleGFtcGxlIEBpbmNsdWRlIHJvdGF0ZSg5MGRlZywgMzAwbXMpO1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIHJvdGF0ZSgkZGVnLCAkc3BlZWQsICRvcmlnaW46IGNlbnRlcikge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVnKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRzcGVlZDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIGhpZGUgY29udGVudFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC1oZWxwZXJzXG5AbWl4aW4gaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8vLyBSZXNldHMgYnV0dG9uIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtCb29sfSAkd2lkdGggW3RydWVdIC0gU2V0cyB3aWR0aCB0byAxMDAlIGlmIHRydWVcbi8vLyBAZXhhbXBsZSBAaW5jbHVkZSBidXR0b24tcmVzZXQoJHdpZHRoOiBmYWxzZSk7XG4vLy8gQGdyb3VwIGdsb2JhbC1oZWxwZXJzXG5AbWl4aW4gYnV0dG9uLXJlc2V0KCR3aWR0aDogdHJ1ZSkge1xuICBAaW5jbHVkZSByZXNldDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBAaWYgKCR3aWR0aCA9PSB0cnVlKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8vIFNrZWxldG9uIGxvYWRpbmcgYW5pbWF0aW9uXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZXhhbXBsZSBAaW5jbHVkZSBza2VsZXRvbjtcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiBza2VsZXRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZDogJHNrZWxldG9uLTAxO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogJHNrZWxldG9uLTAyO1xuICAgIGFuaW1hdGlvbjogMzAwMG1zIGVhc2UtaW4tb3V0IHNrZWxldG9uIGluZmluaXRlO1xuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnc2tlbGV0b24nKSB7XG4gIEBrZXlmcmFtZXMgc2tlbGV0b24ge1xuICAgIDAlIHtcbiAgICAgIHdpZHRoOiAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIG9wYWNpdHk6IDAuMztcbiAgICB9XG4gICAgMjAlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgMjglIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICA1MSUge1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICA1OCUge1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICA4MiUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIDgzJSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgOTYlIHtcbiAgICAgIHdpZHRoOiAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICB3aWR0aDogMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAndmFycyc7XG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuXG5AaW5jbHVkZSBleHBvcnRzKCdoZWxwZXItY2xhc3NlcycpIHtcbiAgLiN7JHByZWZpeH0tLXRleHQtdHJ1bmNhdGUtLWVuZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LXRydW5jYXRlLS1mcm9udCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGRpcmVjdGlvbjogcnRsO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJ3ZhcnMnO1xuQGltcG9ydCAnY3NzLS1yZXNldCc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5cbi8vLyBJbmNsdWRlIHN0eWxlcyBmb3Igc2NyZWVuIHJlYWRlci9hc3Npc3RpdmUgdGV4dFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC1oZWxwZXJzXG5AbWl4aW4gY3NzLWhlbHBlcnMge1xuICAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gIC4jeyRwcmVmaXh9LS12aXN1YWxseS1oaWRkZW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXI6IDA7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJvZHkge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLWJhY2tncm91bmQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY3NzLS1oZWxwZXJzJykge1xuICBAaWYgdmFyaWFibGUtZXhpc3RzKCdjc3MtLWhlbHBlcnMnKSA9PSBmYWxzZSBvciAkY3NzLS1oZWxwZXJzID09IHRydWUge1xuICAgIEBpbmNsdWRlIGNzcy1oZWxwZXJzO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy90eXBlL3Jlc2V0JztcbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pY29ucy9taXhpbnMnO1xuXG4vLy8gUmVzZXRzIGRlZmF1bHQgYnJvd3NlciBzdHlsaW5nXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLXJlc2V0XG5AbWl4aW4gcmVzZXQge1xuICBAaWYgdmFyaWFibGUtZXhpc3RzKGNzcy0tcmVzZXQpID09IGZhbHNlIG9yICRjc3MtLXJlc2V0ID09IGZhbHNlIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2Nzcy0tcmVzZXQnKSB7XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMoY3NzLS1yZXNldCkgPT0gZmFsc2Ugb3IgJGNzcy0tcmVzZXQgPT0gdHJ1ZSB7XG4gICAgLy8gaHR0cDovL2Nzc3Jlc2V0LmNvbS9zY3JpcHRzL2VyaWMtbWV5ZXItcmVzZXQtY3NzL1xuICAgIGh0bWwsXG4gICAgYm9keSxcbiAgICBkaXYsXG4gICAgc3BhbixcbiAgICBhcHBsZXQsXG4gICAgb2JqZWN0LFxuICAgIGlmcmFtZSxcbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNixcbiAgICBwLFxuICAgIGJsb2NrcXVvdGUsXG4gICAgcHJlLFxuICAgIGEsXG4gICAgYWJicixcbiAgICBhY3JvbnltLFxuICAgIGFkZHJlc3MsXG4gICAgYmlnLFxuICAgIGNpdGUsXG4gICAgY29kZSxcbiAgICBkZWwsXG4gICAgZGZuLFxuICAgIGVtLFxuICAgIGltZyxcbiAgICBpbnMsXG4gICAga2JkLFxuICAgIHEsXG4gICAgcyxcbiAgICBzYW1wLFxuICAgIHNtYWxsLFxuICAgIHN0cmlrZSxcbiAgICBzdHJvbmcsXG4gICAgc3ViLFxuICAgIHN1cCxcbiAgICB0dCxcbiAgICB2YXIsXG4gICAgYixcbiAgICB1LFxuICAgIGksXG4gICAgY2VudGVyLFxuICAgIGRsLFxuICAgIGR0LFxuICAgIGRkLFxuICAgIG9sLFxuICAgIHVsLFxuICAgIGxpLFxuICAgIGZpZWxkc2V0LFxuICAgIGZvcm0sXG4gICAgbGFiZWwsXG4gICAgbGVnZW5kLFxuICAgIHRhYmxlLFxuICAgIGNhcHRpb24sXG4gICAgdGJvZHksXG4gICAgdGZvb3QsXG4gICAgdGhlYWQsXG4gICAgdHIsXG4gICAgdGgsXG4gICAgdGQsXG4gICAgYXJ0aWNsZSxcbiAgICBhc2lkZSxcbiAgICBjYW52YXMsXG4gICAgZGV0YWlscyxcbiAgICBlbWJlZCxcbiAgICBmaWd1cmUsXG4gICAgZmlnY2FwdGlvbixcbiAgICBmb290ZXIsXG4gICAgaGVhZGVyLFxuICAgIGhncm91cCxcbiAgICBtZW51LFxuICAgIG5hdixcbiAgICBvdXRwdXQsXG4gICAgcnVieSxcbiAgICBzZWN0aW9uLFxuICAgIHN1bW1hcnksXG4gICAgdGltZSxcbiAgICBtYXJrLFxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBmb250LXNpemU6IDEwMCU7XG4gICAgICBmb250OiBpbmhlcml0O1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIH1cblxuICAgIC8vIENocm9tZSA2MiBmaXhcbiAgICBidXR0b24sXG4gICAgc2VsZWN0LFxuICAgIGlucHV0W3R5cGU9J2J1dHRvbiddLFxuICAgIGlucHV0W3R5cGU9J3N1Ym1pdCddLFxuICAgIGlucHV0W3R5cGU9J3Jlc2V0J10sXG4gICAgaW5wdXRbdHlwZT0nZmlsZSddLFxuICAgIGlucHV0W3R5cGU9J3RleHQnXSxcbiAgICBpbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPSd0ZXh0J106Oi1tcy1jbGVhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGRldGFpbHMsXG4gICAgZmlnY2FwdGlvbixcbiAgICBmaWd1cmUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBoZ3JvdXAsXG4gICAgbWFpbixcbiAgICBtZW51LFxuICAgIG5hdixcbiAgICBzZWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIGJvZHkge1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgc3VwIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgdmVydGljYWwtYWxpZ246IHN1YjtcbiAgICB9XG5cbiAgICBvbCxcbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIGJsb2NrcXVvdGUsXG4gICAgcSB7XG4gICAgICBxdW90ZXM6IG5vbmU7XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZTpiZWZvcmUsXG4gICAgYmxvY2txdW90ZTphZnRlcixcbiAgICBxOmJlZm9yZSxcbiAgICBxOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG5cbiAgICB0YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgfVxuXG4gICAgKiB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tdHlwZS1yZXNldDtcbiAgICBAaW5jbHVkZSBjYXJib24tLWljb25zO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2Nzcy0tZGVmYXVsdC10eXBlJykge1xuICBAaWYgdmFyaWFibGUtZXhpc3RzKGNzcy0tZGVmYXVsdC10eXBlKSA9PSBmYWxzZSBvciAkY3NzLS1kZWZhdWx0LXR5cGUgPT0gdHJ1ZVxuICB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1kZWZhdWx0LXR5cGU7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTgsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi9sYXlvdXQvYnJlYWtwb2ludCc7XG5AaW1wb3J0ICdzY2FsZSc7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRjYXB0aW9uLTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMTZweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLjMycHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kbGFiZWwtMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMSksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgxNnB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMzJweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRoZWxwZXItdGV4dC0wMTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxKSxcbiAgZm9udC1zdHlsZTogaXRhbGljLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMTZweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLjMycHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kYm9keS1zaG9ydC0wMTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgyKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IGNhcmJvbi0tcmVtKDE4cHgpLFxuICBsZXR0ZXItc3BhY2luZzogMC4xNnB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGJvZHktbG9uZy0wMTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgyKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IGNhcmJvbi0tcmVtKDIwcHgpLFxuICBsZXR0ZXItc3BhY2luZzogMC4xNnB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGJvZHktc2hvcnQtMDI6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMyksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgyMnB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kYm9keS1sb25nLTAyOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDMpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMjRweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGNvZGUtMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMSksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgxNnB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMzJweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRjb2RlLTAyOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMjBweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLjMycHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kaGVhZGluZy0wMTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgyKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgxOHB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRwcm9kdWN0aXZlLWhlYWRpbmctMDE6ICRoZWFkaW5nLTAxICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kaGVhZGluZy0wMjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgzKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgyMnB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kcHJvZHVjdGl2ZS1oZWFkaW5nLTAyOiAkaGVhZGluZy0wMiAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wMzogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg1KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IGNhcmJvbi0tcmVtKDI2cHgpLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRwcm9kdWN0aXZlLWhlYWRpbmctMDQ6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNyksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgzNnB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kcHJvZHVjdGl2ZS1oZWFkaW5nLTA1OiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDgpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oNDBweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wNjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ2xpZ2h0JyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSg1MHB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kcHJvZHVjdGl2ZS1oZWFkaW5nLTA3OiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ2xpZ2h0JyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSg2NHB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZXhwcmVzc2l2ZS1oZWFkaW5nLTAxOiAkaGVhZGluZy0wMSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGV4cHJlc3NpdmUtaGVhZGluZy0wMjogJGhlYWRpbmctMDIgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRleHByZXNzaXZlLWhlYWRpbmctMDM6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNSksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiAxMzAlLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDUpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEyNSUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDYpLFxuICAgICksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZXhwcmVzc2l2ZS1oZWFkaW5nLTA0OiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDcpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMTI5JSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgeGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg3KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMjUlLFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGV4cHJlc3NpdmUtaGVhZGluZy0wNTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IDEyNSUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIG1kOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg5KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMjIlLFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTklLFxuICAgICksXG4gICAgeGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMSksXG4gICAgICBsaW5lLWhlaWdodDogMTE3JSxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTMpLFxuICAgICksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZXhwcmVzc2l2ZS1oZWFkaW5nLTA2OiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDgpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgnc2VtaWJvbGQnKSxcbiAgbGluZS1oZWlnaHQ6IDEyNSUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIG1kOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg5KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMjIlLFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTklLFxuICAgICksXG4gICAgeGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMSksXG4gICAgICBsaW5lLWhlaWdodDogMTE3JSxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTMpLFxuICAgICksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZXhwcmVzc2l2ZS1wYXJhZ3JhcGgtMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNiksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpLFxuICBsaW5lLWhlaWdodDogMTI1JSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDcpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEyOSUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDgpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEyNSUsXG4gICAgKSxcbiAgKSxcbik7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRxdW90YXRpb24tMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNSksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiAxMzAlLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNSksXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNiksXG4gICAgICBsaW5lLWhlaWdodDogMTI1JSxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNyksXG4gICAgICBsaW5lLWhlaWdodDogMTI5JSxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOCksXG4gICAgICBsaW5lLWhlaWdodDogMTI1JSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHF1b3RhdGlvbi0wMjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ2xpZ2h0JyksXG4gIGxpbmUtaGVpZ2h0OiAxMjUlLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOSksXG4gICAgICBsaW5lLWhlaWdodDogMTIyJSxcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gICAgICBsaW5lLWhlaWdodDogMTE5JSxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTEpLFxuICAgICAgbGluZS1oZWlnaHQ6IDExNyUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEzKSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGRpc3BsYXktMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgnbGlnaHQnKSxcbiAgbGluZS1oZWlnaHQ6IDExOSUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIG1kOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTIpLFxuICAgICksXG4gICAgeGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMyksXG4gICAgICBsaW5lLWhlaWdodDogMTE3JSxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTUpLFxuICAgICAgbGluZS1oZWlnaHQ6IDExMyUsXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRkaXNwbGF5LTAyOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyksXG4gIGxpbmUtaGVpZ2h0OiAxMTklLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEyKSxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTMpLFxuICAgICAgbGluZS1oZWlnaHQ6IDExNiUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE1KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTMlLFxuICAgICksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZGlzcGxheS0wMzogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpLFxuICBsaW5lLWhlaWdodDogMTE5JSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbWQ6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE0KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTUlLFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE3KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTElLFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjY0cHgsXG4gICAgKSxcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIwKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDclLFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjY0cHgsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIzKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDUlLFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjk2cHgsXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRkaXNwbGF5LTA0OiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyksXG4gIGxpbmUtaGVpZ2h0OiAxMTklLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTQpLFxuICAgICAgbGluZS1oZWlnaHQ6IDExNSUsXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTcpLFxuICAgICAgbGluZS1oZWlnaHQ6IDExMSUsXG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuNjRweCxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMjApLFxuICAgICAgbGluZS1oZWlnaHQ6IDEwNyUsXG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuNjRweCxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMjMpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEwNSUsXG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuOTZweCxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHRva2VuczogKFxuICBjYXB0aW9uLTAxOiAkY2FwdGlvbi0wMSxcbiAgbGFiZWwtMDE6ICRsYWJlbC0wMSxcbiAgaGVscGVyLXRleHQtMDE6ICRoZWxwZXItdGV4dC0wMSxcbiAgYm9keS1zaG9ydC0wMTogJGJvZHktc2hvcnQtMDEsXG4gIGJvZHktc2hvcnQtMDI6ICRib2R5LXNob3J0LTAyLFxuICBib2R5LWxvbmctMDE6ICRib2R5LWxvbmctMDEsXG4gIGJvZHktbG9uZy0wMjogJGJvZHktbG9uZy0wMixcbiAgY29kZS0wMTogJGNvZGUtMDEsXG4gIGNvZGUtMDI6ICRjb2RlLTAyLFxuICBoZWFkaW5nLTAxOiAkaGVhZGluZy0wMSxcbiAgaGVhZGluZy0wMjogJGhlYWRpbmctMDIsXG4gIHByb2R1Y3RpdmUtaGVhZGluZy0wMTogJHByb2R1Y3RpdmUtaGVhZGluZy0wMSxcbiAgcHJvZHVjdGl2ZS1oZWFkaW5nLTAyOiAkcHJvZHVjdGl2ZS1oZWFkaW5nLTAyLFxuICBwcm9kdWN0aXZlLWhlYWRpbmctMDM6ICRwcm9kdWN0aXZlLWhlYWRpbmctMDMsXG4gIHByb2R1Y3RpdmUtaGVhZGluZy0wNDogJHByb2R1Y3RpdmUtaGVhZGluZy0wNCxcbiAgcHJvZHVjdGl2ZS1oZWFkaW5nLTA1OiAkcHJvZHVjdGl2ZS1oZWFkaW5nLTA1LFxuICBwcm9kdWN0aXZlLWhlYWRpbmctMDY6ICRwcm9kdWN0aXZlLWhlYWRpbmctMDYsXG4gIHByb2R1Y3RpdmUtaGVhZGluZy0wNzogJHByb2R1Y3RpdmUtaGVhZGluZy0wNyxcbiAgZXhwcmVzc2l2ZS1wYXJhZ3JhcGgtMDE6ICRleHByZXNzaXZlLXBhcmFncmFwaC0wMSxcbiAgZXhwcmVzc2l2ZS1oZWFkaW5nLTAxOiAkZXhwcmVzc2l2ZS1oZWFkaW5nLTAxLFxuICBleHByZXNzaXZlLWhlYWRpbmctMDI6ICRleHByZXNzaXZlLWhlYWRpbmctMDIsXG4gIGV4cHJlc3NpdmUtaGVhZGluZy0wMzogJGV4cHJlc3NpdmUtaGVhZGluZy0wMyxcbiAgZXhwcmVzc2l2ZS1oZWFkaW5nLTA0OiAkZXhwcmVzc2l2ZS1oZWFkaW5nLTA0LFxuICBleHByZXNzaXZlLWhlYWRpbmctMDU6ICRleHByZXNzaXZlLWhlYWRpbmctMDUsXG4gIGV4cHJlc3NpdmUtaGVhZGluZy0wNjogJGV4cHJlc3NpdmUtaGVhZGluZy0wNixcbiAgcXVvdGF0aW9uLTAxOiAkcXVvdGF0aW9uLTAxLFxuICBxdW90YXRpb24tMDI6ICRxdW90YXRpb24tMDIsXG4gIGRpc3BsYXktMDE6ICRkaXNwbGF5LTAxLFxuICBkaXNwbGF5LTAyOiAkZGlzcGxheS0wMixcbiAgZGlzcGxheS0wMzogJGRpc3BsYXktMDMsXG4gIGRpc3BsYXktMDQ6ICRkaXNwbGF5LTA0LFxuKTtcblxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AbWl4aW4gcHJvcGVydGllcygkbWFwKSB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgI3skbmFtZX06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIE51bWJlciB3aXRoIHVuaXRzXG4vLy8gQHJldHVybiB7TnVtYmVyfSBXaXRob3V0IHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkdmFsdWUpIHtcbiAgQHJldHVybiAkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpO1xufVxuXG4vLy8gVGhpcyBoZWxwZXIgaW5jbHVkZXMgZmx1aWQgdHlwZSBzdHlsZXMgZm9yIHRoZSBnaXZlbiB0b2tlbiB2YWx1ZS4gRmx1aWQgdHlwZVxuLy8vIG1lYW5zIHRoYXQgdGhlIGBmb250LXNpemVgIGlzIGNvbXB1dGVkIHVzaW5nIGBjYWxjKClgIGluIG9yZGVyIHRvIGJlXG4vLy8gZGV0ZXJtaW5lZCBieSB0aGUgc2NyZWVuIHNpemUgaW5zdGVhZCBvZiBhIGJyZWFrcG9pbnQuIEFzIGEgcmVzdWx0LCBmbHVpZFxuLy8vIHN0eWxlcyBzaG91bGQgYmUgdXNlZCB3aXRoIGNhdXRpb24gaW4gZml4ZWQgd2lkdGggY29udGV4dHMuXG4vLy9cbi8vLyBJbiBhZGRpdGlvbiwgd2UgbWFrZSB1c2Ugb2YgJS1iYXNlZCBsaW5lLWhlaWdodHMgc28gdGhhdCB0aGUgbGluZS1oZWlnaHQgb2Zcbi8vLyBlYWNoIHR5cGUgc3R5bGUgaXMgY29tcHV0ZWQgY29ycmVjdGx5IGR1ZSB0byB0aGUgZHluYW1pYyBuYXR1cmUgb2YgdGhlXG4vLy8gYGZvbnQtc2l6ZWAuXG4vLy9cbi8vLyBNb3N0IG9mIHRoZSBsb2dpYyBmb3IgdGhpcyB3b3JrIGNvbWVzIGZyb20gQ1NTIFRyaWNrczpcbi8vLyBodHRwczovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9mbHVpZC10eXBvZ3JhcGh5L1xuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICR0eXBlLXN0eWxlcyAtIFRoZSB2YWx1ZSBvZiBhIGdpdmVuIHR5cGUgdG9rZW5cbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEN1c3RvbSBicmVha3BvaW50cyB0byB1c2Vcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbkBtaXhpbiBmbHVpZC10eXBlKCR0eXBlLXN0eWxlcywgJGJyZWFrcG9pbnRzOiAkY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIEluY2x1ZGUgdGhlIGluaXRpYWwgc3R5bGVzIGZvciB0aGUgZ2l2ZW4gdG9rZW4gYnkgZGVmYXVsdCB3aXRob3V0IGFueVxuICAvLyBtZWRpYSBxdWVyeSBndWFyZC4gVGhpcyBpbmNsdWRlcyBgZm9udC1zaXplYCBhcyBhIGZhbGxiYWNrIGluIHRoZSBjYXNlXG4gIC8vIHRoYXQgYSBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgYGNhbGMoKWBcbiAgQGluY2x1ZGUgcHJvcGVydGllcyhtYXAtcmVtb3ZlKCR0eXBlLXN0eWxlcywgYnJlYWtwb2ludHMpKTtcbiAgLy8gV2UgYWxzbyBuZWVkIHRvIGluY2x1ZGUgdGhlIGBzbWAgc3R5bGVzIGJ5IGRlZmF1bHQgc2luY2UgdGhleSBkb24ndFxuICAvLyBhcHBlYXIgaW4gdGhlIGZsdWlkIHN0eWxlcyBmb3IgdG9rZW5zXG4gIEBpbmNsdWRlIGZsdWlkLXR5cGUtc2l6ZSgkdHlwZS1zdHlsZXMsIHNtLCAkYnJlYWtwb2ludHMpO1xuXG4gIC8vIEZpbmFsbHksIHdlIG5lZWQgdG8gZ28gdGhyb3VnaCBhbGwgdGhlIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gdGhlIHR5cGVcbiAgLy8gdG9rZW4gYW5kIGFwcGx5IHRoZSBwcm9wZXJ0aWVzIGFuZCBmbHVpZCB0eXBlIHNpemUgZm9yIHRoYXQgZ2l2ZW5cbiAgLy8gYnJlYWtwb2ludFxuICBAZWFjaCAkbmFtZSwgJHZhbHVlcyBpbiBtYXAtZ2V0KCR0eXBlLXN0eWxlcywgYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgIEBpbmNsdWRlIHByb3BlcnRpZXMoJHZhbHVlcyk7XG4gICAgICBAaW5jbHVkZSBmbHVpZC10eXBlLXNpemUoJHR5cGUtc3R5bGVzLCAkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbXB1dGVzIHRoZSBmbHVpZCBgZm9udC1zaXplYCBmb3IgYSBnaXZlbiB0eXBlIHN0eWxlIGFuZCBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtNYXB9ICR0eXBlLXN0eWxlcyAtIFRoZSBzdHlsZXMgZm9yIGEgZ2l2ZW4gdG9rZW5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCB0byB3aGljaCB3ZSBhcHBseSB0aGUgZmx1aWRcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIFRoZSBicmVha3BvaW50cyBmb3IgdGhlIGdyaWQgc3lzdGVtXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AbWl4aW4gZmx1aWQtdHlwZS1zaXplKFxuICAkdHlwZS1zdHlsZXMsXG4gICRuYW1lLFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNcbikge1xuICAvLyBHZXQgdGhlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBicmVha3BvaW50IHdlJ3JlIGN1cnJlbnRseSB3b3JraW5nIGluLiBVc2VmdWxcbiAgLy8gZm9yIGdldHRpbmcgaW5pdGlhbCB3aWR0aCBpbmZvcm1hdGlvblxuICAkYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcblxuICAvLyBPdXIgZmx1aWQgc3R5bGVzIGFyZSBjYXB0dXJlZCB1bmRlciB0aGUgJ2JyZWFrcG9pbnRzJyBwcm9wZXJ0eSBpbiBvdXIgdHlwZVxuICAvLyBzdHlsZXMgbWFwLiBUaGVzZSBkZWZpbmUgd2hhdCB2YWx1ZXMgdG8gdHJlYXQgYXMgYG1heC1gIHZhcmlhYmxlcyBiZWxvd1xuICAkZmx1aWQtc2l6ZXM6IG1hcC1nZXQoJHR5cGUtc3R5bGVzLCBicmVha3BvaW50cyk7XG4gICRmbHVpZC1icmVha3BvaW50OiAoKTtcbiAgLy8gU3BlY2lhbCBjYXNlIGZvciBgc21gIGJlY2F1c2UgdGhlIHN0eWxlcyBmb3Igc21hbGwgYXJlIG9uIHRoZSB0eXBlIHN0eWxlXG4gIC8vIGRpcmVjdGx5XG4gIEBpZiAkbmFtZSA9PSBzbSB7XG4gICAgJGZsdWlkLWJyZWFrcG9pbnQ6IG1hcC1yZW1vdmUoJHR5cGUtc3R5bGVzLCBicmVha3BvaW50cyk7XG4gIH0gQGVsc2Uge1xuICAgICRmbHVpZC1icmVha3BvaW50OiBtYXAtZ2V0KCRmbHVpZC1zaXplcywgJG5hbWUpO1xuICB9XG5cbiAgLy8gSW5pdGlhbGl6ZSBvdXIgZm9udC1zaXplcyB0byB0aGUgZGVmYXVsdCBzaXplIGZvciB0aGUgdHlwZSBzdHlsZVxuICAkbWF4LWZvbnQtc2l6ZTogbWFwLWdldCgkdHlwZS1zdHlsZXMsIGZvbnQtc2l6ZSk7XG4gICRtaW4tZm9udC1zaXplOiBtYXAtZ2V0KCR0eXBlLXN0eWxlcywgZm9udC1zaXplKTtcbiAgQGlmIG1hcC1oYXMta2V5KCRmbHVpZC1icmVha3BvaW50LCBmb250LXNpemUpIHtcbiAgICAkbWluLWZvbnQtc2l6ZTogbWFwLWdldCgkZmx1aWQtYnJlYWtwb2ludCwgZm9udC1zaXplKTtcbiAgfVxuXG4gIC8vIEluaXRpYWxpemUgb3VyIG1pbiBhbmQgbWF4IHdpZHRoIHRvIHRoZSB3aWR0aCBvZiB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICRtYXgtdnc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsIHdpZHRoKTtcbiAgJG1pbi12dzogbWFwLWdldCgkYnJlYWtwb2ludCwgd2lkdGgpO1xuXG4gIC8vIFdlIGNhbiB1c2UgYGJyZWFrcG9pbnQtbmV4dGAgdG8gc2VlIGlmIHRoZXJlIGlzIGFub3RoZXIgYnJlYWtwb2ludCB3ZSBjYW5cbiAgLy8gdXNlIHRvIHVwZGF0ZSBgbWF4LWZvbnQtc2l6ZWAgYW5kIGBtYXgtdndgIHdpdGggbGFyZ2VyIHZhbHVlc1xuICAkbmV4dC1icmVha3BvaW50LWF2YWlsYWJsZTogY2FyYm9uLS1icmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZTogbnVsbDtcblxuICAvLyBXZSBuZWVkIHRvIGZpZ3VyZSBvdXQgd2hhdCB0aGUgbmV4dCBhdmFpbGFibGUgZmx1aWQgYnJlYWtwb2ludCBpcyBmb3Igb3VyXG4gIC8vIGdpdmVuICR0eXBlLXN0eWxlcy4gSW4gdGhpcyBsb29wIHdlIHRyeSBhbmQgaXRlcmF0ZSB0aHJvdWdoIGJyZWFrcG9pbnRzXG4gIC8vIHVudGlsIHdlIGVpdGhlciBtYW51YWxseSBzZXQgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGUgdG8gbnVsbCBvclxuICAvLyBgYnJlYWtwb2ludC1uZXh0YCByZXR1cm5zIG51bGwuXG4gIEB3aGlsZSAkbmV4dC1icmVha3BvaW50LWF2YWlsYWJsZSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRmbHVpZC1zaXplcywgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGUpIHtcbiAgICAgICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZTogJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGU7XG4gICAgICAkbmV4dC1icmVha3BvaW50LWF2YWlsYWJsZTogbnVsbDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRuZXh0LWJyZWFrcG9pbnQtYXZhaWxhYmxlOiBjYXJib24tLWJyZWFrcG9pbnQtbmV4dChcbiAgICAgICAgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGUsXG4gICAgICAgICRicmVha3BvaW50c1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvLyBJZiB3ZSBoYXZlIGZvdW5kIHRoZSBuZXh0IGF2YWlsYWJsZSBmbHVpZCBicmVha3BvaW50IG5hbWUsIHRoZW4gd2Uga25vd1xuICAvLyB0aGF0IHdlIGhhdmUgdmFsdWVzIHRoYXQgd2UgY2FuIHVzZSB0byBzZXQgbWF4LWZvbnQtc2l6ZSBhbmQgbWF4LXZ3IGFzIGJvdGhcbiAgLy8gdmFsdWVzIGRlcml2ZSBmcm9tIHRoZSBuZXh0IGJyZWFrcG9pbnRcbiAgQGlmICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZSB7XG4gICAgJG5leHQtZmx1aWQtYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZSk7XG4gICAgJG1heC1mb250LXNpemU6IG1hcC1nZXQoXG4gICAgICBtYXAtZ2V0KCRmbHVpZC1zaXplcywgJG5leHQtZmx1aWQtYnJlYWtwb2ludC1uYW1lKSxcbiAgICAgIGZvbnQtc2l6ZVxuICAgICk7XG4gICAgJG1heC12dzogbWFwLWdldCgkbmV4dC1mbHVpZC1icmVha3BvaW50LCB3aWR0aCk7XG5cbiAgICAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBmb250LXNpemU6IGNhbGMoI3skbWluLWZvbnQtc2l6ZX0gK1xuICAgICAgI3tzdHJpcC11bml0KCRtYXgtZm9udC1zaXplIC0gJG1pbi1mb250LXNpemUpfSAqXG4gICAgICAoKDEwMHZ3IC0gI3skbWluLXZ3fSkgLyAje3N0cmlwLXVuaXQoJG1heC12dyAtICRtaW4tdncpfSlcbiAgICApO1xuICB9IEBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2UsIGp1c3QgZGVmYXVsdCB0byBzZXR0aW5nIHRoZSBmb250IHNpemUgZm91bmQgZnJvbSB0aGUgdHlwZVxuICAgIC8vIHN0eWxlIG9yIHRoZSBnaXZlbiBmbHVpZCBicmVha3BvaW50IGluIHRoZSB0eXBlIHN0eWxlXG4gICAgZm9udC1zaXplOiAkbWluLWZvbnQtc2l6ZTtcbiAgfVxufVxuXG4vLy8gSGVscGVyIG1peGluIHRvIGluY2x1ZGUgdGhlIHN0eWxlcyBmb3IgYSBnaXZlbiB0b2tlbiBpbiBhbnkgc2VsZWN0b3IgaW4geW91clxuLy8vIHByb2plY3QuIEFsc28gaW5jbHVkZXMgYW4gb3B0aW9uYWwgZmx1aWQgb3B0aW9uIHRoYXQgd2lsbCBlbmFibGUgZmx1aWRcbi8vLyBzdHlsZXMgZm9yIHRoZSB0b2tlbiBpZiB0aGV5IGFyZSBkZWZpbmVkLiBGbHVpZCBzdHlsZXMgd2lsbCBjYXVzZSB0aGVcbi8vLyB0b2tlbidzIGZvbnQtc2l6ZSB0byBiZSBjb21wdXRlZCBiYXNlZCBvbiB0aGUgdmlld3BvcnQgc2l6ZS4gQXMgYSByZXN1bHQsIHVzZVxuLy8vIHdpdGggY2F1dGlvbiBpbiBmaXhlZCBjb250ZXh0cy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgdG9rZW4gdG8gZ2V0IHRoZSBzdHlsZXMgZm9yXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmx1aWQgW2ZhbHNlXSAtIFNwZWNpZnkgd2hldGhlciB0byBpbmNsdWRlIGZsdWlkIHN0eWxlcyBmb3IgdGhlXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBQcm92aWRlIGEgY3VzdG9tIGJyZWFrcG9pbnQgbWFwIHRvIHVzZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQG1peGluIGNhcmJvbi0tdHlwZS1zdHlsZShcbiAgJG5hbWUsXG4gICRmbHVpZDogZmFsc2UsXG4gICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c1xuKSB7XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJHRva2VucywgJG5hbWUpIHtcbiAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGEgdG9rZW4gd2l0aCB0aGUgbmFtZTogYCN7JG5hbWV9YCc7XG4gIH1cblxuICAkdG9rZW46IG1hcC1nZXQoJHRva2VucywgJG5hbWUpO1xuXG4gIC8vIElmICRmbHVpZCBpcyBzZXQgdG8gdHJ1ZSBhbmQgdGhlIHRva2VuIGhhcyBicmVha3BvaW50cyBkZWZpbmVkIGZvciBmbHVpZFxuICAvLyBzdHlsZXMsIGRlbGVnYXRlIHRvIHRoZSBmbHVpZC10eXBlIGhlbHBlciBmb3IgdGhlIGdpdmVuIHRva2VuXG4gIEBpZiAkZmx1aWQgPT0gdHJ1ZSBhbmQgbWFwLWhhcy1rZXkoJHRva2VuLCAnYnJlYWtwb2ludHMnKSB7XG4gICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgkdG9rZW4sICRicmVha3BvaW50cyk7XG4gIH0gQGVsc2Uge1xuICAgIC8vIE90aGVyd2lzZSwgd2UganVzdCBpbmNsdWRlIGFsbCB0aGUgcHJvcGVydHkgZGVjbGFyYXRpb25zIGRpcmVjdGx5IG9uIHRoZVxuICAgIC8vIHNlbGVjdG9yXG4gICAgQGluY2x1ZGUgcHJvcGVydGllcyhtYXAtcmVtb3ZlKCR0b2tlbiwgJ2JyZWFrcG9pbnRzJykpO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE4LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbiRjYXJib24tLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gQ29udmVydCBhIGdpdmVuIHB4IHVuaXQgdG8gYSByZW0gdW5pdFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSBOdW1iZXIgd2l0aCBweCB1bml0XG4vLy8gQHJldHVybiB7TnVtYmVyfSBOdW1iZXIgd2l0aCByZW0gdW5pdFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG5AZnVuY3Rpb24gY2FyYm9uLS1yZW0oJHB4KSB7XG4gIEByZXR1cm4gKCRweCAvICRjYXJib24tLWJhc2UtZm9udC1zaXplKSAqIDFyZW07XG59XG5cbi8vLyBDb252ZXJ0IGEgZ2l2ZW4gcHggdW5pdCB0byBhIGVtIHVuaXRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gTnVtYmVyIHdpdGggcHggdW5pdFxuLy8vIEByZXR1cm4ge051bWJlcn0gTnVtYmVyIHdpdGggZW0gdW5pdFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG5AZnVuY3Rpb24gY2FyYm9uLS1lbSgkcHgpIHtcbiAgQHJldHVybiAoJHB4IC8gJGNhcmJvbi0tYmFzZS1mb250LXNpemUpICogMWVtO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLyBGb250IGZhbWlseSBmYWxsYmFja3MgZm9yOiBJQk0gUGxleCBNb25vLCBJQk0gUGxleCBTYW5zLCBJQk0gUGxleCBTYW5zXG4vLy8gQ29uZGVuc2VkLCBJQk0gUGxleCBTYW5zIEhlYnJldywgYW5kIElCTSBQbGV4IFNlcmlmXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kY2FyYm9uLS1mb250LWZhbWlsaWVzOiAoXG4gICdtb25vJzpcbiAgICB1bnF1b3RlKFxuICAgICAgXCInSUJNIFBsZXggTW9ubycsICdNZW5sbycsICdEZWphVnUgU2FucyBNb25vJywgJ0JpdHN0cmVhbSBWZXJhIFNhbnMgTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZVwiXG4gICAgKSxcbiAgJ3NhbnMnOiB1bnF1b3RlKFwiJ0lCTSBQbGV4IFNhbnMnLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgc2Fucy1zZXJpZlwiKSxcbiAgJ3NhbnMtY29uZGVuc2VkJzpcbiAgICB1bnF1b3RlKFwiJ0lCTSBQbGV4IFNhbnMgQ29uZGVuc2VkJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIHNhbnMtc2VyaWZcIiksXG4gICdzYW5zLWhlYnJldyc6XG4gICAgdW5xdW90ZShcbiAgICAgIFwiJ0lCTSBQbGV4IFNhbnMgSGVicmV3JywgJ0hlbHZldGljYSBIZWJyZXcnLCAnQXJpYWwgSGVicmV3Jywgc2Fucy1zZXJpZlwiXG4gICAgKSxcbiAgJ3NlcmlmJzogdW5xdW90ZShcIidJQk0gUGxleCBTZXJpZicsICdHZW9yZ2lhJywgVGltZXMsIHNlcmlmXCIpLFxuKTtcblxuLy8vIEdldCB0aGUgZm9udC1mYW1pbHkgZm9yIGFuIElCTSBQbGV4IGZvbnRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWVcbi8vLyBAcmV0dXJuIHtTdHJpbmd9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AZnVuY3Rpb24gY2FyYm9uLS1mb250LWZhbWlseSgkbmFtZSkge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNhcmJvbi0tZm9udC1mYW1pbGllcywgJG5hbWUpO1xufVxuXG4vLy8gSW5jbHVkZSB0aGUgYGZvbnQtZmFtaWx5YCBkZWZpbml0aW9uIGZvciB0aGUgZ2l2ZW4gbmFtZSBpbiB5b3VyIHNlbGVjdG9yXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AbWl4aW4gY2FyYm9uLS1mb250LWZhbWlseSgkbmFtZSkge1xuICBmb250LWZhbWlseTogY2FyYm9uLS1mb250LWZhbWlseSgkbmFtZSk7XG59XG5cbi8vLyBTdWdnZXN0ZWQgZm9udCB3ZWlnaHRzIHRvIGJlIHVzZWQgaW4gcHJvZHVjdFxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGNhcmJvbi0tZm9udC13ZWlnaHRzOiAoXG4gICdsaWdodCc6IDMwMCxcbiAgJ3JlZ3VsYXInOiA0MDAsXG4gICdzZW1pYm9sZCc6IDYwMCxcbik7XG5cbi8vLyBSZXRyaWV2ZSB0aGUgZm9udC13ZWlnaHQgdmFsdWUgZm9yIGEgZ2l2ZW4gbmFtZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkd2VpZ2h0XG4vLy8gQHJldHVybiB7TnVtYmVyfVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQGZ1bmN0aW9uIGNhcmJvbi0tZm9udC13ZWlnaHQoJHdlaWdodCkge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNhcmJvbi0tZm9udC13ZWlnaHRzLCAkd2VpZ2h0KTtcbn1cblxuLy8vIFNldCB0aGUgYGZvbnQtd2VpZ2h0YCBwcm9wZXJ0eSB3aXRoIHRoZSB2YWx1ZSBmb3IgYSBnaXZlbiBuYW1lXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR3ZWlnaHRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbkBtaXhpbiBjYXJib24tLWZvbnQtd2VpZ2h0KCR3ZWlnaHQpIHtcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJHdlaWdodCk7XG59XG4iLCIvLyBDb2RlIGdlbmVyYXRlZCBieSBAY2FyYm9uL3RoZW1lcy4gRE8gTk9UIEVESVQuXG4vL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE4LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cbi8vLyBDYXJib24ncyB3aGl0ZSBjb2xvciB0aGVtZVxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdGhlbWVzXG4kY2FyYm9uLS10aGVtZS0td2hpdGU6IChcbiAgaW50ZXJhY3RpdmUtMDE6ICMwMDYyZmYsXG4gIGludGVyYWN0aXZlLTAyOiAjM2QzZDNkLFxuICBpbnRlcmFjdGl2ZS0wMzogIzAwNjJmZixcbiAgaW50ZXJhY3RpdmUtMDQ6ICMwMDYyZmYsXG4gIHVpLWJhY2tncm91bmQ6ICNmZmZmZmYsXG4gIHVpLTAxOiAjZjNmM2YzLFxuICB1aS0wMjogI2ZmZmZmZixcbiAgdWktMDM6ICNkY2RjZGMsXG4gIHVpLTA0OiAjOGM4YzhjLFxuICB1aS0wNTogIzAwMDAwMCxcbiAgdGV4dC0wMTogIzAwMDAwMCxcbiAgdGV4dC0wMjogIzU2NTY1NixcbiAgdGV4dC0wMzogIzhjOGM4YyxcbiAgdGV4dC0wNDogI2ZmZmZmZixcbiAgaWNvbi0wMTogIzAwMDAwMCxcbiAgaWNvbi0wMjogIzU2NTY1NixcbiAgaWNvbi0wMzogI2ZmZmZmZixcbiAgbGluay0wMTogIzAwNjJmZixcbiAgaW52ZXJzZS1saW5rOiAjNmVhNmZmLFxuICBmaWVsZC0wMTogI2YzZjNmMyxcbiAgZmllbGQtMDI6ICNmZmZmZmYsXG4gIGludmVyc2UtMDE6ICNmZmZmZmYsXG4gIGludmVyc2UtMDI6ICMzZDNkM2QsXG4gIHN1cHBvcnQtMDE6ICNkYTFlMjgsXG4gIHN1cHBvcnQtMDI6ICMyNGExNDgsXG4gIHN1cHBvcnQtMDM6ICNmZGQxM2EsXG4gIHN1cHBvcnQtMDQ6ICMwNTRhZGEsXG4gIGludmVyc2Utc3VwcG9ydC0wMTogI2ZiNGI1MyxcbiAgaW52ZXJzZS1zdXBwb3J0LTAyOiAjM2RiYjYxLFxuICBpbnZlcnNlLXN1cHBvcnQtMDM6ICNmZGQxM2EsXG4gIGludmVyc2Utc3VwcG9ydC0wNDogIzQwOGJmYyxcbiAgb3ZlcmxheS0wMTogcmdiYSgyMywgMjMsIDIzLCAwLjUpLFxuICBmb2N1czogIzAwNjJmZixcbiAgaW52ZXJzZS1mb2N1cy11aTogI2ZmZmZmZixcbiAgaG92ZXItcHJpbWFyeTogIzAzNTNlOSxcbiAgYWN0aXZlLXByaW1hcnk6ICMwNTMwYWQsXG4gIGhvdmVyLXByaW1hcnktdGV4dDogIzA1NGFkYSxcbiAgaG92ZXItc2Vjb25kYXJ5OiAjNGM0YzRjLFxuICBhY3RpdmUtc2Vjb25kYXJ5OiAjNmY2ZjZmLFxuICBob3Zlci10ZXJ0aWFyeTogIzAzNTNlOSxcbiAgYWN0aXZlLXRlcnRpYXJ5OiAjMDUzMGFkLFxuICBob3Zlci11aTogI2U1ZTVlNSxcbiAgYWN0aXZlLXVpOiAjYmViZWJlLFxuICBzZWxlY3RlZC11aTogI2RjZGNkYyxcbiAgaW52ZXJzZS1ob3Zlci11aTogIzRjNGM0YyxcbiAgaG92ZXItc2VsZWN0ZWQtdWk6ICNjYWNhY2EsXG4gIGhvdmVyLWRhbmdlcjogI2JhMWIyMyxcbiAgYWN0aXZlLWRhbmdlcjogIzc1MGUxMyxcbiAgaG92ZXItcm93OiAjZTVlNWU1LFxuICB2aXNpdGVkLWxpbms6ICM4YTNmZmMsXG4gIGRpc2FibGVkLTAxOiAjZjNmM2YzLFxuICBkaXNhYmxlZC0wMjogI2JlYmViZSxcbiAgZGlzYWJsZWQtMDM6ICM4YzhjOGMsXG4gIGhpZ2hsaWdodDogI2M5ZGVmZixcbiAgc2tlbGV0b24tMDE6ICNlNWU1ZTUsXG4gIHNrZWxldG9uLTAyOiAjYmViZWJlLFxuICBicmFuZC0wMTogIzAwNjJmZixcbiAgYnJhbmQtMDI6ICMzZDNkM2QsXG4gIGJyYW5kLTAzOiAjMDA2MmZmLFxuICBhY3RpdmUtMDE6ICNiZWJlYmUsXG4gIGhvdmVyLWZpZWxkOiAjZTVlNWU1LFxuKSAhZGVmYXVsdDtcbi8vLyBDYXJib24ncyBnMTAgY29sb3IgdGhlbWVcbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3RoZW1lc1xuJGNhcmJvbi0tdGhlbWUtLWcxMDogKFxuICBpbnRlcmFjdGl2ZS0wMTogIzAwNjJmZixcbiAgaW50ZXJhY3RpdmUtMDI6ICMzZDNkM2QsXG4gIGludGVyYWN0aXZlLTAzOiAjMDA2MmZmLFxuICBpbnRlcmFjdGl2ZS0wNDogIzAwNjJmZixcbiAgdWktYmFja2dyb3VuZDogI2YzZjNmMyxcbiAgdWktMDE6ICNmZmZmZmYsXG4gIHVpLTAyOiAjZjNmM2YzLFxuICB1aS0wMzogI2RjZGNkYyxcbiAgdWktMDQ6ICM4YzhjOGMsXG4gIHVpLTA1OiAjMDAwMDAwLFxuICB0ZXh0LTAxOiAjMDAwMDAwLFxuICB0ZXh0LTAyOiAjNTY1NjU2LFxuICB0ZXh0LTAzOiAjOGM4YzhjLFxuICB0ZXh0LTA0OiAjZmZmZmZmLFxuICBpY29uLTAxOiAjMDAwMDAwLFxuICBpY29uLTAyOiAjNTY1NjU2LFxuICBpY29uLTAzOiAjZmZmZmZmLFxuICBsaW5rLTAxOiAjMDA2MmZmLFxuICBpbnZlcnNlLWxpbms6ICM2ZWE2ZmYsXG4gIGZpZWxkLTAxOiAjZmZmZmZmLFxuICBmaWVsZC0wMjogI2YzZjNmMyxcbiAgaW52ZXJzZS0wMTogI2ZmZmZmZixcbiAgaW52ZXJzZS0wMjogIzNkM2QzZCxcbiAgc3VwcG9ydC0wMTogI2RhMWUyOCxcbiAgc3VwcG9ydC0wMjogIzI0YTE0OCxcbiAgc3VwcG9ydC0wMzogI2ZkZDEzYSxcbiAgc3VwcG9ydC0wNDogIzA1NGFkYSxcbiAgaW52ZXJzZS1zdXBwb3J0LTAxOiAjZmI0YjUzLFxuICBpbnZlcnNlLXN1cHBvcnQtMDI6ICMzZGJiNjEsXG4gIGludmVyc2Utc3VwcG9ydC0wMzogI2ZkZDEzYSxcbiAgaW52ZXJzZS1zdXBwb3J0LTA0OiAjNDA4YmZjLFxuICBvdmVybGF5LTAxOiByZ2JhKDIzLCAyMywgMjMsIDAuNSksXG4gIGZvY3VzOiAjMDA2MmZmLFxuICBpbnZlcnNlLWZvY3VzLXVpOiAjZmZmZmZmLFxuICBob3Zlci1wcmltYXJ5OiAjMDM1M2U5LFxuICBhY3RpdmUtcHJpbWFyeTogIzA1MzBhZCxcbiAgaG92ZXItcHJpbWFyeS10ZXh0OiAjMDU0YWRhLFxuICBob3Zlci1zZWNvbmRhcnk6ICM0YzRjNGMsXG4gIGFjdGl2ZS1zZWNvbmRhcnk6ICM2ZjZmNmYsXG4gIGhvdmVyLXRlcnRpYXJ5OiAjMDM1M2U5LFxuICBhY3RpdmUtdGVydGlhcnk6ICMwNTMwYWQsXG4gIGhvdmVyLXVpOiAjZTVlNWU1LFxuICBhY3RpdmUtdWk6ICNiZWJlYmUsXG4gIHNlbGVjdGVkLXVpOiAjZGNkY2RjLFxuICBpbnZlcnNlLWhvdmVyLXVpOiAjNGM0YzRjLFxuICBob3Zlci1zZWxlY3RlZC11aTogI2NhY2FjYSxcbiAgaG92ZXItZGFuZ2VyOiAjYmExYjIzLFxuICBhY3RpdmUtZGFuZ2VyOiAjNzUwZTEzLFxuICBob3Zlci1yb3c6ICNlNWU1ZTUsXG4gIHZpc2l0ZWQtbGluazogIzhhM2ZmYyxcbiAgZGlzYWJsZWQtMDE6ICNmZmZmZmYsXG4gIGRpc2FibGVkLTAyOiAjYmViZWJlLFxuICBkaXNhYmxlZC0wMzogIzhjOGM4YyxcbiAgaGlnaGxpZ2h0OiAjYzlkZWZmLFxuICBza2VsZXRvbi0wMTogI2U1ZTVlNSxcbiAgc2tlbGV0b24tMDI6ICNiZWJlYmUsXG4gIGJyYW5kLTAxOiAjMDA2MmZmLFxuICBicmFuZC0wMjogIzNkM2QzZCxcbiAgYnJhbmQtMDM6ICMwMDYyZmYsXG4gIGFjdGl2ZS0wMTogI2JlYmViZSxcbiAgaG92ZXItZmllbGQ6ICNmM2YzZjMsXG4pICFkZWZhdWx0O1xuLy8vIENhcmJvbidzIGc5MCBjb2xvciB0aGVtZVxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdGhlbWVzXG4kY2FyYm9uLS10aGVtZS0tZzkwOiAoXG4gIGludGVyYWN0aXZlLTAxOiAjMDA2MmZmLFxuICBpbnRlcmFjdGl2ZS0wMjogIzZmNmY2ZixcbiAgaW50ZXJhY3RpdmUtMDM6ICNmZmZmZmYsXG4gIGludGVyYWN0aXZlLTA0OiAjNDA4YmZjLFxuICB1aS1iYWNrZ3JvdW5kOiAjMjgyODI4LFxuICB1aS0wMTogIzNkM2QzZCxcbiAgdWktMDI6ICM1NjU2NTYsXG4gIHVpLTAzOiAjNTY1NjU2LFxuICB1aS0wNDogIzhjOGM4YyxcbiAgdWktMDU6ICNmM2YzZjMsXG4gIHRleHQtMDE6ICNmM2YzZjMsXG4gIHRleHQtMDI6ICNiZWJlYmUsXG4gIHRleHQtMDM6ICM4YzhjOGMsXG4gIHRleHQtMDQ6ICNmZmZmZmYsXG4gIGljb24tMDE6ICNmM2YzZjMsXG4gIGljb24tMDI6ICNiZWJlYmUsXG4gIGljb24tMDM6ICNmZmZmZmYsXG4gIGxpbmstMDE6ICM2ZWE2ZmYsXG4gIGludmVyc2UtbGluazogIzAwNjJmZixcbiAgZmllbGQtMDE6ICMzZDNkM2QsXG4gIGZpZWxkLTAyOiAjNTY1NjU2LFxuICBpbnZlcnNlLTAxOiAjMDAwMDAwLFxuICBpbnZlcnNlLTAyOiAjZjNmM2YzLFxuICBzdXBwb3J0LTAxOiAjZmI0YjUzLFxuICBzdXBwb3J0LTAyOiAjM2RiYjYxLFxuICBzdXBwb3J0LTAzOiAjZmRkMTNhLFxuICBzdXBwb3J0LTA0OiAjNDA4YmZjLFxuICBpbnZlcnNlLXN1cHBvcnQtMDE6ICNkYTFlMjgsXG4gIGludmVyc2Utc3VwcG9ydC0wMjogIzI0YTE0OCxcbiAgaW52ZXJzZS1zdXBwb3J0LTAzOiAjZmRkMTNhLFxuICBpbnZlcnNlLXN1cHBvcnQtMDQ6ICMwMDYyZmYsXG4gIG92ZXJsYXktMDE6IHJnYmEoMjMsIDIzLCAyMywgMC43KSxcbiAgZm9jdXM6ICNmZmZmZmYsXG4gIGludmVyc2UtZm9jdXMtdWk6ICMwMDYyZmYsXG4gIGhvdmVyLXByaW1hcnk6ICMwMzUzZTksXG4gIGFjdGl2ZS1wcmltYXJ5OiAjMDUzMGFkLFxuICBob3Zlci1wcmltYXJ5LXRleHQ6ICM5N2MxZmYsXG4gIGhvdmVyLXNlY29uZGFyeTogIzYwNjA2MCxcbiAgYWN0aXZlLXNlY29uZGFyeTogIzNkM2QzZCxcbiAgaG92ZXItdGVydGlhcnk6ICNmM2YzZjMsXG4gIGFjdGl2ZS10ZXJ0aWFyeTogI2JlYmViZSxcbiAgaG92ZXItdWk6ICM0YzRjNGMsXG4gIGFjdGl2ZS11aTogIzZmNmY2ZixcbiAgc2VsZWN0ZWQtdWk6ICM1NjU2NTYsXG4gIGludmVyc2UtaG92ZXItdWk6ICNlNWU1ZTUsXG4gIGhvdmVyLXNlbGVjdGVkLXVpOiAjNjU2NTY1LFxuICBob3Zlci1kYW5nZXI6ICNiYTFiMjMsXG4gIGFjdGl2ZS1kYW5nZXI6ICM3NTBlMTMsXG4gIGhvdmVyLXJvdzogIzRjNGM0YyxcbiAgdmlzaXRlZC1saW5rOiAjYmI4ZWZmLFxuICBkaXNhYmxlZC0wMTogIzNkM2QzZCxcbiAgZGlzYWJsZWQtMDI6ICM1NjU2NTYsXG4gIGRpc2FibGVkLTAzOiAjOGM4YzhjLFxuICBoaWdobGlnaHQ6ICMwNTRhZGEsXG4gIHNrZWxldG9uLTAxOiAjMzUzNTM1LFxuICBza2VsZXRvbi0wMjogIzU2NTY1NixcbiAgYnJhbmQtMDE6ICMwMDYyZmYsXG4gIGJyYW5kLTAyOiAjNmY2ZjZmLFxuICBicmFuZC0wMzogI2ZmZmZmZixcbiAgYWN0aXZlLTAxOiAjNmY2ZjZmLFxuICBob3Zlci1maWVsZDogIzRjNGM0YyxcbikgIWRlZmF1bHQ7XG4vLy8gQ2FyYm9uJ3MgZzEwMCBjb2xvciB0aGVtZVxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdGhlbWVzXG4kY2FyYm9uLS10aGVtZS0tZzEwMDogKFxuICBpbnRlcmFjdGl2ZS0wMTogIzAwNjJmZixcbiAgaW50ZXJhY3RpdmUtMDI6ICM2ZjZmNmYsXG4gIGludGVyYWN0aXZlLTAzOiAjZmZmZmZmLFxuICBpbnRlcmFjdGl2ZS0wNDogIzQwOGJmYyxcbiAgdWktYmFja2dyb3VuZDogIzAwMDAwMCxcbiAgdWktMDE6ICMyODI4MjgsXG4gIHVpLTAyOiAjM2QzZDNkLFxuICB1aS0wMzogIzNkM2QzZCxcbiAgdWktMDQ6ICM2ZjZmNmYsXG4gIHVpLTA1OiAjZjNmM2YzLFxuICB0ZXh0LTAxOiAjZjNmM2YzLFxuICB0ZXh0LTAyOiAjYmViZWJlLFxuICB0ZXh0LTAzOiAjNmY2ZjZmLFxuICB0ZXh0LTA0OiAjZmZmZmZmLFxuICBpY29uLTAxOiAjZjNmM2YzLFxuICBpY29uLTAyOiAjYmViZWJlLFxuICBpY29uLTAzOiAjZmZmZmZmLFxuICBsaW5rLTAxOiAjNmVhNmZmLFxuICBpbnZlcnNlLWxpbms6ICMwMDYyZmYsXG4gIGZpZWxkLTAxOiAjMjgyODI4LFxuICBmaWVsZC0wMjogIzNkM2QzZCxcbiAgaW52ZXJzZS0wMTogIzAwMDAwMCxcbiAgaW52ZXJzZS0wMjogI2YzZjNmMyxcbiAgc3VwcG9ydC0wMTogI2ZiNGI1MyxcbiAgc3VwcG9ydC0wMjogIzNkYmI2MSxcbiAgc3VwcG9ydC0wMzogI2ZkZDEzYSxcbiAgc3VwcG9ydC0wNDogIzQwOGJmYyxcbiAgaW52ZXJzZS1zdXBwb3J0LTAxOiAjZGExZTI4LFxuICBpbnZlcnNlLXN1cHBvcnQtMDI6ICMyNGExNDgsXG4gIGludmVyc2Utc3VwcG9ydC0wMzogI2ZkZDEzYSxcbiAgaW52ZXJzZS1zdXBwb3J0LTA0OiAjMDA2MmZmLFxuICBvdmVybGF5LTAxOiByZ2JhKDIzLCAyMywgMjMsIDAuNyksXG4gIGZvY3VzOiAjZmZmZmZmLFxuICBpbnZlcnNlLWZvY3VzLXVpOiAjMDA2MmZmLFxuICBob3Zlci1wcmltYXJ5OiAjMDM1M2U5LFxuICBhY3RpdmUtcHJpbWFyeTogIzA1MzBhZCxcbiAgaG92ZXItcHJpbWFyeS10ZXh0OiAjOTdjMWZmLFxuICBob3Zlci1zZWNvbmRhcnk6ICM2MDYwNjAsXG4gIGFjdGl2ZS1zZWNvbmRhcnk6ICMzZDNkM2QsXG4gIGhvdmVyLXRlcnRpYXJ5OiAjZjNmM2YzLFxuICBhY3RpdmUtdGVydGlhcnk6ICNiZWJlYmUsXG4gIGhvdmVyLXVpOiAjMzUzNTM1LFxuICBhY3RpdmUtdWk6ICM1NjU2NTYsXG4gIHNlbGVjdGVkLXVpOiAjM2QzZDNkLFxuICBpbnZlcnNlLWhvdmVyLXVpOiAjZTVlNWU1LFxuICBob3Zlci1zZWxlY3RlZC11aTogIzRjNGM0YyxcbiAgaG92ZXItZGFuZ2VyOiAjYmExYjIzLFxuICBhY3RpdmUtZGFuZ2VyOiAjNzUwZTEzLFxuICBob3Zlci1yb3c6ICMzNTM1MzUsXG4gIHZpc2l0ZWQtbGluazogI2JiOGVmZixcbiAgZGlzYWJsZWQtMDE6ICMyODI4MjgsXG4gIGRpc2FibGVkLTAyOiAjM2QzZDNkLFxuICBkaXNhYmxlZC0wMzogIzZmNmY2ZixcbiAgaGlnaGxpZ2h0OiAjMDUzMGFkLFxuICBza2VsZXRvbi0wMTogIzM1MzUzNSxcbiAgc2tlbGV0b24tMDI6ICMzZDNkM2QsXG4gIGJyYW5kLTAxOiAjMDA2MmZmLFxuICBicmFuZC0wMjogIzZmNmY2ZixcbiAgYnJhbmQtMDM6ICNmZmZmZmYsXG4gIGFjdGl2ZS0wMTogIzU2NTY1NixcbiAgaG92ZXItZmllbGQ6ICMzNTM1MzUsXG4pICFkZWZhdWx0O1xuLy8vIENhcmJvbidzIHY5IGNvbG9yIHRoZW1lXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90aGVtZXNcbiRjYXJib24tLXRoZW1lLS12OTogKFxuICBpbnRlcmFjdGl2ZS0wMTogIzNkNzBiMixcbiAgaW50ZXJhY3RpdmUtMDI6ICM1YTY4NzIsXG4gIGludGVyYWN0aXZlLTAzOiAjNWE2ODcyLFxuICBpbnRlcmFjdGl2ZS0wNDogIzNkNzBiMixcbiAgdWktYmFja2dyb3VuZDogI2Y0ZjdmYixcbiAgdWktMDE6ICNmZmZmZmYsXG4gIHVpLTAyOiAjZjRmN2ZiLFxuICB1aS0wMzogI2RmZTNlNixcbiAgdWktMDQ6ICM4ODk3YTIsXG4gIHVpLTA1OiAjNWE2ODcyLFxuICB0ZXh0LTAxOiAjMTUyOTM1LFxuICB0ZXh0LTAyOiAjNWE2ODcyLFxuICB0ZXh0LTAzOiAjY2RkMWQ0LFxuICB0ZXh0LTA0OiAjZmZmZmZmLFxuICBpY29uLTAxOiAjM2Q3MGIyLFxuICBpY29uLTAyOiAjNWE2ODcyLFxuICBpY29uLTAzOiAjZmZmZmZmLFxuICBsaW5rLTAxOiAjM2Q3MGIyLFxuICBpbnZlcnNlLWxpbms6ICM1NTk2ZTYsXG4gIGZpZWxkLTAxOiAjZmZmZmZmLFxuICBmaWVsZC0wMjogI2Y0ZjdmYixcbiAgaW52ZXJzZS0wMTogI2ZmZmZmZixcbiAgaW52ZXJzZS0wMjogIzI3MmQzMyxcbiAgc3VwcG9ydC0wMTogI2UwMTgyZCxcbiAgc3VwcG9ydC0wMjogIzVhYTcwMCxcbiAgc3VwcG9ydC0wMzogI2VmYzEwMCxcbiAgc3VwcG9ydC0wNDogIzVhYWFmYSxcbiAgaW52ZXJzZS1zdXBwb3J0LTAxOiAjZmY1MDUwLFxuICBpbnZlcnNlLXN1cHBvcnQtMDI6ICM4Y2QyMTEsXG4gIGludmVyc2Utc3VwcG9ydC0wMzogI2ZkZDYwMCxcbiAgaW52ZXJzZS1zdXBwb3J0LTA0OiAjNWFhYWZhLFxuICBvdmVybGF5LTAxOiByZ2JhKDIyMywgMjI3LCAyMzAsIDAuNSksXG4gIGZvY3VzOiAjM2Q3MGIyLFxuICBpbnZlcnNlLWZvY3VzLXVpOiAjM2Q3MGIyLFxuICBob3Zlci1wcmltYXJ5OiAjMzA1ODhjLFxuICBhY3RpdmUtcHJpbWFyeTogIzMwNTg4YyxcbiAgaG92ZXItcHJpbWFyeS10ZXh0OiAjMjk0Yzg2LFxuICBob3Zlci1zZWNvbmRhcnk6ICM0ZDViNjUsXG4gIGFjdGl2ZS1zZWNvbmRhcnk6ICM0MTRmNTksXG4gIGhvdmVyLXRlcnRpYXJ5OiAjNWE2ODcyLFxuICBhY3RpdmUtdGVydGlhcnk6ICM0MTRmNTksXG4gIGhvdmVyLXVpOiAjZWVmNGZjLFxuICBhY3RpdmUtdWk6ICNkZmVhZmEsXG4gIHNlbGVjdGVkLXVpOiAjZWVmNGZjLFxuICBpbnZlcnNlLWhvdmVyLXVpOiAjNGM0YzRjLFxuICBob3Zlci1zZWxlY3RlZC11aTogI2RmZWFmYSxcbiAgaG92ZXItZGFuZ2VyOiAjYzcwMDE0LFxuICBhY3RpdmUtZGFuZ2VyOiAjYWQxNjI1LFxuICBob3Zlci1yb3c6ICNlZWY0ZmMsXG4gIHZpc2l0ZWQtbGluazogIzI5NGM4NixcbiAgZGlzYWJsZWQtMDE6ICNmYWZiZmQsXG4gIGRpc2FibGVkLTAyOiAjZGZlM2U2LFxuICBkaXNhYmxlZC0wMzogI2NkZDFkNCxcbiAgaGlnaGxpZ2h0OiAjZjRmN2ZiLFxuICBza2VsZXRvbi0wMTogcmdiYSg2MSwgMTEyLCAxNzgsIDAuMSksXG4gIHNrZWxldG9uLTAyOiByZ2JhKDYxLCAxMTIsIDE3OCwgMC4xKSxcbiAgYnJhbmQtMDE6ICMzZDcwYjIsXG4gIGJyYW5kLTAyOiAjNWE2ODcyLFxuICBicmFuZC0wMzogIzVhNjg3MixcbiAgYWN0aXZlLTAxOiAjZGZlYWZhLFxuICBob3Zlci1maWVsZDogI2VlZjRmYyxcbikgIWRlZmF1bHQ7XG4vLy8gQ2FyYm9uJ3MgZGVmYXVsdCB0aGVtZVxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGFsaWFzIGNhcmJvbi0tdGhlbWUtLXdoaXRlXG4vLy8gQGdyb3VwIEBjYXJib24vdGhlbWVzXG4kY2FyYm9uLS10aGVtZTogJGNhcmJvbi0tdGhlbWUtLXdoaXRlICFkZWZhdWx0O1xuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vIEhlbHBlcnMgZm9yIGRlZmluaW5nIGNvbHVtbnMsIHJvd3MsIGFuZCBjb250YWluZXJzIGFyZSBoZWF2aWx5IGluc3BpcmVkIGJ5LFxuLy8gYW5kIG9mdGVuIGRlcml2ZWQgZnJvbSwgYm9vdHN0cmFwOlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvdjQtZGV2L3Njc3MvbWl4aW5zL19ncmlkLnNjc3NcblxuQGltcG9ydCAnLi4vbGF5b3V0L2JyZWFrcG9pbnQnO1xuQGltcG9ydCAncHJlZml4JztcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENvbHVtbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBVc2VkIHRvIGluaXRpYWxpemUgdGhlIGRlZmF1bHQgcHJvcGVydGllcyBmb3IgYSBjb2x1bW4gY2xhc3MsIG1vc3Qgbm90YWJseVxuLy8vIGZvciBzZXR0aW5nIHdpZHRoIGFuZCBkZWZhdWx0IGd1dHRlcnMgd2hlbiBhIGNvbHVtbidzIGJyZWFrcG9pbnQgaGFzIG5vdCBiZWVuXG4vLy8gaGl0IHlldC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGNhcmJvbi0tZ3JpZC1ndXR0ZXJdIC0gVGhlIGd1dHRlciBmb3IgdGhlIGdyaWQgc3lzdGVtXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2xsYXBzZWQtZ3V0dGVyIFskY2FyYm9uLS1ncmlkLWd1dHRlci0tY29uZGVuc2VkXSAtIFRoZSBjb25kZW5zZWQgbW9kZSBndXR0ZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1tYWtlLWNvbC1yZWFkeShcbiAgJGd1dHRlcjogJGNhcmJvbi0tZ3JpZC1ndXR0ZXIsXG4gICRjb25kZW5zZWQtZ3V0dGVyOiAkY2FyYm9uLS1ncmlkLWd1dHRlci0tY29uZGVuc2VkXG4pIHtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcblxuICAvLyBGb3Igb3VyIGNvbmRlbnNlZCB1c2UtY2FzZSwgb3VyIGd1dHRlcnMgY29sbGFwc2UgdG8gMnB4IHNvbGlkLCAxcHggb24gZWFjaFxuICAvLyBzaWRlLlxuICAuI3skcHJlZml4fS0tcm93LS1jb25kZW5zZWQgJixcbiAgLiN7JHByZWZpeH0tLWdyaWQtLWNvbmRlbnNlZCAmIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGNvbmRlbnNlZC1ndXR0ZXIgLyAyKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkY29uZGVuc2VkLWd1dHRlciAvIDIpO1xuICB9XG59XG5cbi8vLyBEZWZpbmUgdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gZm9yIGEgZ2l2ZW4gc3BhbiBhbmQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhbiAtIFRoZSBudW1iZXIgb2YgY29sdW1ucyBjb3ZlcmVkXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gVGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGF2YWlsYWJsZVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBAY2FyYm9uL2dyaWRcbkBtaXhpbiBjYXJib24tLW1ha2UtY29sKCRzcGFuLCAkY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc3BhbiAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzcGFuIC8gJGNvbHVtbnMpO1xufVxuXG4vLy8gQ3JlYXRlIGEgY29sdW1uIG9mZnNldCBmb3IgYSBnaXZlbiBzcGFuIGFuZCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFuIC0gVGhlIG51bWJlciBvZiBjb2x1bW5zIHRoZSBvZmZzZXQgc2hvdWxkIGNvdmVyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gVGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGF2YWlsYWJsZVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBAY2FyYm9uL2dyaWRcbkBtaXhpbiBjYXJib24tLW1ha2UtY29sLW9mZnNldCgkc3BhbiwgJGNvbHVtbnMpIHtcbiAgJG9mZnNldDogJHNwYW4gLyAkY29sdW1ucztcbiAgQGlmICRvZmZzZXQgPT0gMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH0gQGVsc2Uge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCRvZmZzZXQpO1xuICB9XG59XG5cbi8vLyBPdXRwdXQgdGhlIENTUyByZXF1aXJlZCBmb3IgYWxsIHRoZSBjb2x1bW5zIGluIGEgZ2l2ZW4gZ3JpZCBzeXN0ZW0uXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBUaGUgYnJlYWtwb2ludHMgaW4gdGhlIGdyaWQgc3lzdGVtXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRjYXJib24tLWdyaWQtZ3V0dGVyXSAtIFRoZSBndXR0ZXIgZm9yIHRoZSBncmlkIHN5c3RlbVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBAY2FyYm9uL2dyaWRcbkBtaXhpbiBjYXJib24tLW1ha2UtZ3JpZC1jb2x1bW5zKFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMsXG4gICRndXR0ZXI6ICRjYXJib24tLWdyaWQtZ3V0dGVyXG4pIHtcbiAgLiN7JHByZWZpeH0tLWNvbCB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1tYWtlLWNvbC1yZWFkeSgpO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBjYXJib24tLWJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQpO1xuICAgICRjb2x1bW5zOiBtYXAtZ2V0KG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCksIGNvbHVtbnMpO1xuXG4gICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgIC4jeyRwcmVmaXh9LS1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBjYXJib24tLW1ha2UtY29sLXJlYWR5KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWNvbCN7JGluZml4fSxcbiAgICAuI3skcHJlZml4fS0tY29sI3skaW5maXh9LS1hdXRvIHtcbiAgICAgIEBpbmNsdWRlIGNhcmJvbi0tbWFrZS1jb2wtcmVhZHkoKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC4jeyRwcmVmaXh9LS1jb2wsXG4gICAgICAuI3skcHJlZml4fS0tY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC4jeyRwcmVmaXh9LS1jb2wtLWF1dG8sXG4gICAgICAuI3skcHJlZml4fS0tY29sI3skaW5maXh9LS1hdXRvIHtcbiAgICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC4jeyRwcmVmaXh9LS1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGNhcmJvbi0tbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgQGlmIG5vdCgkaW5maXggPT0gJycpIHtcbiAgICAgICAgICAuI3skcHJlZml4fS0tb2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNhcmJvbi0tbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSb3dzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gRGVmaW5lIHRoZSBwcm9wZXJ0aWVzIGZvciBhIHNlbGVjdG9yIGFzc2lnbmVkIHRvIGEgcm93IGluIHRoZSBncmlkIHN5c3RlbS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGNhcmJvbi0tZ3JpZC1ndXR0ZXJdIC0gVGhlIGd1dHRlciBpbiB0aGUgZ3JpZCBzeXN0ZW1cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1tYWtlLXJvdygkZ3V0dGVyOiAkY2FyYm9uLS1ncmlkLWd1dHRlcikge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTEgKiAkZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0xICogJGd1dHRlciAvIDI7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBObyBndXR0ZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBBZGQgYG5vLWd1dHRlcmAgYW5kIGBuby1ndXR0ZXItLXtsZWZ0LHJpZ2h0fWAgY2xhc3NlcyB0byB0aGUgb3V0cHV0IENTUy4gVGhlc2Vcbi8vLyBjbGFzc2VzIGFyZSB1c2VmdWwgZm9yIGRyb3BwaW5nIHRoZSBndXR0ZXIgaW4gZmx1aWQgc2l0dWF0aW9ucy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1uby1ndXR0ZXIge1xuICAuI3skcHJlZml4fS0tbm8tZ3V0dGVyLFxuICAuI3skcHJlZml4fS0tcm93LiN7JHByZWZpeH0tLW5vLWd1dHRlciBbY2xhc3MqPScjeyRwcmVmaXh9LS1jb2wnXSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbm8tZ3V0dGVyLS1sZWZ0LFxuICAuI3skcHJlZml4fS0tcm93LiN7JHByZWZpeH0tLW5vLWd1dHRlci0tbGVmdCBbY2xhc3MqPScjeyRwcmVmaXh9LS1jb2wnXSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5vLWd1dHRlci0tcmlnaHQsXG4gIC4jeyRwcmVmaXh9LS1yb3cuI3skcHJlZml4fS0tbm8tZ3V0dGVyLS1yaWdodCBbY2xhc3MqPScjeyRwcmVmaXh9LS1jb2wnXSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGFuZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8vIEFkZCBgaGFuZy0tbGVmdGAgYW5kIGBoYW5nLS1yaWdodGAgY2xhc3NlcyBmb3IgYSBnaXZlbiBndXR0ZXIuIFRoZXNlIGNsYXNzZXMgYXJlXG4vLy8gdXNlZCBhbG9uZ3NpZGUgYG5vLWd1dHRlci0tbGVmdGAgYW5kIGBuby1ndXR0ZXItLXJpZ2h0YCB0byBcImhhbmdcIiB0eXBlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskY2FyYm9uLS1ncmlkLWd1dHRlcl0gLSBUaGUgZ3V0dGVyIGluIHRoZSBncmlkIHN5c3RlbVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBAY2FyYm9uL2dyaWRcbkBtaXhpbiBjYXJib24tLWhhbmcoJGd1dHRlcjogJGNhcmJvbi0tZ3JpZC1ndXR0ZXIpIHtcbiAgLiN7JHByZWZpeH0tLWhhbmctLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oYW5nLS1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQXNwZWN0IHJhdGlvXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gVGhlIGFzcGVjdCByYXRpb3MgdGhhdCBhcmUgdXNlZCB0byBnZW5lcmF0ZSBjb3JyZXNwb25kaW5nIGFzcGVjdCByYXRpb1xuLy8vIGNsYXNzZXMgaW4gY29kZVxuLy8vIEB0eXBlIExpc3Rcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2dyaWRcbiRjYXJib24tLWFzcGVjdC1yYXRpb3M6ICgoMTYsIDkpLCAoMiwgMSksICg0LCAzKSwgKDEsIDEpLCAoMSwgMikpO1xuXG4vLy8gT3V0cHV0IHRoZSBDU1MgY2xhc3NlcyBmb3IgZ2VuZXJhdGluZyBhc3BlY3QgcmF0aW8gY2xhc3Nlc1xuLy8vIEBwYXJhbSB7TGlzdH0gJGFzcGVjdC1yYXRpb3MgWyRjYXJib24tLWFzcGVjdC1yYXRpb3NdIC0gQSBsaXN0IG9mIGFzcGVjdCByYXRpb3MgdG8gZ2VuZXJhdGVcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1hc3BlY3QtcmF0aW8oJGFzcGVjdC1yYXRpb3M6ICRjYXJib24tLWFzcGVjdC1yYXRpb3MpIHtcbiAgLiN7JHByZWZpeH0tLWFzcGVjdC1yYXRpbyB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hc3BlY3QtcmF0aW8tLW9iamVjdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTAwO1xuICB9XG5cbiAgQGVhY2ggJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgICAkd2lkdGg6IG50aCgkcmF0aW8sIDEpO1xuICAgICRoZWlnaHQ6IG50aCgkcmF0aW8sIDIpO1xuXG4gICAgLiN7JHByZWZpeH0tLWFzcGVjdC1yYXRpby0tI3skd2lkdGh9eCN7JGhlaWdodH0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IHBlcmNlbnRhZ2UoJGhlaWdodCAvICR3aWR0aCk7XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHcmlkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gQ3JlYXRlIHRoZSBjb250YWluZXIgZm9yIGEgZ3JpZC4gV2lsbCBjYXVzZSBmdWxsLWJsZWVkIGZvciB0aGUgZ3JpZCB1bmxlc3Ncbi8vLyBtYXgtd2lkdGggcHJvcGVydGllcyBhcmUgYWRkZWQgd2l0aCBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2Bcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1tYWtlLWNvbnRhaW5lcigkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMpIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcblxuICBAaW5jbHVkZSBjYXJib24tLXNldC1sYXJnZXN0LWJyZWFrcG9pbnQoKTtcblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50cyB7XG4gICAgJHByZXYtYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsIGNhcmJvbi0tYnJlYWtwb2ludC1wcmV2KCRuYW1lKSk7XG4gICAgJG1hcmdpbjogbWFwLWdldCgkdmFsdWUsIG1hcmdpbik7XG5cbiAgICBAaWYgJHByZXYtYnJlYWtwb2ludCB7XG4gICAgICAkcHJldi1tYXJnaW46IG1hcC1nZXQoJHByZXYtYnJlYWtwb2ludCwgbWFyZ2luKTtcbiAgICAgIEBpZiAkcHJldi1tYXJnaW4gIT0gJG1hcmdpbiB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogI3soJGNhcmJvbi0tZ3JpZC1ndXR0ZXIgLyAyKSArICRtYXJnaW59O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICN7KCRjYXJib24tLWdyaWQtZ3V0dGVyIC8gMikgKyAkbWFyZ2lufTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogI3soJGNhcmJvbi0tZ3JpZC1ndXR0ZXIgLyAyKSArICRtYXJnaW59O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAjeygkY2FyYm9uLS1ncmlkLWd1dHRlciAvIDIpICsgJG1hcmdpbn07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZXQgdGhlIGxhc3QgYnJlYWtwb2ludCB3aWR0aCBhbmQgc2V0IG1heC13aWR0aCB0byBpdHMgdmFsdWVcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1zZXQtbGFyZ2VzdC1icmVha3BvaW50KCRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50cykge1xuICAkbGFyZ2VzdC1icmVha3BvaW50OiBsYXN0LW1hcC1pdGVtKCRicmVha3BvaW50cyk7XG5cbiAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRsYXJnZXN0LWJyZWFrcG9pbnQsICd3aWR0aCcpO1xufVxuXG4vLy8gQWRkIGluIHRoZSBtYXgtd2lkdGhzIGZvciBlYWNoIGJyZWFrcG9pbnQgdG8gdGhlIGNvbnRhaW5lclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgWyRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNdIC0gQSBtYXAgb2YgYnJlYWtwb2ludHMgd2hlcmUgdGhlIGtleSBpcyB0aGUgbmFtZVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBAY2FyYm9uL2dyaWRcbkBtaXhpbiBjYXJib24tLW1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoXG4gICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c1xuKSB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgIG1heC13aWR0aDogbWFwLWdldCgkdmFsdWUsIHdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBDU1MgZm9yIGEgZ3JpZCBmb3IgdGhlIGdpdmVuIGJyZWFrcG9pbnRzIGFuZCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBUaGUgZGVmYXVsdCBicmVha3BvaW50c1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3JpZC1ndXR0ZXIgWyRjYXJib24tLWdyaWQtZ3V0dGVyXSAtIFRoZSBkZWZhdWx0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbmRlbnNlZC1ndXR0ZXIgWyRjYXJib24tLWdyaWQtZ3V0dGVyLS1jb25kZW5zZWRdIC0gVGhlIGNvbmRlbnNlZCBtb2RlIGd1dHRlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuQG1peGluIGNhcmJvbi0tZ3JpZChcbiAgJGJyZWFrcG9pbnRzOiAkY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzLFxuICAkZ3JpZC1ndXR0ZXI6ICRjYXJib24tLWdyaWQtZ3V0dGVyLFxuICAkY29uZGVuc2VkLWd1dHRlcjogJGNhcmJvbi0tZ3JpZC1ndXR0ZXItLWNvbmRlbnNlZFxuKSB7XG4gIC4jeyRwcmVmaXh9LS1ncmlkIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLW1ha2UtY29udGFpbmVyKCRicmVha3BvaW50cyk7XG4gIH1cblxuICBAaW5jbHVkZSBjYXJib24tLWxhcmdlc3QtYnJlYWtwb2ludCgkYnJlYWtwb2ludHMpIHtcbiAgICAuI3skcHJlZml4fS0tZ3JpZC0tZnVsbC13aWR0aCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJvdyB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1tYWtlLXJvdygpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWdyaWQtLWNvbmRlbnNlZCAuI3skcHJlZml4fS0tcm93Om5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbmRlbnNlZC1ndXR0ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcm93LS1jb25kZW5zZWQgKyAuI3skcHJlZml4fS0tcm93LS1jb25kZW5zZWQge1xuICAgIG1hcmdpbi10b3A6ICRjb25kZW5zZWQtZ3V0dGVyO1xuICB9XG5cbiAgQGluY2x1ZGUgY2FyYm9uLS1tYWtlLWdyaWQtY29sdW1ucygkYnJlYWtwb2ludHMsICRncmlkLWd1dHRlcik7XG4gIEBpbmNsdWRlIGNhcmJvbi0tbm8tZ3V0dGVyKCk7XG4gIEBpbmNsdWRlIGNhcmJvbi0taGFuZygkZ3JpZC1ndXR0ZXIpO1xuICBAaW5jbHVkZSBjYXJib24tLWFzcGVjdC1yYXRpbygpO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL3Y0LWRldi9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2Nzc1xuQGltcG9ydCAnY29udmVydCc7XG5AaW1wb3J0ICd1dGlsaXRpZXMnO1xuXG4vLy8gQ2FyYm9uIGd1dHRlciBzaXplIGluIHJlbVxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1ncmlkLWd1dHRlcjogY2FyYm9uLS1yZW0oMzJweCk7XG5cbi8vLyBDYXJib24gY29uZGVuc2VkIGd1dHRlciBzaXplIGluIHJlbVxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1ncmlkLWd1dHRlci0tY29uZGVuc2VkOiBjYXJib24tLXJlbSgycHgpO1xuXG4vLyBJbml0aWFsIG1hcCBvZiBvdXIgYnJlYWtwb2ludHMgYW5kIHRoZWlyIHZhbHVlc1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHNtOiAoXG4gICAgY29sdW1uczogNCxcbiAgICBtYXJnaW46IDAsXG4gICAgd2lkdGg6IGNhcmJvbi0tcmVtKDMyMHB4KSxcbiAgKSxcbiAgbWQ6IChcbiAgICBjb2x1bW5zOiA4LFxuICAgIG1hcmdpbjogY2FyYm9uLS1yZW0oMTZweCksXG4gICAgd2lkdGg6IGNhcmJvbi0tcmVtKDY3MnB4KSxcbiAgKSxcbiAgbGc6IChcbiAgICBjb2x1bW5zOiAxNixcbiAgICBtYXJnaW46IGNhcmJvbi0tcmVtKDE2cHgpLFxuICAgIHdpZHRoOiBjYXJib24tLXJlbSgxMDU2cHgpLFxuICApLFxuICB4bGc6IChcbiAgICBjb2x1bW5zOiAxNixcbiAgICBtYXJnaW46IGNhcmJvbi0tcmVtKDE2cHgpLFxuICAgIHdpZHRoOiBjYXJib24tLXJlbSgxMzEycHgpLFxuICApLFxuICBtYXg6IChcbiAgICBjb2x1bW5zOiAxNixcbiAgICBtYXJnaW46IGNhcmJvbi0tcmVtKDI0cHgpLFxuICAgIHdpZHRoOiBjYXJib24tLXJlbSgxNTg0cHgpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEdldCB0aGUgdmFsdWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBicmVrYXBvaW50XG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBBIG1hcCBvZiBicmVha3BvaW50cyB3aGVyZSB0aGUga2V5IGlzIHRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IGFuZCB0aGUgdmFsdWUgaXMgdGhlIHZhbHVlcyBmb3IgdGhlIGJyZWFrcG9pbnRcbi8vLyBAcGFyYW0ge0xpc3R9ICRicmVha3BvaW50LW5hbWVzIFttYXAta2V5cygkYnJlYWtwb2ludHMpXSAtIEEgbGlzdCBvZiBuYW1lcyBmcm9tIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXBcbi8vLyBAcmV0dXJuIHtTdHJpbmd9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWJyZWFrcG9pbnQtbmV4dChcbiAgJG5hbWUsXG4gICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50cyxcbiAgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cylcbikge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmICRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSB7XG4gICAgQHJldHVybiBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSk7XG4gIH1cbiAgQHJldHVybiBudWxsO1xufVxuXG4vLy8gR2V0IHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGZpcnN0IGJyZWFrcG9pbnRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgYnJla2Fwb2ludFxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgWyRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNdIC0gQSBtYXAgb2YgYnJlYWtwb2ludHMgd2hlcmUgdGhlIGtleSBpcyB0aGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBhbmQgdGhlIHZhbHVlIGlzIHRoZSB2YWx1ZXMgZm9yIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtMaXN0fSAkYnJlYWtwb2ludC1uYW1lcyBbbWFwLWtleXMoJGJyZWFrcG9pbnRzKV0gLSBBIGxpc3Qgb2YgbmFtZXMgZnJvbSB0aGUgYCRicmVha3BvaW50c2AgbWFwXG4vLy8gQHJldHVybiB7U3RyaW5nfVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG5AZnVuY3Rpb24gY2FyYm9uLS1icmVha3BvaW50LXByZXYoXG4gICRuYW1lLFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMsXG4gICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpXG4pIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiAkbiAhPSBudWxsIGFuZCAkbiA+IDEge1xuICAgIEByZXR1cm4gbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiAtIDEpO1xuICB9XG4gIEByZXR1cm4gbnVsbDtcbn1cblxuLy8vIENoZWNrIHRvIHNlZSBpZiB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBuYW1lXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWthcG9pbnRcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgYW5kIHRoZSB2YWx1ZSBpcyB0aGUgdmFsdWVzIGZvciB0aGUgYnJlYWtwb2ludFxuLy8vIEByZXR1cm4ge0Jvb2x9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWlzLXNtYWxsZXN0LWJyZWFrcG9pbnQoXG4gICRuYW1lLFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNcbikge1xuICBAcmV0dXJuIGluZGV4KG1hcC1rZXlzKCRicmVha3BvaW50cyksICRuYW1lKSA9PSAxO1xufVxuXG4vLy8gUmV0dXJucyB0aGUgbGFyZ2VzdCBicmVha3BvaW50IG5hbWVcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAcmV0dXJuIHtTdHJpbmd9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWxhcmdlc3QtYnJlYWtwb2ludC1uYW1lKFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNcbikge1xuICAkdG90YWwtYnJlYWtwb2ludHM6IGxlbmd0aCgkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGNhcmJvbi0ta2V5LWJ5LWluZGV4KCRicmVha3BvaW50cywgJHRvdGFsLWJyZWFrcG9pbnRzKTtcbn1cblxuLy8vIEdldCB0aGUgaW5maXggZm9yIGEgZ2l2ZW4gYnJlYWtwb2ludCBpbiBhIGxpc3Qgb2YgYnJlYWtwb2ludHMuIFVzZXNmdWwgZm9yIGdlbmVyYXRlIHRoZSBzaXplIHBhcnQgaW4gYSBzZWxlY3RvciwgZm9yIGV4YW1wbGU6IGAucHJlZml4LS1jb2wtc20tMmAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbi8vLyBAcmV0dXJuIHtTdHJpbmd9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWJyZWFrcG9pbnQtaW5maXgoJG5hbWUpIHtcbiAgQHJldHVybiAnLSN7JG5hbWV9Jztcbn1cblxuLy8vIEdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgdXAgdG8gdGhlIHdpZHRoIG9mIHRoZSBnaXZlbiBicmVha3BvaW50IG5hbWVcbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJG5hbWVcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAY29udGVudFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG5AbWl4aW4gY2FyYm9uLS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdudW1iZXInIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hbWUpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgJGJyZWFrcG9pbnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgJHdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50LCB3aWR0aCk7XG4gICAgQGlmIGNhcmJvbi0taXMtc21hbGxlc3QtYnJlYWtwb2ludCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGEgYnJlYWtwb2ludCB3aXRoIG5hbWUgYCN7JG5hbWV9YC4gRXhwZWN0ZWQgb25lIG9mOiAoI3ttYXAta2V5cygkYnJlYWtwb2ludHMpfSknO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBhIG1lZGlhIHF1ZXJ5IGZvciB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgZ2l2ZW4gc3R5bGVzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICRuYW1lXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBBIG1hcCBvZiBicmVha3BvaW50cyB3aGVyZSB0aGUga2V5IGlzIHRoZSBuYW1lXG4vLy8gQGNvbnRlbnRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuQG1peGluIGNhcmJvbi0tYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdudW1iZXInIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG5hbWUpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgJGJyZWFrcG9pbnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgJHdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50LCB3aWR0aCk7XG4gICAgQGlmIGNhcmJvbi0taXMtc21hbGxlc3QtYnJlYWtwb2ludCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGEgYnJlYWtwb2ludCB3aXRoIG5hbWUgYCN7JG5hbWV9YC4gRXhwZWN0ZWQgb25lIG9mOiAoI3ttYXAta2V5cygkYnJlYWtwb2ludHMpfSknO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBhIG1lZGlhIHF1ZXJ5IGZvciB0aGUgcmFuZ2UgYmV0d2VlbiB0aGUgbG93ZXIgYW5kIHVwcGVyIGJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICRsb3dlclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdXBwZXJcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAY29udGVudFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG5AbWl4aW4gY2FyYm9uLS1icmVha3BvaW50LWJldHdlZW4oXG4gICRsb3dlcixcbiAgJHVwcGVyLFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNcbikge1xuICAkaXMtbnVtYmVyLWxvd2VyOiB0eXBlLW9mKCRsb3dlcikgPT0gJ251bWJlcic7XG4gICRpcy1udW1iZXItdXBwZXI6IHR5cGUtb2YoJHVwcGVyKSA9PSAnbnVtYmVyJztcbiAgJG1pbjogaWYoJGlzLW51bWJlci1sb3dlciwgJGxvd2VyLCBtYXAtZ2V0KCRicmVha3BvaW50cywgJGxvd2VyKSk7XG4gICRtYXg6IGlmKCRpcy1udW1iZXItdXBwZXIsICR1cHBlciwgbWFwLWdldCgkYnJlYWtwb2ludHMsICR1cHBlcikpO1xuXG4gIEBpZiAkbWluIGFuZCAkbWF4IHtcbiAgICAkbWluLXdpZHRoOiBpZihub3QgJGlzLW51bWJlci1sb3dlciBhbmQgJG1pbiwgbWFwLWdldCgkbWluLCB3aWR0aCksICRtaW4pO1xuICAgICRtYXgtd2lkdGg6IGlmKG5vdCAkaXMtbnVtYmVyLXVwcGVyIGFuZCAkbWF4LCBtYXAtZ2V0KCRtYXgsIHdpZHRoKSwgJG1heCk7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4td2lkdGgpIGFuZCAobWF4LXdpZHRoOiAkbWF4LXdpZHRoKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludC11cCgkbG93ZXIpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50LWRvd24oJHVwcGVyKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciAnVW5hYmxlIHRvIGZpbmQgYSBicmVha3BvaW50IHRvIHNhdGlzZnk6ICgjeyRsb3dlcn0sI3skdXBwZXJ9KS4gRXhwZWN0ZWQgYm90aCB0byBiZSBvbmUgb2YgKCN7bWFwLWtleXMoJGJyZWFrcG9pbnRzKX0pLic7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIG1lZGlhIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBBIG1hcCBvZiBicmVha3BvaW50cyB3aGVyZSB0aGUga2V5IGlzIHRoZSBuYW1lXG4vLy8gQGNvbnRlbnRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuQG1peGluIGNhcmJvbi0tbGFyZ2VzdC1icmVha3BvaW50KCRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoY2FyYm9uLS1sYXJnZXN0LWJyZWFrcG9pbnQtbmFtZSgpKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGEgZ2l2ZW4gYnJlYWtwb2ludFxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkbmFtZVxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgWyRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNdIC0gQSBtYXAgb2YgYnJlYWtwb2ludHMgd2hlcmUgdGhlIGtleSBpcyB0aGUgbmFtZVxuLy8vIEBjb250ZW50XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBtaXhpbiBjYXJib24tLWJyZWFrcG9pbnQoJG5hbWUsICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3Rvb2x0aXAnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcblxuLy8vIEJ1dHRvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgYnV0dG9uXG5AbWl4aW4gYnV0dG9uIHtcbiAgLy8gYnV0dG9uIHNldCBzdHlsZXNcbiAgLiN7JHByZWZpeH0tLWJ0bi1zZXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLXNldCA+IC4jeyRwcmVmaXh9LS1idG4ge1xuICAgIC8vIG1heC13aWR0aDogcmVtKDE5NnB4KTsgLy8gMTk2cHggZnJvbSBkZXNpZ24ga2l0XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1zZWNvbmRhcnkuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeS4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkLFxuICAuI3skcHJlZml4fS0tYnRuLS10ZXJ0aWFyeS4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkXG4gICAgKyAuI3skcHJlZml4fS0tYnRuLS1kYW5nZXIuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZCB7XG4gICAgYm9yZGVyLWxlZnQ6IHJlbSgxcHgpIHNvbGlkICRkaXNhYmxlZC0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuICAgIC8vIG1heC13aWR0aDogMTAwJTtcblxuICAgICYuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZCA+IHN2Zy4jeyRwcmVmaXh9LS1idG5fX2ljb24sXG4gICAgJjpkaXNhYmxlZCA+IHN2Zy4jeyRwcmVmaXh9LS1idG5fX2ljb24ge1xuICAgICAgZmlsbDogJGRpc2FibGVkLTAzO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IGludHJpc2ljIHBhZGRpbmcgaW4gRmlyZWZveCAoc2VlICM3MzEpXG4gIC4jeyRwcmVmaXh9LS1idG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXRoZW1lKFxuICAgICAgJGludGVyYWN0aXZlLTAxLFxuICAgICAgdHJhbnNwYXJlbnQsXG4gICAgICAkdGV4dC0wNCxcbiAgICAgICRob3Zlci1wcmltYXJ5LFxuICAgICAgY3VycmVudENvbG9yLFxuICAgICAgJGFjdGl2ZS1wcmltYXJ5XG4gICAgKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICR0ZXh0LTA0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLXNlY29uZGFyeSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXRoZW1lKFxuICAgICAgJGludGVyYWN0aXZlLTAyLFxuICAgICAgdHJhbnNwYXJlbnQsXG4gICAgICAkdGV4dC0wNCxcbiAgICAgICRob3Zlci1zZWNvbmRhcnksXG4gICAgICBjdXJyZW50Q29sb3IsXG4gICAgICAkYWN0aXZlLXNlY29uZGFyeVxuICAgICk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICR0ZXh0LTA0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLXRlcnRpYXJ5IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdGhlbWUoXG4gICAgICB0cmFuc3BhcmVudCxcbiAgICAgICRpbnRlcmFjdGl2ZS0wMyxcbiAgICAgICRpbnRlcmFjdGl2ZS0wMyxcbiAgICAgICRob3Zlci10ZXJ0aWFyeSxcbiAgICAgIGN1cnJlbnRDb2xvcixcbiAgICAgICRhY3RpdmUtdGVydGlhcnksXG4gICAgICAxcHhcbiAgICApO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJHRleHQtMDQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW50ZXJhY3RpdmUtMDM7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1wcmltYXJ5O1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQsXG4gICAgJjpob3ZlcjpkaXNhYmxlZCxcbiAgICAmOmZvY3VzOmRpc2FibGVkLFxuICAgICYuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZCxcbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tZGlzYWJsZWQ6aG92ZXIsXG4gICAgJi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRkaXNhYmxlZDtcblxuICAgICAgJiA+IC4jeyRwcmVmaXh9LS1idG5fX2ljb24gcGF0aCB7XG4gICAgICAgIGZpbGw6ICRkaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyID4gLiN7JHByZWZpeH0tLWJ0bl9faWNvbiBwYXRoIHtcbiAgICAgIGZpbGw6ICRpbnZlcnNlLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLWdob3N0IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdGhlbWUoXG4gICAgICB0cmFuc3BhcmVudCxcbiAgICAgIHRyYW5zcGFyZW50LFxuICAgICAgJGxpbmstMDEsXG4gICAgICAkaG92ZXItdWksXG4gICAgICBjdXJyZW50Q29sb3IsXG4gICAgICAkYWN0aXZlLXVpXG4gICAgKTtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmctZ2hvc3Q7XG5cbiAgICAuI3skcHJlZml4fS0tYnRuX19pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkaG92ZXItcHJpbWFyeS10ZXh0O1xuXG4gICAgICAuI3skcHJlZml4fS0tYnRuX19pY29uIHBhdGgge1xuICAgICAgICBmaWxsOiAkaG92ZXItcHJpbWFyeS10ZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtdWk7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmOmhvdmVyOmRpc2FibGVkLFxuICAgICY6Zm9jdXM6ZGlzYWJsZWQsXG4gICAgJi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkLFxuICAgICYuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZDpob3ZlcixcbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tZGlzYWJsZWQ6Zm9jdXMge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgLiN7JHByZWZpeH0tLWJ0bl9faWNvbiBwYXRoIHtcbiAgICAgICAgZmlsbDogJGRpc2FibGVkO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tYnRuLS1zbSB7XG4gICAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmctZ2hvc3Qtc207XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS1idG4tLWZpZWxkIHtcbiAgICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZy1naG9zdC1maWVsZDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXIge1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXRyaWdnZXIoJ2ljb24nLCAnYm90dG9tJyk7XG4gICAgb3V0bGluZTogJGJ1dHRvbi1vdXRsaW5lLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtNHB4O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seS4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb2N1cztcbiAgICBvdXRsaW5lLWNvbG9yOiAkdWktMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXI6Zm9jdXNcbiAgICBzdmcge1xuICAgIG91dGxpbmUtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LS10b3Age1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXRyaWdnZXIoJ2ljb24nLCAndG9wJyk7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3RvcCcsICdjZW50ZXInKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seS0tYm90dG9tIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnYm90dG9tJywgJ2NlbnRlcicpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LFxuICAuI3skcHJlZml4fS0tYnRuLS1zbS4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seSxcbiAgLiN7JHByZWZpeH0tLWJ0bi0tZmllbGQuI3skcHJlZml4fS0tYnRuLS1pY29uLW9ubHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgxM3B4KTtcblxuICAgIC4jeyRwcmVmaXh9LS1idG5fX2ljb24ge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3QgLiN7JHByZWZpeH0tLWJ0bl9faWNvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tZGFuZ2VyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tdGhlbWUoXG4gICAgICAvLyAkc3VwcG9ydC0wMSwgVE9ETzogcmVwbGFjZSB3aXRoIHVwZGF0ZWQgdG9rZW5cbiAgICAgICAgI2RjMjIyYixcbiAgICAgIC8vICRzdXBwb3J0LTAxLCBUT0RPOiByZXBsYWNlIHdpdGggdXBkYXRlZCB0b2tlblxuICAgICAgICAjZGMyMjJiLFxuICAgICAgJHRleHQtMDQsXG4gICAgICAkaG92ZXItZGFuZ2VyLFxuICAgICAgJGljb24tMDMsXG4gICAgICAkYWN0aXZlLWRhbmdlclxuICAgICk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGV4dC0wNDtcbiAgICAgIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tc20ge1xuICAgIG1pbi1oZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmctc207XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1maWVsZCB7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nLWZpZWxkO1xuICB9XG5cbiAgLy8gU2tlbGV0b24gU3RhdGVcbiAgLiN7JHByZWZpeH0tLWJ0bi4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgd2lkdGg6IHJlbSgxNTBweCk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnYnV0dG9uJykge1xuICBAaW5jbHVkZSBidXR0b247XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuXG4vLy8gQnV0dG9uIGJhc2Ugc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGJ1dHRvblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgcmVzZXQ7XG4gIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtaW4taGVpZ2h0OiByZW0oJGJ1dHRvbi1oZWlnaHQpO1xuICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tYm9yZGVyLXJhZGl1cztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG4gIG91dGxpbmU6ICRidXR0b24tb3V0bGluZS13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgb3V0bGluZS1vZmZzZXQ6IC00cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiByZW0oMzIwcHgpO1xuXG4gICY6ZGlzYWJsZWQsXG4gICYuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAzO1xuICAgIGJhY2tncm91bmQ6ICRkaXNhYmxlZC0wMjtcbiAgICBib3JkZXItY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG5fX2ljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogcmVtKDE2cHgpO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gIH1cbn1cblxuLy8vIEJ1dHRvbiB2YXJpYW50IHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBidXR0b25cbkBtaXhpbiBidXR0b24tdGhlbWUoXG4gICRiZy1jb2xvcixcbiAgJGJvcmRlci1jb2xvcixcbiAgJGZvbnQtY29sb3IsXG4gICRob3Zlci1iZy1jb2xvcixcbiAgJGljb24tY29sb3IsXG4gICRhY3RpdmUtY29sb3IsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24tYm9yZGVyLXdpZHRoXG4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xuICBib3JkZXItd2lkdGg6ICRib3JkZXItd2lkdGg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgY29sb3I6ICRmb250LWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iZy1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvY3VzO1xuICAgIG91dGxpbmUtY29sb3I6ICR1aS0wMjtcbiAgfVxuXG4gICY6ZGlzYWJsZWQ6aG92ZXIsXG4gICY6ZGlzYWJsZWQ6Zm9jdXMsXG4gICY6aG92ZXIuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZCxcbiAgJjpmb2N1cy4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkIHtcbiAgICBjb2xvcjogJHVpLTA0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICBib3JkZXItY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZS1jb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtY29sb3I7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuX19pY29uLFxuICAuI3skcHJlZml4fS0tYnRuX19pY29uIHBhdGgge1xuICAgIGZpbGw6ICRpY29uLWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAndmFycyc7XG5cbi8vLyBCYXNlIGZvbnQgc2l6ZSBpbiBweFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC10eXBvZ3JhcGh5XG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGRlcHJlY2F0ZWQgKEZvciB2MTApIFN1cGVyc2VkZWQgYnkgYCRjYXJib24tLWJhc2UtZm9udC1zaXplYFxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gQ29udmVydCBweCB0byByZW1cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSBWYWx1ZSBvZiB0eXBlIGluIHBpeGVsc1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEluIHJlbVxuLy8vIEBleGFtcGxlIHJlbSg0OHB4KTtcbi8vLyBAZ3JvdXAgZ2xvYmFsLXR5cG9ncmFwaHlcbi8vLyBAZGVwcmVjYXRlZCAoRm9yIHYxMCkgVXNlIGBjYXJib24tLXJlbSgpYFxuQGZ1bmN0aW9uIHJlbSgkcHgpIHtcbiAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XG59XG5cbi8vLyBDb252ZXJ0IHB4IHRvIGVtXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gVmFsdWUgb2YgdHlwZSBpbiBwaXhlbHNcbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBJbiBlbVxuLy8vIEBleGFtcGxlIGVtKDQ4cHgpO1xuLy8vIEBncm91cCBnbG9iYWwtdHlwb2dyYXBoeVxuLy8vIEBkZXByZWNhdGVkIChGb3IgdjEwKSBVc2UgYGNhcmJvbi0tZW0oKWBcbkBmdW5jdGlvbiBlbSgkcHgpIHtcbiAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8g8J+UrCBFeHBlcmltZW50YWxcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL3R5cGUvc3R5bGVzJztcblxuLy8vIERpZmZlcmVudCB0eXBlIHN0eWxlcyBwZXIgdG9rZW5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIFRoZSBuYW1lIG9mIHRoZSB0b2tlbiB0byBnZXQgdGhlIHN0eWxlcyBmb3Jcbi8vLyBAcGFyYW0ge0Jvb2x9ICRmbHVpZCBbZmFsc2VdIC0gU3BlY2lmeSB3aGV0aGVyIHRvIGluY2x1ZGUgZmx1aWQgc3R5bGVzXG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuLy8vIEBncm91cCBnbG9iYWwtdHlwb2dyYXBoeVxuQG1peGluIHR5cGUtc3R5bGUoJG5hbWUsICRmbHVpZDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgY2FyYm9uLS10eXBlLXN0eWxlKCRuYW1lLCAkZmx1aWQpO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICdjb2xvcnMnO1xuQGltcG9ydCAnc3BhY2luZyc7XG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvdGhlbWVzL3RoZW1lcyc7XG5cbi8vLyBUaGVtZSB2YXJpYWJsZXNcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLXRoZW1lc1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLXRoZW1lc1xuJGlucHV0LWxhYmVsLXdlaWdodDogNDAwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtdGhlbWVzXG4kZGlzYWJsZWQ6ICRkaXNhYmxlZC0wMiAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLXRoZW1lc1xuJGRpc2FibGVkLWJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLXRoZW1lc1xuJGZvY3VzOiAkaWJtLWNvbG9yX19ibHVlLTYwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtdGhlbWVzXG4kaW52ZXJzZS1mb2N1cy11aTogJGlibS1jb2xvcl9fd2hpdGUtMCAhZGVmYXVsdDtcblxuLy8gTGlua1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBsaW5rXG4kbGluay12aXNpdGVkOiAkaWJtLWNvbG9yX19wdXJwbGUtNjAgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGRlcHJlY2F0ZWQgVXNlIHRoZW1lIHRva2VuIGAkaW52ZXJzZS1saW5rYCBpbnN0ZWFkLlxuLy8vIEBncm91cCBsaW5rXG4kbGluay1pbnZlcnNlLWNvbG9yOiAjNmVhNmZmICFkZWZhdWx0O1xuXG4vLyBUb29sdGlwXG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHRvb2x0aXBcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLTAyICFkZWZhdWx0O1xuXG4vLyBCdXR0b25cblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1mb250LXdlaWdodDogNDAwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4kYnV0dG9uLWZvbnQtc2l6ZTogMC44NzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbiRidXR0b24tYm9yZGVyLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1wYWRkaW5nOiBjYWxjKDAuODc1cmVtIC0gM3B4KSA2MHB4IGNhbGMoMC44NzVyZW0gLSAzcHgpIDEycHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1wYWRkaW5nLWZpZWxkOiBjYWxjKDAuNjc1cmVtIC0gM3B4KSA2MHB4IGNhbGMoMC42NzVyZW0gLSAzcHgpIDEycHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1wYWRkaW5nLXNtOiBjYWxjKDAuMzc1cmVtIC0gM3B4KSA2MHB4IGNhbGMoMC4zNzVyZW0gLSAzcHgpIDEycHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbiRidXR0b24tcGFkZGluZy1sZzogJGNhcmJvbi0tc3BhY2luZy0wNCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vIFVzZXMgdGhlIHNhbWUgcGFkZGluZy15IGFzIG5vcm1hbCBidXR0b25zLCBidXQgcmVtb3ZlcyBleHRyYSBwYWRkaW5nLXJpZ2h0XG4kYnV0dG9uLXBhZGRpbmctZ2hvc3Q6IGNhbGMoMC44NzVyZW0gLSAzcHgpIDEycHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbi8vLyBVc2VzIHRoZSBzYW1lIHBhZGRpbmcteSBhcyBmaWVsZCBidXR0b25zLCBidXQgcmVtb3ZlcyBleHRyYSBwYWRkaW5nLXJpZ2h0XG4kYnV0dG9uLXBhZGRpbmctZ2hvc3QtZmllbGQ6IGNhbGMoMC42NzVyZW0gLSAzcHgpIDEycHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbi8vLyBVc2VzIHRoZSBzYW1lIHBhZGRpbmcteSBhcyBzbWFsbCBidXR0b25zLCBidXQgcmVtb3ZlcyBleHRyYSBwYWRkaW5nLXJpZ2h0XG4kYnV0dG9uLXBhZGRpbmctZ2hvc3Qtc206IGNhbGMoMC4zNzVyZW0gLSAzcHgpIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbiRidXR0b24tYm9yZGVyLXdpZHRoOiAzcHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbiRidXR0b24tb3V0bGluZS13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4kYnV0dG9uLW91dGxpbmUtb2Zmc2V0OiAtNXB4ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbiRidXR0b24tb3V0bGluZTogMXB4IHNvbGlkICRpYm0tY29sb3JfX3doaXRlLTAgIWRlZmF1bHQ7XG5cbi8vIEFjY29yZGlvblxuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBhY2NvcmRpb25cbiRhY2NvcmRpb24tZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBhY2NvcmRpb25cbiRhY2NvcmRpb24tanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBhY2NvcmRpb25cbiRhY2NvcmRpb24tYXJyb3ctbWFyZ2luOiAwICRjYXJib24tLXNwYWNpbmctMDUgMCAwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBhY2NvcmRpb25cbiRhY2NvcmRpb24tdGl0bGUtbWFyZ2luOiAwIDAgMCAkY2FyYm9uLS1zcGFjaW5nLTA1ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBhY2NvcmRpb25cbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAwIDAgMCAkY2FyYm9uLS1zcGFjaW5nLTA1ICFkZWZhdWx0O1xuXG4vLyBDaGVja2JveFxuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgY2hlY2tib3hcbiRjaGVja2JveC1ib3JkZXItd2lkdGg6IDJweCAhZGVmYXVsdDtcblxuLy8gQ29kZSBTbmlwcGV0XG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGNvZGUtc25pcHBldFxuJHNuaXBwZXQtYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxICFkZWZhdWx0OyAvLyBUT0RPOiBEZWZpbmUgZm9yIGV4cGVyaW1lbnRhbFxuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjb2RlLXNuaXBwZXRcbiRzbmlwcGV0LWJvcmRlci1jb2xvcjogJHVpLTAzICFkZWZhdWx0OyAvLyBUT0RPOiBEZWZpbmUgZm9yIGV4cGVyaW1lbnRhbFxuXG4vLyBDb250ZW50IFN3aXRjaGVyXG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjb250ZW50LXN3aXRjaGVyXG4kY29udGVudC1zd2l0Y2hlci1ib3JkZXItcmFkaXVzOiAwcHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjb250ZW50LXN3aXRjaGVyXG4kY29udGVudC1zd2l0Y2hlci1vcHRpb24tYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLTAxICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjb250ZW50LXN3aXRjaGVyXG4kY29udGVudC1zd2l0Y2hlci1kaXZpZGVyOiAkdWktMDMgIWRlZmF1bHQ7XG5cbi8vIERhdGEgVGFibGVcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZGF0YS10YWJsZVxuJGRhdGEtdGFibGUtaGVhZGluZy10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZGF0YS10YWJsZVxuJGRhdGEtdGFibGUtaGVhZGluZy1ib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJyYW5kLTAxICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZGF0YS10YWJsZVxuJGRhdGEtdGFibGUtcm93LWhlaWdodDogMnJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZGF0YS10YWJsZVxuJGRhdGEtdGFibGUtemVicmEtY29sb3I6ICR1aS0wMiAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZGF0YS10YWJsZVxuJGRhdGEtdGFibGUtY29sdW1uLWhvdmVyOiAkaG92ZXItc2VsZWN0ZWQtdWkgIWRlZmF1bHQ7XG5cbi8vIERhdGUgUGlja2VyXG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGRhdGUtcGlja2VyXG4kZGF0ZS1waWNrZXItaW4tcmFuZ2UtYmFja2dyb3VuZC1jb2xvcjogJGlibS1jb2xvcl9fYmx1ZS0yMCAhZGVmYXVsdDtcblxuLy8gTW9kYWxcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgbW9kYWxcbiRtb2RhbC1ib3JkZXItdG9wOiAkYnJhbmQtMDEgNHB4IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBtb2RhbFxuJG1vZGFsLWZvb3Rlci1iYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDMgIWRlZmF1bHQ7XG5cbi8vIE5vdGlmaWNhdGlvblxuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBub3RpZmljYXRpb25cbiRub3RpZmljYXRpb24taW5mby1iYWNrZ3JvdW5kLWNvbG9yOiAkaWJtLWNvbG9yX19ibHVlLTEwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBub3RpZmljYXRpb25cbiRub3RpZmljYXRpb24tZXJyb3ItYmFja2dyb3VuZC1jb2xvcjogJGlibS1jb2xvcl9fcmVkLTEwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBub3RpZmljYXRpb25cbiRub3RpZmljYXRpb24td2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yOiBtaXgoXG4gICRpYm0tY29sb3JfX3llbGxvdy0yMCxcbiAgJGlibS1jb2xvcl9fd2hpdGUtMCxcbiAgMTUlXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBub3RpZmljYXRpb25cbiRub3RpZmljYXRpb24tc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yOiAkaWJtLWNvbG9yX19ncmVlbi0xMCAhZGVmYXVsdDtcblxuLy8gUHJvZ3Jlc3MgSW5kaWNhdG9yXG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHByb2dyZXNzLWluZGljYXRvclxuJHByb2dyZXNzLWluZGljYXRvci1iYXItd2lkdGg6IDFweCBpbnNldCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHByb2dyZXNzLWluZGljYXRvclxuJHByb2dyZXNzLWluZGljYXRvci1zdHJva2Utd2lkdGg6IDUgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBwcm9ncmVzcy1pbmRpY2F0b3JcbiRwcm9ncmVzcy1pbmRpY2F0b3ItbGluZS1vZmZzZXQ6IDAuNjI1cmVtICFkZWZhdWx0O1xuXG4vLyBDb3B5IEJ1dHRvblxuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjb3B5LWJ1dHRvblxuJGNvcHktYWN0aXZlOiAkYWN0aXZlLXVpICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjb3B5LWJ1dHRvblxuJGNvcHktYnRuLWZlZWRiYWNrOiAkaW52ZXJzZS0wMiAhZGVmYXVsdDtcblxuLy8gUmFkaW8gQnV0dG9uXG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCByYWRpby1idXR0b25cbiRyYWRpby1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8gU3RydWN0dXJlZCBMaXN0XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBzdHJ1Y3R1cmVkLWxpc3RcbiRzdHJ1Y3R1cmVkLWxpc3QtcGFkZGluZzogMnJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgc3RydWN0dXJlZC1saXN0XG4kc3RydWN0dXJlZC1saXN0LXRleHQtdHJhbnNmb3JtOiBub25lICFkZWZhdWx0O1xuXG4vLyBUYWJzXG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHRhYnNcbiR0YWItdW5kZXJsaW5lLWNvbG9yOiAzcHggc29saWQgJHVpLTAzICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCB0YWJzXG4kdGFiLXVuZGVybGluZS1jb2xvci1ob3ZlcjogM3B4IHNvbGlkICR1aS0wNCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgdGFic1xuJHRhYi10ZXh0LWRpc2FibGVkOiAkZGlzYWJsZWQtMDIgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHRhYnNcbiR0YWItdW5kZXJsaW5lLWRpc2FibGVkOiAzcHggc29saWQgJGRpc2FibGVkLTAxICFkZWZhdWx0O1xuXG4vLyBTa2VsZXRvbiBMb2FkaW5nXG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHNrZWxldG9uXG4kc2tlbGV0b246ICRza2VsZXRvbi0wMSAhZGVmYXVsdDsgLy8gVE9ETzogUmVtb3ZlIHRoaXMgaW4gbmV4dCBtYWpvciByZWxlYXNlXG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE4LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8vIENvbW1vbiBjb21wb25lbnQgZWFzaW5nc1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbW90aW9uXG4kY2FyYm9uLS1lYXNpbmdzOiAoXG4gIHN0YW5kYXJkOiAoXG4gICAgcHJvZHVjdGl2ZTogY3ViaWMtYmV6aWVyKDAuMiwgMCwgMC4zOCwgMC45KSxcbiAgICBleHByZXNzaXZlOiBjdWJpYy1iZXppZXIoMC40LCAwLjE0LCAwLjMsIDEpLFxuICApLFxuICBlbnRyYW5jZTogKFxuICAgIHByb2R1Y3RpdmU6IGN1YmljLWJlemllcigwLCAwLCAwLjM4LCAwLjkpLFxuICAgIGV4cHJlc3NpdmU6IGN1YmljLWJlemllcigwLCAwLCAwLjMsIDEpLFxuICApLFxuICBleGl0OiAoXG4gICAgcHJvZHVjdGl2ZTogY3ViaWMtYmV6aWVyKDAuMiwgMCwgMSwgMC45KSxcbiAgICBleHByZXNzaXZlOiBjdWJpYy1iZXppZXIoMC40LCAwLjE0LCAxLCAxKSxcbiAgKSxcbik7XG5cbi8vLyBHZXQgdGhlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uIGZvciBhIGdpdmVuIGVhc2luZyBhbmQgbW90aW9uIG1vZGVcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBDYW4gYmUgYHN0YW5kYXJkYCwgYGVudHJhbmNlYCwgb3IgYGV4aXRgXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtb2RlIFtwcm9kdWN0aXZlXSAtIENhbiBiZSBgcHJvZHVjdGl2ZWAgb3IgYGV4cHJlc3NpdmVgXG4vLy8gQHBhcmFtIHtNYXB9ICRlYXNpbmdzIFskY2FyYm9uLS1lYXNpbmdzXSAtIEVhc2luZ3MgbWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9tb3Rpb25cbi8vLyBAcmV0dXJuIHtGdW5jdGlvbn0gQ1NTIGBjdWJpYy1iZXppZXIoKWAgZnVuY3Rpb25cbkBmdW5jdGlvbiBjYXJib24tLW1vdGlvbigkbmFtZSwgJG1vZGU6IHByb2R1Y3RpdmUsICRlYXNpbmdzOiAkY2FyYm9uLS1lYXNpbmdzKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZWFzaW5ncywgJG5hbWUpIHtcbiAgICAkZWFzaW5nOiBtYXAtZ2V0KCRlYXNpbmdzLCAkbmFtZSk7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRlYXNpbmcsICRtb2RlKSB7XG4gICAgICBAcmV0dXJuIG1hcC1nZXQoJGVhc2luZywgJG1vZGUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGVycm9yICdVbmFibGUgdG8gZmluZCBhIG1vZGUgZm9yIHRoZSBlYXNpbmcgI3skZWFzaW5nfSBjYWxsZWQ6ICN7JG1vZGV9Lic7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGFuIGVhc2luZyBuYW1lZCAjeyRuYW1lfSBpbiBvdXIgc3VwcG9ydGVkIGVhc2luZ3MuJztcbiAgfVxufVxuXG4vLy8gU2V0IHRoZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiBmb3IgYSBnaXZlbiBlYXNpbmcgYW5kIG1vdGlvbiBtb2RlXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGVhc2luZyBjdXJ2ZSB0byBhcHBseVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbW9kZSAtIFRoZSBtb2RlIGZvciB0aGUgZWFzaW5nIGN1cnZlIHRvIHVzZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbW90aW9uXG5AbWl4aW4gY2FyYm9uLS1tb3Rpb24oJG5hbWUsICRtb2RlKSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjYXJib24tLW1vdGlvbigkbmFtZSwgJG1vZGUpO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJ2xheWVyJztcblxuLy8gVG9vbHRpcFxuLy8gRGVmaW5pdGlvbiBhbmQgSWNvbiBDU1Mgb25seSB0b29sdGlwXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0b29sdGlwLXR5cGUgWydpY29uJ10gLSBUaGUgdHlwZSwgZnJvbTogYGljb25gLCBgZGVmaW5pdGlvbmBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBvc2l0aW9uIFsnYm90dG9tJ10gLSBUaGUgcG9zaXRpb24sIGZyb206IGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgdG9vbHRpcFxuQG1peGluIHRvb2x0aXAtLXRyaWdnZXIoJHRvb2x0aXAtdHlwZTogJ2ljb24nLCAkcG9zaXRpb246ICdib3R0b20nKSB7XG4gIEBpbmNsdWRlIHJlc2V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gIEBpZiAkdG9vbHRpcC10eXBlID09ICdpY29uJyB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ2JvcmRlcicpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIDo6YmVmb3JlIC0gVG9vbHRpcCBjYXJldFxuICAvLyA6OmFmdGVyIC0gbGVnYWN5IFRvb2x0aXAgY29udGVudCAoZGVwcmVjYXRlZClcbiAgLy8gLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0IC0gV0NBRyAyLjEgY29tcGxpYW50IHRvb2x0aXAgY29udGVudFxuICAvLyAgICB0aGF0IGNhbiBlaXRoZXIgYmUgYSBjaGlsZCAoaWNvbiB0b29sdGlwKSBvciBzaWJsaW5nIChkZWZpbml0aW9uIHRvb2x0aXApXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIsXG4gIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgKyAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogeignZmxvYXRpbmcnKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIC8vIElFIG1lZGlhIHF1ZXJ5XG4gICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hMTF5OjpiZWZvcmUsXG4gICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYTExeTo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBjYXJldFxuICAmOjpiZWZvcmUge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0LFxuICArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgLy8gSW4gb3JkZXIgdG8gcGFzcyBBQVQsIG9wYWNpdHkgbXVzdCBiZSBzZXQgdG8gMSBpbiB0aGUgZGVmYXVsdCBzdGF0ZVxuICAgIC8vIE9uIGZvY3VzL2hvdmVyIHVzZSBhIGtleWZyYW1lIGFuaW1hdGlvbiB0byBtaW1pYyB0cmFuc2l0aW9uXG4gICAgb3BhY2l0eTogMTtcbiAgICAvLyBvdmVyd3JpdGUgZGVmYXVsdCBub3dyYXAgYmVoYXZpb3JcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG5cbiAgLy8gY29udGVudCBib3hcbiAgLy8gQHRvZG8gU2ltcGxpZnkgQ1NTIHNlbGVjdG9ycyBvbiBuZXh0IG1ham9yIHJlbGVhc2VcbiAgJjo6YWZ0ZXIsXG4gICY6aG92ZXIgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0LFxuICAmOmZvY3VzIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgJjpob3ZlciArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgJjpmb2N1cyArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCB7XG4gICAgQGluY2x1ZGUgbGF5ZXIoJ292ZXJsYXknKTtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiByZW0oMjA4cHgpO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiBpZihcbiAgICAgICR0b29sdGlwLXR5cGUgPT0gJ2RlZmluaXRpb24nLFxuICAgICAgcmVtKDhweCkgcmVtKDE2cHgpLFxuICAgICAgcmVtKDJweCkgcmVtKDE2cHgpXG4gICAgKTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0oMnB4KTtcbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS0wMjtcblxuICAgIC8vIElFIG1lZGlhIHF1ZXJ5XG4gICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgIHdpZHRoOiByZW0oMjA4cHgpO1xuICAgIH1cbiAgICAvLyBFZGdlIDEyLTE1IGFuZCBFZGdlIDE2IGZlYXR1cmUgcXVlcmllc1xuICAgIEBzdXBwb3J0cyAoLW1zLWFjY2VsZXJhdG9yOiB0cnVlKSB7XG4gICAgICB3aWR0aDogcmVtKDIwOHB4KTtcbiAgICB9XG4gICAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICB3aWR0aDogcmVtKDIwOHB4KTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihhcmlhLWxhYmVsKTtcbiAgfVxuXG4gICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYTExeTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIHRvb2x0aXAtZmFkZSB7XG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gICAgKyAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQge1xuICAgICAgY2xpcDogYXV0bztcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgICArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWExMXk6OmJlZm9yZSB7XG4gICAgICBhbmltYXRpb246IHRvb2x0aXAtZmFkZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVG9vbHRpcFxuLy8gRGVmaW5pdGlvbiBhbmQgSWNvbiBDU1Mgb25seSB0b29sdGlwXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0b29sdGlwLXR5cGUgWydpY29uJ10gLSBUaGUgdHlwZSwgZnJvbTogYGljb25gLCBgZGVmaW5pdGlvbmBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBvc2l0aW9uIFsnYm90dG9tJ10gLSBUaGUgcG9zaXRpb24sIGZyb206IGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRhbGlnbiBbJ2NlbnRlciddIC0gVGhlIGFsaWdubWVudCwgZnJvbTogYHN0YXJ0YCwgYGNlbnRlcmAsIGBlbmRgXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgdG9vbHRpcFxuQG1peGluIHRvb2x0aXAtLXBsYWNlbWVudChcbiAgJHRvb2x0aXAtdHlwZTogJ2ljb24nLFxuICAkcG9zaXRpb246ICdib3R0b20nLFxuICAkYWxpZ246ICdjZW50ZXInXG4pIHtcbiAgLy8gcG9zaXRpb24gYW5kIGFsaWdubWVudFxuICAkY2FyZXQtc3BhY2luZzogaWYoXG4gICAgJHRvb2x0aXAtdHlwZSA9PSAnZGVmaW5pdGlvbicsXG4gICAgcmVtKDRweCksXG4gICAgcmVtKDhweClcbiAgKTsgLy8gc3BhY2UgYmV0d2VlbiBjYXJldCBhbmQgdHJpZ2dlciBidXR0b25cbiAgJGNhcmV0LWhlaWdodDogcmVtKDVweCk7XG4gICRjYXJldC13aWR0aDogcmVtKDhweCk7XG4gICRib2R5LXNwYWNpbmc6ICRjYXJldC1zcGFjaW5nICsgJGNhcmV0LWhlaWdodDtcblxuICAvLyBAdG9kbyBTaW1wbGlmeSBDU1Mgc2VsZWN0b3JzIG9uIG5leHQgbWFqb3IgcmVsZWFzZVxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyLFxuICAmOmhvdmVyIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgJjpmb2N1cyAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gICY6aG92ZXIgKyAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gICY6Zm9jdXMgKyAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQge1xuICAgIEBpZiAoJHBvc2l0aW9uID09ICd0b3AnKSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgfVxuICAgIEBpZiAoJHBvc2l0aW9uID09ICdyaWdodCcpIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBpZiAoJHBvc2l0aW9uID09ICdib3R0b20nKSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgfVxuICAgIEBpZiAoJHBvc2l0aW9uID09ICdsZWZ0Jykge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ3RvcCcpIHtcbiAgICAgIHRvcDogLSRjYXJldC1zcGFjaW5nO1xuICAgICAgYm9yZGVyLXdpZHRoOiByZW0oNXB4KSByZW0oNHB4KSAwIHJlbSg0cHgpO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS0wMiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgICB9XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ3JpZ2h0Jykge1xuICAgICAgcmlnaHQ6IC0kY2FyZXQtc3BhY2luZztcbiAgICAgIGJvcmRlci13aWR0aDogcmVtKDRweCkgcmVtKDVweCkgcmVtKDRweCkgMDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJGludmVyc2UtMDIgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAtNTAlKTtcbiAgICB9XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ2JvdHRvbScpIHtcbiAgICAgIGJvdHRvbTogLSRjYXJldC1zcGFjaW5nO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIHJlbSg0cHgpIHJlbSg1cHgpIHJlbSg0cHgpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkaW52ZXJzZS0wMiB0cmFuc3BhcmVudDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDEwMCUpO1xuICAgIH1cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAnbGVmdCcpIHtcbiAgICAgIGxlZnQ6IC0kY2FyZXQtc3BhY2luZztcbiAgICAgIGJvcmRlci13aWR0aDogcmVtKDRweCkgMCByZW0oNHB4KSByZW0oNXB4KTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGludmVyc2UtMDI7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgLy8gYWxpZ25tZW50IG9wdGlvbnMgYXZhaWxhYmxlIG9ubHkgZm9yIHRvcCBhbmQgYm90dG9tIHRvb2x0aXAgcG9zaXRpb25cbiAgLy8gQHRvZG8gU2ltcGxpZnkgQ1NTIHNlbGVjdG9ycyBvbiBuZXh0IG1ham9yIHJlbGVhc2VcbiAgJjo6YWZ0ZXIsXG4gICY6aG92ZXIgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0LFxuICAmOmZvY3VzIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgJjpob3ZlciArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgJjpmb2N1cyArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCB7XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ3RvcCcpIHtcbiAgICAgIHRvcDogLSRib2R5LXNwYWNpbmc7XG4gICAgICBAaWYgKCRhbGlnbiA9PSAnc3RhcnQnKSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICAgIH0gQGVsc2UgaWYgKCRhbGlnbiA9PSAnZW5kJykge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuICAgICAgfVxuICAgIH1cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAncmlnaHQnKSB7XG4gICAgICByaWdodDogLSRib2R5LXNwYWNpbmc7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAtNTAlKTtcbiAgICB9XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ2JvdHRvbScpIHtcbiAgICAgIGJvdHRvbTogLSRib2R5LXNwYWNpbmc7XG4gICAgICBAaWYgKCRhbGlnbiA9PSAnc3RhcnQnKSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICAgICAgfSBAZWxzZSBpZiAoJGFsaWduID09ICdlbmQnKSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ2xlZnQnKSB7XG4gICAgICBsZWZ0OiAtJGJvZHktc3BhY2luZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtNTAlKTtcbiAgICB9XG4gIH1cblxuICAvLyBAdG9kbyBzaW1wbGlmeSBvbiBuZXh0IG1ham9yIHJlbGVhc2UgdG8gbW92ZSB0aGUgOjpiZWZvcmUgcHNldWRvIGVsZW1lbnQgd2l0aGluIHRoZSB0b29sdGlwIGluc3RlYWQgb2YgdGhlIHRyaWdnZXJcbiAgQGlmICR0b29sdGlwLXR5cGUgPT0gJ2RlZmluaXRpb24nIHtcbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWExMXkgKyAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQge1xuICAgICAgQGlmICgkcG9zaXRpb24gPT0gJ2JvdHRvbScpIHtcbiAgICAgICAgYm90dG9tOiAtKFxuICAgICAgICAgICAgJGJvZHktc3BhY2luZyAtIHJlbSgxcHgpXG4gICAgICAgICAgKTsgLy8gY2FycnlvdmVyIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2NhcmJvbi1kZXNpZ24tc3lzdGVtL2NhcmJvbi9wdWxsLzMxNTEvZmlsZXMjZGlmZi05MzczNGJlMDc4NGU5NTMwYjZkMTRhN2IwM2IwZDM1MlIyNjEtUjI2NVxuICAgICAgICBAaWYgKCRhbGlnbiA9PSAnc3RhcnQnIG9yICRhbGlnbiA9PSAnZW5kJykge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJ2hlbHBlci1jbGFzc2VzJztcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEB0eXBlIE1hcFxuLy8vIEBncm91cCBnbG9iYWwtbGF5b3V0XG4kei1pbmRleGVzOiAoXG4gIG1vZGFsOiA5MDAwLFxuICBvdmVybGF5OiA4MDAwLFxuICBkcm9wZG93bjogOTEwMCxcbiAgaGVhZGVyOiA2MDAwLFxuICBmb290ZXI6IDUwMDAsXG4gIGhpZGRlbjogLSAxLFxuICBvdmVyZmxvd0hpZGRlbjogLSAxLFxuICBmbG9hdGluZzogMTAwMDAsXG4pO1xuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGxheWVyIC0gVmFsdWUgZnJvbSBgJHotaW5kZXhlc2AgbWFwXG4vLy8gQGdyb3VwIGdsb2JhbC1sYXlvdXRcbi8vLyBAZXhhbXBsZSAtIHNjc3Ncbi8vLyAgIC5tb2RhbCB7XG4vLy8gICAgIHotaW5kZXg6IHooJ21vZGFsJyk7XG4vLy8gICB9XG5AZnVuY3Rpb24geigkbGF5ZXIpIHtcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkei1pbmRleGVzLCAkbGF5ZXIpIHtcbiAgICBAd2FybiAnTm8gbGF5ZXIgZm91bmQgZm9yIGAjeyRsYXllcn1gIGluICR6LWluZGV4ZXMgbWFwLiBQcm9wZXJ0eSBvbWl0dGVkLic7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1nZXQoJHotaW5kZXhlcywgJGxheWVyKTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIPCfk5EgTGF5ZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICAgTGF5ZXIgICAgICAgICAgICAgICAgIHx8ICBFbGV2YXRpb25cbi8vICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyAgIDAgLSBCYXNlICAgICAgICAgICAgICB8fCAgMFxuLy8gICAxIC0gRmxhdCAgICAgICAgICAgICAgfHwgIDFcbi8vICAgMiAtIFJhaXNlZCAgICAgICAgICAgIHx8ICAyXG4vLyAgIDMgLSBPdmVybGF5ICAgICAgICAgICB8fCAgOFxuLy8gICA0IC0gUG9wLW91dCAgICAgICAgICAgfHwgIDI0XG4vLyAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gICBDdXN0b206IExlZnQgTmF2ICAgICAgfHwgIDE2XG4vLyAgIEN1c3RvbTogR2xvYmFsIEhlYWRlciB8fCAgMTJcbi8vXG5cbi8vIEJveCBzaGFkb3cgdmFyaWFibGVzXG5cbi8vLyBCb3ggc2hhZG93IGNvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAZ3JvdXAgZ2xvYmFsLWxheWVyXG4vLy8gQGV4YW1wbGUgYm94LXNoYWRvdzogMHB4IDNweCAzcHggMCAkYm94LXNoYWRvdztcbiRib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbi8vLyBSYWlzZWQgYm94IHNoYWRvd1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGdyb3VwIGdsb2JhbC1sYXllclxuJGJveC1zaGFkb3ctLXJhaXNlZDogMCAxcHggMnB4IDAgJGJveC1zaGFkb3c7XG5cbi8vLyBPdmVybGF5IGJveCBzaGFkb3dcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBncm91cCBnbG9iYWwtbGF5ZXJcbiRib3gtc2hhZG93LS1vdmVybGF5OiAwIDRweCA4cHggMCAkYm94LXNoYWRvdztcblxuLy8vIFN0aWNreSBuYXYgYm94IHNoYWRvd1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGdyb3VwIGdsb2JhbC1sYXllclxuJGJveC1zaGFkb3ctLXN0aWNreS1uYXY6IDAgNnB4IDEycHggMCAkYm94LXNoYWRvdztcblxuLy8vIFRlbXBvcmFyeSBuYXYgYm94IHNoYWRvd1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGdyb3VwIGdsb2JhbC1sYXllclxuJGJveC1zaGFkb3ctLXRlbXBvcmFyeS1uYXY6IDAgOHB4IDE2cHggMCAkYm94LXNoYWRvdztcblxuLy8vIFBvcCBvdXQgYm94IHNoYWRvd1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGdyb3VwIGdsb2JhbC1sYXllclxuJGJveC1zaGFkb3ctLXBvcC1vdXQ6IDAgMTJweCAyNHB4IDAgJGJveC1zaGFkb3c7XG5cbi8vIExheWVyIGJveC1zaGFkb3cgbWFwXG5cbi8vLyBNYXAgb2YgYm94IHNoYWRvd3MgdXNlZCBpbiB0aGUgYGxheWVyKClgIG1peGluXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGdyb3VwIGdsb2JhbC1sYXllclxuLy8vIEBleGFtcGxlIC0gQGluY2x1ZGUgbGF5ZXIoJ3JhaXNlZCcpO1xuJGxheWVyLXNoYWRvd3M6IChcbiAgYmFzZTogbm9uZSxcbiAgZmxhdDogbm9uZSxcbiAgcmFpc2VkOiAkYm94LXNoYWRvdy0tcmFpc2VkLFxuICBvdmVybGF5OiAkYm94LXNoYWRvdy0tb3ZlcmxheSxcbiAgcG9wLW91dDogJGJveC1zaGFkb3ctLXBvcC1vdXQsXG4gIHRlbXBvcmFyeS1uYXY6ICRib3gtc2hhZG93LS10ZW1wb3JhcnktbmF2LFxuICBzdGlja3ktbmF2OiAkYm94LXNoYWRvdy0tc3RpY2t5LW5hdixcbik7XG5cbi8vLyBMYXllciBtaXhpbiB0byBzZXQgYGJveC1zaGFkb3dgXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGxheWVyIC0gQSB2YWx1ZSBmcm9tIHRoZSBgJGxheWVyLXNoYWRvd3NgIG1hcFxuLy8vIEBncm91cCBnbG9iYWwtbGF5ZXJcbi8vLyBAZXhhbXBsZSAtIEBpbmNsdWRlIGxheWVyKCdyYWlzZWQnKTtcbkBtaXhpbiBsYXllcigkbGF5ZXIpIHtcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cygnY3NzLS11c2UtbGF5ZXInKSA9PSBmYWxzZSBvciAkY3NzLS11c2UtbGF5ZXIgPT0gdHJ1ZSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRsYXllci1zaGFkb3dzLCAkbGF5ZXIpIHtcbiAgICAgIGJveC1zaGFkb3c6ICN7bWFwLWdldCgkbGF5ZXItc2hhZG93cywgJGxheWVyKX07XG4gICAgfSBAZWxzZSB7XG4gICAgICBAd2FybiAnI3skbGF5ZXJ9IGlzIG5vdCBhIHZhbGlkIGxheWVyLic7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheWVyJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uL2J1dHRvbi9idXR0b24nO1xuXG5AaW5jbHVkZSBleHBvcnRzKCdjb3B5LWJ1dHRvbicpIHtcbiAgLiN7JHByZWZpeH0tLWJ0bi0tY29weSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgLiN7JHByZWZpeH0tLWJ0bl9faWNvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtKDVweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tY29weV9fZmVlZGJhY2sge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHRvcDogMS4ycmVtO1xuICAgIGxlZnQ6IDUwJTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgcmVkO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGxheWVyKCdvdmVybGF5Jyk7XG4gICAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdsYWJlbC0wMScpO1xuICAgICAgdG9wOiAxLjFyZW07XG4gICAgICBwYWRkaW5nOiAkc3BhY2luZy0yeHM7XG4gICAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgICBjb250ZW50OiBhdHRyKGRhdGEtZmVlZGJhY2spO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICB0b3A6IDAuODVyZW07XG4gICAgICB3aWR0aDogMC42cmVtO1xuICAgICAgaGVpZ2h0OiAwLjZyZW07XG4gICAgICBsZWZ0OiAtMC4zcmVtO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGludmVyc2UtMDI7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGludmVyc2UtMDI7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogJGludmVyc2UtMDI7XG4gICAgfVxuXG4gICAgJi0tZGlzcGxheWVkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9sYXlvdXQvbWluaS11bml0JztcbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9sYXlvdXQvc3BhY2luZyc7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8g8J+MjCBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgIFNpemUgaW4gcHggYmFzZWQgb24gMTZweCBiYXNlXG4vL1xuLy8gICBTcGFjaW5nIFNjYWxlXG4vLyAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gICA0eHMgIHx8ICAxcHhcbi8vICAgM3hzICB8fCAgMnB4XG4vLyAgIDJ4cyAgfHwgIDRweFxuLy8gICB4cyAgIHx8ICA4cHhcbi8vICAgc20gICB8fCAgMTJweFxuLy8gICBtZCAgIHx8ICAxNnB4XG4vLyAgIGxnICAgfHwgIDI0cHhcbi8vICAgeGwgICB8fCAgMzJweFxuLy8gICAyeGwgIHx8ICA0MHB4XG4vLyAgIDN4bCAgfHwgIDQ4cHhcbi8vICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vL1xuLy8gICBMYXlvdXQgU2NhbGVcbi8vICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyAgIDJ4cyAgfHwgIDE2cHhcbi8vICAgeHMgICB8fCAgMjRweFxuLy8gICBzbSAgIHx8ICAzMnB4XG4vLyAgIG1kICAgfHwgIDQ4cHhcbi8vICAgbGcgICB8fCAgNjRweFxuLy8gICB4bCAgIHx8ICA5NnB4XG4vLyAgIDJ4bCAgfHwgIDE2MHB4XG4vLyAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gMXJlbSBiYXNlbGluZSBzcGFjaW5nXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRzcGFjaW5nLWJhc2VsaW5lOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gMXB4IHNwYWNpbmcgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRzcGFjaW5nLTR4czogJHNwYWNpbmctYmFzZWxpbmUgKiAwLjA2MjUgIWRlZmF1bHQ7XG5cbi8vLyAycHggc3BhY2luZyBpbiByZW0gdW5pdHNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBncm91cCBnbG9iYWwtc3BhY2luZ1xuJHNwYWNpbmctM3hzOiAkc3BhY2luZy1iYXNlbGluZSAqIDAuMTI1ICFkZWZhdWx0O1xuXG4vLy8gNHB4IHNwYWNpbmcgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRzcGFjaW5nLTJ4czogJHNwYWNpbmctYmFzZWxpbmUgKiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gOHB4IHNwYWNpbmcgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRzcGFjaW5nLXhzOiAkc3BhY2luZy1iYXNlbGluZSAqIDAuNSAhZGVmYXVsdDtcblxuLy8vIDEycHggc3BhY2luZyBpbiByZW0gdW5pdHNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBncm91cCBnbG9iYWwtc3BhY2luZ1xuJHNwYWNpbmctc206ICRzcGFjaW5nLWJhc2VsaW5lICogMC43NSAhZGVmYXVsdDtcblxuLy8vIDE2cHggc3BhY2luZyBpbiByZW0gdW5pdHNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBncm91cCBnbG9iYWwtc3BhY2luZ1xuJHNwYWNpbmctbWQ6ICRzcGFjaW5nLWJhc2VsaW5lICFkZWZhdWx0O1xuXG4vLy8gMjRweCBzcGFjaW5nIGluIHJlbSB1bml0c1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGdyb3VwIGdsb2JhbC1zcGFjaW5nXG4kc3BhY2luZy1sZzogJHNwYWNpbmctYmFzZWxpbmUgKiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyAzMnB4IHNwYWNpbmcgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRzcGFjaW5nLXhsOiAkc3BhY2luZy1iYXNlbGluZSAqIDIgIWRlZmF1bHQ7XG5cbi8vLyA0MHB4IHNwYWNpbmcgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRzcGFjaW5nLTJ4bDogJHNwYWNpbmctYmFzZWxpbmUgKiAyLjUgIWRlZmF1bHQ7XG5cbi8vLyA0OHB4IHNwYWNpbmcgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRzcGFjaW5nLTN4bDogJHNwYWNpbmctYmFzZWxpbmUgKiAzICFkZWZhdWx0O1xuXG4vLy8gMTZweCBsYXlvdXQgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRsYXlvdXQtMnhzOiAkc3BhY2luZy1iYXNlbGluZSAhZGVmYXVsdDtcblxuLy8vIDI0cHggbGF5b3V0IGluIHJlbSB1bml0c1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGdyb3VwIGdsb2JhbC1zcGFjaW5nXG4kbGF5b3V0LXhzOiAkc3BhY2luZy1iYXNlbGluZSAqIDEuNSAhZGVmYXVsdDtcblxuLy8vIDMycHggbGF5b3V0IGluIHJlbSB1bml0c1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGdyb3VwIGdsb2JhbC1zcGFjaW5nXG4kbGF5b3V0LXNtOiAkc3BhY2luZy1iYXNlbGluZSAqIDIgIWRlZmF1bHQ7XG5cbi8vLyA0OHB4IGxheW91dCBpbiByZW0gdW5pdHNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBncm91cCBnbG9iYWwtc3BhY2luZ1xuJGxheW91dC1tZDogJHNwYWNpbmctYmFzZWxpbmUgKiAzICFkZWZhdWx0O1xuXG4vLy8gNjRweCBsYXlvdXQgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRsYXlvdXQtbGc6ICRzcGFjaW5nLWJhc2VsaW5lICogNCAhZGVmYXVsdDtcblxuLy8vIDk2cHggbGF5b3V0IGluIHJlbSB1bml0c1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGdyb3VwIGdsb2JhbC1zcGFjaW5nXG4kbGF5b3V0LXhsOiAkc3BhY2luZy1iYXNlbGluZSAqIDYgIWRlZmF1bHQ7XG5cbi8vLyAxNjBweCBsYXlvdXQgaW4gcmVtIHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAZ3JvdXAgZ2xvYmFsLXNwYWNpbmdcbiRsYXlvdXQtMnhsOiAkc3BhY2luZy1iYXNlbGluZSAqIDEwICFkZWZhdWx0O1xuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcblxuLy8vIEZvcm0gc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGZvcm1cbkBtaXhpbiBmb3JtIHtcbiAgLiN7JHByZWZpeH0tLWZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTA3O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZvcm0taXRlbSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4OiAxO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxhYmVsIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdsYWJlbC0wMScpO1xuXG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICAgIGZvbnQtd2VpZ2h0OiAkaW5wdXQtbGFiZWwtd2VpZ2h0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBsaW5lLWhlaWdodDogcmVtKDE2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxhYmVsIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyIHtcbiAgICAvLyBXaGVuIHRvb2x0aXAgdHJpZ2dlciBpcyBwdXQgaW4gZm9ybSBsYWJlbCB0aGUgdHJpZ2dlciBidXR0b24gc2hvdWxkIGZpdCBpbiB0aGUgc2l6ZSBvZiBsYWJlbFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9JQk0vY2FyYm9uLWNvbXBvbmVudHMtcmVhY3QvaXNzdWVzLzExNVxuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG4gIH1cblxuICAvLyBTa2VsZXRvbiBTdGF0ZVxuICAuI3skcHJlZml4fS0tbGFiZWwuI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIHdpZHRoOiByZW0oNzVweCk7XG4gICAgaGVpZ2h0OiByZW0oMTRweCk7XG4gIH1cblxuICBpbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gICAgZm9udC1mYW1pbHk6IGNhcmJvbi0tZm9udC1mYW1pbHkoJ21vbm8nKTtcbiAgfVxuXG4gIGlucHV0W2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19maWVsZC13cmFwcGVyW2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWFyZWFfX3dyYXBwZXJbZGF0YS1pbnZhbGlkXVxuICAgID4gLiN7JHByZWZpeH0tLXRleHQtYXJlYS0taW52YWxpZCxcbiAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dF9fd3JhcHBlcltkYXRhLWludmFsaWRdLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXSxcbiAgLiN7JHByZWZpeH0tLWNvbWJvLWJveFtkYXRhLWludmFsaWRdIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdpbnZhbGlkJyk7XG4gIH1cblxuICBpbnB1dFtkYXRhLWludmFsaWRdLFxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dF9fZmllbGQtd3JhcHBlcltkYXRhLWludmFsaWRdLFxuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhX193cmFwcGVyW2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRfX3dyYXBwZXJbZGF0YS1pbnZhbGlkXSxcbiAgLiN7JHByZWZpeH0tLXRpbWUtcGlja2VyW2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveFtkYXRhLWludmFsaWRdIHtcbiAgICB+IC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHJlbSgyMDBweCk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkc3VwcG9ydC0wMTtcbiAgICB9XG4gIH1cblxuICAvLyBGaXggZm9yIHJlZCByaW5nIHdoZW4gaW5wdXQgaXMgbWFya2VkIHJlcXVpcmVkIGluIEZpcmVmb3gsIHJlZnMgIzc0NFxuICBpbnB1dDpub3Qob3V0cHV0KTpub3QoW2RhdGEtaW52YWxpZF0pOi1tb3otdWktaW52YWxpZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdjYXB0aW9uLTAxJyk7XG4gICAgbWFyZ2luOiAkY2FyYm9uLS1zcGFjaW5nLTAyIDAgMDtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxhYmVsICsgLiN7JHByZWZpeH0tLWZvcm1fX2hlbHBlci10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiByZW0oLTZweCk7IC8vIHdoZW4gYm90aCBoZWxwZXIgdGV4dCBhbmQgbGFiZWwgYXJlIHJlbmRlcmVkXG4gIH1cblxuICAuI3skcHJlZml4fS0tZm9ybV9faGVscGVyLXRleHQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2hlbHBlci10ZXh0LTAxJyk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGFiZWwtLWRpc2FibGVkLFxuICAuI3skcHJlZml4fS0tZm9ybV9faGVscGVyLXRleHQtLWRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2Zvcm0nKSB7XG4gIEBpbmNsdWRlIGZvcm07XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAndmFycyc7XG5cbkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtZW5kLXAxIHtcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1lbmQtcDIge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgfVxufVxuXG4vKiBTdHJva2UgYW5pbWF0aW9ucyAqL1xuQGtleWZyYW1lcyBpbml0LXN0cm9rZSB7XG4gIDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMjQwO1xuICB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAkbG9hZGluZ19fZ2FwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3Ryb2tlLWVuZCB7XG4gIDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogJGxvYWRpbmdfX2dhcDtcbiAgfVxuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMjQwO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsb2FkaW5nXG4kbG9hZGluZ19fZ2FwOiA0MDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsb2FkaW5nXG4kbG9hZGluZ19fc2l6ZTogMTAuNXJlbTtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICdrZXlmcmFtZXMnO1xuQGltcG9ydCAnbWl4aW5zJztcbkBpbXBvcnQgJ3ZhcnMnO1xuXG4vLy8gTG9hZGluZyBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbG9hZGluZ1xuQG1peGluIGxvYWRpbmcge1xuICAuI3skcHJlZml4fS0tbG9hZGluZyB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX19sb2FkaW5nLS1zcGluO1xuICAgIHdpZHRoOiAkbG9hZGluZ19fc2l6ZTtcbiAgICBoZWlnaHQ6ICRsb2FkaW5nX19zaXplO1xuICB9XG5cbiAgLy8gQW5pbWF0aW9uIChTcGluIGJ5IGRlZmF1bHQpXG4gIC4jeyRwcmVmaXh9LS1sb2FkaW5nX19zdmcge1xuICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxvYWRpbmdfX3N2ZyBjaXJjbGUge1xuICAgIHN0cm9rZS13aWR0aDogODtcbiAgICBzdHJva2UtbGluZWNhcDogYnV0dDtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAyNDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZ19fc3Ryb2tlIHtcbiAgICBzdHJva2U6ICRpbnRlcmFjdGl2ZS0wNDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogJGxvYWRpbmdfX2dhcDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1sb2FkaW5nLS1zdG9wIHtcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fX2xvYWRpbmctLXN0b3A7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZy0tc21hbGwge1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBjaXJjbGUge1xuICAgICAgc3Ryb2tlLXdpZHRoOiAxMjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZy0tc21hbGwgLiN7JHByZWZpeH0tLWxvYWRpbmdfX3N2ZyB7XG4gICAgc3Ryb2tlOiAkaW50ZXJhY3RpdmUtMDQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZ19fYmFja2dyb3VuZCB7XG4gICAgc3Ryb2tlOiAkdWktMDM7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHVpLTAyLCAwLjYpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tc2xvdy0wMiBtb3Rpb24oc3RhbmRhcmQsIGV4cHJlc3NpdmUpO1xuICAgIHotaW5kZXg6IHooJ292ZXJsYXknKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1sb2FkaW5nLW92ZXJsYXktLXN0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnbG9hZGluZycpIHtcbiAgQGluY2x1ZGUgbG9hZGluZztcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEFuaW1hdGlvbnMgLSBMb2FkaW5nXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsb2FkaW5nXG5AbWl4aW4gYW5pbWF0aW9uX19sb2FkaW5nLS1zcGluIHtcbiAgLy8gQW5pbWF0ZSB0aGUgY29udGFpbmVyXG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGU7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNjkwbXM7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuXG4gIC8vIEFuaW1hdGUgdGhlIHN0cm9rZVxuICBzdmcgY2lyY2xlIHtcbiAgICBhbmltYXRpb24tbmFtZTogaW5pdC1zdHJva2U7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMG1zO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRjYXJib24tLXN0YW5kYXJkLWVhc2luZztcbiAgfVxufVxuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGxvYWRpbmdcbkBtaXhpbiBhbmltYXRpb25fX2xvYWRpbmctLXN0b3Age1xuICAvLyBBbmltYXRlIHRoZSBjb250YWluZXJcbiAgYW5pbWF0aW9uOiByb3RhdGUtZW5kLXAxIDcwMG1zICRjYXJib24tLWVhc2Utb3V0IGZvcndhcmRzLFxuICAgIHJvdGF0ZS1lbmQtcDIgNzAwbXMgJGNhcmJvbi0tZWFzZS1vdXQgNzAwbXMgZm9yd2FyZHM7XG5cbiAgLy8gQW5pbWF0ZSB0aGUgc3Ryb2tlXG4gICYgc3ZnIGNpcmNsZSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHN0cm9rZS1lbmQ7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3MDBtcztcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkY2FyYm9uLS1lYXNlLW91dDtcbiAgICBhbmltYXRpb24tZGVsYXk6IDcwMG1zO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL21vdGlvbi9tb3Rpb24nO1xuXG4vLy8gVXNlZCBwcmltYXJpbHkgZm9yIHJlbW92aW5nIGVsZW1lbnRzIGZyb20gdGhlIHNjcmVlblxuLy8vIEB0eXBlIEZ1bmN0aW9uXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGNhcmJvbi0tZWFzZS1pbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAsIDEsIDEpO1xuXG4vLy8gVXNlZCBmb3IgYWRkaW5nIGVsZW1lbnRzIHRvIHRoZSBzY3JlZW4gb3IgY2hhbmdpbmcgb24tc2NyZWVuIHN0YXRlcyBhdCBhIHVzZXJzJ3MgaW5wdXRcbi8vLyBAdHlwZSBGdW5jdGlvblxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC1tb3Rpb25cbiRjYXJib24tLWVhc2Utb3V0OiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSk7XG5cbi8vLyBVc2VkIGZvciB0aGUgbWFqb3JpdHkgb2YgYW5pbWF0aW9uc1xuLy8vIEB0eXBlIEZ1bmN0aW9uXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjEsIDEpO1xuXG4vLy8gQmFzZSB0cmFuc2l0aW9uIGR1cmF0aW9uXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJHRyYW5zaXRpb24tLWJhc2U6IDI1MG1zO1xuXG4vLy8gRXhwYW5zaW9uIGR1cmF0aW9uXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJHRyYW5zaXRpb24tLWV4cGFuc2lvbjogMzAwbXM7XG5cbi8vLyBOZXcgZWFzaW5nIGR1cmF0aW9uc1xuXG4vLy8gRXhwYW5zaW9uIGR1cmF0aW9uXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGR1cmF0aW9uLS1mYXN0LTAxOiA3MG1zO1xuXG4vLy8gRXhwYW5zaW9uIGR1cmF0aW9uXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGR1cmF0aW9uLS1mYXN0LTAyOiAxMTBtcztcblxuLy8vIEV4cGFuc2lvbiBkdXJhdGlvblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC1tb3Rpb25cbiRkdXJhdGlvbi0tbW9kZXJhdGUtMDE6IDE1MG1zO1xuXG4vLy8gRXhwYW5zaW9uIGR1cmF0aW9uXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMjogMjQwbXM7XG5cbi8vLyBFeHBhbnNpb24gZHVyYXRpb25cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kZHVyYXRpb24tLXNsb3ctMDE6IDQwMG1zO1xuXG4vLy8gRXhwYW5zaW9uIGR1cmF0aW9uXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGR1cmF0aW9uLS1zbG93LTAyOiA3MjBtcztcblxuLy8vIERlZmF1bHQgZWFzZS1pbiBmb3IgY29tcG9uZW50c1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHR5cGUgRnVuY3Rpb25cbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGNhcmJvbi0tZWFzZS1pbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMzgsIDAuOSk7XG5cbi8vLyBEZWZhdWx0IGVhc2Utb3V0IGZvciBjb21wb25lbnRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBGdW5jdGlvblxuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kY2FyYm9uLS1lYXNlLW91dDogY3ViaWMtYmV6aWVyKDAuMiwgMCwgMSwgMC45KTtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciBjb21wb25lbnRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBGdW5jdGlvblxuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc6IGN1YmljLWJlemllcigwLjIsIDAsIDAuMzgsIDAuOSk7XG5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4vLy8gQGFsaWFzIGR1cmF0aW9uLS1mYXN0LTAyXG4kdHJhbnNpdGlvbi0tYmFzZTogJGR1cmF0aW9uLS1mYXN0LTAyO1xuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuLy8vIEBhbGlhcyBkdXJhdGlvbi0tbW9kZXJhdGUtMDJcbiR0cmFuc2l0aW9uLS1leHBhbnNpb246ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDI7XG5cbi8vLyBHZXQgdGhlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uIGZvciBhIGdpdmVuIGVhc2luZyBhbmQgbW90aW9uIG1vZGUuXG4vLy8gRWFzaW5ncyB0aGF0IGFyZSBjdXJyZW50bHkgc3VwcG9ydGVkIGluY2x1ZGU6IGBzdGFuZGFyZGAsIGBlbnRyYW5jZWAsIGFuZCBgZXhpdGAuXG4vLy8gV2UgYWxzbyBvZmZlciB0d28gbW9kZXM6IGBwcm9kdWN0aXZlYCBhbmQgYGV4cHJlc3NpdmVgLlxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGVhc2luZyBjdXJ2ZSB0byBhcHBseVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbW9kZSBbcHJvZHVjdGl2ZV0gLSBUaGUgbW9kZSBmb3IgdGhlIGVhc2luZyBjdXJ2ZSB0byB1c2Vcbi8vLyBAcGFyYW0ge01hcH0gJGVhc2luZ3MgWyRjYXJib24tLWVhc2luZ3NdIC0gTWFwIG9mIGNvbXBvbmVudCBlYXNpbmdzXG4vLy8gQHJldHVybiB7RnVuY3Rpb259IEEgQ1NTIGN1YmljLWJlemllciBmdW5jdGlvblxuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG5AZnVuY3Rpb24gbW90aW9uKCRuYW1lLCAkbW9kZTogcHJvZHVjdGl2ZSwgJGVhc2luZ3M6ICRjYXJib24tLWVhc2luZ3MpIHtcbiAgQHJldHVybiBjYXJib24tLW1vdGlvbigkbmFtZSwgJG1vZGUsICRlYXNpbmdzKTtcbn1cblxuLy8vIEdldCB0aGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24gZm9yIGEgZ2l2ZW4gZWFzaW5nIGFuZCBtb3Rpb24gbW9kZS5cbi8vLyBFYXNpbmdzIHRoYXQgYXJlIGN1cnJlbnRseSBzdXBwb3J0ZWQgaW5jbHVkZTogc3RhbmRhcmQsIGVudHJhbmNlLCBhbmQgZXhpdC5cbi8vLyBXZSBhbHNvIG9mZmVyIHR3byBtb2RlczogcHJvZHVjdGl2ZSBhbmQgZXhwcmVzc2l2ZS5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBlYXNpbmcgY3VydmUgdG8gYXBwbHlcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1vZGUgLSBUaGUgbW9kZSBmb3IgdGhlIGVhc2luZyBjdXJ2ZSB0byB1c2Vcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuLy8vIEBhbGlhcyBjYXJib24tLW1vdGlvblxuQG1peGluIG1vdGlvbigkbmFtZSwgJG1vZGUpIHtcbiAgQGluY2x1ZGUgY2FyYm9uLS1tb3Rpb24oJG5hbWUsICRtb2RlKTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9idXR0b24vYnV0dG9uJztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5AaW1wb3J0ICcuLi9sb2FkaW5nL2xvYWRpbmcnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvdHlwZS9zdHlsZXMnO1xuXG4vLy8gRmlsZSB1cGxvYWRlciBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgZmlsZS11cGxvYWRlclxuQG1peGluIGZpbGUtdXBsb2FkZXIge1xuICAuI3skcHJlZml4fS0tZmlsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZS0taW52YWxpZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIGZpbGw6ICRzdXBwb3J0LTAxO1xuICB9XG5cbiAgLy8gVE9ETzogc3luYyB3aXRoIHR5cGVcbiAgLiN7JHByZWZpeH0tLWZpbGUtLWxhYmVsIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdoZWFkaW5nLTAxJyk7XG5cbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBoaWRkZW47XG4gIH1cblxuICAvLyBUaGlzIGNsYXNzIGlzIG9mIG9sZCBtYXJrdXAgd2l0aCBcInNlbGVjdCBmaWxlXCIgYnV0dG9uXG4gIC8vIE5ldyBjb2RlIHNob3VsZCB1c2UgbGluay1zdHlsZSBcInNlbGVjdCBmaWxlXCIgVUkgKGAuYngtLWZpbGUtYnJvd3NlLWJ0bmApXG4gIC8vIFRPRE86IGRlcHJlY2F0ZSB0aGlzIGJsb2NrXG4gIC4jeyRwcmVmaXh9LS1maWxlLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg2NHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1sYWJlbC1kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRjYXJib24tLXNwYWNpbmctMDY7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZV9fc2VsZWN0ZWQtZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBtYXgtd2lkdGg6IHJlbSgzMDBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBwYWRkaW5nOiAwICRjYXJib24tLXNwYWNpbmctMDMgMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWlubGluZS1sb2FkaW5nX19hbmltYXRpb24sXG4gICAgLiN7JHByZWZpeH0tLWxvYWRpbmcge1xuICAgICAgcmlnaHQ6IC0wLjI1cmVtOyAvLyBvZmZzZXQgZm9yIGxvYWRpbmcgc3ZnIGNvbnRhaW5lclxuICAgICAgd2lkdGg6IDEuNXJlbTtcbiAgICAgIGhlaWdodDogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zZWxlY3RlZC1maWxlLS1pbnZhbGlkIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdpbnZhbGlkJyk7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zZWxlY3RlZC1maWxlLS1pbnZhbGlkICsgLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IHJlbSgyMDBweCk7XG4gICAgY29sb3I6ICRzdXBwb3J0LTAxO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAwIDAgJGNhcmJvbi0tc3BhY2luZy0wMyAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZpbGUtZmlsZW5hbWUge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93KDMwMHB4KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIHBhZGRpbmc6IDFweCAwO1xuICAgIC8qcnRsOmlnbm9yZSovXG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyAvKnJ0bDp7ZmxleC1lbmR9Ki9cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zdGF0ZS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC4jeyRwcmVmaXh9LS1sb2FkaW5nX19zdmcge1xuICAgICAgc3Ryb2tlOiAkdWktMDU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZpbGVfX3N0YXRlLWNvbnRhaW5lciAuI3skcHJlZml4fS0tZmlsZS1jb21wbGV0ZSB7XG4gICAgZmlsbDogJHN1cHBvcnQtMDI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdib3JkZXInKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZV9fc3RhdGUtY29udGFpbmVyIC4jeyRwcmVmaXh9LS1maWxlLWNsb3NlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnZmlsZS11cGxvYWRlcicpIHtcbiAgQGluY2x1ZGUgZmlsZS11cGxvYWRlcjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9mb3JtL2Zvcm0nO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuXG4vLy8gQ2hlY2tib3ggc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGNoZWNrYm94XG5AbWl4aW4gY2hlY2tib3gge1xuICAvLyBTcGFjaW5nIGJldHdlZW4gY2hlY2tib3hlc1xuICAuI3skcHJlZml4fS0tZm9ybS1pdGVtLiN7JHByZWZpeH0tLWNoZWNrYm94LXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg4cHgpO1xuICB9XG5cbiAgLy8gU3BhY2luZyBhYm92ZSBjb2xsZWN0aW9uIG9mIGNoZWNrYm94ZXNcbiAgLiN7JHByZWZpeH0tLWZvcm0taXRlbS4jeyRwcmVmaXh9LS1jaGVja2JveC13cmFwcGVyOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IHJlbSgzcHgpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHNwYWNpbmcgYWJvdmUgY29sbGVjdGlvbiBvZiBjaGVja2JveGVzIGlmIGxhYmVsIGlzIHByZXNlbnRcbiAgLiN7JHByZWZpeH0tLWxhYmVsICsgLiN7JHByZWZpeH0tLWZvcm0taXRlbS4jeyRwcmVmaXh9LS1jaGVja2JveC13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLy8gU3BhY2luZyBiZWxvdyBjb2xsZWN0aW9uIG9mIGNoZWNrYm94ZXNcbiAgLiN7JHByZWZpeH0tLWZvcm0taXRlbS4jeyRwcmVmaXh9LS1jaGVja2JveC13cmFwcGVyOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDNweCk7XG4gIH1cblxuICAvLyBWaXN1YWxseSwgd2UnbGwgaGlkZSB0aGUgY2hlY2tib3ggaW5wdXQgYW5kIGNyZWF0ZSBvdXIgb3duIHN0eWxlZCB2ZXJzaW9uXG4gIC8vIHRvIG1hdGNoIHRoZSBzcGVjcy5cbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94IHtcbiAgICBAaW5jbHVkZSBoaWRkZW47XG4gIH1cblxuICAvLyBUaGUgbGFiZWwgY29ycmVzcG9uZHMgdG8gdGhlIGNvbnRlbnQgaW5zaWRlIG9mIHRoZSBgbGFiZWxgIHRhZy4gU2luY2Ugd2UncmVcbiAgLy8gY3JlYXRpbmcgb3VyIG93biBjaGVja2JveCBzdHlsZSwgd2UnbGwgbmVlZCB0byBwb3NpdGlvbiB0aGlzIGluIG9yZGVyIHRvXG4gIC8vIGFjY29tb2RhdGUgdGhlIHNwYWNpbmcgbmVlZGVkIGZvciB0aGUgY2hlY2tib3guXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oMjZweCk7IC8vd2lkdGggb2YgY2hlY2tib3ggMTZweCArIDEwcHggb2YgcGFkZGluZ1xuICAgIG1pbi1oZWlnaHQ6IHJlbSgyNHB4KTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC8vIFNwYWNpbmcgZm9yIHByZXNlbnRhdGlvbmFsIGNoZWNrYm94XG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgLy8gQWNjb3JkaW5nIHRvIHRoZSBzcGVjLCB3ZSdsbCB3YW50IHRoZSBib3VuZGluZyBib3ggZm9yIG91ciBjaGVja2JveCB0b1xuICAgIC8vIGJlIDE2cHguIFRoZSBib3JkZXIgc2l6ZSB3aWxsIGJlIHdoYXQgd2lsbCBiZSB1cGRhdGVkIGR1cmluZyB0aGVcbiAgICAvLyBkaWZmZXJlbnQgY2hlY2tib3ggc3RhdGVzLlxuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgbWFyZ2luOiByZW0oMnB4KTtcblxuICAgIC8vIFdlIG5lZWQgdG8gcG9zaXRpb24gdGhlIHBzZXVkby1lbGVtZW50IGFic29sdXRlbHkgaW4gdGhlIHNwYWNlIHRoYXQgd2UndmVcbiAgICAvLyBjcmVhdGVkIHdpdGggdGhlIHBhZGRpbmcgZnJvbSB0aGUgbGFiZWwgaXRzZWxmLiBXZSBwb3NpdGlvbiBvbmx5IHdpdGhcbiAgICAvLyBgdG9wYCBzaW5jZSB3ZSBkb24ndCB3YW50IHRoZSBjaGVja2JveCB0byBiZSBjZW50ZXJlZCB2ZXJ0aWNhbGx5IHdpdGggdGhlXG4gICAgLy8gdGV4dCBvdmVyZmxvd3MuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiByZW0oMnB4KTtcblxuICAgIC8vIENoZWNrYm94ZXMgd2l0aCBhIGJhY2tncm91bmQgY29sb3IgbG9vayB2aXN1YWxseSBvZmYgYWdhaW5zdCBhIHBhcmVudCBjb250YWluZXIuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHVpLTA1O1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgfVxuXG4gIC8vIENyZWF0ZSB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgY2hlY2sgaW4gdGhlIGBhZnRlcmAgcHNldWRvLWVsZW1lbnRcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IHJlbSg2cHgpO1xuICAgIHRvcDogcmVtKDhweCk7XG4gICAgd2lkdGg6IHJlbSg3cHgpO1xuICAgIGhlaWdodDogcmVtKDNweCk7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRpbnZlcnNlLTAxO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkaW52ZXJzZS0wMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbiAgICBtYXJnaW4tdG9wOiByZW0oLTNweCk7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gQ2hlY2tlZFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAvLyBVcGRhdGUgcHJvcGVydGllcyBmb3IgY2hlY2tlZCBjaGVja2JveFxuICAuI3skcHJlZml4fS0tY2hlY2tib3g6Y2hlY2tlZCArIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSArIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtc3RhdGU9J3RydWUnXTo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtc3RhdGU9J21peGVkJ106OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGljb24tMDE7XG4gICAgYm9yZGVyLWNvbG9yOiAkaWNvbi0wMTtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgfVxuXG4gIC8vIERpc3BsYXkgdGhlIGNoZWNrXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDpjaGVja2VkICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjphZnRlcixcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsW2RhdGEtY29udGFpbmVkLWNoZWNrYm94LXN0YXRlPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG5cbiAgLy8gSW5kZXRlcm1pbmF0ZSBzeW1ib2xcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUgKyAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWw6OmFmdGVyLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtc3RhdGU9J21peGVkJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwZGVnKTtcbiAgICBib3JkZXItbGVmdDogMCBzb2xpZCAkaW52ZXJzZS0wMTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGludmVyc2UtMDE7XG4gICAgd2lkdGg6IHJlbSg4cHgpO1xuICAgIHRvcDogcmVtKDExcHgpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEZvY3VzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC8vIFVuY2hlY2tlZFxuICAuI3skcHJlZml4fS0tY2hlY2tib3g6Zm9jdXMgKyAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWw6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsX19mb2N1czo6YmVmb3JlLFxuICAvLyBDaGVja2VkXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDpjaGVja2VkOmZvY3VzICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbFtkYXRhLWNvbnRhaW5lZC1jaGVja2JveC1zdGF0ZT0ndHJ1ZSddLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsX19mb2N1czo6YmVmb3JlLFxuICAvLyBJbmRldGVybWluYXRlXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbFtkYXRhLWNvbnRhaW5lZC1jaGVja2JveC1zdGF0ZT0nbWl4ZWQnXS4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbF9fZm9jdXM6OmJlZm9yZSB7XG4gICAgLy8gV2UgY2FuJ3QgdXNlIG91dGxpbmUgaGVyZSBiZWNhdXNlIG9mIHRoZSByb3VuZGVkIGNvcm5lcnMgc28gaGF2ZSB0byBpbmNyZWFzZSB0aGUgd2lkdGgvaGVpZ2h0IHRvIGZha2UgYW4gb3V0bGluZS5cbiAgICBib3JkZXItY29sb3I6ICRmb2N1cztcbiAgICBib3JkZXItd2lkdGg6IDNweDtcbiAgICB3aWR0aDogcmVtKDIwcHgpO1xuICAgIGhlaWdodDogcmVtKDIwcHgpO1xuICAgIGxlZnQ6IC0ycHg7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIERpc2FibGVkXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC8vIFdvcmthcm91bmQgZm9yOiBodHRwczovL2RldmVsb3Blci5taWNyb3NvZnQuY29tL2VuLXVzL21pY3Jvc29mdC1lZGdlL3BsYXRmb3JtL2lzc3Vlcy8xMTI5NTIzMVxuICBbZGlzYWJsZWRdIH4gXyB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94OmRpc2FibGVkICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtZGlzYWJsZWQ9J3RydWUnXSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94OmRpc2FibGVkICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbFtkYXRhLWNvbnRhaW5lZC1jaGVja2JveC1kaXNhYmxlZD0ndHJ1ZSddOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94OmNoZWNrZWQ6ZGlzYWJsZWQgKyAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWw6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94OmluZGV0ZXJtaW5hdGU6ZGlzYWJsZWRcbiAgICArIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtc3RhdGU9J3RydWUnXVtkYXRhLWNvbnRhaW5lZC1jaGVja2JveC1kaXNhYmxlZD0ndHJ1ZSddOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbFtkYXRhLWNvbnRhaW5lZC1jaGVja2JveC1zdGF0ZT0nbWl4ZWQnXVtkYXRhLWNvbnRhaW5lZC1jaGVja2JveC1kaXNhYmxlZD0ndHJ1ZSddOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdjaGVja2JveCcpIHtcbiAgQGluY2x1ZGUgY2hlY2tib3g7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGlzdCBCb3hcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0taGVscGVycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXllcic7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbGlzdC1ib3hcbiRsaXN0LWJveC13aWR0aDogMTAwJTtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsaXN0LWJveFxuJGxpc3QtYm94LWhlaWdodDogcmVtKDQwcHgpO1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGxpc3QtYm94XG4kbGlzdC1ib3gtaW5saW5lLWhlaWdodDogJGxpc3QtYm94LWhlaWdodDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsaXN0LWJveFxuJGxpc3QtYm94LW1lbnUtd2lkdGg6IHJlbSgzMDBweCk7XG5cbi8vLyBMaXN0IGJveCBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbGlzdC1ib3hcbkBtaXhpbiBsaXN0Ym94IHtcbiAgLy8gVGhlIG92ZXJhbGwgY29udGFpbmVyIGVsZW1lbnQgZm9yIGEgYGxpc3QtYm94YC4gSGFzIHR3byB2YXJpYW50cyxcbiAgLy8gYGRpc2FibGVkYCBhbmQgYGlubGluZWAuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fd3JhcHBlci0taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdyaWQtdGVtcGxhdGU6IGF1dG8gYXV0byAvIGF1dG8gYXV0bztcbiAgICBncmlkLWdhcDogcmVtKDRweCk7XG5cbiAgICAuI3skcHJlZml4fS0tbGFiZWwge1xuICAgICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1sYWJlbCxcbiAgICAuI3skcHJlZml4fS0tZm9ybV9faGVscGVyLXRleHQsXG4gICAgLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1mb3JtX19oZWxwZXItdGV4dCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnQge1xuICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94IHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6ICRsaXN0LWJveC13aWR0aDtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBtYXgtaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgdHJhbnNpdGlvbjogYWxsICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZDpob3Zlci4jeyRwcmVmaXh9LS1saXN0LWJveC0tbGlnaHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveCAuI3skcHJlZml4fS0tdGV4dC1pbnB1dCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLy8gaW52YWxpZCBzdGF0ZXNcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19pbnZhbGlkLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRjYXJib24tLXNwYWNpbmctMDQ7XG4gICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDg7XG4gICAgZmlsbDogJHN1cHBvcnQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZSAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ludmFsaWQtaWNvbiB7XG4gICAgdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94W2RhdGEtaW52YWxpZF0gLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYXJib24tLW1pbmktdW5pdHMoOCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXS4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgcGFkZGluZy1yaWdodDogY2FyYm9uLS1taW5pLXVuaXRzKDcpO1xuICB9XG5cbiAgLy8gTGlnaHQgdmFyaWF0aW9uIGZvciAnbGlzdC1ib3gnXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tbGlnaHQuI3skcHJlZml4fS0tbGlzdC1ib3gtLWV4cGFuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgZm9yIGBsaXN0LWJveGBcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1saWdodC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCxcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkOmZvY3VzIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQuI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbGFiZWwge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pY29uID4gc3ZnIHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWljb24ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtOmhvdmVyLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19zZWxlY3Rpb246aG92ZXIge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAvLyBkaXNhYmxlZCAmJiBpbnZhbGlkXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkLiN7JHByZWZpeH0tLWxpc3QtYm94W2RhdGEtaW52YWxpZF0uI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhcmJvbi0tbWluaS11bml0cyg0KTtcbiAgfVxuXG4gIC8vIElubGluZSB2YXJpYW50IGZvciBhIGBsaXN0LWJveGBcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LiN7JHByZWZpeH0tLWxpc3QtYm94LS1pbmxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci13aWR0aDogMDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZFxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZS4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQ6aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LiN7JHByZWZpeH0tLWxpc3QtYm94LS1pbmxpbmUsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQge1xuICAgIHBhZGRpbmc6IDAgY2FyYm9uLS1taW5pLXVuaXRzKDQpIDAgJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWljb24ge1xuICAgIHJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LiN7JHByZWZpeH0tLWxpc3QtYm94LS1pbmxpbmVcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ludmFsaWQtaWNvbiB7XG4gICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDc7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZSAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2xhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAvLyBUaGUgZmllbGQgd2UgdXNlIGZvciBpbnB1dCwgc2hvd2luZyBzZWxlY3Rpb24sIGV0Yy5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgcGFkZGluZzogMCAkY2FyYm9uLS1zcGFjaW5nLTA5IDAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkW2Rpc2FibGVkXSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLy8gcG9wdWxhdGVkIGlucHV0IGZpZWxkXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRbdmFsdWVdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYXJib24tLW1pbmktdW5pdHMoOSk7XG4gIH1cblxuICAvLyBpbnZhbGlkICYmIHBvcHVsYXRlZCBpbnB1dCBmaWVsZFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dFt2YWx1ZV0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg5OHB4KTsgLy8gdG8gYWNjb3VudCBmb3IgY2xlYXIgaW5wdXQgYnV0dG9uIG91dGxpbmVcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveFtkYXRhLWludmFsaWRdXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZFxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0W3ZhbHVlXVxuICAgICsgLiN7JHByZWZpeH0tLWxpc3QtYm94X19pbnZhbGlkLWljb24ge1xuICAgIHJpZ2h0OiByZW0oNjZweCk7IC8vIHRvIGFjY291bnQgZm9yIGNsZWFyIGlucHV0IGJ1dHRvbiBvdXRsaW5lXG4gIH1cblxuICAvLyBlbXB0eSBpbnB1dCBmaWVsZFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0W3ZhbHVlPScnXSB7XG4gICAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wOTtcbiAgfVxuXG4gIC8vIGludmFsaWQgJiYgZW1wdHkgaW5wdXQgZmllbGRcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94W2RhdGEtaW52YWxpZF1cbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRbdmFsdWU9JyddIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYXJib24tLW1pbmktdW5pdHMoOSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dFt2YWx1ZT0nJ11cbiAgICArIC4jeyRwcmVmaXh9LS1saXN0LWJveF9faW52YWxpZC1pY29uIHtcbiAgICByaWdodDogcmVtKDQwcHgpOyAvLyB0byBhY2NvdW50IGZvciBjbGVhciBpbnB1dCBidXR0b24gb3V0bGluZVxuICB9XG5cbiAgLy8gTGFiZWwgZm9yIGEgYGxpc3QtYm94X19maWVsZGBcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19sYWJlbCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAvLyBNZW51IHN0YXR1cyBpbnNpZGUgb2YgYSBgbGlzdC1ib3hfX2ZpZWxkYFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWljb24gPiBzdmcge1xuICAgIGZpbGw6ICRpY29uLTAxO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pY29uLS1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgLy8gU2VsZWN0aW9uIGluZGljYXRvciBmb3IgYSBgbGlzdC1ib3hfX2ZpZWxkYFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX3NlbGVjdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiByZW0oMzNweCk7IC8vIHRvIHByZXNlcnZlIC41cmVtIHNwYWNlIGJldHdlZW4gaWNvbnMgYWNjb3JkaW5nIHRvIHNwZWNcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiByZW0oMzBweCk7XG4gICAgd2lkdGg6IHJlbSgzMHB4KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fc2VsZWN0aW9uID4gc3ZnIHtcbiAgICBmaWxsOiAkaWNvbi0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19zZWxlY3Rpb246Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fc2VsZWN0aW9uID4gc3ZnIHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAvLyBNb2RpZmllciBmb3IgYSBzZWxlY3Rpb24gdG8gc2hvdyB0aGF0IG11bHRpcGxlIHNlbGVjdGlvbnMgaGF2ZSBiZWVuIG1hZGVcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19zZWxlY3Rpb24tLW11bHRpIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdsYWJlbC0wMScpO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLTAyO1xuICAgIGhlaWdodDogcmVtKDI0cHgpO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwYWRkaW5nOiByZW0oOHB4KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMnB4KTsgLy8gQWxpZ24gd2l0aCBob3ZlciBjaXJjbGUgb2YgWCBidXR0b25cbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgxMHB4KTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0oMTJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX3NlbGVjdGlvbi0tbXVsdGkgPiBzdmcge1xuICAgIGZpbGw6ICRpbnZlcnNlLTAxO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0oNHB4KTtcbiAgICB3aWR0aDogcmVtKDIwcHgpO1xuICAgIGhlaWdodDogcmVtKDIwcHgpO1xuICAgIHBhZGRpbmc6IHJlbSgycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19zZWxlY3Rpb24tLW11bHRpID4gc3ZnOmhvdmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXNlY29uZGFyeTtcbiAgICBmaWxsOiAkaWNvbi0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fc2VsZWN0aW9uLS1tdWx0aTpmb2N1cyxcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19zZWxlY3Rpb24tLW11bHRpOmhvdmVyIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLy8gRGVzY2VuZGFudCBvZiBhIGBsaXN0LWJveGAgdGhhdCBkaXNwbGF5cyBhIGxpc3Qgb2Ygb3B0aW9ucyB0byBzZWxlY3RcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICRsaXN0LWJveC13aWR0aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgbWF4LWhlaWdodDogcmVtKDE0MHB4KTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHotaW5kZXg6IHooJ2Ryb3Bkb3duJyk7XG4gIH1cblxuICAvLyBEZXNjZW5kYW50IG9mIGEgYGxpc3QtYm94X19tZW51YCB0aGF0IHJlcHJlc2VudHMgYSBzZWxlY3Rpb24gZm9yIGEgY29udHJvbFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbjpob3ZlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW06Zmlyc3Qtb2YtdHlwZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb24ge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW06aG92ZXJcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbTpob3ZlclxuICAgICsgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1cbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWRcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbTpob3ZlclxuICAgICsgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1cbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdWktMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogcmVtKDE2cHgpO1xuICAgIHBhZGRpbmc6IHJlbSgxMXB4KSAwO1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHVpLTAzO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogcmVtKDExcHgpIHJlbSgxNnB4KTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWRcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbTpob3ZlclxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb24sXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgbWFyZ2luOiAwICRjYXJib24tLXNwYWNpbmctMDM7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbS0taGlnaGxpZ2h0ZWRcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbS0taGlnaGxpZ2h0ZWRcbiAgICArIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbS0taGlnaGxpZ2h0ZWRcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbS0tYWN0aXZlIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHNlbGVjdGVkLXVpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb24ge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbSAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWwtdGV4dCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gVHdlYWtzIGZvciBkZXNjZW5kYW50c1xuICAvLyBXaGVuIGhhbmRsaW5nIGlucHV0LCB3ZSBuZWVkIHRvIHRhcmdldCBub2RlcyB0aGF0IHNwZWNpZmljYWxseSBvcHQtaW4gdG9cbiAgLy8gdGhlIGBjb21ib2JveGAgcm9sZSBpbiBvcmRlciB0byBtYWtlIHN1cmUgdGhlIHRleHQgaW5wdXQgaXMgc3R5bGVkXG4gIC8vIGNvcnJlY3RseS5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94IGlucHV0W3JvbGU9J2NvbWJvYm94J10ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnbGlzdC1ib3gnKSB7XG4gIEBpbmNsdWRlIGxpc3Rib3g7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29tYm9Cb3hcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vbGlzdC1ib3gvbGlzdC1ib3gnO1xuXG4vLy8gQ29tYm8gYm94IHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBjb21iby1ib3hcbkBtaXhpbiBjb21iby1ib3gge1xuICAuI3skcHJlZml4fS0tY29tYm8tYm94IC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0IHtcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgICZbZGlzYWJsZWRdOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb21iby1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWV4cGFuZGVkXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb21iby1ib3ggLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCxcbiAgLiN7JHByZWZpeH0tLWNvbWJvLWJveC4jeyRwcmVmaXh9LS1saXN0LWJveFtkYXRhLWludmFsaWRdXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdjb21iby1ib3gnKSB7XG4gIEBpbmNsdWRlIGNvbWJvLWJveDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSYWRpb1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9mb3JtL2Zvcm0nO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuXG4vLy8gUmFkaW8gYnV0dG9uIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCByYWRpby1idXR0b25cbkBtaXhpbiByYWRpby1idXR0b24ge1xuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogcmVtKDZweCk7XG4gIH1cblxuICAvLyB2ZXJ0aWNhbCByYWRpbyBidXR0b25cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi1ncm91cC0tdmVydGljYWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAmLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi1ncm91cC0tbGFiZWwtbGVmdCB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24ge1xuICAgIEBpbmNsdWRlIGhpZGRlbjtcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2FwcGVhcmFuY2Uge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6ICRyYWRpby1ib3JkZXItd2lkdGggc29saWQgJGljb24tMDE7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgaGVpZ2h0OiByZW0oMThweCk7XG4gICAgd2lkdGg6IHJlbSgxOHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uOmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fYXBwZWFyYW5jZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlci1jb2xvcjogJGljb24tMDE7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAwLjVyZW07XG4gICAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLTAxO1xuXG4gICAgICAvLyBBbGxvdyB0aGUgc2VsZWN0ZWQgYnV0dG9uIHRvIGJlIHNlZW4gaW4gV2luZG93cyBIQ00gZm9yIElFL0VkZ2VcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIC8vIFV0aWxpemUgYSBzeXN0ZW0gY29sb3IgdmFyaWFibGUgdG8gYWNjb21vZGF0ZSBhbnkgdXNlciBIQ00gdGhlbWVcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2luZG93VGV4dDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBXb3JrYXJvdW5kIGZvcjogaHR0cHM6Ly9kZXZlbG9wZXIubWljcm9zb2Z0LmNvbS9lbi11cy9taWNyb3NvZnQtZWRnZS9wbGF0Zm9ybS9pc3N1ZXMvMTEyOTUyMzFcbiAgW2Rpc2FibGVkXSB+IF8ge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b246ZGlzYWJsZWQgKyAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbjpkaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19hcHBlYXJhbmNlLFxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uOmRpc2FibGVkOmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fYXBwZWFyYW5jZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvY3VzXG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbjpmb2N1c1xuICAgICsgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19hcHBlYXJhbmNlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggJGZvY3VzO1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIFNrZWxldG9uIFN0YXRlXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcbiAgICB3aWR0aDogcmVtKDEwMHB4KTtcbiAgICBoZWlnaHQ6IHJlbSgxOHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fYXBwZWFyYW5jZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24td3JhcHBlciAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24td3JhcHBlcjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgIG1hcmdpbi1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24tZ3JvdXAtLXZlcnRpY2FsXG4gICAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi13cmFwcGVyOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLWdyb3VwLS1sYWJlbC1yaWdodCAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbCxcbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi13cmFwcGVyLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi13cmFwcGVyLS1sYWJlbC1yaWdodFxuICAgIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi1ncm91cC0tbGFiZWwtbGVmdCAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbCxcbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi13cmFwcGVyLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi13cmFwcGVyLS1sYWJlbC1sZWZ0XG4gICAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24tZ3JvdXAtLWxhYmVsLWxlZnRcbiAgICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19hcHBlYXJhbmNlLFxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLXdyYXBwZXIuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLXdyYXBwZXItLWxhYmVsLWxlZnRcbiAgICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19hcHBlYXJhbmNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygncmFkaW8tYnV0dG9uJykge1xuICBAaW5jbHVkZSByYWRpby1idXR0b247XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVG9nZ2xlXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5cbi8vLyBUb2dnbGUgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHRvZ2dsZVxuQG1peGluIHRvZ2dsZSB7XG4gIC4jeyRwcmVmaXh9LS10b2dnbGUge1xuICAgIEBpbmNsdWRlIGhpZGRlbjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnbGFiZWwtMDEnKTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbjogJGNhcmJvbi0tc3BhY2luZy0wMyAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fYXBwZWFyYW5jZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBjYXJib24tLXJlbSg0OHB4KTtcbiAgICBoZWlnaHQ6IGNhcmJvbi0tcmVtKDI0cHgpO1xuXG4gICAgLy8gVG9nZ2xlIGJhY2tncm91bmQgb3ZhbFxuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDQ7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgaGVpZ2h0OiBjYXJib24tLXJlbSgyNHB4KTtcbiAgICAgIHdpZHRoOiBjYXJib24tLXJlbSg0OHB4KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IGNhcmJvbi0tcmVtKDE1cHgpO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lsbC1jaGFuZ2U6IGJveC1zaGFkb3c7XG4gICAgICAvLyBDb3JyZXNwb25kcyB0byB0aGUgZG91YmxlLWJvcmRlciBmb3IgZm9jdXNlZCBzdGF0ZSAoYDAgMCAwIDFweCAkdWktMDIsIDAgMCAwIDNweCAkZm9jdXNgKVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50LCAwIDAgMCAzcHggdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZXhpdCwgcHJvZHVjdGl2ZSksXG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihleGl0LCBwcm9kdWN0aXZlKTtcbiAgICB9XG5cbiAgICAvLyBUb2dnbGUgY2lyY2xlXG4gICAgJjphZnRlciB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBsZWZ0OiBjYXJib24tLXJlbSgzcHgpO1xuICAgICAgdG9wOiBjYXJib24tLXJlbSgzcHgpO1xuICAgICAgd2lkdGg6IGNhcmJvbi0tcmVtKDE4cHgpO1xuICAgICAgaGVpZ2h0OiBjYXJib24tLXJlbSgxOHB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLTAzO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihleGl0LCBwcm9kdWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlX19jaGVjayB7XG4gICAgZmlsbDogJGljb24tMDM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGNhcmJvbi0tcmVtKDZweCk7XG4gICAgdG9wOiBjYXJib24tLXJlbSg2cHgpO1xuICAgIHdpZHRoOiBjYXJib24tLXJlbSg2cHgpO1xuICAgIGhlaWdodDogY2FyYm9uLS1yZW0oNXB4KTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZXhpdCwgcHJvZHVjdGl2ZSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tbGVmdCxcbiAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tcmlnaHQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1sZWZ0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FyYm9uLS1yZW0oNDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tbGVmdCxcbiAgLiN7JHByZWZpeH0tLXRvZ2dsZTpub3QoOmNoZWNrZWQpXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLXJpZ2h0IHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tcmlnaHQsXG4gIC4jeyRwcmVmaXh9LS10b2dnbGU6bm90KDpjaGVja2VkKVxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1sZWZ0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fYXBwZWFyYW5jZSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cHBvcnQtMDI7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi0wMztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYXJib24tLXJlbSgyNHB4KSk7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEZvY3VzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdG9nZ2xlICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbCB7XG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fYXBwZWFyYW5jZTpiZWZvcmUge1xuICAgICAgLy8gQ29ycmVzcG9uZHMgdG8gdGhlIGRvdWJsZS1ib3JkZXIgZm9yIGZvY3VzZWQgc3RhdGUgKGAwIDAgMCAxcHggJHVpLTAyLCAwIDAgMCAzcHggJGZvY3VzYClcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCB0cmFuc3BhcmVudCwgMCAwIDAgM3B4IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmZvY3VzICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS10b2dnbGU6YWN0aXZlICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWwge1xuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX2FwcGVhcmFuY2U6YmVmb3JlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkdWktMDIsIDAgMCAwIDNweCAkZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIERpc2FibGVkXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmRpc2FibGVkICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWwge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmRpc2FibGVkXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX2FwcGVhcmFuY2Uge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKGV4aXQsIHByb2R1Y3RpdmUpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGU6ZGlzYWJsZWRcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tbGVmdCxcbiAgLiN7JHByZWZpeH0tLXRvZ2dsZTpkaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1yaWdodCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGU6ZGlzYWJsZWQ6YWN0aXZlXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX2FwcGVhcmFuY2U6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZTpkaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19jaGVjayB7XG4gICAgZmlsbDogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNtYWxsIHRvZ2dsZVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlLS1zbWFsbFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19hcHBlYXJhbmNlIHtcbiAgICB3aWR0aDogY2FyYm9uLS1yZW0oMzJweCk7XG4gICAgaGVpZ2h0OiBjYXJib24tLXJlbSgxNnB4KTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBoZWlnaHQ6IGNhcmJvbi0tcmVtKDE2cHgpO1xuICAgICAgd2lkdGg6IGNhcmJvbi0tcmVtKDMycHgpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC45Mzc1cmVtO1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgd2lkdGg6IGNhcmJvbi0tcmVtKDEwcHgpO1xuICAgICAgaGVpZ2h0OiBjYXJib24tLXJlbSgxMHB4KTtcbiAgICAgIHRvcDogY2FyYm9uLS1yZW0oM3B4KTtcbiAgICAgIGxlZnQ6IGNhcmJvbi0tcmVtKDNweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS0tc21hbGw6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19jaGVjayB7XG4gICAgZmlsbDogJHN1cHBvcnQtMDI7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVYKGNhcmJvbi0tcmVtKDE2cHgpKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtLXNtYWxsXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLWxlZnQge1xuICAgIGxlZnQ6IGNhcmJvbi0tcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS0tc21hbGw6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19hcHBlYXJhbmNlIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FyYm9uLS1yZW0oMTdweCkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIG5ldyBhY2Nlc3NpYmxlIHRvZ2dsZVxuICAvLyBUT0RPOiBkZXByZWNhdGUgc3R5bGVzIGFib3ZlIHRoaXMgbGluZVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXQge1xuICAgIEBpbmNsdWRlIGhpZGRlbjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnbGFiZWwtMDEnKTtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogY2FyYm9uLS1yZW0oNDhweCk7XG4gICAgaGVpZ2h0OiBjYXJib24tLXJlbSgyNHB4KTtcbiAgICBtYXJnaW46ICRjYXJib24tLXNwYWNpbmctMDMgMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAvLyBUb2dnbGUgYmFja2dyb3VuZCBvdmFsXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiBjYXJib24tLXJlbSg0OHB4KTtcbiAgICAgIGhlaWdodDogY2FyYm9uLS1yZW0oMjRweCk7XG4gICAgICBib3JkZXItcmFkaXVzOiBjYXJib24tLXJlbSgxNXB4KTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTA0O1xuICAgICAgd2lsbC1jaGFuZ2U6IGJveC1zaGFkb3c7XG4gICAgICAvLyBDb3JyZXNwb25kcyB0byB0aGUgZG91YmxlLWJvcmRlciBmb3IgZm9jdXNlZCBzdGF0ZSAoYDAgMCAwIDFweCAkdWktMDIsIDAgMCAwIDNweCAkZm9jdXNgKVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50LCAwIDAgMCAzcHggdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZXhpdCwgcHJvZHVjdGl2ZSksXG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihleGl0LCBwcm9kdWN0aXZlKTtcbiAgICB9XG5cbiAgICAvLyBUb2dnbGUgY2lyY2xlXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogY2FyYm9uLS1yZW0oM3B4KTtcbiAgICAgIGxlZnQ6IGNhcmJvbi0tcmVtKDNweCk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiBjYXJib24tLXJlbSgxOHB4KTtcbiAgICAgIGhlaWdodDogY2FyYm9uLS1yZW0oMThweCk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi0wMztcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZXhpdCwgcHJvZHVjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tb2ZmLFxuICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1vbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi1sZWZ0OiBjYXJib24tLXJlbSg1NnB4KTtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gQ2hlY2tlZFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dDpjaGVja2VkXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbFxuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fc3dpdGNoXG4gICAgPiAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1vZmYsXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXQ6bm90KDpjaGVja2VkKVxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWxcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaFxuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tb24ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXQ6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWxcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdXBwb3J0LTAyO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLTAzO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhcmJvbi0tcmVtKDI0cHgpKTtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRm9jdXMgYW5kIGFjdGl2ZVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dDpmb2N1c1xuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWxcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0OmFjdGl2ZVxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWxcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaDo6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJHVpLTAyLCAwIDAgMCAzcHggJGZvY3VzO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIERpc2FibGVkXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0OmRpc2FibGVkICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWwge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0OmRpc2FibGVkXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbFxuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fc3dpdGNoIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKGV4aXQsIHByb2R1Y3RpdmUpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXQ6ZGlzYWJsZWQgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXQ6ZGlzYWJsZWQ6YWN0aXZlXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbFxuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fc3dpdGNoOjpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU21hbGwgdG9nZ2xlXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0LS1zbWFsbCArIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXRfX2xhYmVsIHtcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaCB7XG4gICAgICB3aWR0aDogY2FyYm9uLS1yZW0oMzJweCk7XG4gICAgICBoZWlnaHQ6IGNhcmJvbi0tcmVtKDE2cHgpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogY2FyYm9uLS1yZW0oMzJweCk7XG4gICAgICAgIGhlaWdodDogY2FyYm9uLS1yZW0oMTZweCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuOTM3NXJlbTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB3aWR0aDogY2FyYm9uLS1yZW0oMTBweCk7XG4gICAgICAgIGhlaWdodDogY2FyYm9uLS1yZW0oMTBweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tb2ZmLFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLW9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYXJib24tLXJlbSg0MHB4KTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0LS1zbWFsbDpjaGVja2VkICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWwge1xuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fc3dpdGNoOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FyYm9uLS1yZW0oMTdweCkpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX2NoZWNrIHtcbiAgICAgIGZpbGw6ICRzdXBwb3J0LTAyO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVYKGNhcmJvbi0tcmVtKDE2cHgpKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0LS1zbWFsbDpkaXNhYmxlZDpjaGVja2VkXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX2NoZWNrIHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndG9nZ2xlJykge1xuICBAaW5jbHVkZSB0b2dnbGU7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2VhcmNoXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9pbXBvcnQtb25jZSc7XG5cbi8vLyBTZWFyY2ggc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHNlYXJjaFxuQG1peGluIHNlYXJjaCB7XG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoIC4jeyRwcmVmaXh9LS1sYWJlbCB7XG4gICAgQGluY2x1ZGUgaGlkZGVuO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMicpO1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBwYWRkaW5nOiAwICRjYXJib24tLXNwYWNpbmctMDg7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3JkZXI6IDE7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wNDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkdGV4dC0wMztcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgJjo6LW1zLWNsZWFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dFtkaXNhYmxlZF0ge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0W2Rpc2FibGVkXSB+IC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyIHtcbiAgICBmaWxsOiAkZGlzYWJsZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS1saWdodCAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICBiYWNrZ3JvdW5kOiAkZmllbGQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS1zbSAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS14bCAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAyJyk7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gICAgcGFkZGluZzogMCByZW0oNjRweCkgMCByZW0oNDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllciB7XG4gICAgbGVmdDogMC43NXJlbTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IHJlbSgxNnB4KTtcbiAgICB3aWR0aDogcmVtKDE2cHgpO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAvLyBFbnN1cmUgY2xlYXIgaWNvbiBpcyByZW5kZXJlZCBpbiBGaXJlZm94ICgjMTEyNylcbiAgICBmaWxsOiAkdGV4dC0wMjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtLXhsIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyIHtcbiAgICBoZWlnaHQ6IHJlbSgyMHB4KTtcbiAgICB3aWR0aDogcmVtKDIwcHgpO1xuICAgIGxlZnQ6IHJlbSgyNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtY2xvc2Uge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldChmYWxzZSk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IHJlbSgxcHgpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycHgpO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyXG4gICAgICAgIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtYnV0dG9uIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG5cbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlLFxuICAuI3skcHJlZml4fS0tc2VhcmNoLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJvcmRlciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIHdpZHRoOiByZW0oNDBweCk7XG4gICAgZmlsbDogJGljb24tMDE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1maWVsZDtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZTpob3ZlciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1maWVsZDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOmZvY3VzLFxuICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOmFjdGl2ZSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb2N1cztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0OmZvY3VzIH4gLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZTpob3ZlciB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0tc20ge1xuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtY2xvc2UsXG4gICAgfiAuI3skcHJlZml4fS0tc2VhcmNoLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0teGwge1xuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtY2xvc2UsXG4gICAgfiAuI3skcHJlZml4fS0tc2VhcmNoLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICAgIHdpZHRoOiByZW0oNDhweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZS0taGlkZGVuIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtLWxnLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQsXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtLXNtLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdzZWFyY2gnKSB7XG4gIEBpbmNsdWRlIHNlYXJjaDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZWxlY3Rcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vZm9ybS9mb3JtJztcblxuLy8vIFNlbGVjdCBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgc2VsZWN0XG5AbWl4aW4gc2VsZWN0IHtcbiAgLiN7JHByZWZpeH0tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOmhvdmVyIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHJlbSgyMjRweCk7XG4gICAgbWluLXdpZHRoOiByZW0oMTI4cHgpO1xuICAgIG1heC13aWR0aDogcmVtKDQ0OHB4KTtcbiAgICBwYWRkaW5nOiAwIHJlbSg0MnB4KSAwICRjYXJib24tLXNwYWNpbmctMDU7IC8vIDEuNXJlbSArIGNoZXZyb24gd2lkdGhcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuXG4gICAgLy8gSGlkZSBkZWZhdWx0IHNlbGVjdCBhcnJvdyBpbiBJRTEwK1xuICAgICY6Oi1tcy1leHBhbmQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBTZWxlY3QgdGV4dCByZW5kZXJzIGEgbGl0dGxlIGhpZ2ggb24gRmlyZWZveFxuICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtKDRweCk7XG5cbiAgICAgIC8vIFJlbW92ZXMgZG90dGVkIGlubmVyIGZvY3VzXG4gICAgICAmOi1tb3otZm9jdXNyaW5nLFxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAwICMwMDA7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmOmhvdmVyOmRpc2FibGVkIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1mb3JtX19oZWxwZXItdGV4dCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRfX3dyYXBwZXJbZGF0YS1pbnZhbGlkXSAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNjRweCk7IC8vIDFyZW0gKyBjaGV2cm9uIHdpZHRoICsgaW52YWxpZCBpY29uIHdpZHRoXG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0X193cmFwcGVyW2RhdGEtaW52YWxpZF0gLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCxcbiAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dF9fd3JhcHBlcltkYXRhLWludmFsaWRdXG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dDpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnaW52YWxpZCcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAkc3VwcG9ydC0wMTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dDpkaXNhYmxlZCB+IC4jeyRwcmVmaXh9LS1zZWxlY3RfX2Fycm93IHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1saWdodCAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkLFxuICAgICY6aG92ZXI6ZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0X19hcnJvdyB7XG4gICAgZmlsbDogJHVpLTA1O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMXJlbTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRfX3dyYXBwZXJbZGF0YS1pbnZhbGlkXVxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRcbiAgICB+IC4jeyRwcmVmaXh9LS1zZWxlY3RfX2ludmFsaWQtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiByZW0oMzRweCk7IC8vIDEuNXJlbSArIGNoZXZyb24gd2lkdGhcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRfX3dyYXBwZXJbZGF0YS1pbnZhbGlkXVxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRcbiAgICB+IC4jeyRwcmVmaXh9LS1zZWxlY3RfX2ludmFsaWQtaWNvbiB7XG4gICAgZmlsbDogJHN1cHBvcnQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LW9wdGdyb3VwLFxuICAuI3skcHJlZml4fS0tc2VsZWN0LW9wdGlvbiB7XG4gICAgY29sb3I6ICR0ZXh0LTAxOyAvLyBGb3IgdGhlIG9wdGlvbnMgdG8gc2hvdyBpbiBJRTExXG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LW9wdGlvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLy8gT3ZlcnJpZGUgc29tZSBGaXJlZm94IHVzZXItYWdlbnQgc3R5bGVzXG4gIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1vcHRpb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3Qtb3B0Z3JvdXAge1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtLWlubGluZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1pbmxpbmUuI3skcHJlZml4fS0tc2VsZWN0LS1pbnZhbGlkIC4jeyRwcmVmaXh9LS1sYWJlbCxcbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lLiN7JHByZWZpeH0tLXNlbGVjdC0taW52YWxpZFxuICAgIC4jeyRwcmVmaXh9LS1mb3JtX19oZWxwZXItdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogcmVtKDEzcHgpO1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1pbmxpbmUgLiN7JHByZWZpeH0tLWZvcm1fX2hlbHBlci10ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0oOHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtLWlubGluZSAuI3skcHJlZml4fS0tbGFiZWwge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWFyZ2luOiAwICRjYXJib24tLXNwYWNpbmctMDMgMCAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMjZweCk7XG5cbiAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lIC4jeyRwcmVmaXh9LS1zZWxlY3RfX2Fycm93IHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxLjEyNXJlbTtcbiAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtLWlubGluZS4jeyRwcmVmaXh9LS1zZWxlY3QtLWludmFsaWRcbiAgICAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNTBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1pbmxpbmUuI3skcHJlZml4fS0tc2VsZWN0LS1pbnZhbGlkXG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dFxuICAgIH4gLiN7JHByZWZpeH0tLXNlbGVjdF9faW52YWxpZC1pY29uIHtcbiAgICByaWdodDogcmVtKDI0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQ6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgfiAqIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQ6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAvL1NrZWxldG9uIFN0YXRlXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QuI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMi41cmVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3NlbGVjdCcpIHtcbiAgQGluY2x1ZGUgc2VsZWN0O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRleHRcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90b29sdGlwJztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5cbi8vLyBUZXh0IGlucHV0IHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB0ZXh0LWlucHV0XG5AbWl4aW4gdGV4dC1pbnB1dCB7XG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0IHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgcGFkZGluZzogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wNDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgICYtd3JhcHBlciBzdmdbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYXNzd29yZC1pbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlci1jb2xvcnM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRGlzYWJsZWQgJiBFcnJvciBpY29uIHNwYWNpbmdcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dF9fZmllbGQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19pbnZhbGlkLWljb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgICBmaWxsOiAkc3VwcG9ydC0wMTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBkZXByZWNhdGUgdGhpcyBzdHlsZSBibG9ja1xuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1wYXNzd29yZF9fdmlzaWJpbGl0eSB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS10cmlnZ2VyKCdpY29uJywgJ2JvdHRvbScpO1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2JvdHRvbScsICdjZW50ZXInKTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tcGFzc3dvcmRfX3Zpc2liaWxpdHksXG4gICAgLy8gVE9ETzogcmVtb3ZlIHNlbGVjdG9yIGFib3ZlXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLXBhc3N3b3JkX192aXNpYmlsaXR5X190b2dnbGUuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IHJlbSgxNnB4KTtcbiAgICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkaWNvbi0wMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0taW52YWxpZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1pbnZhbGlkLiN7JHByZWZpeH0tLXBhc3N3b3JkLWlucHV0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg2NHB4KTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0taW52YWxpZFxuICAgICAgKyAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tcGFzc3dvcmRfX3Zpc2liaWxpdHksXG4gICAgLy8gVE9ETzogcmVtb3ZlIHNlbGVjdG9yIGFib3ZlXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLWludmFsaWRcbiAgICAgICsgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLXBhc3N3b3JkX192aXNpYmlsaXR5X190b2dnbGUge1xuICAgICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhc3N3b3JkLWlucHV0LXdyYXBwZXIgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2ludmFsaWQtaWNvbiB7XG4gICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dDpkaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLXBhc3N3b3JkX192aXNpYmlsaXR5XG4gICAgc3ZnLFxuICAvLyBUT0RPOiByZW1vdmUgc2VsZWN0b3IgYWJvdmVcbiAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQ6ZGlzYWJsZWRcbiAgICArIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1wYXNzd29yZF9fdmlzaWJpbGl0eV9fdG9nZ2xlXG4gICAgc3ZnIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRGlzYWJsZWRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1saWdodDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQ6ZGlzYWJsZWQ6OnBsYWNlaG9sZGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEVycm9yXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLWludmFsaWQge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ2ludmFsaWQnKTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLXBhc3N3b3JkX192aXNpYmlsaXR5LFxuICAgIC8vIFRPRE86IHJlbW92ZSBzZWxlY3RvciBhYm92ZVxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1wYXNzd29yZF9fdmlzaWJpbGl0eV9fdG9nZ2xlIHtcbiAgICAgIHJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCd0ZXh0LWlucHV0Jykge1xuICBAaW5jbHVkZSB0ZXh0LWlucHV0O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRleHQgYXJlYVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9mb3JtL2Zvcm0nO1xuXG4vLy8gVGV4dCBhcmVhIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB0ZXh0LWFyZWFcbkBtaXhpbiB0ZXh0LWFyZWEge1xuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LWxvbmctMDEnKTtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMTByZW07XG4gICAgbWluLWhlaWdodDogcmVtKDQwcHgpO1xuICAgIHBhZGRpbmc6IHJlbSgxMXB4KSAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBvcmRlcjogMztcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgJiB+IC4jeyRwcmVmaXh9LS1mb3JtX19oZWxwZXItdGV4dCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgJiB+IC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICAgIG9yZGVyOiA0O1xuICAgICAgY29sb3I6ICRzdXBwb3J0LTAxO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi10b3A6ICRjYXJib24tLXNwYWNpbmctMDI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRleHQtYXJlYTpmb2N1cyxcbiAgLiN7JHByZWZpeH0tLXRleHQtYXJlYTphY3RpdmUge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlci1jb2xvcnM7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1sb25nLTAxJyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWFyZWEtLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhLS1pbnZhbGlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRleHQtYXJlYV9fd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhX19pbnZhbGlkLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICB0b3A6ICRjYXJib24tLXNwYWNpbmctMDQ7XG4gICAgZmlsbDogJHN1cHBvcnQtMDE7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIERpc2FibGVkXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRleHQtYXJlYTpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWFyZWE6ZGlzYWJsZWQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLy8gU2tlbGV0b24gU3RhdGVcbiAgI3skcHJlZml4fS0tdGV4dC1hcmVhLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcbiAgICBoZWlnaHQ6IHJlbSgxMDBweCk7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3RleHQtYXJlYScpIHtcbiAgQGluY2x1ZGUgdGV4dC1hcmVhO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5cbi8vLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG51bWJlci1pbnB1dFxuQG1peGluIG51bWJlci1pbnB1dCB7XG4gIC4jeyRwcmVmaXh9LS1udW1iZXIge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbnVtYmVyIGlucHV0W3R5cGU9J251bWJlciddIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICBmb250LWZhbWlseTogY2FyYm9uLS1mb250LWZhbWlseSgnbW9ubycpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiA5LjM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNztcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wNDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQgfiAuI3skcHJlZml4fS0tbnVtYmVyX19jb250cm9scyB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB+IC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2xzIHN2ZyB7XG4gICAgICBmaWxsOiAkZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIEZpcmVmb3g6IEhpZGUgc3Bpbm5lciAodXAgYW5kIGRvd24gYnV0dG9ucylcblxuICAgICY6Oi1tcy1jbGVhciB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBJRTogSGlkZSBcImNsZWFyLWZpZWxkXCIgYHhgIGJ1dHRvbiBvbiBpbnB1dCBmaWVsZFxuICAgIH1cblxuICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gU2FmYXJpOiBIaWRlIG51bWJlciBzcGlubmVyXG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlciBpbnB1dFt0eXBlPSdudW1iZXInXTpkaXNhYmxlZCxcbiAgLiN7JHByZWZpeH0tLW51bWJlci0tcmVhZG9ubHkgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQtY29sb3I7XG4gICAgY29sb3I6ICRkaXNhYmxlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXJfX2lucHV0LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIH4gLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnQge1xuICAgICAgY29sb3I6ICRzdXBwb3J0LTAxO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi10b3A6ICRjYXJib24tLXNwYWNpbmctMDI7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbnVtYmVyX19jb250cm9scyB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlcl9fY29udHJvbC1idG4ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oMjBweCk7XG4gICAgY29sb3I6ICRpY29uLTAxO1xuXG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmLnVwLWljb24gc3ZnIHtcbiAgICAgIHRvcDogcmVtKDVweCk7XG4gICAgfVxuXG4gICAgJi5kb3duLWljb24gc3ZnIHtcbiAgICAgIHRvcDogcmVtKC01cHgpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZTtcbiAgICAgIGNvbG9yOiAkaWNvbi0wMTtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDJweDtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRpY29uLTAxO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlci0tcmVhZG9ubHkgLiN7JHByZWZpeH0tLW51bWJlcl9fY29udHJvbC1idG4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbnVtYmVyW2RhdGEtaW52YWxpZF0ge1xuICAgIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1heC1oZWlnaHQ6IHJlbSgyMDBweCk7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnaW52YWxpZCcpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXJfX2ludmFsaWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMnJlbTtcbiAgICBmaWxsOiAkc3VwcG9ydC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXItLWxpZ2h0IGlucHV0W3R5cGU9J251bWJlciddIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbnVtYmVyLS1tb2JpbGUge1xuICAgIG1pbi13aWR0aDogcmVtKDE0NHB4KTtcbiAgICB3aWR0aDogYXV0bztcblxuICAgIC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2wtYnRuLFxuICAgICYuI3skcHJlZml4fS0tbnVtYmVyLS1saWdodCAuI3skcHJlZml4fS0tbnVtYmVyX19jb250cm9sLWJ0biB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgd2lkdGg6IHJlbSg0MHB4KTtcbiAgICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmUtd2lkdGg6IDJweDtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gICAgICB9XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgICAgbWluLXdpZHRoOiByZW0oNjRweCk7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR1aS0wMztcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHVpLTAzO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLW51bWJlci0tbGlnaHQge1xuICAgICAgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDI7XG4gICAgICB9XG5cbiAgICAgIC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2wtYnRuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNrZWxldG9uIFN0YXRlXG4gIC4jeyRwcmVmaXh9LS1udW1iZXIuI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMi41cmVtO1xuXG4gICAgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnbnVtYmVyLWlucHV0Jykge1xuICBAaW5jbHVkZSBudW1iZXItaW5wdXQ7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGlua1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY29sb3JzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90aGVtZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5cbi8vLyBMaW5rIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsaW5rXG5AbWl4aW4gbGluayB7XG4gIC4jeyRwcmVmaXh9LS1saW5rIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LWxvbmctMDEnKTtcbiAgICBjb2xvcjogJGxpbmstMDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbGluay0wMTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICY6YWN0aXZlOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lO1xuICAgIH1cblxuICAgICY6bm90KFtocmVmXSkge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICRsaW5rLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saW5rLS12aXNpdGVkIHtcbiAgICBjb2xvcjogJHZpc2l0ZWQtbGluaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saW5rLS1kaXNhYmxlZCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1sb25nLTAxJyk7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2xpbmsnKSB7XG4gIEBpbmNsdWRlIGxpbms7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGlzdFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5cbi8vLyBMaXN0IHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsaXN0XG5AbWl4aW4gbGlzdHMge1xuICAuI3skcHJlZml4fS0tbGlzdC0tbmVzdGVkLFxuICAuI3skcHJlZml4fS0tbGlzdC0tdW5vcmRlcmVkLFxuICAuI3skcHJlZml4fS0tbGlzdC0tb3JkZXJlZCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgY291bnRlci1yZXNldDogbGlzdGl0ZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdF9faXRlbSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBsaXN0aXRlbTtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBwYWRkaW5nLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3RfX2l0ZW06YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLSN7JGNhcmJvbi0tc3BhY2luZy0wM307XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC0tbmVzdGVkIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNHB4KTtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LS11bm9yZGVyZWQgPiAuI3skcHJlZml4fS0tbGlzdF9faXRlbTpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1saXN0LS1vcmRlcmVkID4gLiN7JHByZWZpeH0tLWxpc3RfX2l0ZW06YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtLXVub3JkZXJlZFxuICAgIC4jeyRwcmVmaXh9LS1saXN0LS1uZXN0ZWRcbiAgICA+IC4jeyRwcmVmaXh9LS1saXN0X19pdGVtOmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWxpc3QtLW9yZGVyZWRcbiAgICAuI3skcHJlZml4fS0tbGlzdC0tbmVzdGVkXG4gICAgPiAuI3skcHJlZml4fS0tbGlzdF9faXRlbTpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC0tdW5vcmRlcmVkID4gLiN7JHByZWZpeH0tLWxpc3RfX2l0ZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwwMDIwMTMnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtLXVub3JkZXJlZFxuICAgIHVsLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZFxuICAgID4gLiN7JHByZWZpeH0tLWxpc3RfX2l0ZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwwMDI1QUEnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtLXVub3JkZXJlZFxuICAgIG9sLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZFxuICAgID4gLiN7JHByZWZpeH0tLWxpc3RfX2l0ZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBjb3VudGVyKGxpc3RpdGVtLCBsb3dlci1hbHBoYSkgJy4nO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtLW9yZGVyZWQgPiAuI3skcHJlZml4fS0tbGlzdF9faXRlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGNvdW50ZXIobGlzdGl0ZW0pICcuJztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LS1vcmRlcmVkIG9sLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZCB7XG4gICAgY291bnRlci1yZXNldDogb2wtY291bnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LS1vcmRlcmVkXG4gICAgb2wuI3skcHJlZml4fS0tbGlzdC0tbmVzdGVkXG4gICAgPiAuI3skcHJlZml4fS0tbGlzdF9faXRlbSB7XG4gICAgY291bnRlci1pbmNyZW1lbnQ6IG9sLWNvdW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC0tb3JkZXJlZFxuICAgIG9sLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZFxuICAgID4gLiN7JHByZWZpeH0tLWxpc3RfX2l0ZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBjb3VudGVyKG9sLWNvdW50ZXIsIGxvd2VyLWFscGhhKSAnLic7XG4gICAgd2lkdGg6IDAuNnJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LS1vcmRlcmVkXG4gICAgdWwuI3skcHJlZml4fS0tbGlzdC0tbmVzdGVkXG4gICAgPiAuI3skcHJlZml4fS0tbGlzdF9faXRlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDAwMjVBQSc7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnbGlzdHMnKSB7XG4gIEBpbmNsdWRlIGxpc3RzO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcblxuLy8vIERhdGEgdGFibGUgYWN0aW9uIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBkYXRhLXRhYmxlXG5AbWl4aW4gZGF0YS10YWJsZS12Mi1hY3Rpb24ge1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy9UT09MQkFSXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGFibGUtdG9vbGJhciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDE7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy9uZWVkIGZvciBiYXRjaCBhY3Rpb25zXG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogJGxheW91dC0wNDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgY2xpcC1wYXRoICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnMgfiAuI3skcHJlZml4fS0tdG9vbGJhci1jb250ZW50IHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAsIDEwMCUgMTAwJSwgMCAxMDAlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWNvbnRlbnQgLiN7JHByZWZpeH0tLXNlYXJjaCAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIHRvb2wgYmFyIGFuaW1hdGlvbiB3aXRoIChlc3AuKSBwZXJzaXN0ZW50IHNlYXJjaCBib3hcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL0RFUFJFQ0FURUQgdjEwL3Y5IHNlYXJjaCBiZWhhdmlvdXJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1iYXRjaC1hY3Rpb25zIH4gLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDExMG1zO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL0hJRERFTiBTRUFSQ0ggLSBERUZBVUxUIFRPT0xCQVJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZSB7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIHdpZHRoOiAkbGF5b3V0LTA0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBmbGV4ICR0cmFuc2l0aW9uLS1leHBhbnNpb24gJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWV4cGFuZGFibGUgLiN7JHByZWZpeH0tLXNlYXJjaCB7XG4gICAgd2lkdGg6ICRsYXlvdXQtMDQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyIHtcbiAgICBoZWlnaHQ6ICRsYXlvdXQtMDQ7XG4gICAgd2lkdGg6ICRsYXlvdXQtMDQ7XG4gICAgcGFkZGluZzogJHNwYWNpbmctbWQ7XG4gICAgbGVmdDogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWV4cGFuZGFibGVcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1tYWduaWZpZXI6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci1maWVsZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWV4cGFuZGFibGVcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSB7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIHdpZHRoOiAkbGF5b3V0LTA0O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgdG9wOiAycHg7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDRweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vQUNUSVZFIFNFQVJDSCAtIERFRkFVTFQgVE9PTEJBUlxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmUge1xuICAgIGZsZXg6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogZmxleCAkZHVyYXRpb24tLW1vZGVyYXRlLTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZSAuI3skcHJlZml4fS0tc2VhcmNoIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctM3hsO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0OmZvY3VzXG4gICAgKyAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmVcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLWZpZWxkO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyOmZvY3VzLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllcjphY3RpdmUsXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyOmhvdmVyIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1NFQVJDSCBDTE9TRSBCVVRUT05cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudCAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOmhvdmVyLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOmhvdmVyIHtcbiAgICBib3JkZXI6IG5vbmU7IC8vdG8tZG86IGlzIHRoZXJlIGEgc3BlYyBmb3IgY2xvc2UgYnV0dG9uIG9uIGhvdmVyP1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vVE9PTEJBUiBCVVRUT05TXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogJGxheW91dC0wNDtcbiAgICB3aWR0aDogJGxheW91dC0wNDtcbiAgICBwYWRkaW5nOiAkc3BhY2luZy1tZDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLy8gREVQUkVDQVRFRCBwcmVmZXIgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb24gaW5zdGVhZFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6ICRsYXlvdXQtMDQ7XG4gICAgd2lkdGg6ICRsYXlvdXQtMDQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbjpob3Zlcjpub3QoW2Rpc2FibGVkXSkge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci1maWVsZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbjpob3ZlclthcmlhLWV4cGFuZGVkPSd0cnVlJ10ge1xuICAgIGJhY2tncm91bmQ6ICR1aS0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbltkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb25bZGlzYWJsZWRdIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbl9faWNvbiB7XG4gICAgZmlsbDogJGRpc2FibGVkO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb246Zm9jdXM6bm90KFtkaXNhYmxlZF0pLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb246YWN0aXZlOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZSB7XG4gICAgICAvLyBUaGUgZm9jdXMgc3R5bGUgaXMgaGFuZGxlZCBieSBzZWFyY2ggaW5wdXQgaW4gaXQsIG5lZWQgdG8gYXZvaWQgZHVwbGljYXRlIGFuaW1hdGlvblxuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb24gfiAuI3skcHJlZml4fS0tYnRuIHtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWRhdGEtdGFibGUge1xuICAgIGhlaWdodDogJGxheW91dC0wNDtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1RPT0xCQVIgQlVUVE9OIElDT05TXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb25fX2ljb24ge1xuICAgIGhlaWdodDogJGxheW91dC0wMTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6ICRsYXlvdXQtMDE7XG4gICAgZmlsbDogJGljb24tMDE7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy9QRVJTSVNURU5UIFNFQVJDSCAtIE9QVElPTkFMIFRPT0xCQVJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50XG4gICAgKyAuI3skcHJlZml4fS0tdG9vbGJhci1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnQgLiN7JHByZWZpeH0tLXNlYXJjaCB7XG4gICAgcG9zaXRpb246IGluaXRpYWw7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1tYWduaWZpZXIge1xuICAgIGxlZnQ6ICRzcGFjaW5nLW1kO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50XG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgIGhlaWdodDogJGxheW91dC0wNDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLTN4bDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dDpmb2N1czpub3QoW2Rpc2FibGVkXSkge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0OmhvdmVyOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLWZpZWxkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50XG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQ6YWN0aXZlOm5vdChbZGlzYWJsZWRdKSxcbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50XG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQ6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci1maWVsZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlIHtcbiAgICBoZWlnaHQ6ICRsYXlvdXQtMDQ7XG4gICAgd2lkdGg6ICRsYXlvdXQtMDQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYmF0Y2gtYWN0aW9ucy0tYWN0aXZlIH4gLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lcixcbiAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnMtLWFjdGl2ZSB+IC4jeyRwcmVmaXh9LS10b29sYmFyLWNvbnRlbnQge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCwgMTAwJSAwLCAwIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNDhweCwgMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgY2xpcC1wYXRoICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vQkFUQ0ggQUNUSU9OU1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy1sZztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy1sZztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSAwLCAxMDAlIDAsIDAgMCk7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW50ZXJhY3RpdmUtMDE7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgY2xpcC1wYXRoICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3BhY2l0eSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDQ4cHgsIDApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnM6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYmF0Y2gtYWN0aW9ucy0tYWN0aXZlIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAsIDEwMCUgMTAwJSwgMCAxMDAlKTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAvL2J0bnMgY29udGFpbmVyXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjdGlvbi1saXN0IC4jeyRwcmVmaXh9LS1idG4ge1xuICAgIGNvbG9yOiAkdGV4dC0wNDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuIC4jeyRwcmVmaXh9LS1idG5fX2ljb24ge1xuICAgIGZpbGw6ICRpY29uLTAzO1xuICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuIC4jeyRwcmVmaXh9LS1idG5fX2ljb24gLnN0MCB7XG4gICAgZmlsbDogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1iYXRjaC1kb3dubG9hZCB7XG4gICAgcGFkZGluZzogcmVtKDFweCk7IC8vbWFrZXMgaXQgc21hbGxlciB0byBtYXRjaCBvdGhlciBpY29uc1xuICB9XG5cbiAgLy9vdmVycmlkZSBidG4gc3R5bGVzXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5OmZvY3VzOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5OmZvY3VzOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5OjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5OjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5OmZvY3VzOjphZnRlcixcbiAgLiN7JHByZWZpeH0tLWFjdGlvbi1saXN0IC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnk6Zm9jdXM6OmFmdGVyLFxuICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3QgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeTo6YWZ0ZXIsXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5OjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5OmZvY3VzIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJHVpLTAxO1xuICAgIG91dGxpbmUtb2Zmc2V0OiByZW0oLTJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3QgLiN7JHByZWZpeH0tLWJ0biB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gY2FuY2VsIGJ0biBwc2V1ZG8gZWxlbWVudFxuICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3RcbiAgICAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5Om50aC1jaGlsZCgzKTpob3ZlclxuICAgICsgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeS4jeyRwcmVmaXh9LS1iYXRjaC1zdW1tYXJ5X19jYW5jZWw6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWFjdGlvbi1saXN0XG4gICAgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeTpudGgtY2hpbGQoMyk6Zm9jdXNcbiAgICArIC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnkuI3skcHJlZml4fS0tYmF0Y2gtc3VtbWFyeV9fY2FuY2VsOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5LiN7JHByZWZpeH0tLWJhdGNoLXN1bW1hcnlfX2NhbmNlbDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0b3A6IHJlbSgxNXB4KTsgLy92aXN1YWxseSAxNnB4IHNwYWNpbmcgaXMgMXB4IHRvbyBsb3dcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogJGxheW91dC0wMTtcbiAgICB3aWR0aDogcmVtKDFweCk7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQtMDQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5LiN7JHByZWZpeH0tLWJhdGNoLXN1bW1hcnlfX2NhbmNlbDpob3Zlcjo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb24tLWJhc2UgJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nO1xuICB9XG5cbiAgLy8gY2FuY2VsIGJ0blxuICAuI3skcHJlZml4fS0tYmF0Y2gtc3VtbWFyeV9fY2FuY2VsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy0wNTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBpdGVtcyBzZWxlY3RlZCB0ZXh0XG4gIC4jeyRwcmVmaXh9LS1iYXRjaC1zdW1tYXJ5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmctMDU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAkdGV4dC0wNDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1iYXRjaC1zdW1tYXJ5X19wYXJhIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy9TTUFMTCBUT09MQkFSXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGFibGUtdG9vbGJhci0tc21hbGwge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlLFxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudCB7XG4gICAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWV4cGFuZGFibGVcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQsXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50XG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZVxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSxcbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtY2xvc2Uge1xuICAgICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgICB3aWR0aDogcmVtKDMycHgpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZVxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1tYWduaWZpZXIsXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50XG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllciB7XG4gICAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgICBwYWRkaW5nOiAkc3BhY2luZy14cztcbiAgICB9XG5cbiAgICAvL2hpZGRlblxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZSB7XG4gICAgICB3aWR0aDogcmVtKDMycHgpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZVxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXhsO1xuICAgIH1cblxuICAgIC8vYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmUge1xuICAgICAgZmxleDogYXV0bztcbiAgICAgIHRyYW5zaXRpb246IGZsZXggMTc1bXMgJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmVcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgICAgYmFja2dyb3VuZDogJGhvdmVyLWZpZWxkO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0OmFjdGl2ZSxcbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItZmllbGQ7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmVcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyOmZvY3VzLFxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllcjphY3RpdmUsXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmVcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyOmhvdmVyIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU01BTEwgQkFUQ0ggQUNUSU9OU1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXRvb2xiYXItLXNtYWxsXG4gICAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnNcbiAgICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3Qge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXRvb2xiYXItLXNtYWxsIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbiB7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgd2lkdGg6IHJlbSgzMnB4KTtcbiAgICBwYWRkaW5nOiAkc3BhY2luZy14cztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS10b29sYmFyLS1zbWFsbCAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5IHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDNweCk7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtdG9vbGJhci0tc21hbGxcbiAgICAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5LiN7JHByZWZpeH0tLWJhdGNoLXN1bW1hcnlfX2NhbmNlbDo6YmVmb3JlIHtcbiAgICB0b3A6IHJlbSg4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXRvb2xiYXItLXNtYWxsXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItYWN0aW9uXG4gICAgfiAuI3skcHJlZml4fS0tYnRuIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICB3aWR0aDogcmVtKDE2MHB4KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2RhdGEtdGFibGUtdjItYWN0aW9uJykge1xuICBAaW5jbHVkZSBkYXRhLXRhYmxlLXYyLWFjdGlvbjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuXG4vLy8gRGF0YSB0YWJsZSBjb3JlIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBkYXRhLXRhYmxlXG5AbWl4aW4gZGF0YS10YWJsZS1jb3JlIHtcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIENvbnRhaW5lclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtY29udGFpbmVyIHtcbiAgICBtaW4td2lkdGg6IHJlbSg1MDBweCk7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctMDE7IC8vIGFsbG93IHNwYWNlIGZvciBmb2N1cyBzdHlsZXNcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBUYWJsZSB0aXRsZSB0ZXh0XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQ6ICR1aS0wMTtcbiAgICBwYWRkaW5nOiAkc3BhY2luZy0wNSAwICRzcGFjaW5nLTA2ICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtaGVhZGVyX190aXRsZSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAzJyk7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtaGVhZGVyX19kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBEYXRhIHRhYmxlXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoZWFkIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdoZWFkaW5nLTAxJyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGJvZHkge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0ciB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGhlaWdodDogJGxheW91dC0wNDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRib2R5IHRyLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0Ym9keSB0ciB0ZCxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGJvZHkgdHIgdGgge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0Ym9keSB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLWZpZWxkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGJvZHkgdHI6aG92ZXIgdGQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRib2R5IHRyOmhvdmVyIHRoIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLWZpZWxkO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaG92ZXItZmllbGQ7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRob3Zlci1maWVsZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0ZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy0wNDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy0wNDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0aCB7XG4gICAgY29sb3I6ICR0ZXh0LTA0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoOmZpcnN0LW9mLXR5cGU6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQpIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGg6bGFzdC1vZi10eXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSAuI3skcHJlZml4fS0tdGFibGUtaGVhZGVyLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiByZW0oMTRweCkgMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRib2R5IHRoIHtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDE7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDE7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgICBwYWRkaW5nOiByZW0oMTRweCkgJHNwYWNpbmctMDQ7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgxM3B4KTtcblxuICAgICYgKyB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctMDQ7XG4gICAgfVxuICB9XG5cbiAgQHN1cHBvcnRzICgtbW96LWFwcGVhcmFuY2U6IG5vbmUpIHtcbiAgICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OyAvLyBmaXggdG8gc2hvdyBib3JkZXJzIGluIGZmXG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRkOmxhc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDU7XG4gIH1cblxuICAvLyBzcGVjaWZpYyBwYWRkaW5nL3dpZHRoIGZvciBvdmVyZmxvdyBtZW51IGNvbHVtbnNcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51LFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnU6bGFzdC1vZi10eXBlIHtcbiAgICB3aWR0aDogcmVtKDUycHgpO1xuICAgIG1pbi13aWR0aDogcmVtKDUycHgpO1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy0wMztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlXG4gICAgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnVcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudVthcmlhLWV4cGFuZGVkPSdmYWxzZSddOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDM7XG4gIH1cblxuICAvLyBPdmVyZmxvdyBNZW51IE92ZXJyaWRlc1xuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZVxuICAgIHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51XG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVbYXJpYS1leHBhbmRlZD0nZmFsc2UnXTpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGVcbiAgICB0ZC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudVxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51W2FyaWEtZXhwYW5kZWQ9J3RydWUnXTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChob3ZlcjogaG92ZXIpLFxuICAgICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAuI3skcHJlZml4fS0tZGF0YS10YWJsZVxuICAgICAgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnVcbiAgICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51XG4gICAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9faWNvbiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXZpc2libGUtb3ZlcmZsb3ctbWVudVxuICAgIHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51XG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9faWNvbixcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGVcbiAgICB0ZC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudVxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51OmhvdmVyXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX2ljb24sXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlXG4gICAgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnVcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudTpmb2N1c1xuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X19pY29uLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZVxuICAgIHRyOmhvdmVyXG4gICAgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnVcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudVxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X19pY29uIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXJvdy0tbWVudS1vcHRpb25cbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG5cbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tY29udGVudFxuICAgIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy0wMztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiByZW0oXG4gICAgICAzcHhcbiAgICApOyAvL3VzZWQgdG8gY2VudGVyIHN2ZyB3aXRob3V0IHNldHRpbmcgZGlzcGxheSBmbGV4IC8vZGlzcGxheSBibG9jayBuZWVkZWQgZm9yIG92ZXJmbG93IHRleHQgdHJ1bmNhdGlvblxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vWkVCUkFcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYSB0Ym9keSB0cjpudGgtY2hpbGQob2RkKSB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGEtdGFibGUtemVicmEtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXRhLXRhYmxlLXplYnJhLWNvbG9yO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGF0YS10YWJsZS16ZWJyYS1jb2xvcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYSB0Ym9keSB0cjpob3ZlciB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWZpZWxkO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaG92ZXItZmllbGQ7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRob3Zlci1maWVsZDtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTZWxlY3RcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tY2hlY2tib3ggLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogJHVpLTAzO1xuICAgIHBhZGRpbmc6IHJlbSgxMnB4KSAkc3BhY2luZy0wMyAwICRzcGFjaW5nLTA1O1xuICAgIHdpZHRoOiByZW0oXG4gICAgICA0NHB4XG4gICAgKTsgLy8gMTZweCBwYWRkaW5nIGxlZnQgKyA4cHggcGFkZGluZyByaWdodCArIDIwcHggY2hlY2tib3ggd2lkdGhcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94IHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDExcHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgdGguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZGF0YS10YWJsZS1jb2x1bW4taG92ZXI7XG4gIH1cblxuICAvLyBkZWZhdWx0IHNlbGVjdGVkIHJvdyArIHplYnJhIHNlbGVjdCAtIGV2ZW4gY2hpbGRcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdGJvZHlcbiAgICB0cjpudGgtY2hpbGQob2RkKS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZFxuICAgIHRkLFxuICB0ci4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZCB0ZCB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3RlZC11aTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlbGVjdGVkLXVpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYWN0aXZlLXVpOyAvL2JvdHRvbSBib3JkZXIgYWN0cyBhcyBzZXBhcmF0b3IgZnJvbSBvdGhlciByb3dzXG4gIH1cblxuICAvLyBmaXJzdCByb3dcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdGJvZHlcbiAgICB0cjpmaXJzdC1vZi10eXBlOm50aC1jaGlsZChvZGQpLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkXG4gICAgdGQsXG4gIHRyLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkOmZpcnN0LW9mLXR5cGUgdGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYWN0aXZlLXVpOyAvL3RvcCBib3JkZXIgYWN0cyBhcyBzZXBhcmF0b3IgZnJvbSB0aGVhZFxuICB9XG5cbiAgLy8gbGFzdCByb3cgKyB6ZWJyYSBzZWxlY3QgbGFzdFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmFcbiAgICB0Ym9keVxuICAgIHRyOmxhc3Qtb2YtdHlwZTpudGgtY2hpbGQob2RkKS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZFxuICAgIHRkLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmFcbiAgICB0Ym9keVxuICAgIHRyOmxhc3Qtb2YtdHlwZTpudGgtY2hpbGQoZXZlbikuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWRcbiAgICB0ZCxcbiAgdHIuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6bGFzdC1vZi10eXBlIHRkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlbGVjdGVkLXVpOyAvLyBkb2Vzbid0IG5lZWQgc2VwYXJhdG9yc1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VsZWN0ZWQtdWk7XG4gIH1cblxuICAvLyB6ZWJyYSBzZWxlY3QgLSBvZGQgY2hpbGRcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdGJvZHlcbiAgICB0cjpudGgtY2hpbGQoZXZlbikuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWRcbiAgICB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRhY3RpdmUtdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmFcbiAgICB0Ym9keVxuICAgIHRyOm50aC1jaGlsZChldmVuKS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZDpob3ZlclxuICAgIHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhdGEtdGFibGUtY29sdW1uLWhvdmVyO1xuICB9XG5cbiAgLy8gaG92ZXIgKyB6ZWJyYSBzZWxlY3QgLSBldmVuIGNoaWxkXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYVxuICAgIHRib2R5XG4gICAgdHI6bnRoLWNoaWxkKG9kZCkuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6aG92ZXJcbiAgICB0ZCxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGJvZHkgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkOmhvdmVyIHRkIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZDogJGRhdGEtdGFibGUtY29sdW1uLWhvdmVyO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGF0YS10YWJsZS1jb2x1bW4taG92ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXRhLXRhYmxlLWNvbHVtbi1ob3ZlcjtcbiAgfVxuXG4gIC8vIHNlbGVjdGVkIG92ZXJmbG93IG1lbnVcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9faWNvbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBDb21wYWN0XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY29tcGFjdCB0aGVhZCB0cixcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QgdGJvZHkgdHIge1xuICAgIGhlaWdodDogcmVtKDI0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QgLiN7JHByZWZpeH0tLXRhYmxlLWhlYWRlci1sYWJlbCB7XG4gICAgcGFkZGluZzogcmVtKDJweCkgMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1jb21wYWN0IHRkIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDJweCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUge1xuICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oMjNweCk7IC8vMjRweCByb3cgLSAxcHggYm9yZGVyXG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1jb21wYWN0XG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3RcbiAgICAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3RcbiAgICAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94XG4gICAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsIHtcbiAgICBtaW4taGVpZ2h0OiByZW0oMjNweCk7IC8vMjRweCByb3cgLSAxcHggYm9yZGVyXG4gICAgaGVpZ2h0OiByZW0oMjNweCk7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2hvcnRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydCB0aGVhZCB0cixcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0IHRib2R5IHRyIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydCAuI3skcHJlZml4fS0tdGFibGUtaGVhZGVyLWxhYmVsIHtcbiAgICBwYWRkaW5nOiByZW0oN3B4KSAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0IHRkIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDdweCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0IC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51IHtcbiAgICBoZWlnaHQ6IHJlbSgzMXB4KTsgLy8zMnB4IHJvdyAtIDFweCBib3JkZXJcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0XG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0XG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgzcHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oM3B4KTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBUYWxsXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCB0aGVhZCB0cixcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgdGJvZHkgdHIge1xuICAgIGhlaWdodDogcmVtKDY0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgLiN7JHByZWZpeH0tLXRhYmxlLWhlYWRlci1sYWJlbCB7XG4gICAgcGFkZGluZzogcmVtKDE2cHgpIDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCB0ZCB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY2VsbC1zZWNvbmRhcnktdGV4dCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnbGFiZWwtMDEnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGxcbiAgICAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnUsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGxcbiAgICAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94IHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDEycHgpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFN0YXRpY1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXN0YXRpYyB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAvLyAtLS0tLS0tLS0tLS0tXG4gIC8vIFN0aWNreSBoZWFkZXJcbiAgLy8gLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZV9pbm5lci1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMztcbiAgICBwYWRkaW5nLXRvcDogcmVtKDQ4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zdGlja3ktaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvLyBtYXgtaGVpZ2h0OiByZW0oMzAwcHgpO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcblxuICAgIHRoZWFkLFxuICAgIHRib2R5LFxuICAgIHRyLFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgdGhlYWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAvL2hpZGVzIGllIHNjcm9sbGJhclxuICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICB9XG5cbiAgICB0aGVhZCB0ciB0aCB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGFjdGl2ZS11aTtcbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAvL2hpZGVzIGllIHNjcm9sbGJhclxuICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICB9XG5cbiAgICB0ciB7XG4gICAgICBtaW4taGVpZ2h0OiByZW0oNDhweCk7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgdHIuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6Zmlyc3Qtb2YtdHlwZSB0ZCB7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgIH1cblxuICAgIC8vaGlkZXMgd2Via2l0IHNjcm9sbGJhclxuICAgIHRoZWFkOjotd2Via2l0LXNjcm9sbGJhcixcbiAgICB0Ym9keTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvL2hpZGVzIGZmIHNjcm9sbGJhclxuICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG4gICAgICB0aGVhZCxcbiAgICAgIHRib2R5IHtcbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRib2R5IHRyOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cblxuICAgIHRoOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94KTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51KTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZC12Mik6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4taWNvbiksXG4gICAgdGQ6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tY2hlY2tib3gpOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnUpOm5vdCguI3skcHJlZml4fS0tdGFibGUtZXhwYW5kLXYyKTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1pY29uKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGFibGUtaGVhZGVyLWxhYmVsIHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHN0aWNreS1oZWFkZXIoJG1heC13aWR0aDogcmVtKDkwMHB4KSk7XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2RhdGEtdGFibGUtdjItY29yZScpIHtcbiAgQGluY2x1ZGUgZGF0YS10YWJsZS1jb3JlO1xufVxuIiwiLy8gQGFjY2VzcyBwdWJsaWNcbi8vIEBjb250ZW50IEluY2x1ZGVzIGEgYmxvY2sgb2Ygc3R5bGVzIGZvciBzdGlja3kgZGF0YSB0YWJsZXMgdGhhdCBzZXRzIHRhYmxlIG1heC13aWR0aCwgbWF4LWhlaWdodCBhbmQgY29sdW1uIG1pbi13aWR0aFxuLy8gQGV4YW1wbGUgLSBAaW5jbHVkZSBzdGlja3ktaGVhZGVyKCRtYXgtaGVpZ2h0OiByZW0oOTAwcHgpLCAkbWluLXdpZHRoOiByZW0oMzBweCkpO1xuLy8gQHBhcmFtIHt2YWx1ZX0gJG1heC13aWR0aCBbMTAwJV0gLSBzZXRzIHRoZSBtYXgtd2lkdGggb2YgdGhlIGRhdGEgdGFibGUgcGFyZW50IGNvbnRhaW5lclxuLy8gQHBhcmFtIHt2YWx1ZX0gJG1heC1oZWlnaHQgW3JlbSgzMDBweCldIC0gc2V0cyB0aGUgbWF4LWhlaWdodCBvZiB0aGUgZGF0YSB0YWJsZVxuLy8gQHBhcmFtIHt2YWx1ZX0gJG1pbi13aWR0aCBbcmVtKDEwMHB4KV0gLSBzZXRzIHRoZSBtaW4td2lkdGggb2YgdGgncyBhbmQgdGQncyBzbyB0aGVpciBzaXplcyBhbGlnblxuQG1peGluIHN0aWNreS1oZWFkZXIoXG4gICRtaW4td2lkdGg6IGZhbHNlLFxuICAkbWF4LXdpZHRoOiAxMDAlLFxuICAkbWF4LWhlaWdodDogcmVtKDMwMHB4KVxuKSB7XG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1tYXgtd2lkdGgge1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zdGlja3ktaGVhZGVyIHtcbiAgICBtYXgtaGVpZ2h0OiAkbWF4LWhlaWdodDtcblxuICAgIEBpZiAkbWluLXdpZHRoIHtcbiAgICAgIHRoOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94KTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51KTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZCk6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4taWNvbiksXG4gICAgICB0ZDpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCk6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudSk6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQpOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWljb24pIHtcbiAgICAgICAgbWluLXdpZHRoOiAkbWluLXdpZHRoO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcblxuLy8vIERhdGEgdGFibGUgZXhwYW5kYWJsZSBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgZGF0YS10YWJsZVxuQG1peGluIGRhdGEtdGFibGUtZXhwYW5kYWJsZSB7XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBQYXJlbnQgcm93XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL2ZpcnN0IHJvdyB0b3AgYm9yZGVyXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3c6Zmlyc3Qtb2YtdHlwZSB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBDaGlsZCByb3dcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIGRlZmF1bHQgc3R5bGVzXG4gIC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taGlkZGVuIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLy9jaGlsZCByb3cgaGlkZGVuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3c6bm90KC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdylcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XSB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAkZHVyYXRpb24tLW1vZGVyYXRlLTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93Om5vdCguI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cpXG4gICAgKyB0cltkYXRhLWNoaWxkLXJvd11cbiAgICB0ZCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdzpub3QoLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93KVxuICAgICsgdHJbZGF0YS1jaGlsZC1yb3ddXG4gICAgdGRcbiAgICAuI3skcHJlZml4fS0tY2hpbGQtcm93LWlubmVyLWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICB9XG5cbiAgLy9jaGlsZCByb3cgdmlzaWJsZVxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93ICsgdHJbZGF0YS1jaGlsZC1yb3ddIHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyArIHRyW2RhdGEtY2hpbGQtcm93XSB0ZCB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgyM3B4KTtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3dcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XVxuICAgIHRkXG4gICAgLiN7JHByZWZpeH0tLWNoaWxkLXJvdy1pbm5lci1jb250YWluZXIge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAvLyBib3R0b20gYm9yZGVyIG92ZXJyaWRlc1xuICAuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyA+IHRkLFxuICAuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyArIHRyW2RhdGEtY2hpbGQtcm93XSA+IHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAxcHggJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhcmVudC1yb3c6bm90KC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdylcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XVxuICAgID4gdGQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyA+IHRkOmZpcnN0LW9mLXR5cGUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IC8vIGZpcnN0IHRkIGRvZXNuJ3QgaGF2ZSBhIHZpc2libGUgYm9yZGVyXG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSG92ZXIgc3R5bGVzXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93Om5vdCguI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cpIHRkLFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93IHRkLFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cgKyB0cltkYXRhLWNoaWxkLXJvd10gdGQge1xuICAgIHRyYW5zaXRpb246IGFsbCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC8vIGhvdmVyaW5nIG9uIGNvbGxhcHNlZCBwYXJlbnRcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdzpub3QoLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93KTpmaXJzdC1vZi10eXBlOmhvdmVyXG4gICAgdGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaG92ZXItdWk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRob3Zlci11aTtcbiAgfVxuXG4gIC8vIGhvdmVyaW5nIG9uIGV4cGFuZGVkIHBhcmVudFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93OmhvdmVyIHRkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRob3Zlci11aTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAzO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3c6aG92ZXIgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRob3Zlci11aTsgLy8gZmlyc3QgdGQgZG9lc24ndCBoYXZlIGEgdmlzaWJsZSBib3JkZXJcbiAgfVxuXG4gIC8vIGNoaWxkIHJvdyB3aGVuIGhvdmVyaW5nIG9uIGV4cGFuZGVkIHBhcmVudFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93OmhvdmVyXG4gICAgKyB0cltkYXRhLWNoaWxkLXJvd11cbiAgICB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAzO1xuICB9XG5cbiAgLy9ob3ZlcmluZyBvbiBleHBhbmRlZCBjaGlsZCByb3dcbiAgdHIuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3ctLWhvdmVyICsgdHJbZGF0YS1jaGlsZC1yb3ddIHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAzO1xuICB9XG5cbiAgLy9ob3ZlcmluZyBvbiBleHBhbmRlZCBjaGlsZCByb3cgKGNsYXNzIGFkZGVkIHRvIHBhcmVudClcbiAgdHIuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3ctLWhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gIH1cblxuICB0ci4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXIgdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAzO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaG92ZXItdWk7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXJcbiAgICB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhvdmVyLXVpOyAvLyBmaXJzdCBwYXJlbnQgdGQgZG9lc250IGhhdmUgdmlzaWJsZSBib3R0b20gYm9yZGVyXG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRXhwYW5kIGljb24gY29sdW1uXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0ZC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQge1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgbWluLXdpZHRoOiAyLjVyZW07XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmRbZGF0YS1wcmV2aW91cy12YWx1ZT0nY29sbGFwc2VkJ11cbiAgICAuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kX19zdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmRfX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KCdmYWxzZScpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2hvcnQgLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZF9fYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kX19idXR0b246Zm9jdXMge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmRfX2J1dHRvbjpmb2N1cyAuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kX19zdmcge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMHB4IDFweCAkZm9jdXM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kX19zdmcge1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIHRoLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICB0aC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQgKyB0aC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tY2hlY2tib3gge1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctMDM7XG4gIH1cblxuICAvLyBmaXggZXhwYW5kZWQgcGFyZW50IHNlcGFyYXRpbmcgYm9yZGVyIGxlbmd0aFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93XG4gICAgdGQuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kXG4gICAgKyB0ZDo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogcmVtKC0xcHgpO1xuICAgIGhlaWdodDogcmVtKDFweCk7XG4gICAgd2lkdGg6IHJlbSg4cHgpO1xuICAgIGJhY2tncm91bmQ6ICR1aS0wMTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3c6aG92ZXJcbiAgICB0ZC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmRcbiAgICArIHRkOjphZnRlcixcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXJcbiAgICB0ZC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmRcbiAgICArIHRkOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICB9XG5cbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZFxuICAgIHRkLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZFxuICAgICsgdGQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNlbGVjdGVkXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBwYXJlbnQgY29sbGFwc2VkXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6Zmlyc3Qtb2YtdHlwZSB0ZCB7XG4gICAgYmFja2dyb3VuZDogJHNlbGVjdGVkLXVpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYWN0aXZlLXVpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDFweCAkYWN0aXZlLXVpO1xuICB9XG5cbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZCB0ZCB7XG4gICAgYmFja2dyb3VuZDogJHNlbGVjdGVkLXVpO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAxcHggJGFjdGl2ZS11aTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6bGFzdC1vZi10eXBlIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2VsZWN0ZWQtdWk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IDAgMXB4ICR1aS0wMztcbiAgfVxuXG4gIC8vIHBhcmVudCBjb2xsYXBzZWQgaG92ZXJcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZDpub3QoLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93KTpob3ZlclxuICAgIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiAkaG92ZXItc2VsZWN0ZWQtdWk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRob3Zlci1zZWxlY3RlZC11aTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAxcHggJGhvdmVyLXNlbGVjdGVkLXVpO1xuICB9XG5cbiAgLy8gcGFyZW50IGV4cGFuZGVkXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3dcbiAgICB0ZCxcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvd1xuICAgIHRkOmZpcnN0LW9mLXR5cGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDFweCAkc2VsZWN0ZWQtdWk7IC8vbm8gdmlzaWJsZSBib3JkZXIgd2hlbiBleHBhbmRlZFxuICB9XG5cbiAgLy8gcGFyZW50IGV4cGFuZGVkIGhvdmVyXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3c6aG92ZXJcbiAgICB0ZCxcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdzpob3ZlclxuICAgIHRkOmZpcnN0LW9mLXR5cGUsXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3ctLWhvdmVyXG4gICAgdGQsXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3ctLWhvdmVyXG4gICAgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXNlbGVjdGVkLXVpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaG92ZXItc2VsZWN0ZWQtdWk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IDAgMXB4ICRob3Zlci1zZWxlY3RlZC11aTtcbiAgfVxuXG4gIC8vIGNoaWxkIHJvdyBleHBhbmRlZFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93XG4gICAgKyB0cltkYXRhLWNoaWxkLXJvd11cbiAgICB0ZCB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAxcHggJGFjdGl2ZS11aTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGFjdGl2ZS11aTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3dcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XTpsYXN0LW9mLXR5cGVcbiAgICB0ZCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4ICRhY3RpdmUtdWk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgyNHB4KTtcbiAgfVxuXG4gIC8vIGNoaWxkIHJvdyBleHBhbmRlZCBob3ZlclxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93OmhvdmVyXG4gICAgKyB0cltkYXRhLWNoaWxkLXJvd11cbiAgICB0ZCxcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXJcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XVxuICAgIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2VsZWN0ZWQtdWk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnZGF0YS10YWJsZS12Mi1leHBhbmRhYmxlJykge1xuICBAaW5jbHVkZSBkYXRhLXRhYmxlLWV4cGFuZGFibGU7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG4vLy8gRGF0YSB0YWJsZSBzb3J0IHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBkYXRhLXRhYmxlXG5AbWl4aW4gZGF0YS10YWJsZS1zb3J0IHtcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTb3J0YWJsZSB0YWJsZVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0IHRoLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc29ydFxuICAgIHRoOmZpcnN0LW9mLXR5cGU6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tY2hlY2tib3gpOm5vdCguI3skcHJlZml4fS0tdGFibGUtZXhwYW5kKSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0IHRoIHtcbiAgICBoZWlnaHQ6ICRsYXlvdXQtMDQ7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNvcnQgdGQge1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctMDM7XG4gICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc29ydCB0aDpmaXJzdC1vZi10eXBlIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0IHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLTA0O1xuICB9XG5cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBUaCA+IEJ1dHRvblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0IHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQoZmFsc2UpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6ICR0ZXh0LTA0O1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctMDM7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wNTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0OmZvY3VzIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtc29ydDpob3ZlciB7XG4gICAgY29sb3I6ICR0ZXh0LTA0O1xuICAgIGJhY2tncm91bmQ6ICR1aS0wNTtcbiAgfVxuXG4gIC8vIGNoYW5nZXMgb3BhY2l0eSB3aGVuIHRoIGlzIGluYWN0aXZlIChzZWUgbGluZSAxNjEpXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0OmZvY3VzIHN2ZyxcbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnQ6aG92ZXIgc3ZnIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1RoID4gQnV0dG9uID4gU3ZnIChTb3J0IEljb25zKVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIGluYWN0aXZlIGljb25zXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0IC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19pY29uLWluYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0IC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ljb24tdW5zb3J0ZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiByZW0oMnB4KTtcbiAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmctMDM7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsbDogJHRleHQtMDQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiAkbGF5b3V0LTAxO1xuICB9XG5cbiAgLy8gYWN0aXZlIGljb25zXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0LiN7JHByZWZpeH0tLXRhYmxlLXNvcnQtLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19pY29uLXVuc29ydGVkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnQuI3skcHJlZml4fS0tdGFibGUtc29ydC0tYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ljb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7IC8vY2hhbmdlcyBvcGFjaXR5IHdoZW4gdGggaXMgYWN0aXZlIChzZWUgbGluZSAxMjUpXG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtc29ydC0tYXNjZW5kaW5nIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19pY29uIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiByZW0oMnB4KTtcbiAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmctMDM7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbi0tYmFzZSAkY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmaWxsOiAkdGV4dC0wNDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6ICRsYXlvdXQtMDE7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gQ29tcGFjdCwgU2hvcnQsIFRhbGwgU29ydGFibGVcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNvcnRhYmxlIGNvbXBhY3RcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc29ydCB0aCB7XG4gICAgaGVpZ2h0OiByZW0oMjRweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY29tcGFjdC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0XG4gICAgdGhcbiAgICAuI3skcHJlZml4fS0tdGFibGUtc29ydCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxuICAvLyBTb3J0YWJsZSBTaG9ydFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2hvcnQuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc29ydCB0aCB7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2hvcnQuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc29ydFxuICAgIHRoXG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gU29ydGFibGUgVGFsbFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0IHRoIHtcbiAgICBoZWlnaHQ6IHJlbSg2NHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS10YWxsLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNvcnRcbiAgICB0aFxuICAgIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS10YWxsLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNvcnRcbiAgICB0aFxuICAgIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0XG4gICAgc3ZnIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIHRvcDogJHNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0XG4gICAgdGhcbiAgICAuI3skcHJlZml4fS0tdGFibGUtc29ydFxuICAgIC4jeyRwcmVmaXh9LS10YWJsZS1oZWFkZXItbGFiZWwge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogcmVtKC04cHgpO1xuICAgIG1heC1oZWlnaHQ6IDNyZW07XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7IC8vIHdlaXJkIHRleHQgdHJ1bmNhdGlvbiBzdHlsZSB1c2VkXG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyOyAvLyBiZWNhdXNlIHdlIG5lZWQgdGV4dCB0byB3cmFwXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsgLy8gY2FuJ3QgdXNlIHdoaXRlLXNwYWNlOiBub3dyYXBcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdkYXRhLXRhYmxlLXNvcnQnKSB7XG4gIEBpbmNsdWRlIGRhdGEtdGFibGUtc29ydDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2RhdGEtdGFibGUtaW5saW5lLWVkaXQnKSB7XG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtZWRpdC1sYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgLiN7JHByZWZpeH0tLWlubGluZS1lZGl0LWxhYmVsX19pY29uIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWVkaXQtbGFiZWwtLWluYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1lZGl0LWxhYmVsX19hY3Rpb24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldChmYWxzZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmU7XG4gICAgICBwYWRkaW5nOiAkc3BhY2luZy0zeHM7XG5cbiAgICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtZWRpdC1sYWJlbF9faWNvbiB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtZWRpdC1sYWJlbF9faWNvbiB7XG4gICAgZmlsbDogJHVpLTA1O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWVkaXQtaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWVkaXQtaW5wdXQtLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbSgtMTJweCk7XG5cbiAgICBpbnB1dCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXNtO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydCB7XG4gICAgaW5wdXQge1xuICAgICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgfVxuXG4gICAgc2VsZWN0IHtcbiAgICAgIHBhZGRpbmc6IDAuNDVyZW0gMi43NXJlbSAwLjQ1cmVtICRzcGFjaW5nLW1kO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3RfX2Fycm93IHtcbiAgICAgIHRvcDogMC44NzVyZW07XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG5AaW5jbHVkZSBleHBvcnRzKCdkYXRhLXRhYmxlLXYyLXNrZWxldG9uJykge1xuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgdGgge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRicmFuZC0wMTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICY6bnRoLWNoaWxkKDNuICsgMSkge1xuICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgzbiArIDIpIHtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoM24gKyAzKSB7XG4gICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGggc3BhbixcbiAgICB0ZCBzcGFuIHtcbiAgICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgICAgd2lkdGg6IDc1JTtcbiAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIHRyOmhvdmVyIHtcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdWktMDM7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSxcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHVpLTAzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtdjIuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXRhYmxlLXNvcnQtdjIge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuQG1peGluIHN0cnVjdHVyZWQtbGlzdCB7XG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtLXNlbGVjdGlvbiAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRkLFxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1zZWxlY3Rpb24gLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10aCB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy0tZGF0YS1zdHJ1Y3R1cmVkLWxpc3Q7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LWlucHV0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgJi4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtLWNvbmRlbnNlZCAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRkLFxuICAgICYuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1jb25kZW5zZWQgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10aCB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLXRkLS1jb25kZW5zZWQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAzO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1zZWxlY3Rpb25cbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdzpob3Zlcjpub3QoLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3ctLWhlYWRlci1yb3cpOm5vdCguI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdy0tc2VsZWN0ZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItcm93O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhvdmVyLXJvdztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93LiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3ctLXNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdy4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93LS1oZWFkZXItcm93IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlbGVjdGVkLXVpO1xuICAgIGN1cnNvcjogaW5oZXJpdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93OmZvY3VzOm5vdCguI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdy0taGVhZGVyLXJvdykge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtLXNlbGVjdGlvblxuICAgIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93OmhvdmVyOm5vdCguI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdy0taGVhZGVyLXJvdylcbiAgICA+IC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtdGQsXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93LiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3ctLXNlbGVjdGVkXG4gICAgPiAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRkIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1zZWxlY3Rpb25cbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdzpob3Zlcjpub3QoLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3ctLWhlYWRlci1yb3cpXG4gICAgPiAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHVpLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRoIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXRoO1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2hlYWRpbmctMDEnKTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJHN0cnVjdHVyZWQtbGlzdC10ZXh0LXRyYW5zZm9ybTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10Ym9keSB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRkIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LWxvbmctMDEnKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXRkO1xuICAgIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgyMXB4KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBtYXgtd2lkdGg6IDM2cmVtO1xuICAgIHRyYW5zaXRpb246IGNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10aCB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtdGQge1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtY29udGVudC0tbm93cmFwIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1zdmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRyYW5zaXRpb246IGFsbCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93OmhvdmVyIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtc3ZnIHtcbiAgICBmaWxsOiAkaWJtLWNvbG9yX19ncmF5LTQwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1pbnB1dDpjaGVja2VkXG4gICAgKyAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvd1xuICAgIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtc3ZnLFxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LWlucHV0OmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtdGRcbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXN2ZyB7XG4gICAgZmlsbDogJGljb24tMDE7XG4gIH1cblxuICAvLyBTa2VsZXRvbiBTdGF0ZVxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRoIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogOCU7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDNuICsgMikge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgzbiArIDMpIHtcbiAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRoIHNwYW4ge1xuICAgICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC4jeyRwcmVmaXh9LS1za2VsZXRvblxuICAgIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtdGhcbiAgICBzcGFuIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcbiAgICB3aWR0aDogNzUlO1xuICAgIGhlaWdodDogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1zZWxlY3Rpb24uI3skcHJlZml4fS0tc2tlbGV0b25cbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRoOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogNSU7XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3N0cnVjdHVyZWQtbGlzdCcpIHtcbiAgQGluY2x1ZGUgc3RydWN0dXJlZC1saXN0O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLyBVc2VkIG9ubHkgZm9yIGAuI3twcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtLWNvbmRlbnNlZGBcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgc3RydWN0dXJlZC1saXN0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskc3RydWN0dXJlZC1saXN0LXBhZGRpbmddXG5AbWl4aW4gcGFkZGluZy10ZC0tY29uZGVuc2VkKCRwYWRkaW5nOiAkc3RydWN0dXJlZC1saXN0LXBhZGRpbmcpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcgLyA0O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi8vLyBVc2VkIG9ubHkgZm9yIFtkYXRhLXN0cnVjdHVyZWQtbGlzdF1cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgc3RydWN0dXJlZC1saXN0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskc3RydWN0dXJlZC1saXN0LXBhZGRpbmddXG5AbWl4aW4gcGFkZGluZy0tZGF0YS1zdHJ1Y3R1cmVkLWxpc3QoJHBhZGRpbmc6ICRzdHJ1Y3R1cmVkLWxpc3QtcGFkZGluZykge1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nIC8gMjtcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmcgLyAyO1xuXG4gIC8vIENvbnRyb2xzIGd1dHRlciBzaXplcyBmb3IgY2hlY2tcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZyAvIDI7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmcgLyAyO1xuICB9XG59XG5cbi8vLyBVc2VkIG9ubHkgZm9yIG5vcm1hbCBzdHJ1Y3R1cmVkLWxpc3Rcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgc3RydWN0dXJlZC1saXN0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskc3RydWN0dXJlZC1saXN0LXBhZGRpbmddXG5AbWl4aW4gcGFkZGluZy10aCgkcGFkZGluZzogJHN0cnVjdHVyZWQtbGlzdC1wYWRkaW5nKSB7XG4gIHBhZGRpbmctbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgcGFkZGluZy10b3A6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gIHBhZGRpbmctYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xufVxuXG4vLy8gVXNlZCBvbmx5IGZvciBub3JtYWwgc3RydWN0dXJlZC1saXN0XG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHN0cnVjdHVyZWQtbGlzdFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJHN0cnVjdHVyZWQtbGlzdC1wYWRkaW5nXVxuQG1peGluIHBhZGRpbmctdGQoJHBhZGRpbmc6ICRzdHJ1Y3R1cmVkLWxpc3QtcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgcGFkZGluZy1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDY7XG4gIHBhZGRpbmctbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbn1cbiIsIi8vIENvZGUgZ2VuZXJhdGVkIGJ5IEBjYXJib24vY29sb3JzLiBETyBOT1QgRURJVC5cbi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTgsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuLy8vIERlZmluZSBjb2xvciB2YXJpYWJsZXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2NvbG9yc1xuLy8vIEBkZXByZWNhdGVkIFVzZSBgJGNhcmJvbi0tY29sb3JzYCBnb2luZyBmb3J3YXJkXG5AbWl4aW4gaWJtLS1jb2xvcnMoKSB7XG4gICRpYm0tY29sb3JfX2JsYWNrLTEwMDogIzAwMDAwMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ibHVlLTEwOiAjZWRmNGZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2JsdWUtMjA6ICNjOWRlZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fYmx1ZS0zMDogIzk3YzFmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ibHVlLTQwOiAjNmVhNmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2JsdWUtNTA6ICM0MDhiZmMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fYmx1ZS02MDogIzAwNjJmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ibHVlLTcwOiAjMDU0YWRhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2JsdWUtODA6ICMwNTMwYWQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fYmx1ZS05MDogIzA2MWY4MCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ibHVlLTEwMDogIzA1MTI0MyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jb29sLWdyYXktMTA6ICNmMmY0ZjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY29vbC1ncmF5LTIwOiAjZDVkOWUwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2Nvb2wtZ3JheS0zMDogI2I5YmZjNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jb29sLWdyYXktNDA6ICM5ZmE1YWQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY29vbC1ncmF5LTUwOiAjODY4ZDk1ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2Nvb2wtZ3JheS02MDogIzY5NzA3NyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jb29sLWdyYXktNzA6ICM1MDU2NWIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY29vbC1ncmF5LTgwOiAjMzczZDQyICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2Nvb2wtZ3JheS05MDogIzI0MmEyZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jb29sLWdyYXktMTAwOiAjMTMxNzFhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2N5YW4tMTA6ICNlM2Y2ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY3lhbi0yMDogI2IzZTZmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jeWFuLTMwOiAjNmNjYWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2N5YW4tNDA6ICMzMGIwZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY3lhbi01MDogIzExOTFlNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jeWFuLTYwOiAjMDA3MmMzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2N5YW4tNzA6ICMwMDU4YTEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY3lhbi04MDogIzAwM2Q3MyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jeWFuLTkwOiAjMDAyYjUwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2N5YW4tMTAwOiAjMDcxOTJiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyYXktMTA6ICNmM2YzZjMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fZ3JheS0yMDogI2RjZGNkYyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmF5LTMwOiAjYmViZWJlICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyYXktNDA6ICNhNGE0YTQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fZ3JheS01MDogIzhjOGM4YyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmF5LTYwOiAjNmY2ZjZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyYXktNzA6ICM1NjU2NTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fZ3JheS04MDogIzNkM2QzZCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmF5LTkwOiAjMjgyODI4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyYXktMTAwOiAjMTcxNzE3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTEwOiAjZGFmYmU0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTIwOiAjOWRlZWIyICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTMwOiAjNTZkNjc5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTQwOiAjM2RiYjYxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTUwOiAjMjRhMTQ4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTYwOiAjMTk4MDM4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTcwOiAjMTA2NDJhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTgwOiAjMDU0NzE5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTkwOiAjMDEzMzBmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyZWVuLTEwMDogIzA4MWIwOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19tYWdlbnRhLTEwOiAjZmZmMGY2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX21hZ2VudGEtMjA6ICNmZmNmZTEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fbWFnZW50YS0zMDogI2ZmYTBjMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19tYWdlbnRhLTQwOiAjZmE3NWE2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX21hZ2VudGEtNTA6ICNlZTUzOGIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fbWFnZW50YS02MDogI2QxMjc2NSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19tYWdlbnRhLTcwOiAjYTExOTUwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX21hZ2VudGEtODA6ICM3NjBhM2EgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fbWFnZW50YS05MDogIzU3MDAyYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19tYWdlbnRhLTEwMDogIzJhMGExNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19vcmFuZ2UtNDA6ICNmYzdiMWUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcHVycGxlLTEwOiAjZjdmMWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3B1cnBsZS0yMDogI2U2ZDZmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19wdXJwbGUtMzA6ICNkMGIwZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcHVycGxlLTQwOiAjYmI4ZWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3B1cnBsZS01MDogI2E2NmVmYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19wdXJwbGUtNjA6ICM4YTNmZmMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcHVycGxlLTcwOiAjNmUzMmM5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3B1cnBsZS04MDogIzRmMjE5NiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19wdXJwbGUtOTA6ICMzODE0NmIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcHVycGxlLTEwMDogIzFlMTAzMyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19yZWQtMTA6ICNmZmYwZjEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcmVkLTIwOiAjZmNkMGQzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3JlZC0zMDogI2ZmYTRhOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19yZWQtNDA6ICNmZjc2N2MgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcmVkLTUwOiAjZmI0YjUzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3JlZC02MDogI2RhMWUyOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19yZWQtNzA6ICNhNTE5MjAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcmVkLTgwOiAjNzUwZTEzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3JlZC05MDogIzU3MDQwOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19yZWQtMTAwOiAjMmMwODBhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3RlYWwtMTA6ICNkYmZiZmIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fdGVhbC0yMDogIzkyZWVlZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX190ZWFsLTMwOiAjMjBkNWQyICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3RlYWwtNDA6ICMwMGJhYjYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fdGVhbC01MDogIzAwOWM5OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX190ZWFsLTYwOiAjMDA3ZDc5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3RlYWwtNzA6ICMwMDYxNjEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fdGVhbC04MDogIzAwNDU0OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX190ZWFsLTkwOiAjMDAzMTM3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3RlYWwtMTAwOiAjMDgxYTFjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3dhcm0tZ3JheS0xMDogI2Y3ZjNmMSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX193YXJtLWdyYXktMjA6ICNlMGRiZGEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fd2FybS1ncmF5LTMwOiAjYzFiY2JiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3dhcm0tZ3JheS00MDogI2E3YTJhMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX193YXJtLWdyYXktNTA6ICM4ZjhiOGIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fd2FybS1ncmF5LTYwOiAjNzI2ZTZlICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3dhcm0tZ3JheS03MDogIzU5NTU1NSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX193YXJtLWdyYXktODA6ICM0MDNjM2MgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fd2FybS1ncmF5LTkwOiAjMmIyODI4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3dhcm0tZ3JheS0xMDA6ICMxYTE3MTcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fd2hpdGUtMDogI2ZmZmZmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX195ZWxsb3ctMjA6ICNmZGQxM2EgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvci1tYXA6IChcbiAgICAnYmxhY2snOiAoXG4gICAgICAxMDA6ICMwMDAwMDAsXG4gICAgKSxcbiAgICAnYmx1ZSc6IChcbiAgICAgIDEwOiAjZWRmNGZmLFxuICAgICAgMjA6ICNjOWRlZmYsXG4gICAgICAzMDogIzk3YzFmZixcbiAgICAgIDQwOiAjNmVhNmZmLFxuICAgICAgNTA6ICM0MDhiZmMsXG4gICAgICA2MDogIzAwNjJmZixcbiAgICAgIDcwOiAjMDU0YWRhLFxuICAgICAgODA6ICMwNTMwYWQsXG4gICAgICA5MDogIzA2MWY4MCxcbiAgICAgIDEwMDogIzA1MTI0MyxcbiAgICApLFxuICAgICdjb29sLWdyYXknOiAoXG4gICAgICAxMDogI2YyZjRmOCxcbiAgICAgIDIwOiAjZDVkOWUwLFxuICAgICAgMzA6ICNiOWJmYzcsXG4gICAgICA0MDogIzlmYTVhZCxcbiAgICAgIDUwOiAjODY4ZDk1LFxuICAgICAgNjA6ICM2OTcwNzcsXG4gICAgICA3MDogIzUwNTY1YixcbiAgICAgIDgwOiAjMzczZDQyLFxuICAgICAgOTA6ICMyNDJhMmUsXG4gICAgICAxMDA6ICMxMzE3MWEsXG4gICAgKSxcbiAgICAnY29vbEdyYXknOiAoXG4gICAgICAxMDogI2YyZjRmOCxcbiAgICAgIDIwOiAjZDVkOWUwLFxuICAgICAgMzA6ICNiOWJmYzcsXG4gICAgICA0MDogIzlmYTVhZCxcbiAgICAgIDUwOiAjODY4ZDk1LFxuICAgICAgNjA6ICM2OTcwNzcsXG4gICAgICA3MDogIzUwNTY1YixcbiAgICAgIDgwOiAjMzczZDQyLFxuICAgICAgOTA6ICMyNDJhMmUsXG4gICAgICAxMDA6ICMxMzE3MWEsXG4gICAgKSxcbiAgICAnY3lhbic6IChcbiAgICAgIDEwOiAjZTNmNmZmLFxuICAgICAgMjA6ICNiM2U2ZmYsXG4gICAgICAzMDogIzZjY2FmZixcbiAgICAgIDQwOiAjMzBiMGZmLFxuICAgICAgNTA6ICMxMTkxZTYsXG4gICAgICA2MDogIzAwNzJjMyxcbiAgICAgIDcwOiAjMDA1OGExLFxuICAgICAgODA6ICMwMDNkNzMsXG4gICAgICA5MDogIzAwMmI1MCxcbiAgICAgIDEwMDogIzA3MTkyYixcbiAgICApLFxuICAgICdncmF5JzogKFxuICAgICAgMTA6ICNmM2YzZjMsXG4gICAgICAyMDogI2RjZGNkYyxcbiAgICAgIDMwOiAjYmViZWJlLFxuICAgICAgNDA6ICNhNGE0YTQsXG4gICAgICA1MDogIzhjOGM4YyxcbiAgICAgIDYwOiAjNmY2ZjZmLFxuICAgICAgNzA6ICM1NjU2NTYsXG4gICAgICA4MDogIzNkM2QzZCxcbiAgICAgIDkwOiAjMjgyODI4LFxuICAgICAgMTAwOiAjMTcxNzE3LFxuICAgICksXG4gICAgJ2dyZWVuJzogKFxuICAgICAgMTA6ICNkYWZiZTQsXG4gICAgICAyMDogIzlkZWViMixcbiAgICAgIDMwOiAjNTZkNjc5LFxuICAgICAgNDA6ICMzZGJiNjEsXG4gICAgICA1MDogIzI0YTE0OCxcbiAgICAgIDYwOiAjMTk4MDM4LFxuICAgICAgNzA6ICMxMDY0MmEsXG4gICAgICA4MDogIzA1NDcxOSxcbiAgICAgIDkwOiAjMDEzMzBmLFxuICAgICAgMTAwOiAjMDgxYjA5LFxuICAgICksXG4gICAgJ21hZ2VudGEnOiAoXG4gICAgICAxMDogI2ZmZjBmNixcbiAgICAgIDIwOiAjZmZjZmUxLFxuICAgICAgMzA6ICNmZmEwYzIsXG4gICAgICA0MDogI2ZhNzVhNixcbiAgICAgIDUwOiAjZWU1MzhiLFxuICAgICAgNjA6ICNkMTI3NjUsXG4gICAgICA3MDogI2ExMTk1MCxcbiAgICAgIDgwOiAjNzYwYTNhLFxuICAgICAgOTA6ICM1NzAwMmIsXG4gICAgICAxMDA6ICMyYTBhMTYsXG4gICAgKSxcbiAgICAnb3JhbmdlJzogKFxuICAgICAgNDA6ICNmYzdiMWUsXG4gICAgKSxcbiAgICAncHVycGxlJzogKFxuICAgICAgMTA6ICNmN2YxZmYsXG4gICAgICAyMDogI2U2ZDZmZixcbiAgICAgIDMwOiAjZDBiMGZmLFxuICAgICAgNDA6ICNiYjhlZmYsXG4gICAgICA1MDogI2E2NmVmYSxcbiAgICAgIDYwOiAjOGEzZmZjLFxuICAgICAgNzA6ICM2ZTMyYzksXG4gICAgICA4MDogIzRmMjE5NixcbiAgICAgIDkwOiAjMzgxNDZiLFxuICAgICAgMTAwOiAjMWUxMDMzLFxuICAgICksXG4gICAgJ3JlZCc6IChcbiAgICAgIDEwOiAjZmZmMGYxLFxuICAgICAgMjA6ICNmY2QwZDMsXG4gICAgICAzMDogI2ZmYTRhOSxcbiAgICAgIDQwOiAjZmY3NjdjLFxuICAgICAgNTA6ICNmYjRiNTMsXG4gICAgICA2MDogI2RhMWUyOCxcbiAgICAgIDcwOiAjYTUxOTIwLFxuICAgICAgODA6ICM3NTBlMTMsXG4gICAgICA5MDogIzU3MDQwOCxcbiAgICAgIDEwMDogIzJjMDgwYSxcbiAgICApLFxuICAgICd0ZWFsJzogKFxuICAgICAgMTA6ICNkYmZiZmIsXG4gICAgICAyMDogIzkyZWVlZSxcbiAgICAgIDMwOiAjMjBkNWQyLFxuICAgICAgNDA6ICMwMGJhYjYsXG4gICAgICA1MDogIzAwOWM5OCxcbiAgICAgIDYwOiAjMDA3ZDc5LFxuICAgICAgNzA6ICMwMDYxNjEsXG4gICAgICA4MDogIzAwNDU0OCxcbiAgICAgIDkwOiAjMDAzMTM3LFxuICAgICAgMTAwOiAjMDgxYTFjLFxuICAgICksXG4gICAgJ3dhcm0tZ3JheSc6IChcbiAgICAgIDEwOiAjZjdmM2YxLFxuICAgICAgMjA6ICNlMGRiZGEsXG4gICAgICAzMDogI2MxYmNiYixcbiAgICAgIDQwOiAjYTdhMmEyLFxuICAgICAgNTA6ICM4ZjhiOGIsXG4gICAgICA2MDogIzcyNmU2ZSxcbiAgICAgIDcwOiAjNTk1NTU1LFxuICAgICAgODA6ICM0MDNjM2MsXG4gICAgICA5MDogIzJiMjgyOCxcbiAgICAgIDEwMDogIzFhMTcxNyxcbiAgICApLFxuICAgICd3YXJtR3JheSc6IChcbiAgICAgIDEwOiAjZjdmM2YxLFxuICAgICAgMjA6ICNlMGRiZGEsXG4gICAgICAzMDogI2MxYmNiYixcbiAgICAgIDQwOiAjYTdhMmEyLFxuICAgICAgNTA6ICM4ZjhiOGIsXG4gICAgICA2MDogIzcyNmU2ZSxcbiAgICAgIDcwOiAjNTk1NTU1LFxuICAgICAgODA6ICM0MDNjM2MsXG4gICAgICA5MDogIzJiMjgyOCxcbiAgICAgIDEwMDogIzFhMTcxNyxcbiAgICApLFxuICAgICd3aGl0ZSc6IChcbiAgICAgIDA6ICNmZmZmZmYsXG4gICAgKSxcbiAgICAneWVsbG93JzogKFxuICAgICAgMjA6ICNmZGQxM2EsXG4gICAgKSxcbiAgKSAhZGVmYXVsdCAhZ2xvYmFsO1xufVxuLy8vIERlZmluZSBjb2xvciB2YXJpYWJsZXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2NvbG9yc1xuQG1peGluIGNhcmJvbi0tY29sb3JzKCkge1xuICAkY2FyYm9uLS1ibGFjay0xMDA6ICMwMDAwMDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tYmx1ZS0xMDogI2VkZjRmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ibHVlLTIwOiAjYzlkZWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWJsdWUtMzA6ICM5N2MxZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tYmx1ZS00MDogIzZlYTZmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ibHVlLTUwOiAjNDA4YmZjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWJsdWUtNjA6ICMwMDYyZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tYmx1ZS03MDogIzA1NGFkYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ibHVlLTgwOiAjMDUzMGFkICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWJsdWUtOTA6ICMwNjFmODAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tYmx1ZS0xMDA6ICMwNTEyNDMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY29vbC1ncmF5LTEwOiAjZjJmNGY4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWNvb2wtZ3JheS0yMDogI2Q1ZDllMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jb29sLWdyYXktMzA6ICNiOWJmYzcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY29vbC1ncmF5LTQwOiAjOWZhNWFkICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWNvb2wtZ3JheS01MDogIzg2OGQ5NSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jb29sLWdyYXktNjA6ICM2OTcwNzcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY29vbC1ncmF5LTcwOiAjNTA1NjViICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWNvb2wtZ3JheS04MDogIzM3M2Q0MiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jb29sLWdyYXktOTA6ICMyNDJhMmUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY29vbC1ncmF5LTEwMDogIzEzMTcxYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jeWFuLTEwOiAjZTNmNmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWN5YW4tMjA6ICNiM2U2ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY3lhbi0zMDogIzZjY2FmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jeWFuLTQwOiAjMzBiMGZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWN5YW4tNTA6ICMxMTkxZTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY3lhbi02MDogIzAwNzJjMyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jeWFuLTcwOiAjMDA1OGExICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWN5YW4tODA6ICMwMDNkNzMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY3lhbi05MDogIzAwMmI1MCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jeWFuLTEwMDogIzA3MTkyYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmF5LTEwOiAjZjNmM2YzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWdyYXktMjA6ICNkY2RjZGMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JheS0zMDogI2JlYmViZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmF5LTQwOiAjYTRhNGE0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWdyYXktNTA6ICM4YzhjOGMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JheS02MDogIzZmNmY2ZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmF5LTcwOiAjNTY1NjU2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWdyYXktODA6ICMzZDNkM2QgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JheS05MDogIzI4MjgyOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmF5LTEwMDogIzE3MTcxNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi0xMDogI2RhZmJlNCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi0yMDogIzlkZWViMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi0zMDogIzU2ZDY3OSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi00MDogIzNkYmI2MSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi01MDogIzI0YTE0OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi02MDogIzE5ODAzOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi03MDogIzEwNjQyYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi04MDogIzA1NDcxOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi05MDogIzAxMzMwZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmVlbi0xMDA6ICMwODFiMDkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tbWFnZW50YS0xMDogI2ZmZjBmNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1tYWdlbnRhLTIwOiAjZmZjZmUxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLW1hZ2VudGEtMzA6ICNmZmEwYzIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tbWFnZW50YS00MDogI2ZhNzVhNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1tYWdlbnRhLTUwOiAjZWU1MzhiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLW1hZ2VudGEtNjA6ICNkMTI3NjUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tbWFnZW50YS03MDogI2ExMTk1MCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1tYWdlbnRhLTgwOiAjNzYwYTNhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLW1hZ2VudGEtOTA6ICM1NzAwMmIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tbWFnZW50YS0xMDA6ICMyYTBhMTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tb3JhbmdlLTQwOiAjZmM3YjFlICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXB1cnBsZS0xMDogI2Y3ZjFmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1wdXJwbGUtMjA6ICNlNmQ2ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcHVycGxlLTMwOiAjZDBiMGZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXB1cnBsZS00MDogI2JiOGVmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1wdXJwbGUtNTA6ICNhNjZlZmEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcHVycGxlLTYwOiAjOGEzZmZjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXB1cnBsZS03MDogIzZlMzJjOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1wdXJwbGUtODA6ICM0ZjIxOTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcHVycGxlLTkwOiAjMzgxNDZiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXB1cnBsZS0xMDA6ICMxZTEwMzMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcmVkLTEwOiAjZmZmMGYxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXJlZC0yMDogI2ZjZDBkMyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1yZWQtMzA6ICNmZmE0YTkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcmVkLTQwOiAjZmY3NjdjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXJlZC01MDogI2ZiNGI1MyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1yZWQtNjA6ICNkYTFlMjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcmVkLTcwOiAjYTUxOTIwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXJlZC04MDogIzc1MGUxMyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1yZWQtOTA6ICM1NzA0MDggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcmVkLTEwMDogIzJjMDgwYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS10ZWFsLTEwOiAjZGJmYmZiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXRlYWwtMjA6ICM5MmVlZWUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tdGVhbC0zMDogIzIwZDVkMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS10ZWFsLTQwOiAjMDBiYWI2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXRlYWwtNTA6ICMwMDljOTggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tdGVhbC02MDogIzAwN2Q3OSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS10ZWFsLTcwOiAjMDA2MTYxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXRlYWwtODA6ICMwMDQ1NDggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tdGVhbC05MDogIzAwMzEzNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS10ZWFsLTEwMDogIzA4MWExYyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS13YXJtLWdyYXktMTA6ICNmN2YzZjEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0td2FybS1ncmF5LTIwOiAjZTBkYmRhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXdhcm0tZ3JheS0zMDogI2MxYmNiYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS13YXJtLWdyYXktNDA6ICNhN2EyYTIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0td2FybS1ncmF5LTUwOiAjOGY4YjhiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXdhcm0tZ3JheS02MDogIzcyNmU2ZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS13YXJtLWdyYXktNzA6ICM1OTU1NTUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0td2FybS1ncmF5LTgwOiAjNDAzYzNjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXdhcm0tZ3JheS05MDogIzJiMjgyOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS13YXJtLWdyYXktMTAwOiAjMWExNzE3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXdoaXRlLTA6ICNmZmZmZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0teWVsbG93LTIwOiAjZmRkMTNhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRibGFjay0xMDA6ICMwMDAwMDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtMTA6ICNlZGY0ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtMjA6ICNjOWRlZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtMzA6ICM5N2MxZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtNDA6ICM2ZWE2ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtNTA6ICM0MDhiZmMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtNjA6ICMwMDYyZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtNzA6ICMwNTRhZGEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtODA6ICMwNTMwYWQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtOTA6ICMwNjFmODAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtMTAwOiAjMDUxMjQzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjb29sLWdyYXktMTA6ICNmMmY0ZjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNvb2wtZ3JheS0yMDogI2Q1ZDllMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY29vbC1ncmF5LTMwOiAjYjliZmM3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjb29sLWdyYXktNDA6ICM5ZmE1YWQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNvb2wtZ3JheS01MDogIzg2OGQ5NSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY29vbC1ncmF5LTYwOiAjNjk3MDc3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjb29sLWdyYXktNzA6ICM1MDU2NWIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNvb2wtZ3JheS04MDogIzM3M2Q0MiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY29vbC1ncmF5LTkwOiAjMjQyYTJlICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjb29sLWdyYXktMTAwOiAjMTMxNzFhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTEwOiAjZTNmNmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTIwOiAjYjNlNmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTMwOiAjNmNjYWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTQwOiAjMzBiMGZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTUwOiAjMTE5MWU2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTYwOiAjMDA3MmMzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTcwOiAjMDA1OGExICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTgwOiAjMDAzZDczICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTkwOiAjMDAyYjUwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTEwMDogIzA3MTkyYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS0xMDogI2YzZjNmMyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS0yMDogI2RjZGNkYyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS0zMDogI2JlYmViZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS00MDogI2E0YTRhNCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS01MDogIzhjOGM4YyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS02MDogIzZmNmY2ZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS03MDogIzU2NTY1NiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS04MDogIzNkM2QzZCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS05MDogIzI4MjgyOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS0xMDA6ICMxNzE3MTcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGdyZWVuLTEwOiAjZGFmYmU0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRncmVlbi0yMDogIzlkZWViMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JlZW4tMzA6ICM1NmQ2NzkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGdyZWVuLTQwOiAjM2RiYjYxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRncmVlbi01MDogIzI0YTE0OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JlZW4tNjA6ICMxOTgwMzggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGdyZWVuLTcwOiAjMTA2NDJhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRncmVlbi04MDogIzA1NDcxOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JlZW4tOTA6ICMwMTMzMGYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGdyZWVuLTEwMDogIzA4MWIwOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS0xMDogI2ZmZjBmNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS0yMDogI2ZmY2ZlMSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS0zMDogI2ZmYTBjMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS00MDogI2ZhNzVhNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS01MDogI2VlNTM4YiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS02MDogI2QxMjc2NSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS03MDogI2ExMTk1MCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS04MDogIzc2MGEzYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS05MDogIzU3MDAyYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS0xMDA6ICMyYTBhMTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJG9yYW5nZS00MDogI2ZjN2IxZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcHVycGxlLTEwOiAjZjdmMWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRwdXJwbGUtMjA6ICNlNmQ2ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHB1cnBsZS0zMDogI2QwYjBmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcHVycGxlLTQwOiAjYmI4ZWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRwdXJwbGUtNTA6ICNhNjZlZmEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHB1cnBsZS02MDogIzhhM2ZmYyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcHVycGxlLTcwOiAjNmUzMmM5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRwdXJwbGUtODA6ICM0ZjIxOTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHB1cnBsZS05MDogIzM4MTQ2YiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcHVycGxlLTEwMDogIzFlMTAzMyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcmVkLTEwOiAjZmZmMGYxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRyZWQtMjA6ICNmY2QwZDMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHJlZC0zMDogI2ZmYTRhOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcmVkLTQwOiAjZmY3NjdjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRyZWQtNTA6ICNmYjRiNTMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHJlZC02MDogI2RhMWUyOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcmVkLTcwOiAjYTUxOTIwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRyZWQtODA6ICM3NTBlMTMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHJlZC05MDogIzU3MDQwOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcmVkLTEwMDogIzJjMDgwYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC0xMDogI2RiZmJmYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC0yMDogIzkyZWVlZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC0zMDogIzIwZDVkMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC00MDogIzAwYmFiNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC01MDogIzAwOWM5OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC02MDogIzAwN2Q3OSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC03MDogIzAwNjE2MSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC04MDogIzAwNDU0OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC05MDogIzAwMzEzNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkdGVhbC0xMDA6ICMwODFhMWMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHdhcm0tZ3JheS0xMDogI2Y3ZjNmMSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkd2FybS1ncmF5LTIwOiAjZTBkYmRhICFkZWZhdWx0ICFnbG9iYWw7XG4gICR3YXJtLWdyYXktMzA6ICNjMWJjYmIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHdhcm0tZ3JheS00MDogI2E3YTJhMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkd2FybS1ncmF5LTUwOiAjOGY4YjhiICFkZWZhdWx0ICFnbG9iYWw7XG4gICR3YXJtLWdyYXktNjA6ICM3MjZlNmUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHdhcm0tZ3JheS03MDogIzU5NTU1NSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkd2FybS1ncmF5LTgwOiAjNDAzYzNjICFkZWZhdWx0ICFnbG9iYWw7XG4gICR3YXJtLWdyYXktOTA6ICMyYjI4MjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHdhcm0tZ3JheS0xMDA6ICMxYTE3MTcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHdoaXRlLTA6ICNmZmZmZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHllbGxvdy0yMDogI2ZkZDEzYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jb2xvcnM6IChcbiAgICAnYmxhY2snOiAoXG4gICAgICAxMDA6ICMwMDAwMDAsXG4gICAgKSxcbiAgICAnYmx1ZSc6IChcbiAgICAgIDEwOiAjZWRmNGZmLFxuICAgICAgMjA6ICNjOWRlZmYsXG4gICAgICAzMDogIzk3YzFmZixcbiAgICAgIDQwOiAjNmVhNmZmLFxuICAgICAgNTA6ICM0MDhiZmMsXG4gICAgICA2MDogIzAwNjJmZixcbiAgICAgIDcwOiAjMDU0YWRhLFxuICAgICAgODA6ICMwNTMwYWQsXG4gICAgICA5MDogIzA2MWY4MCxcbiAgICAgIDEwMDogIzA1MTI0MyxcbiAgICApLFxuICAgICdjb29sLWdyYXknOiAoXG4gICAgICAxMDogI2YyZjRmOCxcbiAgICAgIDIwOiAjZDVkOWUwLFxuICAgICAgMzA6ICNiOWJmYzcsXG4gICAgICA0MDogIzlmYTVhZCxcbiAgICAgIDUwOiAjODY4ZDk1LFxuICAgICAgNjA6ICM2OTcwNzcsXG4gICAgICA3MDogIzUwNTY1YixcbiAgICAgIDgwOiAjMzczZDQyLFxuICAgICAgOTA6ICMyNDJhMmUsXG4gICAgICAxMDA6ICMxMzE3MWEsXG4gICAgKSxcbiAgICAnY29vbEdyYXknOiAoXG4gICAgICAxMDogI2YyZjRmOCxcbiAgICAgIDIwOiAjZDVkOWUwLFxuICAgICAgMzA6ICNiOWJmYzcsXG4gICAgICA0MDogIzlmYTVhZCxcbiAgICAgIDUwOiAjODY4ZDk1LFxuICAgICAgNjA6ICM2OTcwNzcsXG4gICAgICA3MDogIzUwNTY1YixcbiAgICAgIDgwOiAjMzczZDQyLFxuICAgICAgOTA6ICMyNDJhMmUsXG4gICAgICAxMDA6ICMxMzE3MWEsXG4gICAgKSxcbiAgICAnY3lhbic6IChcbiAgICAgIDEwOiAjZTNmNmZmLFxuICAgICAgMjA6ICNiM2U2ZmYsXG4gICAgICAzMDogIzZjY2FmZixcbiAgICAgIDQwOiAjMzBiMGZmLFxuICAgICAgNTA6ICMxMTkxZTYsXG4gICAgICA2MDogIzAwNzJjMyxcbiAgICAgIDcwOiAjMDA1OGExLFxuICAgICAgODA6ICMwMDNkNzMsXG4gICAgICA5MDogIzAwMmI1MCxcbiAgICAgIDEwMDogIzA3MTkyYixcbiAgICApLFxuICAgICdncmF5JzogKFxuICAgICAgMTA6ICNmM2YzZjMsXG4gICAgICAyMDogI2RjZGNkYyxcbiAgICAgIDMwOiAjYmViZWJlLFxuICAgICAgNDA6ICNhNGE0YTQsXG4gICAgICA1MDogIzhjOGM4YyxcbiAgICAgIDYwOiAjNmY2ZjZmLFxuICAgICAgNzA6ICM1NjU2NTYsXG4gICAgICA4MDogIzNkM2QzZCxcbiAgICAgIDkwOiAjMjgyODI4LFxuICAgICAgMTAwOiAjMTcxNzE3LFxuICAgICksXG4gICAgJ2dyZWVuJzogKFxuICAgICAgMTA6ICNkYWZiZTQsXG4gICAgICAyMDogIzlkZWViMixcbiAgICAgIDMwOiAjNTZkNjc5LFxuICAgICAgNDA6ICMzZGJiNjEsXG4gICAgICA1MDogIzI0YTE0OCxcbiAgICAgIDYwOiAjMTk4MDM4LFxuICAgICAgNzA6ICMxMDY0MmEsXG4gICAgICA4MDogIzA1NDcxOSxcbiAgICAgIDkwOiAjMDEzMzBmLFxuICAgICAgMTAwOiAjMDgxYjA5LFxuICAgICksXG4gICAgJ21hZ2VudGEnOiAoXG4gICAgICAxMDogI2ZmZjBmNixcbiAgICAgIDIwOiAjZmZjZmUxLFxuICAgICAgMzA6ICNmZmEwYzIsXG4gICAgICA0MDogI2ZhNzVhNixcbiAgICAgIDUwOiAjZWU1MzhiLFxuICAgICAgNjA6ICNkMTI3NjUsXG4gICAgICA3MDogI2ExMTk1MCxcbiAgICAgIDgwOiAjNzYwYTNhLFxuICAgICAgOTA6ICM1NzAwMmIsXG4gICAgICAxMDA6ICMyYTBhMTYsXG4gICAgKSxcbiAgICAnb3JhbmdlJzogKFxuICAgICAgNDA6ICNmYzdiMWUsXG4gICAgKSxcbiAgICAncHVycGxlJzogKFxuICAgICAgMTA6ICNmN2YxZmYsXG4gICAgICAyMDogI2U2ZDZmZixcbiAgICAgIDMwOiAjZDBiMGZmLFxuICAgICAgNDA6ICNiYjhlZmYsXG4gICAgICA1MDogI2E2NmVmYSxcbiAgICAgIDYwOiAjOGEzZmZjLFxuICAgICAgNzA6ICM2ZTMyYzksXG4gICAgICA4MDogIzRmMjE5NixcbiAgICAgIDkwOiAjMzgxNDZiLFxuICAgICAgMTAwOiAjMWUxMDMzLFxuICAgICksXG4gICAgJ3JlZCc6IChcbiAgICAgIDEwOiAjZmZmMGYxLFxuICAgICAgMjA6ICNmY2QwZDMsXG4gICAgICAzMDogI2ZmYTRhOSxcbiAgICAgIDQwOiAjZmY3NjdjLFxuICAgICAgNTA6ICNmYjRiNTMsXG4gICAgICA2MDogI2RhMWUyOCxcbiAgICAgIDcwOiAjYTUxOTIwLFxuICAgICAgODA6ICM3NTBlMTMsXG4gICAgICA5MDogIzU3MDQwOCxcbiAgICAgIDEwMDogIzJjMDgwYSxcbiAgICApLFxuICAgICd0ZWFsJzogKFxuICAgICAgMTA6ICNkYmZiZmIsXG4gICAgICAyMDogIzkyZWVlZSxcbiAgICAgIDMwOiAjMjBkNWQyLFxuICAgICAgNDA6ICMwMGJhYjYsXG4gICAgICA1MDogIzAwOWM5OCxcbiAgICAgIDYwOiAjMDA3ZDc5LFxuICAgICAgNzA6ICMwMDYxNjEsXG4gICAgICA4MDogIzAwNDU0OCxcbiAgICAgIDkwOiAjMDAzMTM3LFxuICAgICAgMTAwOiAjMDgxYTFjLFxuICAgICksXG4gICAgJ3dhcm0tZ3JheSc6IChcbiAgICAgIDEwOiAjZjdmM2YxLFxuICAgICAgMjA6ICNlMGRiZGEsXG4gICAgICAzMDogI2MxYmNiYixcbiAgICAgIDQwOiAjYTdhMmEyLFxuICAgICAgNTA6ICM4ZjhiOGIsXG4gICAgICA2MDogIzcyNmU2ZSxcbiAgICAgIDcwOiAjNTk1NTU1LFxuICAgICAgODA6ICM0MDNjM2MsXG4gICAgICA5MDogIzJiMjgyOCxcbiAgICAgIDEwMDogIzFhMTcxNyxcbiAgICApLFxuICAgICd3YXJtR3JheSc6IChcbiAgICAgIDEwOiAjZjdmM2YxLFxuICAgICAgMjA6ICNlMGRiZGEsXG4gICAgICAzMDogI2MxYmNiYixcbiAgICAgIDQwOiAjYTdhMmEyLFxuICAgICAgNTA6ICM4ZjhiOGIsXG4gICAgICA2MDogIzcyNmU2ZSxcbiAgICAgIDcwOiAjNTk1NTU1LFxuICAgICAgODA6ICM0MDNjM2MsXG4gICAgICA5MDogIzJiMjgyOCxcbiAgICAgIDEwMDogIzFhMTcxNyxcbiAgICApLFxuICAgICd3aGl0ZSc6IChcbiAgICAgIDA6ICNmZmZmZmYsXG4gICAgKSxcbiAgICAneWVsbG93JzogKFxuICAgICAgMjA6ICNmZGQxM2EsXG4gICAgKSxcbiAgKSAhZGVmYXVsdCAhZ2xvYmFsO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJ21peGlucyc7XG5cbi8vLyBDb2RlIHNuaXBwZXQgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGNvZGUtc25pcHBldFxuQG1peGluIHNuaXBwZXQge1xuICAuI3skcHJlZml4fS0tc25pcHBldCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldCBjb2RlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdjb2RlLTAxJyk7XG4gIH1cblxuICAvLyBJbmxpbmUgQ29kZSBTbmlwcGV0XG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1pbmxpbmUge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIC8vIE5vdGU6IG9yaWdpbmFsbHkgdGhpcyBpbmxpbmUgc25pcHBldCBpbmhlcml0ZWQgZm9udC1zaXplLCB3ZSBtaWdodCBuZWVkXG4gICAgLy8gYSBtb3JlIGZsZXhpYmxlIHN0cmF0ZWd5IHRoYW4gZXhwbGljaXRseSBzZXR0aW5nIGZvbnQtc2l6ZSB3aXRoIHRoaXNcbiAgICAvLyB0eXBlIHN0eWxlXG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnY29kZS0wMScpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAzO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb3B5LWFjdGl2ZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkaW50ZXJhY3RpdmUtMDE7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZSBjb2RlIHtcbiAgICBwYWRkaW5nOiAwICRzcGFjaW5nLXhzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZS4jeyRwcmVmaXh9LS1zbmlwcGV0LS1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRpbnRlcmFjdGl2ZS0wMiwgMC4xKTtcbiAgICB9XG4gIH1cblxuICAvLyBTaW5nbGUgTGluZSBTbmlwcGV0XG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1zaW5nbGUge1xuICAgIEBpbmNsdWRlIGJ4LS1zbmlwcGV0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXgtd2lkdGg6IHJlbSg3NjBweCk7XG4gICAgbWluLXdpZHRoOiByZW0oMzIwcHgpO1xuICAgIGhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICBwYWRkaW5nOiAwIDU2cHggMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLXNpbmdsZSAuI3skcHJlZml4fS0tc25pcHBldC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDAgJGNhcmJvbi0tc3BhY2luZy0wNSAwO1xuICAgIGhlaWdodDogcmVtKDU2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLXNpbmdsZSBwcmUge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnY29kZS0wMScpO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLXhzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLXNpbmdsZTo6YWZ0ZXIge1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IHJlbSg1NnB4KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHRyYW5zcGFyZW50LCAkdWktMDEpO1xuICB9XG5cbiAgLy8gTXVsdGkgTGluZSBTbmlwcGV0XG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aSB7XG4gICAgQGluY2x1ZGUgYngtLXNuaXBwZXQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgbWluLXdpZHRoOiByZW0oMzIwcHgpO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vY2xvc2VkIHNuaXBwZXQgY29udGFpbmVyXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aSAuI3skcHJlZml4fS0tc25pcHBldC1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC1oZWlnaHQ6IHJlbSgyMzhweCk7XG4gICAgbWluLWhlaWdodDogcmVtKDU2cHgpO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLy8gZXhwYW5kZWQgc25pcHBldCBjb250YWluZXJcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLW11bHRpLiN7JHByZWZpeH0tLXNuaXBwZXQtLWV4cGFuZFxuICAgIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lciB7XG4gICAgbWF4LWhlaWdodDogcmVtKDE1MDBweCk7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAkZHVyYXRpb24tLW1vZGVyYXRlLTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAvLyBjbG9zZWQgcHJlXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aSAuI3skcHJlZml4fS0tc25pcHBldC1jb250YWluZXIgcHJlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMjRweCk7XG4gIH1cblxuICAvLyBleHBhbmRlZCBwcmVcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLW11bHRpLiN7JHByZWZpeH0tLXNuaXBwZXQtLWV4cGFuZFxuICAgIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lclxuICAgIHByZSB7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLW11bHRpIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lciBwcmU6OmFmdGVyIHtcbiAgICB3aWR0aDogcmVtKDE2cHgpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdHJhbnNwYXJlbnQsICR1aS0wMSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tbXVsdGkgLiN7JHByZWZpeH0tLXNuaXBwZXQtY29udGFpbmVyIHByZSBjb2RlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy9Db3B5IEJ1dHRvblxuICAuI3skcHJlZml4fS0tc25pcHBldF9faWNvbiB7XG4gICAgZmlsbDogJGljb24tMDE7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgd2lkdGg6IHJlbSgxNnB4KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC1idXR0b24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICB3aWR0aDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgICAgb3V0bGluZS1jb2xvcjogJGZvY3VzO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aSAuI3skcHJlZml4fS0tc25pcHBldC1idXR0b24ge1xuICAgIGhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNztcbiAgICB3aWR0aDogJGNhcmJvbi0tc3BhY2luZy0wNztcbiAgICB0b3A6ICRzcGFjaW5nLXhzO1xuICAgIHJpZ2h0OiAkc3BhY2luZy14cztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvcHktYWN0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tY29weV9fZmVlZGJhY2sge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICB6LWluZGV4OiB6KCdvdmVybGF5Jyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZWZ0OiBpbmhlcml0O1xuICAgIHRvcDogMC43NXJlbTtcbiAgICByaWdodDogMS4yNXJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLWNvcHlfX2ZlZWRiYWNrOmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWJ0bi0tY29weV9fZmVlZGJhY2s6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjb3B5LWJ0bi1mZWVkYmFjaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLWNvcHlfX2ZlZWRiYWNrOmFmdGVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAvLyBTaG93IG1vcmUgLyBsZXNzIGJ1dHRvblxuICBidXR0b24uI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS1leHBhbmQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAkc3BhY2luZy14cztcbiAgICBib3R0b206ICRzcGFjaW5nLXhzO1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXhzO1xuICAgIHBhZGRpbmctbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICB9XG5cbiAgYnV0dG9uLiN7JHByZWZpeH0tLWJ0bi4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ0bi0tZXhwYW5kXG4gICAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS10ZXh0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiByZW0oLTFweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC1idG4tLWV4cGFuZC0taGlkZS4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ0bi0tZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS1leHBhbmQgLiN7JHByZWZpeH0tLWljb24tY2hldnJvbi0tZG93biB7XG4gICAgZmlsbDogJHRleHQtMDE7XG4gICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nLXhzO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgxcHgpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIGJ1dHRvbi4jeyRwcmVmaXh9LS1idG4uI3skcHJlZml4fS0tc25pcHBldC1idG4tLWV4cGFuZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ0bi0tZXhwYW5kOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvcHktYWN0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS1leHBhbmQ6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1leHBhbmRcbiAgICAuI3skcHJlZml4fS0tc25pcHBldC1idG4tLWV4cGFuZFxuICAgIC4jeyRwcmVmaXh9LS1pY29uLWNoZXZyb24tLWRvd24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uLS1leHBhbnNpb247XG4gIH1cblxuICAvLyBTa2VsZXRvbiBTdGF0ZVxuICAuI3skcHJlZml4fS0tc25pcHBldC0tY29kZS4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgaGVpZ2h0OiByZW0oOThweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tdGVybWluYWwuI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIGhlaWdodDogcmVtKDU2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXNuaXBwZXQtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC4jeyRwcmVmaXh9LS1za2VsZXRvbiBjb2RlIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC1idXR0b24gLiN7JHByZWZpeH0tLWJ0bi0tY29weV9fZmVlZGJhY2sge1xuICAgIHRvcDogcmVtKDI1cHgpO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0taW5saW5lIC4jeyRwcmVmaXh9LS1idG4tLWNvcHlfX2ZlZWRiYWNrIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1MCU7XG4gIH1cblxuICAjeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aS4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgaGVpZ2h0OiByZW0oOThweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tc2luZ2xlLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBoZWlnaHQ6IHJlbSg1NnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQuI3skcHJlZml4fS0tc2tlbGV0b24gc3BhbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHdpZHRoOiA4NSU7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tc2luZ2xlLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLXNuaXBwZXQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1pbmxpbmUgLiN7JHByZWZpeH0tLWJ0bi0tY29weV9fZmVlZGJhY2sge1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gU2tlbGV0b24gU3RhdGVcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWNvZGUuI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIGhlaWdodDogcmVtKDk4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLXRlcm1pbmFsLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBoZWlnaHQ6IHJlbSg1NnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQuI3skcHJlZml4fS0tc2tlbGV0b24gY29kZSB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3NuaXBwZXQnKSB7XG4gIEBpbmNsdWRlIHNuaXBwZXQ7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuXG4vLy8gQ29kZSBzbmlwcGV0IGJhc2Ugc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGNvZGUtc25pcHBldFxuQG1peGluIGJ4LS1zbmlwcGV0IHtcbiAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnY29kZS0wMScpO1xuICBiYWNrZ3JvdW5kOiAkc25pcHBldC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBib3JkZXI6IDFweCBzb2xpZCAkc25pcHBldC1ib3JkZXItY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiByZW0oNjAwcHgpO1xuICB3aWR0aDogMTAwJTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBPdmVyZmxvdyBNZW51XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXllcic7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcblxuLy8vIE92ZXJmbG93IG1lbnUgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG92ZXJmbG93LW1lbnVcbkBtaXhpbiBvdmVyZmxvdy1tZW51IHtcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX3RyaWdnZXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LFxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9fdHJpZ2dlciB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IHJlbSgzMnB4KTtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcndyaXRlIEljb24gVG9vbHRpcCBmb2N1cyBzdHlsZXNcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX3RyaWdnZXIuI3skcHJlZml4fS0tdG9vbHRpcC0tYTExeS4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG5cbiAgICBzdmcge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1vcGVuLFxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1vcGVuXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX3RyaWdnZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X19pY29uIHtcbiAgICBoZWlnaHQ6IHJlbSgxNnB4KTtcbiAgICB3aWR0aDogcmVtKDE2cHgpO1xuICAgIGZpbGw6ICRpY29uLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9ucyB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgYm94LXNoYWRvdzogMCAycHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogeignZmxvYXRpbmcnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgd2lkdGg6IHJlbSgxNjBweCk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0b3A6IDMycHg7XG4gICAgbGVmdDogMDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMlxuICAgICAgICBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0nYm90dG9tJ106OmFmdGVyIHtcbiAgICB0b3A6IHJlbSgtM3B4KTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oM3B4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0ndG9wJ106OmFmdGVyIHtcbiAgICBib3R0b206IHJlbSgtNnB4KTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oNnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0nbGVmdCddOjphZnRlciB7XG4gICAgcmlnaHQ6IHJlbSgtNnB4KTtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgd2lkdGg6IHJlbSg2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc1tkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdyaWdodCddOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IHJlbSgtNnB4KTtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICB3aWR0aDogcmVtKDZweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZmxpcC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0ndG9wJ106OmFmdGVyLFxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZmxpcC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0nYm90dG9tJ106OmFmdGVyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWZsaXAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J2xlZnQnXTo6YWZ0ZXIsXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1mbGlwLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc1tkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdyaWdodCddOjphZnRlciB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnMtLW9wZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZGl2aWRlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG46OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmc6IDAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICAgIG1heC13aWR0aDogMTEuMjVyZW07XG4gICAgdHJhbnNpdGlvbjogb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSksXG4gICAgICBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX2J0biBzdmcge1xuICAgIGZpbGw6ICRpY29uLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuOmhvdmVyIHN2ZyB7XG4gICAgZmlsbDogJGljb24tMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tY29udGVudCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tLWRhbmdlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX29wdGlvbi0tZGFuZ2VyXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuOmhvdmVyLFxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tLWRhbmdlclxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX2J0bjpmb2N1cyB7XG4gICAgY29sb3I6ICR0ZXh0LTA0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdXBwb3J0LTAxO1xuXG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6ICR0ZXh0LTA0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX29wdGlvbi0tZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLS1kaXNhYmxlZFxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX2J0biB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX29wdGlvbi0tZGlzYWJsZWRcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG5cbiAgICBzdmcge1xuICAgIGZpbGw6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1mbGlwIHtcbiAgICBsZWZ0OiAtMTQwcHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBsZWZ0OiAxNDVweDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnb3ZlcmZsb3ctbWVudScpIHtcbiAgQGluY2x1ZGUgb3ZlcmZsb3ctbWVudTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5cbi8vLyBDb250ZW50IHN3aXRjaGVyIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBjb250ZW50LXN3aXRjaGVyXG5AbWl4aW4gY29udGVudC1zd2l0Y2hlciB7XG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDMgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgdHJhbnNpdGlvbjogYWxsICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRmb2N1cztcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHJlbSg0cHgpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHJlbSg0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiByZW0oNHB4KTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogcmVtKDRweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46bm90KDpmaXJzdC1vZi10eXBlKTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IHJlbSgxNnB4KTtcbiAgICB3aWR0aDogcmVtKDFweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlbnQtc3dpdGNoZXItZGl2aWRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItLXNlbGVjdGVkOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bi4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLS1zZWxlY3RlZFxuICAgICsgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjpmb2N1czo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46Zm9jdXNcbiAgICArIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46aG92ZXI6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOmhvdmVyXG4gICAgKyAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlcl9faWNvbiB7XG4gICAgZmlsbDogJHRleHQtMDI7XG4gICAgdHJhbnNpdGlvbjogZmlsbCAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyX19pY29uICsgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlcl9fbGFiZWwge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46aG92ZXIgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXJfX2ljb24sXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjpmb2N1cyAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlcl9faWNvbiB7XG4gICAgZmlsbDogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG4uI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wNTtcbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgei1pbmRleDogMztcblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLTAzO1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG4uI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tc2VsZWN0ZWRcbiAgICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlcl9faWNvbiB7XG4gICAgZmlsbDogJGludmVyc2UtMDE7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY29udGVudC1zd2l0Y2hlcicpIHtcbiAgQGluY2x1ZGUgY29udGVudC1zd2l0Y2hlcjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5cbi5mbGF0cGlja3ItY2FsZW5kYXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIGFuaW1hdGlvbjogbm9uZTtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAzMTVweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDFweCAwIDAgI2U2ZTZlNiwgLTFweCAwIDAgI2U2ZTZlNiwgMCAxcHggMCAjZTZlNmU2LFxuICAgIDAgLTFweCAwICNlNmU2ZTYsIDAgM3B4IDEzcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5vcGVuLFxuLmZsYXRwaWNrci1jYWxlbmRhci5pbmxpbmUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgbWF4LWhlaWdodDogNjQwcHg7XG59XG5cbi5mbGF0cGlja3ItY2FsZW5kYXIub3BlbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgei1pbmRleDogOTk5OTk7XG59XG5cbi5mbGF0cGlja3ItY2FsZW5kYXIuYW5pbWF0ZS5vcGVuIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZwRmFkZUluRG93biAkZHVyYXRpb24tLWZhc3QtMDJcbiAgICBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICBhbmltYXRpb246IGZwRmFkZUluRG93biAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5pbmxpbmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5zdGF0aWMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgMnB4KTtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5zdGF0aWMub3BlbiB7XG4gIHotaW5kZXg6IDk5OTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mbGF0cGlja3ItY2FsZW5kYXIuaGFzV2Vla3Mge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhciAuaGFzV2Vla3MgLmRheUNvbnRhaW5lcixcbi5mbGF0cGlja3ItY2FsZW5kYXIgLmhhc1RpbWUgLmRheUNvbnRhaW5lciB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhciAuaGFzV2Vla3MgLmRheUNvbnRhaW5lciB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5zaG93VGltZUlucHV0Lmhhc1RpbWUgLmZsYXRwaWNrci10aW1lIHtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIubm9DYWxlbmRhci5oYXNUaW1lIC5mbGF0cGlja3ItdGltZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXI6YmVmb3JlLFxuLmZsYXRwaWNrci1jYWxlbmRhcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgbGVmdDogMjJweDtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIucmlnaHRNb3N0OmJlZm9yZSxcbi5mbGF0cGlja3ItY2FsZW5kYXIucmlnaHRNb3N0OmFmdGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDIycHg7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyOmJlZm9yZSB7XG4gIGJvcmRlci13aWR0aDogNXB4O1xuICBtYXJnaW46IDAgLTVweDtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXI6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6IDRweDtcbiAgbWFyZ2luOiAwIC00cHg7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93VG9wOmJlZm9yZSxcbi5mbGF0cGlja3ItY2FsZW5kYXIuYXJyb3dUb3A6YWZ0ZXIge1xuICBib3R0b206IDEwMCU7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93VG9wOmJlZm9yZSB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNlNmU2ZTY7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93VG9wOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYXJyb3dCb3R0b206YmVmb3JlLFxuLmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0JvdHRvbTphZnRlciB7XG4gIHRvcDogMTAwJTtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYXJyb3dCb3R0b206YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2U2ZTZlNjtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYXJyb3dCb3R0b206YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZmZmO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhcjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uZmxhdHBpY2tyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5mbGF0cGlja3ItbW9udGgge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBoZWlnaHQ6IDI4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5mbGF0cGlja3ItcHJldi1tb250aCxcbi5mbGF0cGlja3ItbmV4dC1tb250aCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBwYWRkaW5nOiAxMHB4IGNhbGMoMy41NyUgLSAxLjVweCk7XG4gIHotaW5kZXg6IDM7XG59XG4uZmxhdHBpY2tyLXByZXYtbW9udGggaSxcbi5mbGF0cGlja3ItbmV4dC1tb250aCBpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZsYXRwaWNrci1wcmV2LW1vbnRoLmZsYXRwaWNrci1wcmV2LW1vbnRoLFxuLmZsYXRwaWNrci1uZXh0LW1vbnRoLmZsYXRwaWNrci1wcmV2LW1vbnRoIHtcbiAgLypcbiAgICAgICAgLypydGw6YmVnaW46aWdub3JlKi9cbiAgLypcbiAgICAgICAgKi9cbiAgbGVmdDogMDtcbiAgLypcbiAgICAgICAgLypydGw6ZW5kOmlnbm9yZSovXG4gIC8qXG4gICAgICAgICovXG59XG4vKlxuICAgICAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuLypcbiAgICAgICAgLypydGw6ZW5kOmlnbm9yZSovXG4uZmxhdHBpY2tyLXByZXYtbW9udGguZmxhdHBpY2tyLW5leHQtbW9udGgsXG4uZmxhdHBpY2tyLW5leHQtbW9udGguZmxhdHBpY2tyLW5leHQtbW9udGgge1xuICAvKlxuICAgICAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuICAvKlxuICAgICAgICAqL1xuICByaWdodDogMDtcbiAgLypcbiAgICAgICAgLypydGw6ZW5kOmlnbm9yZSovXG4gIC8qXG4gICAgICAgICovXG59XG4vKlxuICAgICAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuLypcbiAgICAgICAgLypydGw6ZW5kOmlnbm9yZSovXG4uZmxhdHBpY2tyLXByZXYtbW9udGg6aG92ZXIsXG4uZmxhdHBpY2tyLW5leHQtbW9udGg6aG92ZXIge1xuICBjb2xvcjogIzk1OWVhOTtcbn1cbi5mbGF0cGlja3ItcHJldi1tb250aDpob3ZlciBzdmcsXG4uZmxhdHBpY2tyLW5leHQtbW9udGg6aG92ZXIgc3ZnIHtcbiAgZmlsbDogI2Y2NDc0Nztcbn1cbi5mbGF0cGlja3ItcHJldi1tb250aCBzdmcsXG4uZmxhdHBpY2tyLW5leHQtbW9udGggc3ZnIHtcbiAgd2lkdGg6IDE0cHg7XG59XG4uZmxhdHBpY2tyLXByZXYtbW9udGggc3ZnIHBhdGgsXG4uZmxhdHBpY2tyLW5leHQtbW9udGggc3ZnIHBhdGgge1xuICB0cmFuc2l0aW9uOiBmaWxsIDAuMXM7XG4gIGZpbGw6IGluaGVyaXQ7XG59XG4ubnVtSW5wdXRXcmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IGF1dG87XG59XG4ubnVtSW5wdXRXcmFwcGVyIGlucHV0LFxuLm51bUlucHV0V3JhcHBlciBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm51bUlucHV0V3JhcHBlciBpbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm51bUlucHV0V3JhcHBlciBzcGFuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDE0cHg7XG4gIHBhZGRpbmc6IDAgNHB4IDAgMnB4O1xuICBoZWlnaHQ6IDUwJTtcbiAgbGluZS1oZWlnaHQ6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDU3LCA1NywgNTcsIDAuMDUpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLm51bUlucHV0V3JhcHBlciBzcGFuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLm51bUlucHV0V3JhcHBlciBzcGFuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5udW1JbnB1dFdyYXBwZXIgc3BhbjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDMzJTtcbn1cbi5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1VwIHtcbiAgdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93VXA6YWZ0ZXIge1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHJnYmEoNTcsIDU3LCA1NywgMC42KTtcbn1cbi5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd24ge1xuICB0b3A6IDUwJTtcbn1cbi5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd246YWZ0ZXIge1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHJnYmEoNTcsIDU3LCA1NywgMC42KTtcbn1cbi5udW1JbnB1dFdyYXBwZXIgc3BhbiBzdmcge1xuICB3aWR0aDogaW5oZXJpdDtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLm51bUlucHV0V3JhcHBlciBzcGFuIHN2ZyBwYXRoIHtcbiAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuLm51bUlucHV0V3JhcHBlcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG4ubnVtSW5wdXRXcmFwcGVyOmhvdmVyIHNwYW4ge1xuICBvcGFjaXR5OiAxO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIHtcbiAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnaGVhZGluZy0wMScpO1xuXG4gIGNvbG9yOiBpbmhlcml0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA3NSU7XG4gIGxlZnQ6IDEyLjUlO1xuICBwYWRkaW5nOiA2LjE2cHggMCAwIDA7XG4gIGhlaWdodDogMjhweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbn1cbi5mbGF0cGlja3ItY3VycmVudC1tb250aC5zbGlkZUxlZnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDBweCwgMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMHB4LCAwcHgpO1xuICAtd2Via2l0LWFuaW1hdGlvbjogZnBGYWRlT3V0IDQwMG1zIGVhc2UsXG4gICAgZnBTbGlkZUxlZnQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuICBhbmltYXRpb246IGZwRmFkZU91dCA0MDBtcyBlYXNlLFxuICAgIGZwU2xpZGVMZWZ0IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbn1cbi5mbGF0cGlja3ItY3VycmVudC1tb250aC5zbGlkZUxlZnROZXcge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMHB4LCAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDBweCwgMHB4KTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZwRmFkZUluIDQwMG1zIGVhc2UsXG4gICAgZnBTbGlkZUxlZnROZXcgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuICBhbmltYXRpb246IGZwRmFkZUluIDQwMG1zIGVhc2UsXG4gICAgZnBTbGlkZUxlZnROZXcgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoLnNsaWRlUmlnaHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMHB4LCAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDBweCwgMHB4KTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZwRmFkZU91dCA0MDBtcyBlYXNlLFxuICAgIGZwU2xpZGVSaWdodCA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG4gIGFuaW1hdGlvbjogZnBGYWRlT3V0IDQwMG1zIGVhc2UsXG4gICAgZnBTbGlkZVJpZ2h0IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbn1cbi5mbGF0cGlja3ItY3VycmVudC1tb250aC5zbGlkZVJpZ2h0TmV3IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMHB4KTtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZwRmFkZUluIDQwMG1zIGVhc2UsXG4gICAgZnBTbGlkZVJpZ2h0TmV3IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbiAgYW5pbWF0aW9uOiBmcEZhZGVJbiA0MDBtcyBlYXNlLFxuICAgIGZwU2xpZGVSaWdodE5ldyA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggc3Bhbi5jdXItbW9udGgge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNWNoO1xuICBwYWRkaW5nOiAwO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIHNwYW4uY3VyLW1vbnRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cbi5mbGF0cGlja3ItY3VycmVudC1tb250aCAubnVtSW5wdXRXcmFwcGVyIHtcbiAgd2lkdGg6IDZjaDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1VwOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd246YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggaW5wdXQuY3VyLXllYXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcGFkZGluZzogMCAwIDAgMC41Y2g7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi5mbGF0cGlja3ItY3VycmVudC1tb250aCBpbnB1dC5jdXIteWVhcjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggaW5wdXQuY3VyLXllYXJbZGlzYWJsZWRdLFxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIGlucHV0LmN1ci15ZWFyW2Rpc2FibGVkXTpob3ZlciB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmZsYXRwaWNrci13ZWVrZGF5cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAzMTVweDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDI4cHg7XG59XG5zcGFuLmZsYXRwaWNrci13ZWVrZGF5IHtcbiAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtZmxleDogMTtcbiAgLW1zLWZsZXg6IDE7XG4gIGZsZXg6IDE7XG59XG4uZGF5Q29udGFpbmVyLFxuLmZsYXRwaWNrci13ZWVrcyB7XG4gIHBhZGRpbmc6IDFweCAwIDAgMDtcbn1cbi5mbGF0cGlja3ItZGF5cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDMxNXB4O1xufVxuLmZsYXRwaWNrci1kYXlzOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5kYXlDb250YWluZXIge1xuICBwYWRkaW5nOiAwO1xuICBvdXRsaW5lOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMzE1cHg7XG4gIG1pbi13aWR0aDogMzE1cHg7XG4gIG1heC13aWR0aDogMzE1cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgb3BhY2l0eTogMTtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYW5pbWF0ZSAuZGF5Q29udGFpbmVyLnNsaWRlTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmcEZhZGVPdXQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLFxuICAgIGZwU2xpZGVMZWZ0IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbiAgYW5pbWF0aW9uOiBmcEZhZGVPdXQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLFxuICAgIGZwU2xpZGVMZWZ0IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYW5pbWF0ZSAuZGF5Q29udGFpbmVyLnNsaWRlTGVmdCxcbi5mbGF0cGlja3ItY2FsZW5kYXIuYW5pbWF0ZSAuZGF5Q29udGFpbmVyLnNsaWRlTGVmdE5ldyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMHB4LCAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwcHgsIDBweCk7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyLmFuaW1hdGUgLmRheUNvbnRhaW5lci5zbGlkZUxlZnROZXcge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZnBGYWRlSW4gNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLFxuICAgIGZwU2xpZGVMZWZ0IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbiAgYW5pbWF0aW9uOiBmcEZhZGVJbiA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSksXG4gICAgZnBTbGlkZUxlZnQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5hbmltYXRlIC5kYXlDb250YWluZXIuc2xpZGVSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmcEZhZGVPdXQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLFxuICAgIGZwU2xpZGVSaWdodCA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG4gIGFuaW1hdGlvbjogZnBGYWRlT3V0IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKSxcbiAgICBmcFNsaWRlUmlnaHQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMHB4LCAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDBweCwgMHB4KTtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYW5pbWF0ZSAuZGF5Q29udGFpbmVyLnNsaWRlUmlnaHROZXcge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZnBGYWRlSW4gNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLFxuICAgIGZwU2xpZGVSaWdodE5ldyA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG4gIGFuaW1hdGlvbjogZnBGYWRlSW4gNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLFxuICAgIGZwU2xpZGVSaWdodE5ldyA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG59XG4uZmxhdHBpY2tyLWRheSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxNTBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6ICMzOTM5Mzk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgd2lkdGg6IDE0LjI4NTcxNDMlO1xuICAtd2Via2l0LWZsZXgtYmFzaXM6IDE0LjI4NTcxNDMlO1xuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMTQuMjg1NzE0MyU7XG4gIGZsZXgtYmFzaXM6IDE0LjI4NTcxNDMlO1xuICBtYXgtd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi8vIC5mbGF0cGlja3ItZGF5LmluUmFuZ2UsXG4vLyAuZmxhdHBpY2tyLWRheS5wcmV2TW9udGhEYXkuaW5SYW5nZSxcbi8vIC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheS5pblJhbmdlLFxuLy8gLmZsYXRwaWNrci1kYXkudG9kYXkuaW5SYW5nZSxcbi8vIC5mbGF0cGlja3ItZGF5LnByZXZNb250aERheS50b2RheS5pblJhbmdlLFxuLy8gLmZsYXRwaWNrci1kYXkubmV4dE1vbnRoRGF5LnRvZGF5LmluUmFuZ2UsXG4vLyAuZmxhdHBpY2tyLWRheTpob3Zlcixcbi8vIC5mbGF0cGlja3ItZGF5LnByZXZNb250aERheTpob3Zlcixcbi8vIC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheTpob3Zlcixcbi8vIC5mbGF0cGlja3ItZGF5OmZvY3VzLFxuLy8gLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5OmZvY3VzLFxuLy8gLmZsYXRwaWNrci1kYXkubmV4dE1vbnRoRGF5OmZvY3VzIHtcbi8vICAgY3Vyc29yOiBwb2ludGVyO1xuLy8gICBvdXRsaW5lOiAwO1xuLy8gICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuLy8gICBib3JkZXItY29sb3I6ICNlNmU2ZTY7XG4vLyB9XG4vLyAuZmxhdHBpY2tyLWRheS50b2RheSB7XG4vLyAgIGJvcmRlci1jb2xvcjogIzk1OWVhOTtcbi8vIH1cbi8vIC5mbGF0cGlja3ItZGF5LnRvZGF5OmhvdmVyLFxuLy8gLmZsYXRwaWNrci1kYXkudG9kYXk6Zm9jdXMge1xuLy8gICBib3JkZXItY29sb3I6ICM5NTllYTk7XG4vLyAgIGJhY2tncm91bmQ6ICM5NTllYTk7XG4vLyAgIGNvbG9yOiAjZmZmO1xuLy8gfVxuLy8gLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQsXG4vLyAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLFxuLy8gLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UsXG4vLyAuZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5pblJhbmdlLFxuLy8gLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5pblJhbmdlLFxuLy8gLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UuaW5SYW5nZSxcbi8vIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkOmZvY3VzLFxuLy8gLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZTpmb2N1cyxcbi8vIC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlOmZvY3VzLFxuLy8gLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQ6aG92ZXIsXG4vLyAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlOmhvdmVyLFxuLy8gLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2U6aG92ZXIsXG4vLyAuZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5wcmV2TW9udGhEYXksXG4vLyAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnByZXZNb250aERheSxcbi8vIC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLnByZXZNb250aERheSxcbi8vIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLm5leHRNb250aERheSxcbi8vIC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UubmV4dE1vbnRoRGF5LFxuLy8gLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UubmV4dE1vbnRoRGF5IHtcbi8vICAgYmFja2dyb3VuZDogIzU2OWZmNztcbi8vICAgYm94LXNoYWRvdzogbm9uZTtcbi8vICAgY29sb3I6ICNmZmY7XG4vLyAgIGJvcmRlci1jb2xvcjogIzU2OWZmNztcbi8vIH1cbi8vIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLnN0YXJ0UmFuZ2UsXG4vLyAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnN0YXJ0UmFuZ2UsXG4vLyAuZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5zdGFydFJhbmdlIHtcbi8vICAgYm9yZGVyLXJhZGl1czogNTBweCAwIDAgNTBweDtcbi8vIH1cbi8vIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLmVuZFJhbmdlLFxuLy8gLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5lbmRSYW5nZSxcbi8vIC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLmVuZFJhbmdlIHtcbi8vICAgYm9yZGVyLXJhZGl1czogMCA1MHB4IDUwcHggMDtcbi8vIH1cbi8vIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLnN0YXJ0UmFuZ2UgKyAuZW5kUmFuZ2UsXG4vLyAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnN0YXJ0UmFuZ2UgKyAuZW5kUmFuZ2UsXG4vLyAuZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5zdGFydFJhbmdlICsgLmVuZFJhbmdlIHtcbi8vICAgYm94LXNoYWRvdzogLTEwcHggMCAwICM1NjlmZjc7XG4vLyB9XG4vLyAuZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5zdGFydFJhbmdlLmVuZFJhbmdlLFxuLy8gLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5zdGFydFJhbmdlLmVuZFJhbmdlLFxuLy8gLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2Uuc3RhcnRSYW5nZS5lbmRSYW5nZSB7XG4vLyAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4vLyB9XG4vLyAuZmxhdHBpY2tyLWRheS5pblJhbmdlIHtcbi8vICAgYm9yZGVyLXJhZGl1czogMDtcbi8vICAgYm94LXNoYWRvdzogLTVweCAwIDAgI2U2ZTZlNiwgNXB4IDAgMCAjZTZlNmU2O1xuLy8gfVxuLy8gLmZsYXRwaWNrci1kYXkuZGlzYWJsZWQsXG4vLyAuZmxhdHBpY2tyLWRheS5kaXNhYmxlZDpob3ZlciB7XG4vLyAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuLy8gfVxuLy8gLmZsYXRwaWNrci1kYXkuZGlzYWJsZWQsXG4vLyAuZmxhdHBpY2tyLWRheS5kaXNhYmxlZDpob3Zlcixcbi8vIC5mbGF0cGlja3ItZGF5LnByZXZNb250aERheSxcbi8vIC5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheSxcbi8vIC5mbGF0cGlja3ItZGF5Lm5vdEFsbG93ZWQsXG4vLyAuZmxhdHBpY2tyLWRheS5ub3RBbGxvd2VkLnByZXZNb250aERheSxcbi8vIC5mbGF0cGlja3ItZGF5Lm5vdEFsbG93ZWQubmV4dE1vbnRoRGF5IHtcbi8vICAgY29sb3I6IHJnYmEoNTcsNTcsNTcsMC4zKTtcbi8vICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4vLyAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4vLyAgIGN1cnNvcjogZGVmYXVsdDtcbi8vIH1cbi5mbGF0cGlja3ItZGF5LndlZWsuc2VsZWN0ZWQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAtNXB4IDAgMCAjNTY5ZmY3LCA1cHggMCAwICM1NjlmZjc7XG59XG4vLyAucmFuZ2VNb2RlIC5mbGF0cGlja3ItZGF5IHtcbi8vICAgbWFyZ2luLXRvcDogMXB4O1xuLy8gfVxuLmZsYXRwaWNrci13ZWVrd3JhcHBlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZmxhdHBpY2tyLXdlZWt3cmFwcGVyIC5mbGF0cGlja3Itd2Vla3Mge1xuICBwYWRkaW5nOiAwIDEycHg7XG4gIGJveC1zaGFkb3c6IDFweCAwIDAgI2U2ZTZlNjtcbn1cbi5mbGF0cGlja3Itd2Vla3dyYXBwZXIgLmZsYXRwaWNrci13ZWVrZGF5IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMjhweDtcbn1cbi5mbGF0cGlja3Itd2Vla3dyYXBwZXIgc3Bhbi5mbGF0cGlja3ItZGF5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4uZmxhdHBpY2tyLWlubmVyQ29udGFpbmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZmxhdHBpY2tyLXJDb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uZmxhdHBpY2tyLXRpbWUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG91dGxpbmU6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBtYXgtaGVpZ2h0OiA0MHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmZsYXRwaWNrci10aW1lOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cbi5mbGF0cGlja3ItdGltZSAubnVtSW5wdXRXcmFwcGVyIHtcbiAgLXdlYmtpdC1mbGV4OiAxO1xuICAtbXMtZmxleDogMTtcbiAgZmxleDogMTtcbiAgd2lkdGg6IDQwJTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBmbG9hdDogbGVmdDtcbn1cbi5mbGF0cGlja3ItdGltZSAubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dVcDphZnRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMzOTM5Mzk7XG59XG4uZmxhdHBpY2tyLXRpbWUgLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93RG93bjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMzOTM5Mzk7XG59XG4uZmxhdHBpY2tyLXRpbWUuaGFzU2Vjb25kcyAubnVtSW5wdXRXcmFwcGVyIHtcbiAgd2lkdGg6IDI2JTtcbn1cbi5mbGF0cGlja3ItdGltZS50aW1lMjRociAubnVtSW5wdXRXcmFwcGVyIHtcbiAgd2lkdGg6IDQ5JTtcbn1cbi5mbGF0cGlja3ItdGltZSBpbnB1dCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMzkzOTM5O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5mbGF0cGlja3ItdGltZSBpbnB1dC5mbGF0cGlja3ItaG91ciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmZsYXRwaWNrci10aW1lIGlucHV0LmZsYXRwaWNrci1taW51dGUsXG4uZmxhdHBpY2tyLXRpbWUgaW5wdXQuZmxhdHBpY2tyLXNlY29uZCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uZmxhdHBpY2tyLXRpbWUgaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXI6IDA7XG59XG4uZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci10aW1lLXNlcGFyYXRvcixcbi5mbGF0cGlja3ItdGltZSAuZmxhdHBpY2tyLWFtLXBtIHtcbiAgaGVpZ2h0OiBpbmhlcml0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMzOTM5Mzk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB3aWR0aDogMiU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyO1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7XG4gIC1tcy1ncmlkLXJvdy1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG4uZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbSB7XG4gIG91dGxpbmU6IDA7XG4gIHdpZHRoOiAxOCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmZsYXRwaWNrci10aW1lIC5mbGF0cGlja3ItYW0tcG06aG92ZXIsXG4uZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7XG59XG4uZmxhdHBpY2tyLWlucHV0W3JlYWRvbmx5XSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmcEZhZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZnBGYWRlSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgZnBTbGlkZUxlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwcHgsIDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMHB4LCAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZwU2xpZGVMZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gIH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMHB4LCAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDBweCwgMHB4KTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZwU2xpZGVMZWZ0TmV3IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDBweCwgMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDBweCwgMHB4KTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZnBTbGlkZUxlZnROZXcge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMHB4LCAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMHB4LCAwcHgpO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZwU2xpZGVSaWdodCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMHB4KTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDBweCwgMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDBweCwgMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBmcFNsaWRlUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDBweCk7XG4gIH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwcHgsIDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwcHgsIDBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmcFNsaWRlUmlnaHROZXcge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMHB4KTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZwU2xpZGVSaWdodE5ldyB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwcHgpO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmcEZhZGVPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZwRmFkZU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmcEZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZnBGYWRlSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheWVyJztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5AaW1wb3J0ICdmbGF0cGlja3Iuc2Nzcyc7XG5cbi8vLyBEYXRlIHBpY2tlciBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgZGF0ZS1waWNrZXJcbkBtaXhpbiBkYXRlLXBpY2tlciB7XG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci0tbGlnaHQgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pbnB1dCB7XG4gICAgYmFja2dyb3VuZDogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyIH4gLiN7JHByZWZpeH0tLWxhYmVsIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLWlucHV0X193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICB+IC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHJlbSgyMDBweCk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkc3VwcG9ydC0wMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTAyO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLS1zaW1wbGUge1xuICAgIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faW5wdXQge1xuICAgICAgd2lkdGg6IHJlbSgxMjBweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLS1zaW1wbGUuI3skcHJlZml4fS0tZGF0ZS1waWNrZXItLXNob3J0IHtcbiAgICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2lucHV0IHtcbiAgICAgIHdpZHRoOiA1LjdyZW07XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLS1zaW5nbGUge1xuICAgIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci1jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiByZW0oMjg4cHgpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faW5wdXQge1xuICAgICAgd2lkdGg6IHJlbSgyODhweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pbnB1dCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnY29kZS0wMicpO1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgbWF4LXdpZHRoOiByZW0oMjg4cHgpO1xuICAgIHBhZGRpbmc6IDAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpIGFsbDtcblxuICAgICY6Zm9jdXMsXG4gICAgJi4jeyRwcmVmaXh9LS1mb2N1c2VkIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICAmW2RhdGEtaW52YWxpZF0sXG4gICAgJltkYXRhLWludmFsaWRdOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ2ludmFsaWQnKTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZDo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlci1jb2xvcnM7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGZpbGw6ICRpY29uLTAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pY29uIH4gLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wOTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faW5wdXQ6ZGlzYWJsZWQgfiAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2ljb24ge1xuICAgIGZpbGw6ICRkaXNhYmxlZC0wMjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLS1yYW5nZVxuICAgID4gLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLWNvbnRhaW5lcjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0oMXB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci0tcmFuZ2UgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLWNvbnRhaW5lcixcbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLS1yYW5nZSAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2lucHV0IHtcbiAgICB3aWR0aDogcmVtKDE0My41cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19jYWxlbmRhcixcbiAgLmZsYXRwaWNrci1jYWxlbmRhci5vcGVuIHtcbiAgICBAaW5jbHVkZSBsYXllcigncG9wLW91dCcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTAyICRjYXJib24tLXNwYWNpbmctMDIgJGNhcmJvbi0tc3BhY2luZy0wM1xuICAgICAgJGNhcmJvbi0tc3BhY2luZy0wMjtcbiAgICB3aWR0aDogcmVtKDI4OHB4KSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogcmVtKDMzNnB4KTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgJGludGVyYWN0aXZlLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9fbW9udGgsXG4gIC5mbGF0cGlja3ItbW9udGgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19tb250aCAuZmxhdHBpY2tyLXByZXYtbW9udGgsXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9fbW9udGggLmZsYXRwaWNrci1uZXh0LW1vbnRoLFxuICAuZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGgsXG4gIC5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgd2lkdGg6IHJlbSg0MHB4KTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZpbGw6ICR0ZXh0LTAxO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG4gIH1cblxuICAuZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLm51bUlucHV0V3JhcHBlciB7XG4gICAgd2lkdGg6IDdjaDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9fbW9udGggLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoLFxuICAuZmxhdHBpY2tyLW1vbnRoIC5mbGF0cGlja3ItY3VycmVudC1tb250aCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnaGVhZGluZy0wMScpO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX21vbnRoIC5mbGF0cGlja3ItY3VycmVudC1tb250aCBzdmcsXG4gIC5mbGF0cGlja3ItbW9udGggLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIHN2ZyB7XG4gICAgZmlsbDogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX21vbnRoIC5mbGF0cGlja3ItY3VycmVudC1tb250aCAuY3VyLW1vbnRoLFxuICAuZmxhdHBpY2tyLW1vbnRoIC5mbGF0cGlja3ItY3VycmVudC1tb250aCAuY3VyLW1vbnRoIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDI7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19tb250aCAubnVtSW5wdXRXcmFwcGVyIC5udW1JbnB1dCxcbiAgLmZsYXRwaWNrci1tb250aCAubnVtSW5wdXRXcmFwcGVyIC5udW1JbnB1dCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDI7XG4gICAgLy8gQWRkZWQgaW4gd2hlbiB1cGdyYWRlZCB0byBGbGF0cGlja3IgNC41LjVcbiAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogRmlyZWZveCAqL1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgJGludGVyYWN0aXZlLTAxO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4gICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgICAvLyBBZGRlZCBpbiB3aGVuIHVwZ3JhZGVkIHRvIEZsYXRwaWNrciA0LjUuNVxuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgbWFyZ2luOiAwOyAvKiA8LS0gQXBwYXJlbnRseSBzb21lIG1hcmdpbiBhcmUgc3RpbGwgdGhlcmUgZXZlbiB0aG91Z2ggaXQncyBoaWRkZW4gKi9cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX21vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1VwLFxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX21vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd24sXG4gIC5mbGF0cGlja3ItbW9udGggLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93VXAsXG4gIC5mbGF0cGlja3ItbW9udGggLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93RG93biB7XG4gICAgbGVmdDogMi42cmVtO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB3aWR0aDogcmVtKDEycHgpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGludGVyYWN0aXZlLTAxO1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkaW50ZXJhY3RpdmUtMDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkaWNvbi0wMTtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRpY29uLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9fbW9udGggLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93VXAsXG4gIC5mbGF0cGlja3ItbW9udGggLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93VXAge1xuICAgIHRvcDogNHB4O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19tb250aCAubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dEb3duLFxuICAuZmxhdHBpY2tyLW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd24ge1xuICAgIHRvcDogMTFweDtcbiAgfVxuXG4gIHNwYW4uI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX3dlZWtkYXksXG4gIHNwYW4uZmxhdHBpY2tyLXdlZWtkYXkge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9fZGF5LFxuICAuZmxhdHBpY2tyLWRheSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIHdpZHRoOiByZW0oNDBweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRob3Zlci11aTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICAgIG91dGxpbmUtY29sb3I6ICRpbnRlcmFjdGl2ZS0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2RheXMgLm5leHRNb250aERheSxcbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19kYXlzIC5wcmV2TW9udGhEYXkge1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9fZGF5LnRvZGF5LFxuICAuZmxhdHBpY2tyLWRheS50b2RheSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkaW50ZXJhY3RpdmUtMDE7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3R0b206IHJlbSg3cHgpO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgaGVpZ2h0OiByZW0oNHB4KTtcbiAgICAgIHdpZHRoOiByZW0oNHB4KTtcbiAgICAgIGJhY2tncm91bmQ6ICRpbnRlcmFjdGl2ZS0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2RheS50b2RheS5uby1ib3JkZXIsXG4gIC5mbGF0cGlja3ItZGF5LnRvZGF5Lm5vLWJvcmRlciB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19kYXkudG9kYXkuc2VsZWN0ZWQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRpbnRlcmFjdGl2ZS0wMTtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9fZGF5LmRpc2FibGVkLFxuICAuZmxhdHBpY2tyLWRheS5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY29sb3I6ICR1aS0wNTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19kYXkuaW5SYW5nZSxcbiAgLmZsYXRwaWNrci1kYXkuaW5SYW5nZSB7XG4gICAgYmFja2dyb3VuZDogJGRhdGUtcGlja2VyLWluLXJhbmdlLWJhY2tncm91bmQtY29sb3I7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19kYXkuc2VsZWN0ZWQsXG4gIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkIHtcbiAgICBjb2xvcjogJHRleHQtMDQ7XG4gICAgYmFja2dyb3VuZDogJGludGVyYWN0aXZlLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19kYXkuc3RhcnRSYW5nZS5zZWxlY3RlZCxcbiAgLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5zZWxlY3RlZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19kYXkuZW5kUmFuZ2UsXG4gIC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICAgIGJhY2tncm91bmQ6ICR1aS0wMTtcbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2RheS5lbmRSYW5nZS5pblJhbmdlLFxuICAuZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5pblJhbmdlIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgYmFja2dyb3VuZDogJHVpLTAxO1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2RheS5lbmRSYW5nZS5pblJhbmdlLnNlbGVjdGVkLFxuICAuZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5pblJhbmdlLnNlbGVjdGVkIHtcbiAgICBjb2xvcjogJHRleHQtMDQ7XG4gICAgYmFja2dyb3VuZDogJGludGVyYWN0aXZlLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19kYXkuc3RhcnRSYW5nZS5pblJhbmdlOm5vdCguc2VsZWN0ZWQpLFxuICAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLmluUmFuZ2U6bm90KC5zZWxlY3RlZCkge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDE7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9fZGF5cyxcbiAgLmRheUNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtKDI0NnB4KTtcbiAgfVxuXG4gIC5mbGF0cGlja3ItaW5uZXJDb250YWluZXIsXG4gIC5mbGF0cGlja3ItckNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX193ZWVrZGF5cyxcbiAgLmZsYXRwaWNrci13ZWVrZGF5cyxcbiAgLmZsYXRwaWNrci13ZWVrZGF5Y29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5mbGF0cGlja3Itd2Vla2RheXMge1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5mbGF0cGlja3Itd2Vla2RheWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5mbGF0cGlja3ItbW9udGhzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5mbGF0cGlja3ItcHJldi1tb250aCxcbiAgLmZsYXRwaWNrci1uZXh0LW1vbnRoIHtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgfVxuXG4gIC5mbGF0cGlja3ItcHJldi1tb250aDpob3ZlciBzdmcsXG4gIC5mbGF0cGlja3ItbmV4dC1tb250aDpob3ZlciBzdmcge1xuICAgIGZpbGw6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLmZsYXRwaWNrci1uZXh0LW1vbnRoLmRpc2FibGVkLFxuICAuZmxhdHBpY2tyLXByZXYtbW9udGguZGlzYWJsZWQge1xuICAgIHN2ZyB7XG4gICAgICBmaWxsOiAkdWktMDU7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgc3ZnIHtcbiAgICAgICAgZmlsbDogJHVpLTA1O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNrZWxldG9uIFN0YXRlXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci4jeyRwcmVmaXh9LS1za2VsZXRvbiBpbnB1dCxcbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pbnB1dC4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXIuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcbiAgICB3aWR0aDogcmVtKDc1cHgpO1xuICAgIGhlaWdodDogcmVtKDE0cHgpO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2RhdGUtcGlja2VyJykge1xuICBAaW5jbHVkZSBkYXRlLXBpY2tlcjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBEcm9wZG93blxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5ZXInO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5cbi8vLyBEcm9wZG93biBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgZHJvcGRvd25cbkBtaXhpbiBkcm9wZG93biB7XG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bl9fd3JhcHBlci0taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdyaWQtdGVtcGxhdGU6IGF1dG8gYXV0byAvIGF1dG8gbWluLWNvbnRlbnQ7XG4gICAgZ3JpZC1nYXA6IHJlbSg0cHgpO1xuXG4gICAgLiN7JHByZWZpeH0tLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tbGFiZWwsXG4gICAgLiN7JHByZWZpeH0tLWZvcm1fX2hlbHBlci10ZXh0LFxuICAgIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudCB7XG4gICAgICBncmlkLWNvbHVtbjogMjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4ge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW52YWxpZCB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnaW52YWxpZCcpO1xuXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLXRleHQge1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtKDU2cHgpOyAvLyBUT0RPOiBzcGFjaW5nIHRva2VuXG4gICAgfVxuXG4gICAgKyAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXgtaGVpZ2h0OiByZW0oMjAwcHgpO1xuICAgICAgY29sb3I6ICRzdXBwb3J0LTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bl9faW52YWxpZC1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IHJlbSg0MHB4KTsgLy8gVE9ETzogc3BhY2luZyB0b2tlblxuICAgIGZpbGw6ICRzdXBwb3J0LTAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tb3Blbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1vcGVuOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4gLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpc3Qge1xuICAgIEBpbmNsdWRlIGxheWVyKCdvdmVybGF5Jyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLXVwIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saXN0IHtcbiAgICBib3R0b206IDJyZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd25fX2Fycm93IHtcbiAgICBmaWxsOiAkdWktMDU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIHRvcDogcmVtKDEzcHgpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNDUlO1xuICB9XG5cbiAgYnV0dG9uLiN7JHByZWZpeH0tLWRyb3Bkb3duLXRleHQge1xuICAgIC8vIGJ1dHRvbi1yZXNldCBtaXhpbiBjb250cmFkaWN0cyB3aXRoIGJ4LS1kcm9wZG93bi10ZXh0IHN0eWxlc1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tdGV4dCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIHBhZGRpbmctdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTA0O1xuICAgIHBhZGRpbmctYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTA0O1xuICAgIHBhZGRpbmctbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNDJweCk7IC8vIDJyZW0gKyBTVkcgd2lkdGhcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tbGlzdCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICBAaW5jbHVkZSBsYXllcignb3ZlcmxheScpO1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IHooJ2Ryb3Bkb3duJyk7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW4gYXV0bztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bjpub3QoLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1vcGVuKVxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1pdGVtIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24taXRlbSB7XG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIG9wYWNpdHkgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaW5oZXJpdDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuXG4gICAgICArIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1pdGVtIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1vZi10eXBlIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1pdGVtOmxhc3Qtb2YtdHlwZSAuI3skcHJlZml4fS0tZHJvcGRvd24tbGluayB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogcmVtKDE2cHgpO1xuICAgIHBhZGRpbmc6IHJlbSgxMXB4KSAwO1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR1aS0wMztcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1mb2N1c2VkLFxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tbGluazpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiByZW0oMTFweCkgcmVtKDE2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWl0ZW06aG92ZXIgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpbmsge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRob3Zlci11aTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tc2VsZWN0ZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4gLiN7JHByZWZpeH0tLWRyb3Bkb3duX19hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4gLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpc3Qge1xuICAgIG1heC1oZWlnaHQ6IDE1cmVtO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4gLiN7JHByZWZpeH0tLWRyb3Bkb3duLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLWRpc2FibGVkIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi10ZXh0IHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duX19hcnJvdyB7XG4gICAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS1kcm9wZG93bi0tbGlnaHQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tYXV0by13aWR0aCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiByZW0oNDAwcHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUge1xuICAgIGp1c3RpZnktc2VsZjogc3RhcnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tZHJvcGRvd25fX2Fycm93IHtcbiAgICAgIHRvcDogcmVtKDhweCk7XG4gICAgICByaWdodDogcmVtKDhweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUgLiN7JHByZWZpeH0tLWRyb3Bkb3duLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiByZW0oN3B4KSByZW0oMzJweCkgcmVtKDdweCkgJGNhcmJvbi0tc3BhY2luZy0wNDsgLy8gVE9ETzogc3BhY2luZyB0b2tlblxuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW5saW5lLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1kaXNhYmxlZFxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi10ZXh0IHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUuI3skcHJlZml4fS0tZHJvcGRvd24tLWRpc2FibGVkOmZvY3VzXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLXRleHQge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLWlubGluZS4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW52YWxpZFxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bl9faW52YWxpZC1pY29uIHtcbiAgICByaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUuI3skcHJlZml4fS0tZHJvcGRvd24tLWludmFsaWRcbiAgICAuI3skcHJlZml4fS0tZHJvcGRvd24tdGV4dCB7XG4gICAgcGFkZGluZy1yaWdodDogcmVtKDU2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW46Zm9jdXNcbiAgICAuI3skcHJlZml4fS0tZHJvcGRvd24tbGlzdCB7XG4gICAgQGluY2x1ZGUgbGF5ZXIoJ292ZXJsYXknKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW5saW5lIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNDtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDEwcHgpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxMHB4KTtcbiAgICB9XG4gIH1cblxuICAvLyBTa2VsZXRvbiBTdGF0ZVxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tdjIuI3skcHJlZml4fS0tc2tlbGV0b24sXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnZHJvcGRvd24nKSB7XG4gIEBpbmNsdWRlIGRyb3Bkb3duO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE1vZGFsc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXllcic7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5cbkBpbXBvcnQgJy4uL2J1dHRvbi9idXR0b24nO1xuXG4vLy8gTW9kYWwgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG1vZGFsXG5AbWl4aW4gbW9kYWwge1xuICAuI3skcHJlZml4fS0tbW9kYWwge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogeignaGlkZGVuJyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1zbG93LTAyIG1vdGlvbihleGl0LCBleHByZXNzaXZlKSxcbiAgICAgIG9wYWNpdHkgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMiBtb3Rpb24oZXhpdCwgZXhwcmVzc2l2ZSksXG4gICAgICB6LWluZGV4ICRkdXJhdGlvbi0tc2xvdy0wMiBtb3Rpb24oZXhpdCwgZXhwcmVzc2l2ZSksXG4gICAgICB2aXNpYmlsaXR5ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDIgbW90aW9uKGV4aXQsIGV4cHJlc3NpdmUpO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIHotaW5kZXg6IHooJ21vZGFsJyk7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvdmVybGF5LTAxO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLXNsb3ctMDJcbiAgICAgICAgICBtb3Rpb24oZW50cmFuY2UsIGV4cHJlc3NpdmUpLFxuICAgICAgICBvcGFjaXR5ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDIgbW90aW9uKGVudHJhbmNlLCBleHByZXNzaXZlKSxcbiAgICAgICAgei1pbmRleCAkZHVyYXRpb24tLXNsb3ctMDIgbW90aW9uKGVudHJhbmNlLCBleHByZXNzaXZlKSxcbiAgICAgICAgdmlzaWJpbGl0eSAkZHVyYXRpb24tLW1vZGVyYXRlLTAyIG1vdGlvbihlbnRyYW5jZSwgZXhwcmVzc2l2ZSk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQsXG4gICAgLiN7JHByZWZpeH0tLXRleHQtYXJlYSxcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0LFxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQsXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLFxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saXN0LFxuICAgIC4jeyRwcmVmaXh9LS1udW1iZXIgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC5pcy12aXNpYmxlIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250YWluZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLW1vZGVyYXRlLTAyIG1vdGlvbihlbnRyYW5jZSwgZXhwcmVzc2l2ZSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yNHB4LCAwKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMiBtb3Rpb24oZXhpdCwgZXhwcmVzc2l2ZSk7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICAgICAgbWF4LWhlaWdodDogOTAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChsZykge1xuICAgICAgbWF4LWhlaWdodDogODAlO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1oZWFkZXIsXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNSU7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWhlYWRlcixcbiAgLiN7JHByZWZpeH0tLW1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWhlYWRlcl9fbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG5cbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1oZWFkZXJfX2hlYWRpbmcge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMycpO1xuXG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktbG9uZy0wMScpO1xuXG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQgPiAqIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LWxvbmctMDEnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBoZWlnaHQ6IDRyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWZvb3Rlci1iYWNrZ3JvdW5kLWNvbG9yO1xuXG4gICAgYnV0dG9uLiN7JHByZWZpeH0tLWJ0biB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBmbGV4OiAxO1xuICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIHBhZGRpbmc6IHJlbSgxMnB4KTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWNsb3NlOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtY2xvc2VfX2ljb24ge1xuICAgIGZpbGw6ICRpY29uLTAxO1xuICAgIGhlaWdodDogcmVtKDIwcHgpO1xuICAgIHdpZHRoOiByZW0oMjBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYm9keS0td2l0aC1tb2RhbC1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ21vZGFsJykge1xuICBAaW5jbHVkZSBtb2RhbDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMaXN0IEJveFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi9saXN0LWJveC9saXN0LWJveCc7XG5cbi8vLyBNdWx0aSBzZWxlY3Qgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG11bHRpLXNlbGVjdFxuQG1peGluIG11bHRpc2VsZWN0IHtcbiAgLiN7JHByZWZpeH0tLW11bHRpLXNlbGVjdCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUge1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tdWx0aS1zZWxlY3RcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uXG4gICAgLiN7JHByZWZpeH0tLWNoZWNrYm94LXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbXVsdGktc2VsZWN0XG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvblxuICAgID4gLiN7JHByZWZpeH0tLWZvcm0taXRlbSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbXVsdGktc2VsZWN0XG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1cbiAgICAuI3skcHJlZml4fS0tY2hlY2tib3g6Y2hlY2tlZFxuICAgIH4gLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsLXRleHQge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tdWx0aS1zZWxlY3QtLWZpbHRlcmFibGUge1xuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fc2VsZWN0aW9uLS1tdWx0aSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW11bHRpLXNlbGVjdC0tc2VsZWN0ZWQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQge1xuICAgIC8vIHRoaXMgdmFsdWUgd2lsbCBuZWVkIHRvIGNoYW5nZSBiYXNlZCBvbiB0aGUgbnVtYmVyIG9mIGRpZ2l0cyBpblxuICAgIC8vIHRoZSBudW1iZXIgb2YgaXRlbXMgc2VsZWN0ZWRcbiAgICAvL1xuICAgIC8vIGkuZS4gdGhlIGlucHV0IGZpZWxkIG5lZWRzIGFkanVzdGVkIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHdpZHRoIG9mXG4gICAgLy8gdGhlIG51bWJlciBpbiA8TGlzdEJveC5TZWxlY3Rpb24+XG4gICAgcGFkZGluZy1sZWZ0OiBjYXJib24tLW1pbmktdW5pdHMoNyk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnbXVsdGktc2VsZWN0Jykge1xuICBAaW5jbHVkZSBtdWx0aXNlbGVjdDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBOb3RpZmljYXRpb25zXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXllcic7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJ21peGlucyc7XG5cbi8vLyBJbmxpbmUgbm90aWZpY2F0aW9uIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBub3RpZmljYXRpb25cbkBtaXhpbiBpbmxpbmUtbm90aWZpY2F0aW9ucyB7XG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uIHtcbiAgICBAaW5jbHVkZSByZXNldDtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiByZW0oNDhweCk7XG4gICAgbWluLXdpZHRoOiByZW0oMjg4cHgpO1xuICAgIG1heC13aWR0aDogcmVtKDI4OHB4KTtcbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgbWFyZ2luLXRvcDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbSg2MDhweCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KGxnKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbSg3MzZweCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1heCkge1xuICAgICAgbWF4LXdpZHRoOiByZW0oODMycHgpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3Qge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBib3gtc2hhZG93OiAwIDJweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKCRpbnZlcnNlLXN1cHBvcnQtMDEsICRpbnZlcnNlLTAyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3QuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKFxuICAgICAgJHN1cHBvcnQtMDEsXG4gICAgICAkbm90aWZpY2F0aW9uLWVycm9yLWJhY2tncm91bmQtY29sb3JcbiAgICApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLXN1Y2Nlc3Mge1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKCRpbnZlcnNlLXN1cHBvcnQtMDIsICRpbnZlcnNlLTAyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3QuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0tc3VjY2VzcyB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoXG4gICAgICAkc3VwcG9ydC0wMixcbiAgICAgICRub3RpZmljYXRpb24tc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1pbmZvIHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbCgkaW52ZXJzZS1zdXBwb3J0LTA0LCAkaW52ZXJzZS0wMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0LiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWluZm8ge1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKFxuICAgICAgJHN1cHBvcnQtMDQsXG4gICAgICAkbm90aWZpY2F0aW9uLWluZm8tYmFja2dyb3VuZC1jb2xvclxuICAgICk7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0taW5mbyAuYngtLWlubGluZS1ub3RpZmljYXRpb25fX2ljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0td2FybmluZyB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGludmVyc2Utc3VwcG9ydC0wMywgJGludmVyc2UtMDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS13YXJuaW5nIHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbChcbiAgICAgICRzdXBwb3J0LTAzLFxuICAgICAgJG5vdGlmaWNhdGlvbi13YXJuaW5nLWJhY2tncm91bmQtY29sb3JcbiAgICApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLXdhcm5pbmdcbiAgICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9faWNvblxuICAgIHBhdGhbb3BhY2l0eT0nMCddIHtcbiAgICBmaWxsOiAkY2FyYm9uX19ibGFjay0xMDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX2ljb24ge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBtYXJnaW4tdG9wOiByZW0oMTRweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9fdGV4dC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDQgMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX190aXRsZSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnaGVhZGluZy0wMScpO1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTAyIDAgMDtcbiAgICBsaW5lLWhlaWdodDogcmVtKDI0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX3N1YnRpdGxlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19hY3Rpb24tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBtYXJnaW46ICRjYXJib24tLXNwYWNpbmctMDMgMDtcblxuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkaW52ZXJzZS1saW5rO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtaG92ZXItdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX2Nsb3NlLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gICAgd2lkdGg6IHJlbSg0OHB4KTtcbiAgICBtaW4td2lkdGg6IHJlbSg0OHB4KTtcbiAgICBtYXgtd2lkdGg6IHJlbSg0OHB4KTtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19jbG9zZS1pY29uIHtcbiAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgZmlsbDogJGludmVyc2UtMDE7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdCB7XG4gICAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX2Nsb3NlLWJ1dHRvblxuICAgICAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX2Nsb3NlLWljb24ge1xuICAgICAgZmlsbDogJHVpLTA1O1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19hY3Rpb24tYnV0dG9uIHtcbiAgICAgIGNvbG9yOiAkbGluay0wMTtcblxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJGNhcmJvbi0tYmx1ZS04MDtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmJvbi0td2hpdGUtMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnaW5saW5lLW5vdGlmaWNhdGlvbnMnKSB7XG4gIEBpbmNsdWRlIGlubGluZS1ub3RpZmljYXRpb25zO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSW5saW5lIE5vdGlmaWNhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbm90aWZpY2F0aW9uXG5AbWl4aW4gaW5saW5lLW5vdGlmaWNhdGlvbi0tY29sb3IoJGNvbG9yKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcjtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAkY29sb3I7XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX2ljb24ge1xuICAgIGZpbGw6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRvYXN0IE5vdGlmaWNhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbm90aWZpY2F0aW9uXG5AbWl4aW4gbm90aWZpY2F0aW9uLS1jb2xvcigkY29sb3IpIHtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAkY29sb3I7XG59XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbm90aWZpY2F0aW9uXG5AbWl4aW4gbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGNvbG9yLCAkYmFja2dyb3VuZC1jb2xvcikge1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRjb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY29sb3I7XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX2ljb24sXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX2ljb24ge1xuICAgIGZpbGw6ICRjb2xvcjtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE5vdGlmaWNhdGlvbnNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheWVyJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuLy8vIFRvYXN0IG5vdGlmaWNhdGlvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbm90aWZpY2F0aW9uXG5AbWl4aW4gdG9hc3Qtbm90aWZpY2F0aW9ucyB7XG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogcmVtKDI4OHB4KTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgICBtYXJnaW4tdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWF4KSB7XG4gICAgICB3aWR0aDogcmVtKDM1MnB4KTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3Qge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWVycm9yIHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbCgkaW52ZXJzZS1zdXBwb3J0LTAxLCAkaW52ZXJzZS0wMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3QuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1lcnJvciB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoXG4gICAgICAkc3VwcG9ydC0wMSxcbiAgICAgICRub3RpZmljYXRpb24tZXJyb3ItYmFja2dyb3VuZC1jb2xvclxuICAgICk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1zdWNjZXNzIHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbCgkaW52ZXJzZS1zdXBwb3J0LTAyLCAkaW52ZXJzZS0wMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3QuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1zdWNjZXNzIHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbChcbiAgICAgICRzdXBwb3J0LTAyLFxuICAgICAgJG5vdGlmaWNhdGlvbi1zdWNjZXNzLWJhY2tncm91bmQtY29sb3JcbiAgICApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0taW5mbyB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGludmVyc2Utc3VwcG9ydC0wNCwgJGludmVyc2UtMDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0LiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0taW5mbyB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoXG4gICAgICAkc3VwcG9ydC0wNCxcbiAgICAgICRub3RpZmljYXRpb24taW5mby1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLXdhcm5pbmcge1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKCRpbnZlcnNlLXN1cHBvcnQtMDMsICRpbnZlcnNlLTAyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLXdhcm5pbmcge1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKFxuICAgICAgJHN1cHBvcnQtMDMsXG4gICAgICAkbm90aWZpY2F0aW9uLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvclxuICAgICk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS13YXJuaW5nXG4gICAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9faWNvblxuICAgIHBhdGhbb3BhY2l0eT0nMCddIHtcbiAgICBmaWxsOiAkY2FyYm9uX19ibGFjay0xMDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX2ljb24ge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBtYXJnaW4tdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9fZGV0YWlscyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9fY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICB3aWR0aDogcmVtKDQ4cHgpO1xuICAgIG1pbi1oZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICBtaW4td2lkdGg6IHJlbSg0OHB4KTtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lICR0cmFuc2l0aW9uLS1iYXNlLCBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLS1iYXNlO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9fY2xvc2UtaWNvbiB7XG4gICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICB3aWR0aDogMXJlbTtcbiAgICAgIGZpbGw6ICRpbnZlcnNlLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdFxuICAgIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX2Nsb3NlLWJ1dHRvblxuICAgIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX2Nsb3NlLWljb24ge1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX3RpdGxlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdoZWFkaW5nLTAxJyk7XG5cbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX3N1YnRpdGxlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTA2O1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3RcbiAgICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uX19zdWJ0aXRsZSB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9fY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgY29sb3I6ICRpbnZlcnNlLTAxO1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3RcbiAgICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uX19jYXB0aW9uIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndG9hc3Qtbm90aWZpY2F0aW9ucycpIHtcbiAgQGluY2x1ZGUgdG9hc3Qtbm90aWZpY2F0aW9ucztcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5ZXInO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3Rvb2x0aXAnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuXG4vLyBUT0RPOiBkZXByZWNhdGUgbGVnYWN5IHRvb2x0aXAgbWl4aW5zXG4vLyBUb29sdGlwIEljb25cbi8vIEljb24gQ1NTIG9ubHkgdG9vbHRpcFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBkZXByZWNhdGVkXG4vLy8gQGdyb3VwIHRvb2x0aXBcbkBtaXhpbiB0b29sdGlwLS1pY29uIHtcbiAgQGluY2x1ZGUgcmVzZXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgLy8gVG9vbHRpcCAtIHJlbmRlcnMgYXMgYSBjb21ibyBvZiA6OmJlZm9yZSBhbmQgOjphZnRlciBlbGVtZW50c1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci13aWR0aDogMCByZW0oNHB4KSByZW0oNXB4KSByZW0oNHB4KTtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGludmVyc2UtMDIgdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgY29udGVudDogJyc7XG4gICAgbWFyZ2luLXRvcDogMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgbGF5ZXIoJ292ZXJsYXknKTtcbiAgICBtaW4td2lkdGg6IHJlbSgyNHB4KTtcbiAgICBtYXgtd2lkdGg6IHJlbSgyMDhweCk7XG4gICAgaGVpZ2h0OiByZW0oMjRweCk7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDJweCk7XG4gICAgY29sb3I6ICRpbnZlcnNlLTAxO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY29udGVudDogYXR0cihhcmlhLWxhYmVsKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS0wMjtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUb29sdGlwIEljb24gY2FyZXQgLSB0b3AgcG9zaXRpb25cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBvc2l0aW9uIFsnYm90dG9tJ10gLSBUaGUgcG9zaXRpb24sIGZyb206IGB0b3BgLCBgYm90dG9tYFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYWxpZ24gWydjZW50ZXInXSAtIFRoZSBhbGlnbm1lbnQsIGZyb206IGBzdGFydGAsIGBjZW50ZXJgLCBgZW5kYFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBkZXByZWNhdGVkXG4vLy8gQGdyb3VwIHRvb2x0aXBcbkBtaXhpbiB0b29sdGlwLS1pY29uLXBsYWNlbWVudCgkcG9zaXRpb246ICdib3R0b20nLCAkYWxpZ246ICdjZW50ZXInKSB7XG4gICR0cmFuc2xhdGUteDogaWYoJGFsaWduID09ICdjZW50ZXInLCAtNTAlLCAwKTtcbiAgJHRyYW5zbGF0ZS15LWNhcmV0OiBpZigkcG9zaXRpb24gPT0gJ3RvcCcsIGNhbGMoLTEwMCUgLSA5cHgpLCAxMHB4KTtcbiAgJHRyYW5zbGF0ZS15LWJvZHk6IGlmKFxuICAgICRwb3NpdGlvbiA9PSAndG9wJyxcbiAgICBjYWxjKC0xMDAlIC0gMTJweCksXG4gICAgY2FsYygxMDAlICsgMTBweClcbiAgKTtcbiAgJHJvdGF0ZS1jYXJldDogaWYoJHBvc2l0aW9uID09ICd0b3AnLCAxODBkZWcsIDApO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ3RvcCcpIHtcbiAgICAgIHRvcDogMXB4O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgICBAaWYgKCRhbGlnbiA9PSAnc3RhcnQnKSB7XG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIH0gQGVsc2UgaWYgKCRhbGlnbiA9PSAnZW5kJykge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR0cmFuc2xhdGUteCwgJHRyYW5zbGF0ZS15LWNhcmV0KSByb3RhdGUoJHJvdGF0ZS1jYXJldCk7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ3RvcCcpIHtcbiAgICAgIHRvcDogMDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gICAgQGlmICgkYWxpZ24gIT0gJ2NlbnRlcicpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgICBAaWYgKCRhbGlnbiA9PSAnZW5kJykge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR0cmFuc2xhdGUteCwgJHRyYW5zbGF0ZS15LWJvZHkpO1xuICB9XG59XG5cbi8vIGxlZ2FjeSBkZWZpbml0aW9uIHRvb2x0aXAgbWl4aW5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZGVwcmVjYXRlZFxuLy8vIEBncm91cCB0b29sdGlwXG5AbWl4aW4gdG9vbHRpcC0tZGVmaW5pdGlvbi0tbGVnYWN5IHtcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyIHtcbiAgICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGludGVyYWN0aXZlLTAxO1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICsgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX3RvcCxcbiAgICAgICAgKyAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fYm90dG9tIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnYm9yZGVyJyk7XG5cbiAgICAgICAgKyAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fdG9wLFxuICAgICAgICArIC4jeyRwcmVmaXh9LS10b29sdGlwLS1kZWZpbml0aW9uX19ib3R0b20ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX2JvdHRvbSxcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX3RvcCB7XG4gICAgQGluY2x1ZGUgbGF5ZXIoJ292ZXJsYXknKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQ6ICRpbnZlcnNlLTAyO1xuICAgIHdpZHRoOiByZW0oMjA4cHgpO1xuICAgIG1hcmdpbi10b3A6ICRjYXJib24tLXNwYWNpbmctMDQ7XG4gICAgcGFkZGluZzogJGNhcmJvbi0tc3BhY2luZy0wMyAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSgycHgpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIHAge1xuICAgICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgICAgY29sb3I6ICRpbnZlcnNlLTAxO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMC42cmVtO1xuICAgICAgaGVpZ2h0OiAwLjZyZW07XG4gICAgICBiYWNrZ3JvdW5kOiAkaW52ZXJzZS0wMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRvb2x0aXAgRGVmaW5pdGlvbiBjYXJldCAtIGJvdHRvbSBwb3NpdGlvblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fYm90dG9tIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgdG9wOiAtMC4ycmVtO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICB9XG5cbiAgLy8gVG9vbHRpcCBEZWZpbml0aW9uIGNhcmV0IC0gdG9wIHBvc2l0aW9uXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1kZWZpbml0aW9uX190b3Age1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgbWFyZ2luLXRvcDogcmVtKC0zMnB4KTtcblxuICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgICBib3R0b206IC0wLjJyZW07XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX2FsaWduLWVuZCB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fYWxpZ24tY2VudGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1kZWZpbml0aW9uX190b3AuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fYWxpZ24tY2VudGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1kZWZpbml0aW9uX19hbGlnbi1jZW50ZXIgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2NhcmV0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIC8vIEFkanVzdCBieSB0aGUgaGFsZiBvZiB0aGUgZGlhZ29uYWwgb2YgdGhlIGNhcmV0LCB3aGljaCBzaXplcyAwLjZyZW1cbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoNTAlIC0gNnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1kZWZpbml0aW9uX19hbGlnbi1lbmQgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2NhcmV0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogcmVtKDE2cHgpO1xuICB9XG59XG5cbi8vIGxlZ2FjeSBpY29uIHRvb2x0aXAgbWl4aW5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZGVwcmVjYXRlZFxuLy8vIEBncm91cCB0b29sdGlwXG5AbWl4aW4gdG9vbHRpcC0taWNvbi0tbGVnYWN5IHtcbiAgLy8gSWNvbiBDU1Mgb25seSB0b29sdGlwXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX3RvcCxcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX2JvdHRvbSB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0taWNvbjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkaWNvbi0wMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnYm9yZGVyJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVG9vbHRpcCBJY29uIGNhcmV0IC0gdG9wIHBvc2l0aW9uXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uX190b3Age1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLWljb24tcGxhY2VtZW50KCd0b3AnKTtcbiAgfVxuXG4gIC8vIFRvb2x0aXAgSWNvbiBjYXJldCAtIGJvdHRvbSBwb3NpdGlvblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbl9fYm90dG9tIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1pY29uLXBsYWNlbWVudCgnYm90dG9tJyk7XG4gIH1cblxuICAvLyBUb29sdGlwIEljb24gY2FyZXQgLSB0b3AgcG9zaXRpb24sIGxlZnQgYWxpZ25tZW50XG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uX190b3AuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbl9fYWxpZ24tc3RhcnQge1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLWljb24tcGxhY2VtZW50KCd0b3AnLCAnc3RhcnQnKTtcbiAgfVxuXG4gIC8vIFRvb2x0aXAgSWNvbiBjYXJldCAtIHRvcCBwb3NpdGlvbiwgcmlnaHQgYWxpZ25tZW50XG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uX190b3AuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbl9fYWxpZ24tZW5kIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1pY29uLXBsYWNlbWVudCgndG9wJywgJ2VuZCcpO1xuICB9XG5cbiAgLy8gVG9vbHRpcCBJY29uIGNhcmV0IC0gYm90dG9tIHBvc2l0aW9uLCBsZWZ0IGFsaWdubWVudFxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbl9fYm90dG9tLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX2FsaWduLXN0YXJ0IHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1pY29uLXBsYWNlbWVudCgnYm90dG9tJywgJ3N0YXJ0Jyk7XG4gIH1cblxuICAvLyBUb29sdGlwIEljb24gY2FyZXQgLSBib3R0b20gcG9zaXRpb24sIHJpZ2h0IGFsaWdubWVudFxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbl9fYm90dG9tLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX2FsaWduLWVuZCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0taWNvbi1wbGFjZW1lbnQoJ2JvdHRvbScsICdlbmQnKTtcbiAgfVxuXG4gIC8vIFRvb2x0aXAgcG9zaXRpb24gLSBpY29uIG9ubHlcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb24gLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXIgc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLy8gVG9vbHRpcCBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdG9vbHRpcFxuQG1peGluIHRvb2x0aXAge1xuICAvLyBDYXJldCdzIG9yaWdpbmFsIHNpemUgd2FzIDEzLjc1cHggc3F1YXJlXG4gICRjYXJldC1zaXplOiByZW0oNi44NzVweCk7XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2xhYmVsIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdsYWJlbC0wMScpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdib3JkZXInKTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlciB7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlciBzdmcge1xuICAgIGZpbGw6ICRpY29uLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXI6bm90KC4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seSkge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgkd2lkdGg6IGZhbHNlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ2JvcmRlcicpO1xuICAgICAgZmlsbDogJGhvdmVyLXByaW1hcnk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2xhYmVsLS1ib2xkIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAge1xuICAgIEBpbmNsdWRlIGxheWVyKCdvdmVybGF5Jyk7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiByZW0oMjA4cHgpO1xuICAgIG1heC13aWR0aDogcmVtKDI4OHB4KTtcbiAgICBiYWNrZ3JvdW5kOiAkaW52ZXJzZS0wMjtcbiAgICBtYXJnaW4tdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTAyO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDJweCk7XG4gICAgei1pbmRleDogeignZmxvYXRpbmcnKTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgY29sb3I6ICRpbnZlcnNlLTAxO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggJGludmVyc2UtMDIsIGluc2V0IDAgMCAwIDJweCAkdWktYmFja2dyb3VuZDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDc7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWJ0bjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRpbnZlcnNlLWZvY3VzLXVpO1xuICAgICAgb3V0bGluZS1jb2xvcjogJGludmVyc2UtMDI7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWxpbmsge1xuICAgICAgY29sb3I6ICRpbnZlcnNlLWxpbms7XG4gICAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCAkaW52ZXJzZS1mb2N1cy11aTtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgICB9XG5cbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1saW5rO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgICBib3JkZXItbGVmdDogJGNhcmV0LXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6ICRjYXJldC1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXNpemUgc29saWQgJGludmVyc2UtMDI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiBjYWxjKCN7JGNhcmV0LXNpemUgKiAtMX0gKyAxcHgpO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgY29udGVudDogJyc7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gICAgJltkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdsZWZ0J10ge1xuICAgICAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2NhcmV0IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIC8vIGxlZnQgcG9zaXRpb24gaGFzIGFuIGFkZGl0aW9uYWwgc3BhY2UgYmV0d2VlbiBjYXJldCBhbmQgdG9vbHRpcFxuICAgICAgICByaWdodDogY2FsYygjeyRjYXJldC1zaXplICogLTF9ICsgMXB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0ndG9wJ10ge1xuICAgICAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2NhcmV0IHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IGNhbGMoI3skY2FyZXQtc2l6ZSAqIC0xfSArIDFweCk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJltkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdyaWdodCddIHtcbiAgICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgICAgIGxlZnQ6IGNhbGMoI3skY2FyZXQtc2l6ZSAqIC0xfSArIDFweCk7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9faGVhZGluZyB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS10eXBlLXN0eWxlKCdoZWFkaW5nLTAxJyk7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tc2hvd24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gVG9vbHRpcCBEZWZpbml0aW9uXG4gIC8qIGJlZ2luIGxlZ2FjeSBkZWZpbml0aW9uIHRvb2x0aXAgVE9ETzogZGVwcmVjYXRlICovXG4gIEBpbmNsdWRlIHRvb2x0aXAtLWRlZmluaXRpb24tLWxlZ2FjeTtcbiAgLyogZW5kIGxlZ2FjeSBkZWZpbml0aW9uIHRvb2x0aXAgKi9cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbi4jeyRwcmVmaXh9LS10b29sdGlwLS1hMTF5IHtcbiAgICAvLyBXcmFwcGluZyBlbGVtZW50IHNldCB0byBpbmxpbmUgc2luY2UgdGhlIHRvb2x0aXAgaXNuJ3QgY29udGFpbmVkIHdpdGhpbiB0aGUgdHJpZ2dlciAoYWZmZWN0cyBjZW50ZXIgYW5kIGVuZCBhbGlnbm1lbnRzKVxuICAgIC8vIEFsc28gYWxsb3dzIGZvciBEZWZpbml0aW9uIFRvb2x0aXAgdG8gYmUgdXNlZCB3aXRoaW4gYSBwYXJhZ3JhcGggb2YgdGV4dCBhcyBkZWZpbmVkIGluIHRoZSB1c2FnZSBndWlkZWxpbmVzXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cblxuICAvLyBkZWZhdWx0IGJ1dHRvbnMgaW4gU2FmYXJpIGFyZSBhZGRpbmcgYSBzbWFsbCBtYXJnaW4sIGFmZmVjdGluZyB0b29sdGlwIHBsYWNlbWVudFxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbiBidXR0b24uI3skcHJlZml4fS0tdG9vbHRpcC0tYTExeSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBDU1Mgb25seSB0b29sdGlwXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXItLWRlZmluaXRpb24ge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG4gICAgYm9yZGVyLWJvdHRvbTogcmVtKDFweCkgZG90dGVkICRpbnRlcmFjdGl2ZS0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXItLWRlZmluaXRpb24uI3skcHJlZml4fS0tdG9vbHRpcC0tdG9wIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS10cmlnZ2VyKCdkZWZpbml0aW9uJywgJ3RvcCcpO1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnZGVmaW5pdGlvbicsICd0b3AnLCAnc3RhcnQnKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdkZWZpbml0aW9uJywgJ3RvcCcsICdzdGFydCcpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnZGVmaW5pdGlvbicsICd0b3AnLCAnY2VudGVyJyk7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hbGlnbi1lbmQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdkZWZpbml0aW9uJywgJ3RvcCcsICdlbmQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyLS1kZWZpbml0aW9uLiN7JHByZWZpeH0tLXRvb2x0aXAtLWJvdHRvbSB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tdHJpZ2dlcignZGVmaW5pdGlvbicsICdib3R0b20nKTtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2RlZmluaXRpb24nLCAnYm90dG9tJywgJ3N0YXJ0Jyk7XG5cbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWFsaWduLXN0YXJ0IHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnZGVmaW5pdGlvbicsICdib3R0b20nLCAnc3RhcnQnKTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2RlZmluaXRpb24nLCAnYm90dG9tJywgJ2NlbnRlcicpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tZW5kIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnZGVmaW5pdGlvbicsICdib3R0b20nLCAnZW5kJyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVG9vbHRpcCBJY29uXG5cbiAgLyogYmVnaW4gdG9vbHRpcCBpY29uIChUT0RPOiBkZXByZWNhdGUpICovXG4gIEBpbmNsdWRlIHRvb2x0aXAtLWljb24tLWxlZ2FjeTtcbiAgLyogZW5kIGxlZ2FjeSB0b29sdGlwIGljb24gKi9cblxuICAvLyBJY29uIENTUyBvbmx5IHRvb2x0aXBcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXIge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkaWNvbi0wMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwLS10b3Age1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXRyaWdnZXIoJ2ljb24nLCAndG9wJyk7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3RvcCcsICdjZW50ZXInKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3RvcCcsICdzdGFydCcpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICd0b3AnLCAnY2VudGVyJyk7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hbGlnbi1lbmQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3RvcCcsICdlbmQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwLS1yaWdodCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tdHJpZ2dlcignaWNvbicsICdyaWdodCcpO1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICdyaWdodCcsICdjZW50ZXInKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3JpZ2h0JywgJ3N0YXJ0Jyk7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hbGlnbi1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3JpZ2h0JywgJ2NlbnRlcicpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tZW5kIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICdyaWdodCcsICdlbmQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwLS1ib3R0b20ge1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXRyaWdnZXIoJ2ljb24nLCAnYm90dG9tJyk7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2JvdHRvbScsICdjZW50ZXInKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2JvdHRvbScsICdzdGFydCcpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICdib3R0b20nLCAnY2VudGVyJyk7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hbGlnbi1lbmQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2JvdHRvbScsICdlbmQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwLS1sZWZ0IHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS10cmlnZ2VyKCdpY29uJywgJ2xlZnQnKTtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnbGVmdCcsICdjZW50ZXInKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2xlZnQnLCAnc3RhcnQnKTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnbGVmdCcsICdjZW50ZXInKTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWFsaWduLWVuZCB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnbGVmdCcsICdlbmQnKTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndG9vbHRpcCcpIHtcbiAgQGluY2x1ZGUgdG9vbHRpcDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUYWJzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXllcic7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcblxuLy8vIFRhYnMgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHRhYnNcbkBtaXhpbiB0YWJzIHtcbiAgLiN7JHByZWZpeH0tLXRhYnMge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBtaW4taGVpZ2h0OiByZW0oNDBweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAwICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wNDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXI6Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXI6YWN0aXZlIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy10cmlnZ2VyIHN2ZyB7XG4gICAgd2lkdGg6IHJlbSgxMnB4KTtcbiAgICBoZWlnaHQ6IHJlbSg3cHgpO1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy10cmlnZ2VyLS1vcGVuOmZvY3VzLFxuICAuI3skcHJlZml4fS0tdGFicy10cmlnZ2VyLS1vcGVuOmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlci0tb3BlbiB7XG4gICAgYmFja2dyb3VuZDogJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlci0tb3BlbiBzdmcge1xuICAgIEBpbmNsdWRlIHJvdGF0ZSgtMTgwZGVnLCAkZHVyYXRpb24tLWZhc3QtMDEsIDUwJSA0NSUpO1xuICB9XG5cbiAgLy8gVGhlcmUgaXMgb25seSBhIGRpZmZlcmVuY2UgaW4gdGFiIGNvbG9yIHdoZW4gaW4gbW9iaWxlL2Ryb3Bkb3duIHZpZXdcbiAgLiN7JHByZWZpeH0tLXRhYnMtLWxpZ2h0LiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlci10ZXh0IHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgcGFkZGluZy10b3A6IDJweDtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXItdGV4dDpob3ZlciB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlci10ZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdiB7XG4gICAgQGluY2x1ZGUgbGF5ZXIoJ292ZXJsYXknKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgei1pbmRleDogeignZHJvcGRvd24nKTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDE7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBtYXgtaGVpZ2h0OiA2MDBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgei1pbmRleDogYXV0bztcbiAgICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LS1oaWRkZW4ge1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEl0ZW1cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgJiArIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMnB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0gLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBJdGVtIEhvdmVyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtOmhvdmVyOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLXNlbGVjdGVkKSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW06aG92ZXI6bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgYm94LXNoYWRvdzogMCAtMXB4IDAgJGhvdmVyLXVpO1xuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSXRlbSBEaXNhYmxlZFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkLFxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkOmhvdmVyIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluayB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEl0ZW0gU2VsZWN0ZWRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLXNlbGVjdGVkOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkKSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbmsge1xuICAgICAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2hlYWRpbmctMDEnKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRpbnRlcmFjdGl2ZS0wMTtcbiAgICAgIH1cblxuICAgICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rOmZvY3VzLFxuICAgICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRpbnRlcmFjdGl2ZS0wMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIExpbmtcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBhLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcGFkZGluZzogJGNhcmJvbi0tc3BhY2luZy0wNCAwO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMnB4KTtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGxpbmUtaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJHRhYi11bmRlcmxpbmUtY29sb3I7XG4gICAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTAzICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgICB3aWR0aDogcmVtKDE2MHB4KTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjphY3RpdmUge1xuICAgICAgICB3aWR0aDogcmVtKDE2MHB4KTtcbiAgICAgICAgcGFkZGluZzogJGNhcmJvbi0tc3BhY2luZy0wMyAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyAgTGluayBIb3ZlclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbTpob3Zlcjpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1zZWxlY3RlZCk6bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tZGlzYWJsZWQpXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgICBib3JkZXItYm90dG9tOiAkdGFiLXVuZGVybGluZS1jb2xvci1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vICBMaW5rIERpc2FibGVkXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZCAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbmsge1xuICAgIGNvbG9yOiAkdGFiLXRleHQtZGlzYWJsZWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYi11bmRlcmxpbmUtZGlzYWJsZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkOmhvdmVyIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluayB7XG4gICAgY3Vyc29yOiBuby1kcm9wO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWItdW5kZXJsaW5lLWRpc2FibGVkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZCAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbms6Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tZGlzYWJsZWQgYS4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluazphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYi11bmRlcmxpbmUtZGlzYWJsZWQ7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vICBMaW5rIEZvY3VzXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLXNlbGVjdGVkKTpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZCk6bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tc2VsZWN0ZWQpXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rOmZvY3VzLFxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW06bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tc2VsZWN0ZWQpOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkKTpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1zZWxlY3RlZClcbiAgICBhLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rOmFjdGl2ZSB7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTa2VsZXRvbiBzdGF0ZVxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJzLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIHdpZHRoOiByZW0oNzVweCk7XG4gICAgaGVpZ2h0OiByZW0oMTJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tdGFicy10cmlnZ2VyIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcbiAgICB3aWR0aDogcmVtKDEwMHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXIgc3ZnIHtcbiAgICBAaW5jbHVkZSBoaWRkZW47XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndGFicycpIHtcbiAgQGluY2x1ZGUgdGFicztcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuXG4vLy8gVGFnIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB0YWdcbkBtaXhpbiB0YWdzIHtcbiAgLiN7JHByZWZpeH0tLXRhZyB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnbGFiZWwtMDEnKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICBtYXJnaW46ICRjYXJib24tLXNwYWNpbmctMDI7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDE1cHgpO1xuXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICAgIEBpbmNsdWRlIHRhZy10aGVtZSgkYmctY29sb3I6ICR1aS0wMywgJHRleHQtY29sb3I6ICR0ZXh0LTAxKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1yZWQge1xuICAgIEBpbmNsdWRlIHRhZy10aGVtZSgkaWJtLWNvbG9yX19yZWQtMjAsICRpYm0tY29sb3JfX3JlZC03MCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1tYWdlbnRhIHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoJGlibS1jb2xvcl9fbWFnZW50YS0yMCwgJGlibS1jb2xvcl9fbWFnZW50YS03MCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1wdXJwbGUge1xuICAgIEBpbmNsdWRlIHRhZy10aGVtZSgkaWJtLWNvbG9yX19wdXJwbGUtMjAsICRpYm0tY29sb3JfX3B1cnBsZS03MCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1ibHVlIHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoJGlibS1jb2xvcl9fYmx1ZS0yMCwgJGlibS1jb2xvcl9fYmx1ZS03MCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1jeWFuIHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoJGlibS1jb2xvcl9fY3lhbi0yMCwgJGlibS1jb2xvcl9fY3lhbi03MCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS10ZWFsIHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoJGlibS1jb2xvcl9fdGVhbC0yMCwgJGlibS1jb2xvcl9fdGVhbC03MCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1ncmVlbiB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKCRpYm0tY29sb3JfX2dyZWVuLTIwLCAkaWJtLWNvbG9yX19ncmVlbi03MCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1ncmF5IHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoJGlibS1jb2xvcl9fZ3JheS0yMCwgJGlibS1jb2xvcl9fZ3JheS0xMDApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZy0tY29vbC1ncmF5IHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoJGlibS1jb2xvcl9fY29vbC1ncmF5LTIwLCAkaWJtLWNvbG9yX19jb29sLWdyYXktMTAwKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWctLXdhcm0tZ3JheSB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKCRpYm0tY29sb3JfX3dhcm0tZ3JheS0yMCwgJGlibS1jb2xvcl9fd2FybS1ncmF5LTEwMCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1kaXNhYmxlZCB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKCRpYm0tY29sb3JfX2dyYXktMTAsICRpYm0tY29sb3JfX2dyYXktMzApO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxuXG4gIC8vIHRhZ3MgdXNlZCBmb3IgZmlsdGVyaW5nXG4gIC4jeyRwcmVmaXh9LS10YWctLWZpbHRlciB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKCRpbnRlcmFjdGl2ZS0wMiwgJGludmVyc2UtMDEpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMnB4KTsgLy8gQWxpZ24gd2l0aCBob3ZlciBjaXJjbGUgb2YgWCBidXR0b25cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWctLWZpbHRlciA+IHN2ZyB7XG4gICAgZmlsbDogJGludmVyc2UtMDE7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbSg0cHgpO1xuICAgIHBhZGRpbmc6IHJlbSgycHgpO1xuICAgIHdpZHRoOiByZW0oMjBweCk7XG4gICAgaGVpZ2h0OiByZW0oMjBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1maWx0ZXIgPiBzdmc6aG92ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItc2Vjb25kYXJ5O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZy0tZmlsdGVyOmZvY3VzLFxuICAuI3skcHJlZml4fS0tdGFnLS1maWx0ZXI6aG92ZXIge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1maWx0ZXI6Zm9jdXMgPiBzdmcge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRpbnZlcnNlLTAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuXG4gIC8vIFNrZWxldG9uIHN0YXRlXG4gIC4jeyRwcmVmaXh9LS10YWcuI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIHdpZHRoOiByZW0oNjBweCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCd0YWdzJykge1xuICBAaW5jbHVkZSB0YWdzO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdGFnXG5AbWl4aW4gdGFnLXRoZW1lKCRiZy1jb2xvciwgJHRleHQtY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuJGNzcy0taGVscGVyczogdHJ1ZTtcblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1oZWxwZXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uL3NlbGVjdC9zZWxlY3QnO1xuQGltcG9ydCAnLi4vdGV4dC1pbnB1dC90ZXh0LWlucHV0JztcblxuLy8vIFBhZ2luYXRpb24gc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbkBtaXhpbiBwYWdpbmF0aW9uIHtcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtY29udGFpbmVyICsgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24ge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbiAuI3skcHJlZml4fS0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRfX3dyYXBwZXIsXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQtLWlubGluZV9fd3JhcHBlciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24gLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMCAyLjVyZW0gMCAkc3BhY2luZy1tZDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjY1cmVtO1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBjYXJib24tLW1pbmktdW5pdHMoNC41KTtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbiAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkaG92ZXItdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbiAuI3skcHJlZml4fS0tc2VsZWN0X19hcnJvdyB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25cbiAgICAuI3skcHJlZml4fS0tc2VsZWN0X19pdGVtLWNvdW50XG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkc3BhY2luZy00eHMgc29saWQgJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25cbiAgICAuI3skcHJlZml4fS0tc2VsZWN0X19wYWdlLW51bWJlclxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2xlZnQsXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19sZWZ0ID4gLiN7JHByZWZpeH0tLWZvcm0taXRlbSxcbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX3JpZ2h0ID4gLiN7JHByZWZpeH0tLWZvcm0taXRlbSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2xlZnQgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX3RleHQge1xuICAgIG1hcmdpbi1yaWdodDogcmVtKDFweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fcmlnaHQgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX3RleHQge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDFweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fbGVmdCB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KCdtZCcpIHtcbiAgICAgIHBhZGRpbmc6IDAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fdGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgc3Bhbi4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX190ZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fYnV0dG9uIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIHJlbSgxNHB4KTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICR1aS0wMztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmlsbDogJHVpLTA1O1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b246Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci11aTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b24tLW5vLWluZGV4IHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b246ZGlzYWJsZWQ6aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b24tLW5vLWluZGV4OmhvdmVyIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGZpbGw6ICRkaXNhYmxlZC0wMjtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi0taW5saW5lIHtcbiAgICBoZWlnaHQ6IHJlbSg0MnB4KTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLS1pbmxpbmUgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2J1dHRvbiB7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkdWktMDM7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHVpLTAzO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLS1pbmxpbmUgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2J1dHRvbi0tZm9yd2FyZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLS1pbmxpbmUgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2J1dHRvbi0tYmFja3dhcmQge1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIHBhZGRpbmc6IDAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgfVxuXG4gIC8vIFNrZWxldG9uIHN0YXRlXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1za2VsZXRvbl9fdGV4dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygncGFnaW5hdGlvbicpIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcblxuLy8vIEFjY29yZGlvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG5AbWl4aW4gYWNjb3JkaW9uIHtcbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faXRlbSB7XG4gICAgdHJhbnNpdGlvbjogYWxsICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19oZWFkaW5nIHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRhY2NvcmRpb24tanVzdGlmeS1jb250ZW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiByZW0oNnB4KSAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiAkYWNjb3JkaW9uLWZsZXgtZGlyZWN0aW9uO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpICRkdXJhdGlvbi0tZmFzdC0wMjtcblxuICAgICY6aG92ZXI6YmVmb3JlLFxuICAgICY6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAycHgpO1xuICAgIH1cblxuICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1czpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZS1jb21wYXQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19hcnJvdyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICAvLyBXaXRob3V0IGZsZXggYmFzaXMgYW5kIGZsZXggc2hyaW5rIGJlaW5nIHNldCBoZXJlLCBvdXIgaWNvbiB3aWR0aCBjYW4gZ29cbiAgICAvLyA8MTZweCBhbmQgY2F1c2UgdGhlIGljb24gdG8gcmVuZGVyIGluIHRoZSBpbmNvcnJlY3QgYXJ0Ym9hcmQgc2l6ZVxuICAgIGZsZXg6IDAgMCAxcmVtO1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTtcbiAgICBtYXJnaW46ICRhY2NvcmRpb24tYXJyb3ctbWFyZ2luO1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgICAvLyBUT0RPOiBSVEwgcm90YXRlKDE4MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX3RpdGxlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LWxvbmctMDEnKTtcblxuICAgIG1hcmdpbjogJGFjY29yZGlvbi10aXRsZS1tYXJnaW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB6LWluZGV4OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fY29udGVudCB7XG4gICAgLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eSBmb3Igd2hlbiB0aGUgYWNjb3JkaW9uIGNsb3Nlc1xuICAgIHRyYW5zaXRpb246IGhlaWdodCBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpICRkdXJhdGlvbi0tZmFzdC0wMixcbiAgICAgIHBhZGRpbmcgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSAkZHVyYXRpb24tLWZhc3QtMDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuXG4gICAgcGFkZGluZy1yaWdodDogMjUlO1xuICAgIGhlaWdodDogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDk7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LWxvbmctMDEnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19pdGVtLS1hY3RpdmUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fY29udGVudCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wNjtcbiAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy14cztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eSBmb3Igd2hlbiB0aGUgYWNjb3JkaW9uIG9wZW5zXG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKSAkZHVyYXRpb24tLWZhc3QtMDIsXG4gICAgICAgIHBhZGRpbmctdG9wIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSkgJGR1cmF0aW9uLS1mYXN0LTAyLFxuICAgICAgICBwYWRkaW5nLWJvdHRvbSBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpICRkdXJhdGlvbi0tZmFzdC0wMjtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19hcnJvdyB7XG4gICAgICAvKnJ0bDppZ25vcmUqL1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgIGZpbGw6ICR1aS0wNTtcbiAgICB9XG4gIH1cblxuICAvLyBTa2VsZXRvbiBzdGF0ZVxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2hlYWRpbmcsXG4gIC4jeyRwcmVmaXh9LS1hY2NvcmRpb24uI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fYnV0dG9uIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2Fycm93IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmaWxsOiAkdWktMDU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faGVhZGluZzpmb2N1c1xuICAgIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2Fycm93IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX190aXRsZS4jeyRwcmVmaXh9LS1za2VsZXRvbl9fdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdhY2NvcmRpb24nKSB7XG4gIEBpbmNsdWRlIGFjY29yZGlvbjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5cbi8vLyBQcm9ncmVzcyBpbmRpY2F0b3Igc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHByb2dyZXNzLWluZGljYXRvclxuQG1peGluIHByb2dyZXNzLWluZGljYXRvciB7XG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcyB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIG1pbi13aWR0aDogN3JlbTtcbiAgICB3aWR0aDogcmVtKDEyOHB4KTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGluZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IHJlbSgxMjhweCk7XG4gICAgYm9yZGVyOiAkcHJvZ3Jlc3MtaW5kaWNhdG9yLWJhci13aWR0aDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1zdGVwIHN2ZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgaGVpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW46IDlweCAkY2FyYm9uLS1zcGFjaW5nLTAzIDAgMDtcbiAgICBmaWxsOiAkaW50ZXJhY3RpdmUtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICBtYXgtd2lkdGg6IHJlbSg4OHB4KTtcbiAgICBtYXJnaW46ICRjYXJib24tLXNwYWNpbmctMDMgMCAwIDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1sYWJlbDpob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLTAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiAwIHJlbSgxcHgpICRsaW5rLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGNvbG9yOiAkbGluay0wMTtcbiAgICBib3gtc2hhZG93OiAwIHJlbSgzcHgpIDAgMCAkbGluay0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1sYWJlbDphY3RpdmUge1xuICAgIGNvbG9yOiAkaW50ZXJhY3RpdmUtMDE7XG4gICAgYm94LXNoYWRvdzogMCByZW0oM3B4KSAwIDAgJGludGVyYWN0aXZlLTAxO1xuICB9XG5cbiAgLy9PVkVSRkxPVyBTVFlMSU5HXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1sYWJlbC1vdmVyZmxvdzpob3ZlciB+IC4jeyRwcmVmaXh9LS10b29sdGlwLFxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGFiZWwtb3ZlcmZsb3c6Zm9jdXMgfiAuI3skcHJlZml4fS0tdG9vbHRpcCB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1zdGVwIC4jeyRwcmVmaXh9LS10b29sdGlwIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbSgxMHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX190ZXh0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG5cbiAgLy9zaW5nbGUgbGluZSB0b29sdGlwXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1zdGVwIC4jeyRwcmVmaXh9LS10b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LWxvbmctMDEnKTtcbiAgICBtaW4td2lkdGg6IHJlbSgxMTVweCk7XG4gICAgd2lkdGg6IHJlbSgxMjVweCk7XG4gICAgbWluLWhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNjtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDIycHgpO1xuICAgIG1hcmdpbi10b3A6IHJlbSg0MHB4KTtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTAzICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgfVxuXG4gIC8vbXVsdGlsaW5lIHRvb2x0aXBcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAgLiN7JHByZWZpeH0tLXRvb2x0aXBfbXVsdGkge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktbG9uZy0wMScpO1xuICAgIHdpZHRoOiByZW0oMTUwcHgpO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gIH1cblxuICAvL09QVElPTkFMIEhFTFBFUiBURVhUIFNUWUxJTkdcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLW9wdGlvbmFsIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdsYWJlbC0wMScpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTA2O1xuICAgIG1hcmdpbi10b3A6IHJlbSgyOHB4KTtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAvL0NVUlJFTlQgU1RZTElOR1xuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcC0tY3VycmVudCB7XG4gICAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludGVyYWN0aXZlLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1zdGVwLS1jdXJyZW50IHN2ZyB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGZpbGw6ICRpbnRlcmFjdGl2ZS0wMTtcbiAgICBtYXJnaW4tdG9wOiByZW0oOS41cHgpO1xuICB9XG5cbiAgLy9JTkNPTVBMRVRFIFNUWUxJTkdcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAtLWluY29tcGxldGUge1xuICAgIHN2ZyB7XG4gICAgICBmaWxsOiAkdWktMDU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAzO1xuICAgIH1cbiAgfVxuXG4gIC8vQ09NUExFVEVEIFNUWUxJTkdcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAtLWNvbXBsZXRlIHtcbiAgICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGluZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW50ZXJhY3RpdmUtMDE7XG4gICAgfVxuICB9XG5cbiAgLy9pbnRlcmFjdGl2ZSBidXR0b25cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLy91bmNsaWNrYWJsZSBidXR0b25cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAtYnV0dG9uLS11bmNsaWNrYWJsZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC8vRElTQUJMRUQgU1RZTElOR1xuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcC0tZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICBzdmcge1xuICAgICAgZmlsbDogJGRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGFiZWwsXG4gICAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGFiZWw6Zm9jdXMsXG4gICAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsOmFjdGl2ZSB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGluZSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1sYWJlbC1vdmVyZmxvdzpob3ZlclxuICAgICAgfiAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvblxuICAgICAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX2JvdHRvbSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vRVJST1IgU1RZTElOR1xuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3NfX3dhcm5pbmcgPiBwYXRoIHtcbiAgICBmaWxsOiAkc3VwcG9ydC0wMTtcbiAgfVxuXG4gIC8vIFNrZWxldG9uIFN0YXRlXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGFiZWwge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIGhlaWdodDogcmVtKDEycHgpO1xuICAgIHdpZHRoOiByZW0oNDBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtLXZlcnRpY2FsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tdmVydGljYWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICBtaW4taGVpZ2h0OiA2cmVtO1xuICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIG1pbi13aWR0aDogaW5pdGlhbDtcblxuICAgIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDAuMXJlbSAwLjVyZW07XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLS12ZXJ0aWNhbCAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcC0tY3VycmVudCBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjU2M3JlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tdmVydGljYWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLS12ZXJ0aWNhbCAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcCAuYngtLXRvb2x0aXAge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tdmVydGljYWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLW9wdGlvbmFsIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIG1hcmdpbi1sZWZ0OiAyLjI1cmVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLS12ZXJ0aWNhbCAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGluZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxcHg7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygncHJvZ3Jlc3MtaW5kaWNhdG9yJykge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1pbmRpY2F0b3I7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi9saW5rL2xpbmsnO1xuXG4vLy8gQnJlYWRjcnVtYiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgYnJlYWRjcnVtYlxuQG1peGluIGJyZWFkY3J1bWIge1xuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYiB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJyZWFkY3J1bWItaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYi1pdGVtOjphZnRlciB7XG4gICAgY29udGVudDogJy8nO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1icmVhZGNydW1iLS1uby10cmFpbGluZy1zbGFzaFxuICAgIC4jeyRwcmVmaXh9LS1icmVhZGNydW1iLWl0ZW06bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJyZWFkY3J1bWItaXRlbTpsYXN0LWNoaWxkLFxuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYi1pdGVtOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYiAuI3skcHJlZml4fS0tbGluayB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1icmVhZGNydW1iLWl0ZW0gW2FyaWEtY3VycmVudD0ncGFnZSddLFxuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYi1pdGVtLiN7JHByZWZpeH0tLWJyZWFkY3J1bWItaXRlbS0tY3VycmVudFxuICAgIC4jeyRwcmVmaXh9LS1saW5rIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgY3Vyc29yOiBhdXRvO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gU2tlbGV0b24gU3RhdGVcbiAgLiN7JHByZWZpeH0tLWJyZWFkY3J1bWIuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLWxpbmsge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIHdpZHRoOiByZW0oMTAwcHgpO1xuICAgIGhlaWdodDogMXJlbTtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdicmVhZGNydW1iJykge1xuICBAaW5jbHVkZSBicmVhZGNydW1iO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbiRjc3MtLWhlbHBlcnM6IHRydWU7XG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLWhlbHBlcnMnO1xuQGltcG9ydCAnLi4vYnV0dG9uL2J1dHRvbic7XG5AaW1wb3J0ICcuLi9jaGVja2JveC9jaGVja2JveCc7XG5AaW1wb3J0ICcuLi9yYWRpby1idXR0b24vcmFkaW8tYnV0dG9uJztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5AaW1wb3J0ICcuLi9vdmVyZmxvdy1tZW51L292ZXJmbG93LW1lbnUnO1xuQGltcG9ydCAnLi4vc2VhcmNoL3NlYXJjaCc7XG5cbi8vLyBUb29sYmFyIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB0b29sYmFyXG5AbWl4aW4gdG9vbGJhciB7XG4gIC4jeyRwcmVmaXh9LS10b29sYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMXJlbSAwO1xuXG4gICAgPiBkaXYge1xuICAgICAgbWFyZ2luOiAwIHJlbSg0cHgpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X19pY29uIHtcbiAgICAgIGZpbGw6ICR0ZXh0LTAyO1xuICAgICAgdHJhbnNpdGlvbjogZmlsbCA1MG1zICRjYXJib24tLXN0YW5kYXJkLWVhc2luZztcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllciB7XG4gICAgICBmaWxsOiAkdGV4dC0wMjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMTc1bXMgJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nO1xuICAgICAgdG9wOiByZW0oOHB4KTtcbiAgICAgIGxlZnQ6IHJlbSg2cHgpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLS1hY3RpdmUge1xuICAgICAgd2lkdGg6IHJlbSgyNTBweCk7XG5cbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgdG9wOiByZW0oOXB4KTtcbiAgICAgIH1cblxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgICAgIH1cblxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1vcGVuID4gLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX2ljb24ge1xuICAgICAgZmlsbDogJGJyYW5kLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaCB7XG4gICAgd2lkdGg6IDEuOHJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMTc1bXMgJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoX19idG4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgd2lkdGg6IHJlbSgzMnB4KTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1maWx0ZXItaWNvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1tZW51X190aXRsZSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnY2FwdGlvbi0wMScpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZzogMC41cmVtIDEuMjVyZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1tZW51X19vcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxLjI1cmVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItbWVudV9fZGl2aWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLWdyb3VwIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2g6bm90KC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC0tYWN0aXZlKVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndG9vbGJhcicpIHtcbiAgQGluY2x1ZGUgdG9vbGJhcjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaW1lIFBpY2tlclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5cbi8vLyBUaW1lIHBpY2tlciBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdGltZS1waWNrZXJcbkBtaXhpbiB0aW1lLXBpY2tlciB7XG4gIC4jeyRwcmVmaXh9LS10aW1lLXBpY2tlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGltZS1waWNrZXJbZGF0YS1pbnZhbGlkXSAuI3skcHJlZml4fS0tdGltZS1waWNrZXJfX2lucHV0LWZpZWxkIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdpbnZhbGlkJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGltZS1waWNrZXJfX3NlbGVjdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBtYXJnaW46IDAgJGNhcmJvbi0tc3BhY2luZy0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGltZS1waWNrZXJfX2lucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGltZS1waWNrZXIgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg0OHB4KTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aW1lLXBpY2tlcl9faW5wdXQtZmllbGQge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnY29kZS0wMicpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogNC44NzVyZW07XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgdHJhbnNpdGlvbjogb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndGltZS1waWNrZXInKSB7XG4gIEBpbmNsdWRlIHRpbWUtcGlja2VyO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNsaWRlclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5ZXInO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vZm9ybS9mb3JtJztcbkBpbXBvcnQgJy4uL3RleHQtaW5wdXQvdGV4dC1pbnB1dCc7XG5cbi8vLyBTbGlkZXIgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHNsaWRlclxuQG1peGluIHNsaWRlciB7XG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgbWF4LXdpZHRoOiByZW0oNjQwcHgpO1xuICAgIG1pbi13aWR0aDogcmVtKDIwMHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3JhbmdlLWxhYmVsIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdjb2RlLTAyJyk7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3RyYWNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oMnB4KTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDM7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3RyYWNrOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IHJlbSg0cHgpO1xuICAgIHdpZHRoOiByZW0oMnB4KTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgdG9wOiByZW0oLTVweCk7XG4gICAgYmFja2dyb3VuZDogJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNsaWRlcl9fZmlsbGVkLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oMnB4KTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3RodW1iIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiByZW0oMTRweCk7XG4gICAgd2lkdGg6IHJlbSgxNHB4KTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB0cmFuc3BhcmVudCwgaW5zZXQgMCAwIDAgMnB4IHRyYW5zcGFyZW50O1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgYm94LXNoYWRvdyAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB6LWluZGV4OiAzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAvLyAyMHB4IC8gMTRweCA9IDEuNDI4NTcxNDI4NlxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS40Mjg1NzE0Mjg2KTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIDIwcHggLyAxNHB4ID0gMS40Mjg1NzE0Mjg2XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjQyODU3MTQyODYpO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRpbnRlcmFjdGl2ZS0wMSwgaW5zZXQgMCAwIDAgM3B4ICR1aS0wMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnRlcmFjdGl2ZS0wMTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjQyODU3MTQyODYpO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRpbnRlcmFjdGl2ZS0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2xpZGVyX19pbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItdGV4dC1pbnB1dCxcbiAgLiN7JHByZWZpeH0tc2xpZGVyLXRleHQtaW5wdXQge1xuICAgIHdpZHRoOiByZW0oNjRweCk7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG5cbiAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2xpZGVyX190aHVtYjpmb2N1cyB+IC4jeyRwcmVmaXh9LS1zbGlkZXJfX2ZpbGxlZC10cmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGludGVyYWN0aXZlLTAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLiN7JHByZWZpeH0tLWxhYmVsLS1kaXNhYmxlZFxuICAgIH4gLiN7JHByZWZpeH0tLXNsaWRlci1jb250YWluZXJcbiAgICA+IC4jeyRwcmVmaXh9LS1zbGlkZXJfX3JhbmdlLWxhYmVsIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNsaWRlci0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLXNsaWRlcl9fdGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMztcblxuICAgICY6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDM7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkdWktMDM7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2xpZGVyLS1kaXNhYmxlZCAuI3skcHJlZml4fS0tc2xpZGVyX190cmFjayxcbiAgLiN7JHByZWZpeH0tLXNsaWRlci0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLXNsaWRlcl9fZmlsbGVkLXRyYWNrLFxuICAuI3skcHJlZml4fS0tc2xpZGVyLS1kaXNhYmxlZFxuICAgIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3RodW1iOmZvY3VzXG4gICAgfiAuI3skcHJlZml4fS0tc2xpZGVyX19maWxsZWQtdHJhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMztcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNsaWRlci0tZGlzYWJsZWRcbiAgICB+IC4jeyRwcmVmaXh9LS1mb3JtLWl0ZW1cbiAgICAuI3skcHJlZml4fS0tc2xpZGVyLXRleHQtaW5wdXQsXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItLWRpc2FibGVkIH4gLiN7JHByZWZpeH0tLXNsaWRlci10ZXh0LWlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtMDE7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgfVxuICB9XG5cbiAgLy8gU2tlbGV0b24gc3RhdGVcbiAgLiN7JHByZWZpeH0tLXNsaWRlci1jb250YWluZXIuI3skcHJlZml4fS0tc2tlbGV0b25cbiAgICAuI3skcHJlZml4fS0tc2xpZGVyX19yYW5nZS1sYWJlbCB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgd2lkdGg6IHJlbSgyMHB4KTtcbiAgICBoZWlnaHQ6IHJlbSgxMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItY29udGFpbmVyLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLXNsaWRlcl9fdHJhY2sge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItY29udGFpbmVyLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLXNsaWRlcl9fdGh1bWIge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnc2xpZGVyJykge1xuICBAaW5jbHVkZSBzbGlkZXI7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGlsZXNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheWVyJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcblxuLy8vIFRpbGUgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHRpbGVcbkBtaXhpbiB0aWxlIHtcbiAgLiN7JHByZWZpeH0tLXRpbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1pbi13aWR0aDogOHJlbTtcbiAgICBtaW4taGVpZ2h0OiA0cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS0tY2xpY2thYmxlLFxuICAuI3skcHJlZml4fS0tdGlsZS0tc2VsZWN0YWJsZSxcbiAgLiN7JHByZWZpeH0tLXRpbGUtLWV4cGFuZGFibGUge1xuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRob3Zlci11aTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZWNrbWFyayB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtLWNsaWNrYWJsZSxcbiAgLiN7JHByZWZpeH0tLXRpbGUtLWV4cGFuZGFibGUge1xuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLS1zZWxlY3RhYmxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZWNrbWFyayxcbiAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZXZyb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZV9fY2hlY2ttYXJrIHtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgdG9wOiAxcmVtO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICBzdmcge1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgZmlsbDogJGljb24tMDI7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZXZyb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDAuNXJlbTtcbiAgICByaWdodDogMC41cmVtO1xuICAgIGhlaWdodDogMXJlbTtcblxuICAgIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICAgIGZpbGw6ICR1aS0wNTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtLWV4cGFuZGFibGUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAkZHVyYXRpb24tLW1vZGVyYXRlLTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS1jb250ZW50X19hYm92ZS10aGUtZm9sZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS1jb250ZW50X19iZWxvdy10aGUtZm9sZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIHZpc2liaWxpdHkgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS0taXMtZXhwYW5kZWQge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAuI3skcHJlZml4fS0tdGlsZV9fY2hldnJvbiBzdmcge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRpbGUtY29udGVudF9fYmVsb3ctdGhlLWZvbGQge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgICB2aXNpYmlsaXR5ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLS1pcy1zZWxlY3RlZCB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkICRpbnRlcmFjdGl2ZS0wMjtcbiAgICBvdXRsaW5lLW9mZnNldDogLTFweDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLS1pcy1zZWxlY3RlZCAuI3skcHJlZml4fS0tdGlsZV9fY2hlY2ttYXJrIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtaW5wdXQ6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXRpbGVcbiAgICA+IC4jeyRwcmVmaXh9LS10aWxlX19jaGVja21hcmtcbiAgICBzdmcge1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLWNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBoaWRkZW47XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndGlsZScpIHtcbiAgQGluY2x1ZGUgdGlsZTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3NrZWxldG9uLXRleHQnKSB7XG4gIC4jeyRwcmVmaXh9LS1za2VsZXRvbl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2tlbGV0b25fX2hlYWRpbmcge1xuICAgIGhlaWdodDogMS41cmVtO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG5AaW5jbHVkZSBleHBvcnRzKCdza2VsZXRvbi1pY29uJykge1xuICAuI3skcHJlZml4fS0taWNvbi0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogcmVtKDE2cHgpO1xuICAgIGhlaWdodDogcmVtKDE2cHgpO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG5AaW5jbHVkZSBleHBvcnRzKCdza2VsZXRvbi1wbGFjZWhvbGRlcicpIHtcbiAgLiN7JHByZWZpeH0tLXNrZWxldG9uX19wbGFjZWhvbGRlciB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgaGVpZ2h0OiByZW0oMTAwcHgpO1xuICAgIHdpZHRoOiByZW0oMTAwcHgpO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGtleWZyYW1lcyBzdHJva2Uge1xuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uL2xvYWRpbmcvbG9hZGluZyc7XG5AaW1wb3J0ICdrZXlmcmFtZXMnO1xuXG4vLy8gSW5saW5lIGxvYWRpbmcgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGlubGluZS1sb2FkaW5nXG5AbWl4aW4gaW5saW5lLWxvYWRpbmcge1xuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMnJlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLiN7JHByZWZpeH0tLWxvYWRpbmdfX3N2ZyBjaXJjbGUge1xuICAgICAgc3Ryb2tlLXdpZHRoOiAxMjtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tbG9hZGluZ19fc3Ryb2tlIHtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA5OTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX3RleHQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX2FuaW1hdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX2NoZWNrbWFyay1jb250YWluZXIge1xuICAgIGZpbGw6ICRpbnRlcmFjdGl2ZS0wNDtcblxuICAgIC8vIEZvciBkZXByZWNhdGVkIG9sZGVyIG1hcmt1cFxuICAgICYuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX3N2ZyB7XG4gICAgICB3aWR0aDogMC43NXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMC43NXJlbTtcbiAgICB9XG5cbiAgICAmW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX2NoZWNrbWFyayB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6ICRpbnRlcmFjdGl2ZS0wNDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgIHN0cm9rZS13aWR0aDogMS44O1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEyO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAxMjtcbiAgICBhbmltYXRpb24tbmFtZTogc3Ryb2tlO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4yNXM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmctLWVycm9yIHtcbiAgICBmaWxsOiAkc3VwcG9ydC0wMTtcbiAgICB3aWR0aDogcmVtKDE2cHgpO1xuICAgIGhlaWdodDogcmVtKDE2cHgpO1xuXG4gICAgJltoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxvYWRpbmctLXNtYWxsIC4jeyRwcmVmaXh9LS1pbmxpbmUtbG9hZGluZ19fc3ZnIHtcbiAgICBzdHJva2U6ICRpbnRlcmFjdGl2ZS0wNDtcbiAgfVxuICAvKiBJZiBJRTExIERvbid0IHNob3cgY2hlY2sgYW5pbWF0aW9uICovXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbG9hZGluZ19fY2hlY2ttYXJrLWNvbnRhaW5lciB7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWlubGluZS1sb2FkaW5nX19jaGVja21hcmsge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gICAgICBzdHJva2UtZGFzaGFycmF5OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdpbmxpbmUtbG9hZGluZycpIHtcbiAgQGluY2x1ZGUgaW5saW5lLWxvYWRpbmc7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFnaW5hdGlvbiBOYXZcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2NvbG9ycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdGhlbWUnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuXG4vLy8gUHNldWRvIHVuZGVybGluZVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBwYWdpbmF0aW9uLW5hdlxuQG1peGluIHBzZXVkby11bmRlcmxpbmUoKSB7XG4gICY6bm90KC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fcGFnZS0tZGlyZWN0aW9uKSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludGVyYWN0aXZlLTAxO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wMjtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB3aWR0aCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fcGFnZS0tYWN0aXZlICsgJjo6YWZ0ZXIsXG4gICYuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3BhZ2UtLWFjdGl2ZTo6YWZ0ZXIge1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gI3skY2FyYm9uLS1zcGFjaW5nLTA1LzJ9KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG59XG5cbi8vLyBQYWdpbmF0aW9uIG5hdiBiYXNlIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBwYWdpbmF0aW9uLW5hdlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0ZXh0LWNvbG9yIFskdGV4dC0wMl1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdGV4dC1jb2xvci1hY3RpdmUgWyR0ZXh0LTAyXVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWNvbG9yLWhvdmVyIFskaG92ZXItdWldXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtY29sb3ItYWN0aXZlIFtpbml0aWFsXVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZm9udC13ZWlnaHQgWzQwMF1cbi8vLyBAcGFyYW0ge051bWJlcn0gJGl0ZW0tcGFkZGluZyBbMF1cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJ1dHRvbi1taW4td2lkdGggWyRjYXJib24tLXNwYWNpbmctMDldXG4vLy8gQHBhcmFtIHtWYWx1ZX0gJGJ1dHRvbi1wYWRkaW5nIFsxLjA2MjVyZW0gJGNhcmJvbi0tc3BhY2luZy0wMl1cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJ1dHRvbi1kaXJlY3Rpb24tc2l6ZSBbJGNhcmJvbi0tc3BhY2luZy0wOV1cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNlbGVjdC1pY29uLXRvcC1wb3NpdGlvbiBbJGNhcmJvbi0tc3BhY2luZy0wNV1cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNlbGVjdC1pY29uLWxlZnQtcG9zaXRpb24gWyRjYXJib24tLXNwYWNpbmctMDVdXG5AbWl4aW4gcGFnaW5hdGlvbi1uYXYoXG4gICR0ZXh0LWNvbG9yOiAkdGV4dC0wMixcbiAgJHRleHQtY29sb3ItYWN0aXZlOiAkdGV4dC0wMixcbiAgJGJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRob3Zlci11aSxcbiAgJGJhY2tncm91bmQtY29sb3ItYWN0aXZlOiBpbml0aWFsLFxuICAkZm9udC13ZWlnaHQ6IDQwMCxcbiAgJGl0ZW0tcGFkZGluZzogMCxcbiAgJGJ1dHRvbi1taW4td2lkdGg6ICRjYXJib24tLXNwYWNpbmctMDksXG4gICRidXR0b24tcGFkZGluZzogMS4wNjI1cmVtICRjYXJib24tLXNwYWNpbmctMDIsXG4gICRidXR0b24tZGlyZWN0aW9uLXNpemU6ICRjYXJib24tLXNwYWNpbmctMDksXG4gICRzZWxlY3QtaWNvbi10b3AtcG9zaXRpb246ICRjYXJib24tLXNwYWNpbmctMDUsXG4gICRzZWxlY3QtaWNvbi1sZWZ0LXBvc2l0aW9uOiAkY2FyYm9uLS1zcGFjaW5nLTA1XG4pIHtcbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2IHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX2xpc3Qge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19saXN0LWl0ZW0ge1xuICAgIHBhZGRpbmc6ICRpdGVtLXBhZGRpbmc7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3BhZ2Uge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQoJHdpZHRoOiBmYWxzZSk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtaW4td2lkdGg6ICRidXR0b24tbWluLXdpZHRoO1xuICAgIG91dGxpbmU6IDA7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IsIGNvbG9yO1xuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvci1ob3ZlcjtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkLFxuICAgICYuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3BhZ2UtLWRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBjb2xvcjogcmdiYSgkdGV4dC1jb2xvciwgMC41KTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBwc2V1ZG8tdW5kZXJsaW5lKCk7XG5cbiAgICAmLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19wYWdlLS1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3ItYWN0aXZlO1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLWFjdGl2ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9faWNvbiB7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3BhZ2UtLWRpcmVjdGlvbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogJGJ1dHRvbi1kaXJlY3Rpb24tc2l6ZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICB3aWR0aDogJGJ1dHRvbi1kaXJlY3Rpb24tc2l6ZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fc2VsZWN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3BhZ2UtLXNlbGVjdCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXgtaGVpZ2h0OiAkYnV0dG9uLW1pbi13aWR0aDtcbiAgICB0ZXh0LWluZGVudDogY2FsYyg1MCUgLSA0LjVweCk7XG4gICAgLy8gT3ZlcnJpZGUgc29tZSBGaXJlZm94IHVzZXItYWdlbnQgc3R5bGVzXG4gICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fc2VsZWN0LWljb24td3JhcHBlciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBwc2V1ZG8tdW5kZXJsaW5lKCk7XG5cbiAgICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3BhZ2UtLWFjdGl2ZSArICYge1xuICAgICAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19zZWxlY3QtaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19zZWxlY3QtaWNvbiB7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAjeyRzZWxlY3QtaWNvbi10b3AtcG9zaXRpb24vMn0pO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gI3skc2VsZWN0LWljb24tdG9wLXBvc2l0aW9uLzJ9KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fYWNjZXNzaWJpbGl0eS1sYWJlbCB7XG4gICAgQGluY2x1ZGUgaGlkZGVuKCk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygncGFnaW5hdGlvbi1uYXYnKSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tbmF2O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9mdW5jdGlvbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1jbGFzc2VzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAndGhlbWUnO1xuQGltcG9ydCAnZnVuY3Rpb25zJztcblxuLy8vIFVJIHNoZWxsIGhlYWRlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuQG1peGluIGNhcmJvbi1oZWFkZXIge1xuICAuI3skcHJlZml4fS0taGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogbWluaS11bml0cyg2KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTAxO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2hlbGwtaGVhZGVyLWJvcmRlci0wMTtcbiAgICB6LWluZGV4OiB6KCdoZWFkZXInKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX2FjdGlvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KCk7XG4gICAgd2lkdGg6IG1pbmktdW5pdHMoNik7XG4gICAgaGVpZ2h0OiBtaW5pLXVuaXRzKDYpO1xuICAgIGJvcmRlcjogcmVtKDJweCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIsXG4gICAgICBib3JkZXItY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uXG4gICAgPiBzdmcuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1tZW51LXBhbmVsLWNvbGxhcHNlLWljb24sXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX2FjdGlvbi0tYWN0aXZlXG4gICAgPiBzdmcuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1tZW51LXBhbmVsLWV4cGFuZC1pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uLS1hY3RpdmVcbiAgICA+IHN2Zy4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLW1lbnUtcGFuZWwtY29sbGFwc2UtaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uXG4gICAgPiBzdmcuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1tZW51LXBhbmVsLWNvbGxhcHNlLWljb24sXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX2FjdGlvbi0tYWN0aXZlXG4gICAgPiBzdmcuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1tZW51LXBhbmVsLWV4cGFuZC1pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uLS1hY3RpdmVcbiAgICA+IHN2Zy4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLW1lbnUtcGFuZWwtY29sbGFwc2UtaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTA0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uLS1hY3RpdmUge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHNoZWxsLWhlYWRlci1ib3JkZXItMDE7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHNoZWxsLWhlYWRlci1ib3JkZXItMDE7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzaGVsbC1oZWFkZXItYmctMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19hY3Rpb246Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHNoZWxsLWhlYWRlci1mb2N1cztcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLWhlYWRlci1iZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX2FjdGlvbiA+IHN2ZyB7XG4gICAgZmlsbDogJHNoZWxsLWhlYWRlci1pY29uLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10cmlnZ2VyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgtOHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdHJpZ2dlciA+IHN2ZyB7XG4gICAgZmlsbDogJHNoZWxsLWhlYWRlci1pY29uLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10cmlnZ2VyOmhvdmVyIHtcbiAgICBmaWxsOiAkc2hlbGwtaGVhZGVyLWJnLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10b2dnbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10b2dnbGVfX2hpZGRlbiB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KCdsZycpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBIZWFkZXIgLSBOYW1lXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX25hbWUge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgbWluaS11bml0cyg0KSAwIG1pbmktdW5pdHMoMik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGJvcmRlcjogcmVtKDJweCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMjtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX25hbWU6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHNoZWxsLWhlYWRlci1mb2N1cztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX25hbWUtLXByZWZpeCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0taGVhZGVyX19uYW1lLFxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbmFtZTpob3ZlciB7XG4gICAgY29sb3I6ICRzaGVsbC1oZWFkZXItdGV4dC0wMTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSGVhZGVyIC0gTmF2aWdhdGlvblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX25hdiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cygyKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgaGVpZ2h0OiByZW0oMjRweCk7XG4gICAgICB3aWR0aDogcmVtKDFweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJvcmRlci0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWJhcltyb2xlPSdtZW51YmFyJ10ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbVtyb2xlPSdtZW51aXRlbSddIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICRzaGVsbC1oZWFkZXItdGV4dC0wMjtcbiAgICBwYWRkaW5nOiAwIG1pbmktdW5pdHMoMik7XG4gICAgLy8gVXNlZCBmb3IgbGlua3MgdGhhdCBhcmUgZGlyZWN0bHkgaW4gdGhlIG1lbnViYXIgdG8gc3BhbiB0aGUgZnVsbCBoZWlnaHRcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLy8gVGV4dCBzdHlsZXNcbiAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0oMThweCk7XG4gICAgLy8gUmVzZXQgbGluayBzdHlsZXMgYW5kIG1ha2Ugc3VyZSB0aGUgdGV4dCBpc24ndCBzZWxlY3RhYmxlXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC8vIFVzZWQgZm9yIGZvY3VzIHN0eWxlc1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyLFxuICAgICAgYm9yZGVyLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiwgY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyO1xuICB9XG5cbiAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbVtyb2xlPSdtZW51aXRlbSddOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTAyO1xuICAgIGNvbG9yOiAkc2hlbGwtaGVhZGVyLXRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19hY3Rpb246YWN0aXZlLFxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW3JvbGU9J21lbnVpdGVtJ106YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTAzO1xuICAgIGNvbG9yOiAkc2hlbGwtaGVhZGVyLXRleHQtMDE7XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW3JvbGU9J21lbnVpdGVtJ106Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHNoZWxsLWhlYWRlci1mb2N1cztcbiAgICBjb2xvcjogJHNoZWxsLWhlYWRlci10ZXh0LTAxO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW3JvbGU9J21lbnVpdGVtJ106aG92ZXIgPiBzdmcsXG4gIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW1bcm9sZT0nbWVudWl0ZW0nXTphY3RpdmUgPiBzdmcsXG4gIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW1bcm9sZT0nbWVudWl0ZW0nXTpmb2N1cyA+IHN2ZyB7XG4gICAgZmlsbDogJHNoZWxsLWhlYWRlci1pY29uLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fc3VibWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVtyb2xlPSdtZW51aXRlbSddW2FyaWEtaGFzcG9wdXA9J3RydWUnXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVtyb2xlPSdtZW51aXRlbSddW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLWhlYWRlci1iZy0wNjtcbiAgICBjb2xvcjogJHNoZWxsLWhlYWRlci1mb2N1cztcbiAgICAvLyBOb3RlOiBuZWVkcyB0byBiZSBoaWdoZXIgdGhhbiBtZW51LiBBZGRpbmcgMSBoZXJlIGluc3RlYWQgb2YgbW92aW5nIHRvXG4gICAgLy8gdGhlIG5leHQgbGV2ZWwuXG4gICAgei1pbmRleDogI3t6KCdoZWFkZXInKSArIDF9O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVtyb2xlPSdtZW51aXRlbSddW2FyaWEtZXhwYW5kZWQ9J3RydWUnXVxuICAgID4gLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnVbcm9sZT0nbWVudSddIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVtyb2xlPSdtZW51aXRlbSddW2FyaWEtZXhwYW5kZWQ9J3RydWUnXVxuICAgICsgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IG1pbmktdW5pdHMoMjUpO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1oZWFkZXItYmctMDY7XG4gICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIHotaW5kZXg6IHooJ2hlYWRlcicpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVtyb2xlPSdtZW51aXRlbSddW2FyaWEtZXhwYW5kZWQ9J3RydWUnXVxuICAgICsgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudVxuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLWhlYWRlci1iZy0wNDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdGl0bGVbcm9sZT0nbWVudWl0ZW0nXVthcmlhLWV4cGFuZGVkPSd0cnVlJ11cbiAgICArIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnVcbiAgICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW06YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudSAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW1bcm9sZT0nbWVudWl0ZW0nXSB7XG4gICAgaGVpZ2h0OiBtaW5pLXVuaXRzKDYpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudVxuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbVtyb2xlPSdtZW51aXRlbSddOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTA2O1xuICAgIGNvbG9yOiAkc2hlbGwtaGVhZGVyLXRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWFycm93IHtcbiAgICBmaWxsOiAkc2hlbGwtaGVhZGVyLWljb24tMDM7XG4gICAgbWFyZ2luLWxlZnQ6IG1pbmktdW5pdHMoMSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMiwgZmlsbCAkZHVyYXRpb24tLWZhc3QtMDI7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEhlYWRlciAtIEdsb2JhbFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX2dsb2JhbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGZsZXg6IDEgMSAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEhlYWRlciAtIFNraXAgdG8gY29udGVudFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1za2lwLXRvLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXI6IDA7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNraXAtdG8tY29udGVudDpmb2N1cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICRpYm0tY29sb3JfX2JsdWUtNjA7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTAxO1xuICAgIGNvbG9yOiAkc2hlbGwtaGVhZGVyLXRleHQtMDE7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY2FyYm9uLWhlYWRlcicpIHtcbiAgQGlmIGZlYXR1cmUtZmxhZy1lbmFibGVkKCd1aS1zaGVsbCcpIHtcbiAgICBAaW5jbHVkZSBjYXJib24taGVhZGVyO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAndmFyaWFibGVzJztcblxuLy8vIEdldCBhIGByZW1gIHZhbHVlIGJhc2VkIGZvciBhIG51bWJlciBvZiBtaW5pLXVuaXRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY291bnRcbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBJbiByZW1cbi8vLyBAZ3JvdXAgdWktc2hlbGxcbkBmdW5jdGlvbiBtaW5pLXVuaXRzKCRjb3VudCkge1xuICBAcmV0dXJuICR1bml0ICogJGNvdW50O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jb2xvcnMnO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhlYWRlciB0b2tlbnNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8vIEhlYWRlciBiYXIgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWJnLTAxOiAkY2FyYm9uLS1ncmF5LTEwMDtcblxuLy8vIEhlYWRlciBtZW51IHRyaWdnZXIgaG92ZXIsIEhlYWRlciBuYXYgbGluayBob3ZlclxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWJnLTAyOiAjMmMyYzJjOyAvL1RPRE8gbmVlZHMgY29sb3IgdmFyIGdyYXktMTAwLWhvdmVyXG5cbi8vLyBIZWFkZXIgYWN0aW9uIGFjdGl2ZSBiYWNrZ3JvdW5kXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItYmctMDM6ICRjYXJib24tLWdyYXktODA7XG5cbi8vLyBIZWFkZXIgc3VibWVudSBsaW5rIGhvdmVyXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItYmctMDQ6ICMzNTM1MzU7IC8vVE9ETyBuZWVkcyBjb2xvciB2YXIgZ3JheS05MC1ob3ZlclxuXG4vLy8gSGVhZGVyIG5hdiBsaW5rIGFjdGl2ZSBhbmQgZm9jdXMgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWJnLTA1OiAkY2FyYm9uLS1ncmF5LTcwO1xuXG4vLy8gSGVhZGVyIG5hdiBsaW5rIHN1Ym1lbnVcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLWhlYWRlci1iZy0wNjogJGNhcmJvbi0tZ3JheS05MDtcblxuLy8vIEhlYWRlciBib3JkZXIgYm90dG9tXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItYm9yZGVyLTAxOiAkY2FyYm9uLS1ncmF5LTgwO1xuXG4vLy8gSGVhZGVyIGZvY3VzXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItZm9jdXM6ICRjYXJib24tLXdoaXRlLTA7XG5cbi8vLyBQcmltYXJ5IHRleHQgaW4gaGVhZGVyLCBUaXRsZSB0ZXh0XG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItdGV4dC0wMTogJGNhcmJvbi0tZ3JheS0xMDtcblxuLy8vIFNlY29uZGFyeSB0ZXh0IGluIGhlYWRlciwgTWVudSBpdGVtIG5hdiB0ZXh0XG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItdGV4dC0wMjogJGNhcmJvbi0tZ3JheS0zMDtcblxuLy8vIEhlYWRlciBtZW51IHRyaWdnZXJcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLWhlYWRlci1pY29uLTAxOiAkY2FyYm9uLS1ncmF5LTEwO1xuXG4vLy8gSGVhZGVyIGJhciBpY29uc1xuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWljb24tMDI6ICRjYXJib24tLXdoaXRlLTA7XG5cbi8vLyBIZWFkZXIgYmFyIGljb25zXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItaWNvbi0wMzogJGNhcmJvbi0tZ3JheS0zMDtcblxuLy8vIEl0ZW0gbGlua1xuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWxpbms6ICRjYXJib24tLWJsdWUtNjA7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGVhZGVyIFBhbmVsIHRva2Vuc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBIZWFkZXItcGFuZWwgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtcGFuZWwtYmctMDE6ICRjYXJib24tLWdyYXktMTAwO1xuXG4vLy8gUGFuZWwgaXRlbSBob3ZlciBiYWNrZ3JvdW5kXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1wYW5lbC1iZy0wMjogIzJjMmMyYzsgLy9UT0RPIG5lZWRzIGNvbG9yIHZhciBncmF5LTEwMC1ob3ZlclxuXG4vLy8gUGFuZWwgaXRlbSBmb2N1cyBhbmQgYWN0aXZlIGJhY2tncm91bmRcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXBhbmVsLWJnLTAzOiAkY2FyYm9uLS1ncmF5LTgwO1xuXG4vLy8gUGFuZWwgaXRlbSBsaW5rIHNlbGVjdGVkIGJhY2tncm91bmRcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXBhbmVsLWJnLTA0OiAkY2FyYm9uLS1ncmF5LTkwO1xuXG4vLy8gUGFuZWwgYm9yZGVyXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1wYW5lbC1ib3JkZXI6ICRjYXJib24tLWdyYXktODA7XG5cbi8vLyBIZWFkZXIgcGFuZWwgdGV4dFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtcGFuZWwtdGV4dC0wMTogJGNhcmJvbi0tZ3JheS0zMDtcblxuLy8vIEhlYWRlciBwYW5lbCBzZWNvbmRhcnkgdGV4dFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtcGFuZWwtdGV4dC0wMjogJGNhcmJvbi0tZ3JheS0xMDtcblxuLy8vIEhlYWRlciBwYW5lbCBmb2N1cyBib3JkZXJcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXBhbmVsLWZvY3VzOiAkY2FyYm9uLS13aGl0ZS0wO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpZGUgbmF2IHRva2Vuc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLy8gU2lkZS1uYXYgcGFuZWwgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtc2lkZS1uYXYtYmctMDE6ICRjYXJib24tLXdoaXRlLTA7XG5cbi8vLyBTZWxlY3RlZCBjYXRlZ29yeSBiYWNrZ3JvdW5kXG4vLy8gU2VsZWN0IEwyIGZsYXR0ZWQgaXRlbSBiYWNrZ3JvdW5kXG4vLy8gSXRlbSBhY3RpdmUgYmFja2dyb3VuZFxuLy8vIEZvb3Rlci1iYXIgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtc2lkZS1uYXYtYmctMDI6ICRjYXJib24tLWdyYXktODA7IC8vVE9ETyB3YWl0aW5nIGZvciB1cGRhdGVkIGNvbG9yXG5cbi8vLyBTZWxlY3RlZCBMMiBuZXN0ZWQgaXRlbVxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtc2lkZS1uYXYtYmctMDM6ICRpYm0tY29sb3JfX2dyYXktNzA7IC8vVE9ETyB3YWl0aW5nIGZvciB1cGRhdGVkIGNvbG9yXG5cbi8vLyBTaWRlIG5hdiBpdGVtIGhvdmVyIGJhY2tncm91bmRcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXNpZGUtbmF2LWJnLTA0OiAjZTVlNWU1OyAvL1RPRE8gbmVlZHMgY29sb3IgdmFyIGdyYXktOTAtaG92ZXJcblxuLy8vIFNpZGUgbmF2IG1lbnUgaXRlbSBob3ZlciBiYWNrZ3JvdW5kXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1zaWRlLW5hdi1iZy0wNTogI2RjZGNkYzsgLy9UT0RPIG5lZWRzIGNvbG9yIHZhciBncmF5LTgwLWhvdmVyXG5cbi8vLyBQcmltYXJ5IHRleHQgaW4gc2lkZS1uYXZcbi8vLyBMMiBGbGF0dGVuIGl0ZW0gdGV4dFxuLy8vIEwyIE5lc3RlZCBpdGVtIHRleHRcbi8vLyBMMSB0aXRsZSB0ZXh0XG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1zaWRlLW5hdi10ZXh0LTAxOiAkaWJtLWNvbG9yX19ncmF5LTcwOyAvL1RPRE8gd2FpdGluZyBmb3IgdXBkYXRlZCBjb2xvclxuXG4vLy8gU2Vjb25kYXJ5IHRleHQgaW4gc2lkZSBuYXZcbi8vLyBMMiBDYXRlZ29yeSBsYWJlbFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtc2lkZS1uYXYtdGV4dC0wMjogJGlibS1jb2xvcl9fZ3JheS0zMDtcblxuLy8vIFNpZGUtbmF2IGljb24gY29sb3Jcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXNpZGUtbmF2LWljb24tMDE6ICRpYm0tY29sb3JfX2dyYXktNzA7XG5cbi8vLyBJdGVtIGhpZ2hsaWdodCBiYXJcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXNpZGUtbmF2LWFjY2VudC0wMTogJGlibS1jb2xvcl9fYmx1ZS02MDtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1oZWxwZXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnZnVuY3Rpb25zJztcbkBpbXBvcnQgJ3RoZW1lJztcblxuLy8vIFVJIHNoZWxsIHNpZGUgbmF2XG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG5AbWl4aW4gY2FyYm9uLWhlYWRlci1wYW5lbCB7XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBIZWFkZXIgUGFuZWxcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXItcGFuZWwge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tbW90aW9uKGV4aXQsIHByb2R1Y3RpdmUpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IGNhcmJvbi0tbWluaS11bml0cyg2KTtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLXBhbmVsLWJnLTAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB3aWxsLWNoYW5nZTogd2lkdGg7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC4xMXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiB6KCdoZWFkZXInKTtcbiAgICBjb2xvcjogJHNoZWxsLXBhbmVsLXRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyLXBhbmVsLS1leHBhbmRlZCB7XG4gICAgd2lkdGg6IGNhcmJvbi0tbWluaS11bml0cygzMik7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkc2hlbGwtcGFuZWwtYm9yZGVyO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRzaGVsbC1wYW5lbC1ib3JkZXI7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY2FyYm9uLWhlYWRlci1wYW5lbCcpIHtcbiAgQGlmIGZlYXR1cmUtZmxhZy1lbmFibGVkKCd1aS1zaGVsbCcpIHtcbiAgICBAaW5jbHVkZSBjYXJib24taGVhZGVyLXBhbmVsO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICd0aGVtZSc7XG5AaW1wb3J0ICdmdW5jdGlvbnMnO1xuXG4vLy8gVUkgc2hlbGwgcHJvZHVjdCBzd2l0Y2hlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuQG1peGluIHByb2R1Y3Qtc3dpdGNoZXIge1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEdsb2JhbCBQYW5lbFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1wYW5lbC0tb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogbWluaS11bml0cyg2KTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IG1pbmktdW5pdHMoMzIpO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1wYW5lbC1iZy0wMTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjExcyBjdWJpYy1iZXppZXIoMC4yLCAwLCAwLjM4LCAwLjkpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhbmVsLS1leHBhbmRlZCB7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCAwIHJnYmEoJGNhcmJvbi0tYmxhY2stMTAwLCAwLjI1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTd2l0Y2hlciAtIFNlYXJjaFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19zZWFyY2gge1xuICAgIHBhZGRpbmc6IDAgbWluaS11bml0cygyKTtcbiAgICBtYXJnaW4tYm90dG9tOiBtaW5pLXVuaXRzKDMpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0tc2hlbGwgaW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJib24tLWdyYXktMjA7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFN3aXRjaGVyIC0gQnV0dG9uc1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19zdWJoZWFkZXIsXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19hbGwtYnRuIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgcGFkZGluZzogbWluaS11bml0cygxKTtcbiAgICBjb2xvcjogJHNoZWxsLXBhbmVsLXRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fc3ViaGVhZGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoNyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fYWxsLWJ0biB7XG4gICAgcGFkZGluZy1sZWZ0OiBtaW5pLXVuaXRzKDcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX2FsbC1idG4sXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19iYWNrLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJHNoZWxsLWhlYWRlci1saW5rO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX2FsbC1idG46aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19iYWNrLWJ0bjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fYWxsLWJ0bjpmb2N1cyxcbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX2JhY2stYnRuOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDNweCAkc2hlbGwtaGVhZGVyLWxpbms7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fYmFjay1idG4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgcGFkZGluZzogbWluaS11bml0cygxKSBtaW5pLXVuaXRzKDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX2JhY2stYXJyb3cge1xuICAgIGZpbGw6ICRzaGVsbC1oZWFkZXItbGluaztcbiAgICBtYXJnaW4tcmlnaHQ6IG1pbmktdW5pdHMoMik7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFN3aXRjaGVyIC0gUHJvZHVjdCBMaXN0XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3QtbGlzdF9faXRlbSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1saXN0X19pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkY2FyYm9uLS1ncmF5LTIwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3QtbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogbWluaS11bml0cygxKSBtaW5pLXVuaXRzKDIpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LWxpbms6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgM3B4ICRzaGVsbC1oZWFkZXItbGluaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19pY29uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IG1pbmktdW5pdHMoMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1saW5rX19uYW1lIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogJHNoZWxsLWhlYWRlci10ZXh0LTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX3Byb2R1Y3QtbGlzdCAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDUpO1xuXG4gICAgJi4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1vcGVuIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX3Byb2R1Y3QtbGlzdCAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSA+IHN2ZyB7XG4gICAgZmlsbDogJHNoZWxsLWhlYWRlci10ZXh0LTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX3Byb2R1Y3QtbGlzdCAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGNhcmJvbi0tZ3JheS0zMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19wcm9kdWN0LWxpc3RcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudTpob3ZlclxuICAgID4gc3ZnIHtcbiAgICBmaWxsOiAkc2hlbGwtaGVhZGVyLXRleHQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fcHJvZHVjdC1saXN0IC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51OmZvY3VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgM3B4ICRzaGVsbC1oZWFkZXItbGluaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19wcm9kdWN0LWxpc3RcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjYXJib24tLXdoaXRlLTA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1saXN0X19pdGVtOmhvdmVyIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3Byb2R1Y3Qtc3dpdGNoZXInKSB7XG4gIEBpZiBmZWF0dXJlLWZsYWctZW5hYmxlZCgndWktc2hlbGwnKSB7XG4gICAgQGluY2x1ZGUgcHJvZHVjdC1zd2l0Y2hlcjtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLWhlbHBlcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICdmdW5jdGlvbnMnO1xuQGltcG9ydCAndGhlbWUnO1xuXG4vLy8gVUkgc2hlbGwgc2lkZSBuYXZcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbkBtaXhpbiBjYXJib24tc3dpdGNoZXIge1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSGVhZGVyIFN3aXRjaGVyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tc3dpdGNoZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAkc2hlbGwtcGFuZWwtdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zd2l0Y2hlcl9faXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkc3BhY2luZy0wNztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zd2l0Y2hlcl9faXRlbTpudGgtY2hpbGQoMSkge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN3aXRjaGVyX19pdGVtLS1kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogcmVtKDIyNHB4KTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46ICRzcGFjaW5nLTAzICRzcGFjaW5nLTA1O1xuICAgIGJhY2tncm91bmQ6ICRzaGVsbC1wYW5lbC1ib3JkZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN3aXRjaGVyX19pdGVtLWxpbmsge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tdHlwZS1zdHlsZSgnaGVhZGluZy0wMScpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJHNwYWNpbmctMDc7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHBhZGRpbmc6IHJlbSg2cHgpICRzcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkc2hlbGwtcGFuZWwtdGV4dC0wMTtcblxuICAgICY6aG92ZXI6bm90KC4jeyRwcmVmaXh9LS1zd2l0Y2hlcl9faXRlbS1saW5rLS1zZWxlY3RlZCkge1xuICAgICAgYmFja2dyb3VuZDogJHNoZWxsLXBhbmVsLWJnLTAyO1xuICAgICAgY29sb3I6ICRzaGVsbC1wYW5lbC10ZXh0LTAyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMnB4IHNvbGlkICRzaGVsbC1wYW5lbC1mb2N1cztcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRzaGVsbC1wYW5lbC1iZy0wMztcbiAgICAgIGNvbG9yOiAkc2hlbGwtcGFuZWwtdGV4dC0wMjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3dpdGNoZXJfX2l0ZW0tbGluay0tc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQ6ICRzaGVsbC1wYW5lbC1iZy0wNDtcbiAgICBjb2xvcjogJHNoZWxsLXBhbmVsLXRleHQtMDI7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY2FyYm9uLWhlYWRlci1zd2l0Y2hlcicpIHtcbiAgQGlmIGZlYXR1cmUtZmxhZy1lbmFibGVkKCd1aS1zaGVsbCcpIHtcbiAgICBAaW5jbHVkZSBjYXJib24tc3dpdGNoZXI7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1oZWxwZXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnZnVuY3Rpb25zJztcbkBpbXBvcnQgJ3RoZW1lJztcblxuLy8vIEhlbHBlciB0byBhZGQgaW4gdGV4dCBvdmVyZmxvdyBzdHlsZXMgdG8gYSBwYXJ0aWN1bGFyIG5vZGUuIFVzZWZ1bCBpZiB3ZVxuLy8vIGRvbid0IHdhbnQgdG8gaGF2ZSBkaXNwbGF5LWlubGluZTogYmxvY2sgZnJvbSB0aGUgdGV4dCBoZWxwZXIgY2xhc3Nlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuLy8vIEBleGFtcGxlXG4vLy8gICAubXktY3VzdG9tLXNlbGVjdG9yIHtcbi8vLyAgICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdygpO1xuLy8vICAgfVxuQG1peGluIHRleHQtb3ZlcmZsb3cge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLy8vIEhlbHBlciBmb3IgaGFuZGxpbmcgc2VsZWN0b3JzIGZvciB0aGUgZXhwYW5zaW9uIHN0YXRlIG9mIHRoZSBzaWRlLW5hdi5cbi8vLyBUaGlzIGhlbHBlciBtYWtlcyBpdCBlYXNpZXIgdG8gd3JpdGUgY29kZSBmb3IgY2hpbGRyZW4gdGhhdCBuZWVkIHRvIHJlc3BvbmRcbi8vLyB0byB3aGV0aGVyIHRoZSBzaWRlLW5hdiBpcyBvcGVuLCBvciBjbG9zZWQuIEZvciBjb252ZW5pZW5jZSwgd2UgYWxzb1xuLy8vIG9wdGlvbmFsbHkgc2V0IHByb3BlcnRpZXMgZm9yIG9wYWNpdHkgYW5kIHZpc2liaWxpdHkgdG8gaGVscCB3aXRoIHRoZVxuLy8vIHRyYW5zaXRpb24gYW5pbWF0aW9uLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuLy8vIEBwYXJhbSB7Qm9vbH0gJG9wYWNpdHkgW2ZhbHNlXVxuLy8vIEBwYXJhbSB7Qm9vbH0gJHZpc2liaWxpdHkgW2ZhbHNlXVxuLy8vIEBjb250ZW50XG5AbWl4aW4gZXhwYW5kZWQoJG9wYWNpdHk6IGZhbHNlLCAkdmlzaWJpbGl0eTogZmFsc2UpIHtcbiAgQGlmICRvcGFjaXR5ID09IHRydWUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICBAaWYgJHZpc2liaWxpdHkgPT0gdHJ1ZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2OmhvdmVyICYsXG4gIC8vIEluY2x1ZGUgdGhlIGZpeGVkIHZhcmlhbnQgaGVyZSBzbyBjb21wb25lbnRzIGNhbiByZW5kZXIgaW4gYm90aCBleHBhbmRhYmxlXG4gIC8vIGFuZCBmaXhlZCBzaWRlIG5hdnNcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS1maXhlZCAmLFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLWV4cGFuZGVkICYge1xuICAgIEBpZiAkdmlzaWJpbGl0eSA9PSB0cnVlIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuICAgIEBpZiAkb3BhY2l0eSA9PSB0cnVlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vLyBVSSBzaGVsbCBzaWRlIG5hdlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuQG1peGluIGNhcmJvbi1zaWRlLW5hdiB7XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTaWRlLW5hdiA+IFBhbmVsXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDYpO1xuICAgIG1heC13aWR0aDogbWluaS11bml0cygzMik7XG4gICAgY29sb3I6ICRzaGVsbC1zaWRlLW5hdi10ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1iZy0wMTtcbiAgICB3aWxsLWNoYW5nZTogd2lkdGg7XG4gICAgLy8gVE9ETzogc3luYyB3aXRoIG1vdGlvbiB3b3JrXG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC4xMXMgY3ViaWMtYmV6aWVyKDAuMiwgMCwgMSwgMC45KTtcbiAgICAvLyBVc2VmdWwgdG8gdG9nZ2xlIHRoaXMgcHJvcGVydHkgdG8gc2VlIHdoYXQncyBnb2luZyBvbiB3aGVuIG5vdCBleHBhbmRlZFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogeignaGVhZGVyJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLXV4IHtcbiAgICB0b3A6ICRzcGFjaW5nLTA5O1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDMyKTtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBSYWlsXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFVzZWQgZm9yIHJlbmRlcmluZyB0aGUgYWN0dWFsIHNpZGUgcmFpbC4gVGhlcmUgYXJlIHR3byBzdGF0ZXMgdGhhdCB3ZSBoYXZlXG4gIC8vIHRvIHN0eWxlIGZvciwgbmFtZWx5IGZvciB3aGVuIHRoZSByYWlsIGlzIGNvbGxhcHNlZCBhbmQgZXhwYW5kZWQuIFdoZW5cbiAgLy8gY29sbGFwc2VkLCB0aGUgcmFpbCBpcyBpbnRlbmRlZCB0byBleHBhbmQgb24gbW91c2Ugb3Zlci4gV2hlbiBleHBhbmRlZCwgaXRcbiAgLy8gc2hvdWxkIGhhdmUgdGhlIHNhbWUgZGltZW5zaW9ucyBhcyB3aGVuIGV4cGFuZGVkIG9uIG1vdXNlIG92ZXJcblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLXJhaWwge1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDYpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS1oaWRkZW4ge1xuICAgIHdpZHRoOiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2Om5vdCguI3skcHJlZml4fS0tc2lkZS1uYXYtLWZpeGVkKTpob3ZlcixcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS1leHBhbmRlZCB7XG4gICAgd2lkdGg6IG1pbmktdW5pdHMoMzIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiByZW0oNDhweCk7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi0tZXhwYW5zaW9uICRjYXJib24tLXN0YW5kYXJkLWVhc2luZyxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tLWV4cGFuc2lvbiAkY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX292ZXJsYXktYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3ZlcmxheS0wMTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLS1leHBhbnNpb24gJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nLFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLS1leHBhbnNpb24gJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIFdoZW4gdXNlZCBhbG9uZ3NpZGUgdGhlIGhlYWRlciwgd2UgdXBkYXRlIHRoZSBgdG9wYCBwb3NpdGlvbmluZyBzbyB0aGF0IHdlXG4gIC8vIGNhbiBmaXQgYm90aCB3aWRnZXRzIG9uIHRoZSBzYW1lIHBhZ2Ugd2l0aG91dCBvdmVybGFwcGluZy5cbiAgLiN7JHByZWZpeH0tLWhlYWRlciB+IC4jeyRwcmVmaXh9LS1zaWRlLW5hdiB7XG4gICAgdG9wOiBtaW5pLXVuaXRzKDYpO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gNDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLWZpeGVkIHtcbiAgICB3aWR0aDogbWluaS11bml0cygzMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLWNvbGxhcHNlZCB7XG4gICAgd2lkdGg6IG1pbmktdW5pdHMoMzIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChtaW5pLXVuaXRzKC0zMikpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNpZGUtbmF2ID4gTmF2aWdhdGlvblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19uYXZpZ2F0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNpZGUtbmF2ID4gTmF2aWdhdGlvbiA+IEhlYWRlclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzaGVsbC1zaWRlLW5hdi1iZy0wMjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNik7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgZXhwYW5kZWQoKSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS11eCAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2hlYWRlciB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNpZGUtbmF2ID4gTmF2aWdhdGlvbiA+IEhlYWRlciA+IERldGFpbHNcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fZGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmctcmlnaHQ6IG1pbmktdW5pdHMoMik7XG4gICAgLy8gTmVjZXNzYXJ5IGZvciB0ZXh0IHRydW5jYXRpb24gaW4gdGl0bGVcbiAgICAvLyBodHRwczovL2Nzcy10cmlja3MuY29tL2ZsZXhib3gtdHJ1bmNhdGVkLXRleHQvI2FydGljbGUtaGVhZGVyLWlkLTNcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMDtcblxuICAgIEBpbmNsdWRlIGV4cGFuZGVkKCRvcGFjaXR5OiB0cnVlLCAkdmlzaWJpbGl0eTogdHJ1ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLXV4IC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fZGV0YWlscyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X190aXRsZSB7XG4gICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdygpO1xuXG4gICAgLy8gVE9ETzogc3luYyB3aXRoIHR5cGUgc3R5bGVzXG4gICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xcHg7XG4gICAgbWFyZ2luLXRvcDogbWluaS11bml0cygyKTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC8vIFN5bmMgdXAgYmV0d2VlbiBvdXIgdGl0bGUgYW5kIHNlbGVjdCBmaWVsZCB0byBnZXQgcG9zaXRpb24gbG9naWMgZm9yXG4gIC8vIHRleHRcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X190aXRsZSxcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zZWxlY3Qge1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cygxKTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTaWRlLW5hdiA+IE5hdmlnYXRpb24gPiBIZWFkZXIgPiBTd2l0Y2hlclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zd2l0Y2hlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N3aXRjaGVyLWNoZXZyb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBtaW5pLXVuaXRzKDEpO1xuICAgIGJvdHRvbTogMDtcbiAgICBmaWxsOiAkc2hlbGwtc2lkZS1uYXYtaWNvbi0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZmxleDogMSAxIDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1oZWFkZXItYmctMDE7XG4gICAgY29sb3I6ICRzaGVsbC1oZWFkZXItdGV4dC0wMTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEycHgpO1xuICAgIGhlaWdodDogbWluaS11bml0cyg0KTtcbiAgICAvLyBGbGV4IGJ1ZywgdXNlZCB0byBoYXZlIHRoZSBzZWxlY3Qgbm9kZSByZXNwZWN0IHRoZSB3aWR0aCBpZiBhIGNoaWxkIGhhcyBhXG4gICAgLy8gdmFsdWUgdGhhdCBpcyBsb25nZXIgdGhhbiB0aGUgd2lkdGggb2YgdGhlIHNlbGVjdFxuICAgIG1pbi13aWR0aDogMDtcbiAgICAvLyBCdWZmZXIgdGhlIHJpZ2h0IGhhbmQgc2lkZSBvZiBzZWxlY3Qgc28gdGV4dCBkb2Vzbid0IG92ZXJsYXkgdGhlIGNoZXZyb25cbiAgICBwYWRkaW5nLXJpZ2h0OiBtaW5pLXVuaXRzKDQpO1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zZWxlY3Q6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTaWRlLW5hdiA+IE5hdmlnYXRpb24gPiBGb290ZXJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fZm9vdGVyIHtcbiAgICBmbGV4OiAwIDAgcmVtKDQ4cHgpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1iZy0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgkd2lkdGg6IHRydWUpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X190b2dnbGU6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fdG9nZ2xlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoMik7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBOYXZpZ2F0aW9uID4gSXRlbShzKVxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtcyB7XG4gICAgZmxleDogMSAxIDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMXJlbSAwIDA7XG5cbiAgICBAaW5jbHVkZSBleHBhbmRlZCgpIHtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS11eCAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW1zIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgLy8gRm9yY2UgYWxsIG9mIG91ciBzaWRlIG5hdmlnYXRpb24gaXRlbXMgdG8gYmUgdGhlIHNhbWUgZGltZW5zaW9ucy4gV2hlbiBvdXJcbiAgLy8gbWVudSBleHBhbmRzLCB3ZSBjYW4gdW5kbyB0aGUgZm9yY2VkIGRpbWVuc2lvbnMuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbSB7XG4gICAgd2lkdGg6IG1pbmktdW5pdHMoNik7XG4gICAgaGVpZ2h0OiBtaW5pLXVuaXRzKDYpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSBleHBhbmRlZCgpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tdXggLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW06bm90KC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS0tYWN0aXZlKTpob3ZlclxuICAgIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbTpub3QoLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtLS1hY3RpdmUpXG4gICAgPiAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnU6aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbTpub3QoLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtLS1hY3RpdmUpXG4gICAgPiAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbms6aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbWVudVtyb2xlPSdtZW51J11cbiAgICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rW3JvbGU9J21lbnVpdGVtJ106bm90KC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluay0tY3VycmVudCk6bm90KFthcmlhLWN1cnJlbnQ9J3BhZ2UnXSk6aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdiBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW3JvbGU9J21lbnVpdGVtJ106aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdlxuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdGl0bGVbcm9sZT0nbWVudWl0ZW0nXVthcmlhLWV4cGFuZGVkPSd0cnVlJ106aG92ZXIge1xuICAgIC8vIFRPRE86IHN5bmMgY29sb3JcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtc2lkZS1uYXYtYmctMDQ7XG4gICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtOm5vdCguI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWFjdGl2ZSlcbiAgICA+IC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluazpob3ZlclxuICAgID4gc3BhbixcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtOm5vdCguI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWFjdGl2ZSlcbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX21lbnUtaXRlbVxuICAgID4gLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rOmhvdmVyXG4gICAgPiBzcGFuIHtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWxhcmdlIHtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNik7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBOYXZpZ2F0aW9uID4ge01lbnUsU3VibWVudX1cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudVthcmlhLWhhc3BvcHVwPSd0cnVlJ10ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgkd2lkdGg6IHRydWUpO1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2hlYWRpbmctMDEnKTtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIHBhZGRpbmc6IDAgbWluaS11bml0cygyKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICRzaGVsbC1zaWRlLW5hdi10ZXh0LTAxO1xuICAgIGhlaWdodDogbWluaS11bml0cyg0KTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDIsIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1iZy0wNDtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnU6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudS10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdygpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2ljb24uI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnUtY2hldnJvbiB7XG4gICAgZmxleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnUtY2hldnJvbiA+IHN2ZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMjtcbiAgICBoZWlnaHQ6IHJlbSgxNnB4KTtcbiAgICB3aWR0aDogcmVtKDE2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51W2FyaWEtZXhwYW5kZWQ9J3RydWUnXVxuICAgIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudS1jaGV2cm9uXG4gICAgPiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWxhcmdlIHtcbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnUge1xuICAgICAgaGVpZ2h0OiBtaW5pLXVuaXRzKDYpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS0tYWN0aXZlIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLXNpZGUtbmF2LWJnLTA0O1xuICAgIGNvbG9yOiAkaWJtLWNvbG9yX19ncmF5LTEwMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS0tYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51W2FyaWEtZXhwYW5kZWQ9J2ZhbHNlJ10ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1iZy0wNDtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLXNpZGUtbmF2LWFjY2VudC0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWFjdGl2ZSAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnUtdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19tZW51W3JvbGU9J21lbnUnXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddXG4gICAgKyAuI3skcHJlZml4fS0tc2lkZS1uYXZfX21lbnVbcm9sZT0nbWVudSddIHtcbiAgICBtYXgtaGVpZ2h0OiByZW0oMTUwMHB4KTtcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19tZW51W3JvbGU9J21lbnUnXVxuICAgIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmtbcm9sZT0nbWVudWl0ZW0nXSB7XG4gICAgaGVpZ2h0OiBtaW5pLXVuaXRzKDQpO1xuICAgIG1pbi1oZWlnaHQ6IG1pbmktdW5pdHMoNCk7XG4gICAgcGFkZGluZy1sZWZ0OiBtaW5pLXVuaXRzKDQpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0uI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWljb25cbiAgICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rW3JvbGU9J21lbnVpdGVtJ10ge1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cyg5KTtcbiAgfVxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX21lbnVbcm9sZT0nbWVudSddXG4gICAgYS4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluay0tY3VycmVudCxcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19tZW51W3JvbGU9J21lbnUnXVxuICAgIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmtbYXJpYS1jdXJyZW50PSdwYWdlJ10sXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmstLWN1cnJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMjA7XG5cbiAgICA+IHNwYW4ge1xuICAgICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rLS1jdXJyZW50ID4gc3Bhbi4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluay10ZXh0IHtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBMaW5rXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rLFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbVtyb2xlPSdtZW51aXRlbSddLFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZcbiAgICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LXRpdGxlW3JvbGU9J21lbnVpdGVtJ11bYXJpYS1leHBhbmRlZD0ndHJ1ZSddXG4gICAgKyAuI3skcHJlZml4fS0taGVhZGVyX19tZW51IHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2hlYWRpbmctMDEnKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtaW4taGVpZ2h0OiBtaW5pLXVuaXRzKDQpO1xuICAgIHBhZGRpbmc6IDAgbWluaS11bml0cygyKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDIsIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWxhcmdlIHtcbiAgICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rIHtcbiAgICAgIGhlaWdodDogbWluaS11bml0cyg2KTtcbiAgICB9XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rID4gLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rLXRleHQsXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdlxuICAgIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW1bcm9sZT0nbWVudWl0ZW0nXVxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LXRydW5jYXRlLWVuZCB7XG4gICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdygpO1xuICAgIGNvbG9yOiAkc2hlbGwtc2lkZS1uYXYtdGV4dC0wMTtcbiAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xcHg7XG4gICAgbGluZS1oZWlnaHQ6IHJlbSgyMHB4KTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbms6Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdiBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW3JvbGU9J21lbnVpdGVtJ106Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmtbYXJpYS1jdXJyZW50PSdwYWdlJ10sXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmstLWN1cnJlbnQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rW2FyaWEtY3VycmVudD0ncGFnZSddOjpiZWZvcmUsXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmstLWN1cnJlbnQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1hY2NlbnQtMDE7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBJY29uc1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pY29uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLy8gSGVscGZ1bCBpbiBmbGV4IGNvbnRhaW5lcnMgc28gdGhlIGljb24gZG9lcyBub3QgaGF2ZSBsZXNzIHRoYW4gdGhlXG4gICAgLy8gZXhwZWN0ZWQgd2lkdGhcbiAgICBmbGV4OiAwIDAgbWluaS11bml0cygyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faWNvbjpub3QoLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51LWNoZXZyb24pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IG1pbmktdW5pdHMoMyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2ljb24gPiBzdmcge1xuICAgIGZpbGw6ICRzaGVsbC1zaWRlLW5hdi1pY29uLTAxO1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDIpO1xuICAgIGhlaWdodDogbWluaS11bml0cygyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faWNvbiA+IHN2Zy4jeyRwcmVmaXh9LS1zaWRlLW5hdi1jb2xsYXBzZS1pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS1leHBhbmRlZFxuICAgIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faWNvblxuICAgID4gc3ZnLiN7JHByZWZpeH0tLXNpZGUtbmF2LWV4cGFuZC1pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS1leHBhbmRlZFxuICAgIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faWNvblxuICAgID4gc3ZnLiN7JHByZWZpeH0tLXNpZGUtbmF2LWNvbGxhcHNlLWljb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFZhcmlhbnRzIC0gRml4ZWRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tZml4ZWQgYS4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluayxcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS1maXhlZFxuICAgIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudVthcmlhLWhhc3BvcHVwPSd0cnVlJ10ge1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cygyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tZml4ZWRcbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX21lbnVbcm9sZT0nbWVudSddXG4gICAgYS4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluayB7XG4gICAgcGFkZGluZy1sZWZ0OiBtaW5pLXVuaXRzKDQpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFZhcmlhbnRzIC0gSGVhZGVyIE5hdiBMaW5rcyBpbiBTaWRlIE5hdlxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2IC4jeyRwcmVmaXh9LS1oZWFkZXJfX25hdiB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50LWRvd24oJ2xnJykge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19oZWFkZXItbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDMycHgpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faGVhZGVyLWRpdmlkZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiByZW0oMXB4KTtcbiAgICBib3R0b206IHJlbSgtMTZweCk7XG4gICAgbGVmdDogcmVtKDE2cHgpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMnB4KTtcbiAgICBiYWNrZ3JvdW5kOiAkaWJtLWNvbG9yX19ncmF5LTIwO1xuICB9XG5cbiAgLy9oZWFkZXIgbWVudSBpdGVtcyBvdmVycmlkZXNcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2IGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW1bcm9sZT0nbWVudWl0ZW0nXSB7XG4gICAgY29sb3I6ICRzaGVsbC1zaWRlLW5hdi10ZXh0LTAxO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgJlthcmlhLWV4cGFuZGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2XG4gICAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVtyb2xlPSdtZW51aXRlbSddW2FyaWEtZXhwYW5kZWQ9J3RydWUnXVxuICAgICsgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudSB7XG4gICAgYm90dG9tOiBpbmhlcml0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbVtyb2xlPSdtZW51aXRlbSddIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNC4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgJiBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW3JvbGU9J21lbnVpdGVtJ106aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLXNpZGUtbmF2LWJnLTA0O1xuICAgICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdlxuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnVcbiAgICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW3JvbGU9J21lbnVpdGVtJ10ge1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdlxuICAgIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW1bcm9sZT0nbWVudWl0ZW0nXTpob3ZlclxuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtYXJyb3csXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdlxuICAgIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW1bcm9sZT0nbWVudWl0ZW0nXTpmb2N1c1xuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtYXJyb3csXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdiAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWFycm93IHtcbiAgICBmaWxsOiAkc2hlbGwtc2lkZS1uYXYtdGV4dC0wMTtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdjYXJib24tc2lkZS1uYXYnKSB7XG4gIEBpZiBmZWF0dXJlLWZsYWctZW5hYmxlZCgndWktc2hlbGwnKSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLXNpZGUtbmF2O1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0taGVscGVycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICdmdW5jdGlvbnMnO1xuXG4vLy8gVUkgc2hlbGwgbmF2aWdhdGlvblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuQG1peGluIGNhcmJvbi1uYXZpZ2F0aW9uIHtcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIE5hdmlnYXRpb25cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiBtaW5pLXVuaXRzKDYpO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpYm0tY29sb3JfX2dyYXktOTA7XG4gICAgd2lkdGg6IG1pbmktdW5pdHMoMzIpO1xuICAgIHotaW5kZXg6IHooJ2Ryb3Bkb3duJyk7XG4gICAgYm94LXNoYWRvdzogMCBtaW5pLXVuaXRzKDEpIG1pbmktdW5pdHMoMikgMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgIGNvbG9yOiAkaWJtLWNvbG9yX19ncmF5LTEwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24tLXJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24gc3ZnIHtcbiAgICBmaWxsOiAkaWJtLWNvbG9yX19ncmF5LTEwO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIE5hdiBTZWN0aW9uXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1zZWN0aW9uOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWJtLWNvbG9yX19ncmF5LTgwO1xuICAgIG1hcmdpbjogMCBtaW5pLXVuaXRzKDIpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIE5hdiBJdGVtXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24taXRlbS0tYWN0aXZlID4gYS4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLWxpbmsge1xuICAgIGNvbG9yOiAkaWJtLWNvbG9yX193aGl0ZS0wO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1pdGVtLS1hY3RpdmU6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlibS1jb2xvcl9fYmx1ZS02MDtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBOYXYgTGlua1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgYS4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiBtaW5pLXVuaXRzKDUpO1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cygyKTtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1saW5rOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xuICAgIGNvbG9yOiAkaWJtLWNvbG9yX193aGl0ZS0wO1xuICB9XG5cbiAgYS4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLWxpbms6Zm9jdXMge1xuICAgIG91dGxpbmU6IHJlbSgzcHgpIHNvbGlkICRpYm0tY29sb3JfX2JsdWUtNjA7XG4gICAgb3V0bGluZS1vZmZzZXQ6IHJlbSgtM3B4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLWl0ZW0tLWljb24gPiBhLiN7JHByZWZpeH0tLW5hdmlnYXRpb24tbGluayB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIE5hdiBDYXRlZ29yeVxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgkd2lkdGg6IHRydWUpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LXRvZ2dsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS10b2dnbGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IHJlbSgzcHgpIHNvbGlkICRpYm0tY29sb3JfX2JsdWUtNjA7XG4gICAgb3V0bGluZS1vZmZzZXQ6IHJlbSgtM3B4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS10aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nLXJpZ2h0OiBtaW5pLXVuaXRzKDIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiAkaWJtLWNvbG9yX19ncmF5LTEwO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWluLWhlaWdodDogbWluaS11bml0cyg1KTtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1pdGVtLS1pY29uIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS10aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LWl0ZW1zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS1pdGVtID4gYS4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtaW4taGVpZ2h0OiBtaW5pLXVuaXRzKDQpO1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cyg0KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1pdGVtLS1pY29uXG4gICAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LWl0ZW1cbiAgICA+IGEuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1saW5rIHtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoNyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktaXRlbS0tYWN0aXZlOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpYm0tY29sb3JfX2JsdWUtNjA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktaXRlbS0tYWN0aXZlXG4gICAgPiBhLiN7JHByZWZpeH0tLW5hdmlnYXRpb24tbGluayB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fd2hpdGUtMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS0tZXhwYW5kZWRcbiAgICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktLWV4cGFuZGVkXG4gICAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LXRpdGxlXG4gICAgPiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktLWV4cGFuZGVkXG4gICAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LWl0ZW1zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIE5hdiBJY29uXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1pY29uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IG1pbmktdW5pdHMoNik7XG4gICAgbWluLXdpZHRoOiBtaW5pLXVuaXRzKDYpO1xuICAgIGhlaWdodDogbWluaS11bml0cyg1KTtcbiAgICBtYXJnaW4tcmlnaHQ6IG1pbmktdW5pdHMoMSk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY2FyYm9uLW5hdmlnYXRpb24nKSB7XG4gIEBpZiBmZWF0dXJlLWZsYWctZW5hYmxlZCgndWktc2hlbGwnKSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLW5hdmlnYXRpb247XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvZnVuY3Rpb25zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJ2Z1bmN0aW9ucyc7XG5cbi8vLyBVSSBzaGVsbCBjb250ZW50XG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG5AbWl4aW4gY2FyYm9uLWNvbnRlbnQge1xuICAuI3skcHJlZml4fS0tY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogJHVpLTAyO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB3aWxsLWNoYW5nZTogbWFyZ2luLWxlZnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyIH4gLiN7JHByZWZpeH0tLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IG1pbmktdW5pdHMoNik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYgfiAuI3skcHJlZml4fS0tY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IG1pbmktdW5pdHMoNik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYuI3skcHJlZml4fS0tc2lkZS1uYXYtLWV4cGFuZGVkIH4gLiN7JHByZWZpeH0tLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiBtaW5pLXVuaXRzKDMyKTtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdjYXJib24tY29udGVudCcpIHtcbiAgQGlmIGZlYXR1cmUtZmxhZy1lbmFibGVkKCd1aS1zaGVsbCcpIHtcbiAgICBAaW5jbHVkZSBjYXJib24tY29udGVudDtcbiAgfVxufVxuIiwiQG1peGluIGhlYWRlckJ0bigkY29sb3IpIHtcblx0QGluY2x1ZGUgY2xlYXJCdG47XG5cdGZvbnQtd2VpZ2h0OiAkYm9sZDtcblx0Zm9udC1zaXplOiAxLjZyZW07IC8vIDQwcHhcblx0Y29sb3I6ICRjb2xvcjtcbn1cblxuLy8gLmFkbWluLWJhciB7XG4vLyBcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzJweCk7XG4vLyBcdEBtZWRpYSAobWF4LXdpZHRoOiA3ODJweCkge1xuLy8gXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDZweCk7XG4vLyBcdH1cbi8vIFx0Lm1lbnUtZHJhd2VyIHtcbi8vIFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtMTAwdmggLSAzMnB4KSk7XG4vLyBcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDc4MnB4KSB7XG4vLyBcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtMTAwdmggLSA0NnB4KSk7XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyBcdC5oZWFkZXIge1xuLy8gXHRcdHBhZGRpbmctdG9wOiAzMnB4O1xuLy8gXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA3ODJweCkge1xuLy8gXHRcdFx0cGFkZGluZy10b3A6IDQ2cHg7XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyBcdC5jb21wb25lbnQubm90aWZpY2F0aW9uIHtcbi8vIFx0XHR0b3A6IDMycHg7XG4vLyBcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDc4MnB4KSB7XG4vLyBcdFx0XHR0b3A6IDQ2cHg7XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyB9XG5cbi8vIE1lbnUgb3BlbiAmIGNsb3NlXG5ib2R5IHtcblx0Ly8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgJGJhc2UtdGltaW5nO1xuXHQubWVudS1kcmF3ZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHZoKTtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgJGJhc2UtdGltaW5nO1xuXHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA2MDBweCkge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MDBweCk7XG5cdFx0fVxuXHR9XG5cdCYub3Blbi1tZW51IHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwdmgpO1xuXHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA2MDBweCkge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwMHB4KTtcblx0XHR9XG5cdH1cbn1cblxuLmhlYWRlciB7XG5cdEBpbmNsdWRlIGNsZWFyTGlzdCgpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdC53cmFwcGVyIHtcblx0XHRvcmRlcjogMjtcblx0XHRmbGV4OiAxIDAgMTAwJTtcblx0XHRwYWRkaW5nOiAwLjhyZW0gMS4ycmVtIDJyZW07IC8vIDIwcHggMzBweCA1MHB4XG5cdH1cblx0LnJvdyB7XG5cdFx0QGluY2x1ZGUgZmxleCgkanVzdGlmeTogc3BhY2UtYmV0d2Vlbik7XG5cdH1cblx0LmxvZ28ge1xuXHRcdG9yZGVyOiAyO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0LmxvZ28tc2l0ZSB7XG5cdFx0XHRcdGZpbGw6ICR3aGl0ZTtcblx0XHRcdFx0Ji53aGl0ZSB7XG5cdFx0XHRcdFx0ZmlsbDogJGJsYWNrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5sb2dvLXNpdGUge1xuXHRcdFx0QGluY2x1ZGUgdGlueS1waG9uZXMge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDguOHJlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji53aGl0ZS1ob3Zlcjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHR9XG5cdC5tZW51LWJ0biB7XG5cdFx0b3JkZXI6IDQ7XG5cdFx0QGluY2x1ZGUgaGVhZGVyQnRuKGJsYWNrKTtcblx0fVxuXHQuY2xvc2UtYnRuIHtcblx0XHRAaW5jbHVkZSBoZWFkZXJCdG4od2hpdGUpO1xuXHR9XG5cdC5tZW51LWRyYXdlciB7XG5cdFx0b3JkZXI6IDE7XG5cdFx0ZmxleDogMSAwIDEwMCU7XG5cdFx0QGluY2x1ZGUgZmxleCgkanVzdGlmeTogc3BhY2UtYmV0d2Vlbik7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDB2aDtcblx0XHRtaW4taGVpZ2h0OiA2MDBweDtcblx0XHRvdmVyZmxvdy15OiBzY3JvbGw7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdC53cmFwcGVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblx0XHQubG9nbyB7XG5cdFx0XHRvcmRlcjogMTtcblx0XHR9XG5cdFx0LmNsb3NlLWJ0biB7XG5cdFx0XHRvcmRlcjogMjtcblx0XHR9XG5cdFx0LmhlYWRlci1uYXYge1xuXHRcdFx0b3JkZXI6IDM7XG5cdFx0XHRmbGV4OiAxIDAgMTAwJTtcblx0XHR9XG5cdFx0Lm1lbnUtdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAyLjVyZW07IC8vIDEwOHB4XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0XHRcdFx0Zm9udC1zaXplOiA0LjMycmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRhOmZvY3VzLFxuXHRcdGJ1dHRvbjpmb2N1cyB7XG5cdFx0XHRvdXRsaW5lOiAkZm9jdXMtb3V0bGluZS13aWR0aCBzb2xpZCAkd2hpdGU7XG5cdFx0fVxuXHR9XG5cdC5oZWFkZXItbmF2IHtcblx0XHRAaW5jbHVkZSBmbGV4KCRhbGlnbjogbm9ybWFsKTtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG5cdC5hY3Rpb24tbWVudSB7XG5cdFx0b3JkZXI6IDI7XG5cdFx0ZmxleDogMSAwIDEwMCU7XG5cdFx0QGluY2x1ZGUgZmxleCgpO1xuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRAaW5jbHVkZSBmbGV4KCRqdXN0aWZ5OiBmbGV4LWVuZCk7XG5cdFx0fVxuXHRcdC5tZW51LWl0ZW0gYSB7XG5cdFx0XHRtYXJnaW46IDAgMXJlbTtcblx0XHRcdGNvbG9yOiAkeWVsbG93O1xuXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAkdHJhbnNwYXJlbnQ7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgJGJhc2UtZHVyYXRpb24gJGJhc2UtdGltaW5nO1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRcdG1hcmdpbjogMCAwIDAgMnJlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Lm1lbnUtd3JhcHBlciB7XG5cdFx0b3JkZXI6IDE7XG5cdFx0ZmxleDogMSAwIDEwMCU7XG5cdH1cblxuXHQubWF4LXdpZHRoLTExMDAge1xuXHRcdG1heC13aWR0aDogMTEwMHB4O1xuXHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0fVxuXHR9XG5cdC5oZWFkZXItbWVudSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMnJlbTtcblx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdGNvbHVtbi1jb3VudDogMjtcblx0XHRcdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdFx0fVxuXHR9XG5cdC5tZW51LWl0ZW0gYSB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRmb250LXdlaWdodDogJGJvbGQ7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAkdHJhbnNwYXJlbnQ7XG5cdFx0dHJhbnNpdGlvbjogYWxsICRiYXNlLWR1cmF0aW9uICRiYXNlLXRpbWluZztcblx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0Zm9udC1zaXplOiAxLjZyZW07IC8vIDQwcHhcblx0XHR9XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogJHllbGxvdztcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxuXHQudW5kZXJsaW5lIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiA4cHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAwLjZyZW07XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXHR9XG59XG4iLCIuZm9vdGVyIHtcblx0cGFkZGluZzogMnJlbSAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdGNvbG9yOiAkd2hpdGU7XG5cdC53cmFwcGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRAaW5jbHVkZSBmbGV4KCRqdXN0aWZ5OiBzcGFjZS1iZXR3ZWVuLCAkYWxpZ246IGZsZXgtc3RhcnQpO1xuXHRcdH1cblx0fVxuXHQubG9nby1kaXYge1xuXHRcdHRyYW5zaXRpb246IGFsbCAkYmFzZS1kdXJhdGlvbiAkYmFzZS10aW1pbmc7XG5cdFx0LmxvZ28ge1xuXHRcdFx0QGluY2x1ZGUgZGVza3RvcC11cCB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGxlZnQ6IGF1dG87XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdG91dGxpbmU6IDNweCBzb2xpZCAkd2hpdGU7XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0LmxvZ28tc2l0ZSB7XG5cdFx0XHRcdFx0ZmlsbDogJHdoaXRlO1xuXHRcdFx0XHRcdCYud2hpdGUge1xuXHRcdFx0XHRcdFx0ZmlsbDogJGJsYWNrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVx0XHRcblx0XHR9XG5cdFx0LmxvZ28tc2l0ZSB7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHR9XG5cdFx0Ji53aGl0ZS1ob3Zlcjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHR9XG5cdC5mb290ZXItbmF2IHtcblx0XHRAaW5jbHVkZSBjbGVhckxpc3QoKTtcblx0XHQuZm9vdGVyLW1lbnUge1xuXHRcdFx0QGluY2x1ZGUgZmxleCgpO1xuXHRcdH1cblx0XHQubWVudS1pdGVtIHtcblx0XHRcdG1hcmdpbjogMCAwLjZyZW07XG5cdFx0XHRhIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRib2xkO1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAkdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAkYmFzZS1kdXJhdGlvbiAkYmFzZS10aW1pbmc7XG5cdFx0XHRcdCY6aG92ZXIsXG5cdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdGNvbG9yOiAkeWVsbG93O1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdG91dGxpbmU6IDNweCBzb2xpZDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuY29udGVudCB7XG5cdFx0QGluY2x1ZGUgZmxleDsgLy8gQWxpZ24gY2VudGVyIGZvciBtb2JpbGVcblxuXHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0ZmxleDogMSAwIDEwMCU7XG5cdFx0XHRAaW5jbHVkZSBmbGV4KCRqdXN0aWZ5OiBmbGV4LWVuZCk7IC8vIEFsaWduIHJpZ2h0IGZvciB0YWJsZXQgJiB1cFxuXHRcdH1cblx0XHRzcGFuIHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDAuNnJlbTsgLy8gMTVweFxuXHRcdFx0Zm9udC1zaXplOiAwLjc2cmVtOyAvLyAxOXB4IGRlc2t0b3Bcblx0XHR9XG5cdFx0YTpmb2N1cyB7XG5cdFx0XHRvdXRsaW5lOiAzcHggc29saWQgJHdoaXRlO1xuXHRcdH1cblx0fVxuXHQuZm9vdGVyLW5hdixcblx0LmNvbnRlbnQge1xuXHRcdHBhZGRpbmctdG9wOiAwLjhyZW07IC8vIDIwcHhcblx0fVxufVxuIiwiLy8gVGhpcyBibG9jayBoYXMgYmVlbiB1cGRhdGVkIHRvIENhcmJvbiBEZXNpZ24ncyBhY2NvcmRpb24uXG4vLyBUaGUgcHJlLUNhcmJvbiBzdHlsZXMgYXJlIHN0aWxsIGhlcmUuIEkgaGF2ZW4ndCBkZWxldGVkIHRoZW0geWV0LlxuLmJsb2NrLmFjY29yZGlvbnMge1xuXHQud3JhcHBlciB7XG5cdFx0bWF4LXdpZHRoOiAkcGVyY2VudGFnZTtcblx0fVxuXHRkZXRhaWxzIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0cGFkZGluZzogMXJlbSAwO1xuXHRcdGJvcmRlci1ib3R0b206ICRiYXNlLWJvcmRlcjtcblx0XHQvLyBSZW1vdmluZyBkZWZhdWx0IGFjY29yZGlvbiBhcnJvd1xuXHRcdCYgPiBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdC5ieC0tYWNjb3JkaW9uX19pdGVtIHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGJvcmRlci10b3A6IG5vbmU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogJGJhc2UtYm9yZGVyO1xuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAkYmFzZS1ib3JkZXI7XG5cdFx0fVxuXHR9XG5cdC5ieC0tYWNjb3JkaW9uX19oZWFkaW5nIHtcblx0XHRwYWRkaW5nOiAxLjJyZW0gMDtcblx0XHQmOmhvdmVyOmJlZm9yZSxcblx0XHQmOmZvY3VzOmJlZm9yZSB7XG5cdFx0XHRoZWlnaHQ6IGNhbGMoMTAwJSArIDFweCk7XG5cdFx0fVxuXHRcdCY6Zm9jdXM6YmVmb3JlIHtcblx0XHRcdGJvcmRlcjogJGZvY3VzLW91dGxpbmU7XG5cdFx0fVxuXHR9XG5cdC5ieC0tYWNjb3JkaW9uX190aXRsZSxcblx0LnRpdGxlIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZTogM3B4IHNvbGlkICRibGFjaztcblx0XHRcdG91dGxpbmUtb2Zmc2V0OiA1cHg7XG5cdFx0fVxuXHR9XG5cdC5ieC0tYWNjb3JkaW9uX19pdGVtLS1hY3RpdmUgLmJ4LS1hY2NvcmRpb25fX2NvbnRlbnQge1xuXHRcdHBhZGRpbmc6IDAuNXJlbSAwIDFyZW07XG5cdH1cblx0LmJ4LS1hY2NvcmRpb25fX2NvbnRlbnQge1xuXHRcdHAge1xuXHRcdFx0Zm9udC1zaXplOiBpbmhlcml0O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGluaGVyaXQ7XG5cdFx0XHRsaW5lLWhlaWdodDogaW5oZXJpdDtcblx0XHRcdGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuXHRcdH1cblx0fVxuXHQuY29udGVudCB7XG5cdFx0PiAqOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblx0LmJ4LS1hY2NvcmRpb25fX2Fycm93IHtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdHN2ZyB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHQmLnN0eWxlLTEge1xuXHRcdC50aXRsZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHJpZ2h0OiAxMnB4O1xuXHRcdFx0XHR0b3A6IDhweDtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0d2lkdGg6IDNweDtcblx0XHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGJhc2UtZHVyYXRpb24gJGJhc2UtdGltaW5nO1xuXHRcdFx0fVxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdHRvcDogMjBweDtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0d2lkdGg6IDI0cHg7XG5cdFx0XHRcdGhlaWdodDogM3B4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Lml0ZW0ub3BlbiB7XG5cdFx0XHQudGl0bGU6YmVmb3JlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSkgcm90YXRlKDkwZGVnKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmJ4LS1hY2NvcmRpb25fX2l0ZW0tLWFjdGl2ZSB7XG5cdFx0XHQuYngtLWFjY29yZGlvbl9fYXJyb3c6YmVmb3JlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKSByb3RhdGUoOTBkZWcpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuYngtLWFjY29yZGlvbl9fYXJyb3cge1xuXHRcdFx0d2lkdGg6IDI0cHg7XG5cdFx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0cmlnaHQ6IDEycHg7XG5cdFx0XHRcdHRvcDogNTAlOyAvLyA4cHhcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0d2lkdGg6IDNweDtcblx0XHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XG5cdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAkYmFzZS1kdXJhdGlvbiAkYmFzZS10aW1pbmc7XG5cdFx0XHR9XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0dG9wOiA1MCU7IC8vIDIwcHhcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0d2lkdGg6IDI0cHg7XG5cdFx0XHRcdGhlaWdodDogM3B4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuXHRcdFx0fVxuXHRcdFx0c3ZnIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLnN0eWxlLTIge1xuXHRcdC50aXRsZSB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA2cmVtO1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiQW5zd2VyXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdHRvcDogMXJlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmJ4LS1hY2NvcmRpb25fX2Fycm93IHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0fVxuXHR9XG59XG4iLCIuYmxvY2suYmFzaWMtY29udGVudCB7XG5cdCYubGVmdC1hbGlnbiB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0fVxuXHQmLmNlbnRlci1hbGlnbiB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cblx0Ji5yaWdodC1hbGlnbiB7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdH1cblx0Ji5zdHlsZS0xIHtcblx0XHQvLyBUaGUgc2xpbSBzdHlsZVxuXHRcdC5yb3cge1xuXHRcdFx0bWF4LXdpZHRoOiA4MDBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdH1cblx0fVxuXHQmLnN0eWxlLTIge1xuXHRcdC53cmFwcGVyIHtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHRtYXgtd2lkdGg6ICRwZXJjZW50YWdlO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQucm93IHtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHRAaW5jbHVkZSBmbGV4KCR3cmFwOiBub3dyYXAsICRhbGlnbjogZmxleC1zdGFydCk7XG5cdFx0XHRcdG1hcmdpbjogMCAtMnJlbTtcblx0XHRcdH1cblx0XHRcdC5jb2wge1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0XHRtYXJnaW46IDAgMnJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLmdyaWQge1xuXHQuaXRlbSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAzODBweDtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdC50aXRsZSB7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiA1cHg7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEuNHJlbTtcblx0XHRcdFx0YmFja2dyb3VuZDogJGJsYWNrO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuaW1hZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDIyMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdFx0QGluY2x1ZGUgaW1hZ2VfY292ZXIoKTtcblx0XHRAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMTAwLCA3MCk7XG5cdH1cbn1cblxuLmJsb2NrLmNhcmRzIHtcblx0QGluY2x1ZGUgY2xlYXJMaXN0KCk7XG5cblx0LndyYXBwZXIge1xuXHRcdC8vIENpcmNsZSBiYWNrIHRvIG1vYmlsZVxuXHRcdG1heC13aWR0aDogJHBlcmNlbnRhZ2U7XG5cdH1cblxuXHQmLmdyaWQge1xuXHRcdC5jb2wge1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR9XG5cdFx0Lml0ZW1zIHtcblx0XHRcdEBpbmNsdWRlIGZsZXgoJGp1c3RpZnk6IHNwYWNlLWV2ZW5seSwgJGFsaWduOiBmbGV4LXN0YXJ0KTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMS40cmVtO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAtMS40cmVtO1xuXHRcdH1cblx0XHQuaXRlbSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMS40cmVtO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxLjRyZW07XG5cdFx0fVxuXHR9XG5cblx0LnRpdGxlLXdyYXBwZXIge1xuXHRcdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdH1cblxuXHQuaXRlbSB7XG5cdFx0LnRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMS4yNWVtO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xuXHRcdH1cblx0XHRwIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0fVxuXHRcdC5zdWJ0aXRsZSB7XG5cdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdH1cblx0XHQuY29udGVudCB7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH1cblx0fVxuXG5cdC8vICYuc3R5bGUtMSB7XG5cdC8vIH1cblx0Ly8gJi5zdHlsZS0yIHtcblx0Ly8gXHQuaXRlbSB7XG5cdC8vIFx0XHRkaXNwbGF5OiBmbGV4O1xuXHQvLyBcdFx0d2lkdGg6IDEwMCU7XG5cdC8vIFx0XHRtYXgtd2lkdGg6IDUyMHB4O1xuXHQvLyBcdFx0bWFyZ2luLWJvdHRvbTogNjBweDtcblx0Ly8gXHR9XG5cdC8vIFx0LmltYWdlIHtcblx0Ly8gXHRcdGhlaWdodDogMTAwJTtcblx0Ly8gXHR9XG5cdC8vIFx0LmNvbnRlbnQge1xuXHQvLyBcdFx0cGFkZGluZzogNjBweCAyMHB4O1xuXHQvLyBcdH1cblx0Ly8gfVxufVxuIiwiLmJsb2NrLmhlcm8ge1xuXHQvLyBwYWRkaW5nOiA0ZW0gMDtcblx0Ji5jb250ZW50LWxlZnQge1xuXHRcdC5yb3cge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHR9XG5cdH1cblx0Ji5jb250ZW50LXJpZ2h0IHtcblx0XHQucm93IHtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblx0XHR9XG5cdH1cblxuXHQmLnN0eWxlLTEge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdCYuY29udGVudC1sZWZ0IHtcblx0XHRcdC5sYWJlbCB7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMXJlbTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC50aXRsZS13cmFwcGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xuXHRcdFx0XHRcdG1hcmdpbjogMCAwIDAgYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmltYWdlLXdyYXBwZXIge1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudGl0bGUge1xuXHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogOSU7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC50aXRsZXMsXG5cdFx0XHQuY29udGVudCB7XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC8vIC50aXRsZSxcblx0XHRcdC5jb250ZW50IC5pbm5lciB7XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5pbWFnZSB7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdFx0LmxhYmVsIHtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMjklO1xuXHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuY29udGVudC1yaWdodCB7XG5cdFx0XHQubGFiZWwge1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogY2FsYygxNjBweCArIDElKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnRpdGxlLXdyYXBwZXIge1xuXHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XG5cdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG8gMCAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuaW1hZ2Utd3JhcHBlciB7XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudGl0bGUge1xuXHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDFyZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogNTklO1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnRpdGxlcyxcblx0XHRcdC5jb250ZW50IHtcblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC8vIC50aXRsZSxcblx0XHRcdC5jb250ZW50IC5pbm5lciB7XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLmFuaW1hdGUge1xuXHRcdFx0LmxhYmVsOmFmdGVyIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdFx0fVxuXHRcdFx0LmxhYmVsIC5zcGFuIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC53cmFwcGVyIHtcblx0XHRcdG1heC13aWR0aDogbm9uZTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHRcdC5yb3cge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0QGluY2x1ZGUgZmxleCgkYWxpZ246IGZsZXgtc3RhcnQpO1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQubGFiZWwge1xuXHRcdFx0QGluY2x1ZGUgZmxleCgkYWxpZ246IGZsZXgtc3RhcnQsICR3cmFwOiBub3dyYXApO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMnJlbTtcblx0XHRcdHBhZGRpbmctdG9wOiAxLjUlOyAvLyBBbGlnbmluZyB0ZXh0IHRvIGNlbnRlciBvZiBzcXVhcmVcblx0XHRcdGZvbnQtc2l6ZTogMS4yNWVtO1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAzMXB4OyAvLyBBbGlnbmluZyB0ZXh0IHRvIGNlbnRlciBvZiBzcXVhcmVcblx0XHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDM3LjUlKTsgLy8gMTAgLyA4ID0gMS4yNSAqIDMwJVxuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkoKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMC43NXJlbTtcblx0XHRcdH1cblx0XHRcdC5zcGFuIHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgNTAlKTtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsICRiYXNlLWR1cmF0aW9uICRiYXNlLXRpbWluZyA2MDBtcztcblx0XHRcdH1cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0d2lkdGg6IDE1JTtcblx0XHRcdFx0aGVpZ2h0OiAwO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAtMS41JTtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE1JTtcblx0XHRcdFx0ZmxleDogMSAwIDE1JTtcblx0XHRcdFx0bWF4LXdpZHRoOiAxNSU7XG5cdFx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAkYmFzZS1kdXJhdGlvbiAkYmFzZS10aW1pbmcgJGJhc2UtZHVyYXRpb247XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHRcdHdpZHRoOiA0cmVtO1xuXHRcdFx0XHRcdGhlaWdodDogNHJlbTtcblx0XHRcdFx0XHRmbGV4OiAxIDAgNHJlbTtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDRyZW07XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogLTMxcHg7XG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCYuc3F1YXJlLXBpbms6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcGluaztcblx0XHRcdH1cblx0XHRcdCYuc3F1YXJlLXRlYWw6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkdGVhbDtcblx0XHRcdH1cblx0XHRcdCYuc3F1YXJlLXllbGxvdzphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICR5ZWxsb3c7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5jb250ZW50IHtcblx0XHRcdG9yZGVyOiAzO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRwYWRkaW5nOiAyLjRyZW0gMnJlbSAwO1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRvcmRlcjogMjtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdHotaW5kZXg6IDM7XG5cdFx0XHR9XG5cdFx0XHQuY29udGVudC13cmFwcGVyIHtcblx0XHRcdFx0d2lkdGg6ICRwZXJjZW50YWdlO1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdH1cblx0XHRcdC5pbm5lciB7XG5cdFx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQudGl0bGVzIHtcblx0XHRcdG9yZGVyOiAxO1xuXHRcdFx0d2lkdGg6IDYwJTtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdG9yZGVyOiAxO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHR9XG5cdFx0XHQubGFiZWwge1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC50aXRsZS13cmFwcGVyIHtcblx0XHRcdFx0d2lkdGg6ICRwZXJjZW50YWdlO1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0XHQudGl0bGUge1xuXHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyNHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdFx0b3JkZXI6IDI7XG5cdFx0XHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdFx0fVxuXHRcdFx0XHQuaDIge1xuXHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5KCkge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxLjMycmVtO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQudGl0bGUge1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdFx0LmltYWdlLXdyYXBwZXIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0b3JkZXI6IDI7XG5cdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdG9yZGVyOiAzO1xuXHRcdFx0fVxuXHRcdFx0LmltYWdlIHtcblx0XHRcdFx0QGluY2x1ZGUgaW1hZ2VfY292ZXIoKTtcblx0XHRcdFx0QGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEwMCUsIDEwMCUpOyAvLyBTcXVhcmVcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ji5zdHlsZS0yIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0Ji5jb250ZW50LXJpZ2h0IHtcblx0XHRcdC5sYWJlbCB7XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJyZW0pO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQudGl0bGUtd3JhcHBlcixcblx0XHRcdC5pbm5lciB7XG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0fVxuXHRcdFx0LmltYWdlLXdyYXBwZXIge1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnRpdGxlLXdyYXBwZXIsXG5cdFx0XHQuY29udGVudCB7XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQmLmNvbnRlbnQtbGVmdCB7XG5cdFx0XHQubGFiZWwge1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnJlbSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5pbWFnZS13cmFwcGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC50aXRsZS13cmFwcGVyLFxuXHRcdFx0LmNvbnRlbnQge1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQud3JhcHBlciB7XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0XHRtYXgtd2lkdGg6ICRwZXJjZW50YWdlO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQucm93IHtcblx0XHRcdEBpbmNsdWRlIGZsZXgoJGp1c3RpZnk6IGZsZXgtc3RhcnQpO1xuXHRcdFx0cGFkZGluZzogM3JlbSAwO1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRcdHBhZGRpbmc6IDVyZW0gMDtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5jb2wge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRwYWRkaW5nOiAyMHB4O1xuXHRcdH1cblx0XHQubGFiZWwge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMi42cmVtO1xuXHRcdFx0Zm9udC1zaXplOiAxLjI1ZW07XG5cdFx0fVxuXHRcdC50aXRsZS13cmFwcGVyLFxuXHRcdC5jb250ZW50IHtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHR3aWR0aDogNjAlO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQvLyBPdmVyZXJpZGUgYWxsIGZvbnQgc2l6ZXMgaW4gdGhlIHRpdGxlXG5cdFx0Ly8gQ2hlY2sgZm9yIHRoZSBtb2JpbGUgc2l6ZVxuXHRcdC5oMSxcblx0XHQuaDIsXG5cdFx0LmgzLFxuXHRcdC5oNCxcblx0XHQuaDUsXG5cdFx0Lmg2IHtcblx0XHRcdGZvbnQtc2l6ZTogOTBweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xuXHRcdFx0XHRmb250LXNpemU6IDQwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5pbWFnZS13cmFwcGVyIHtcblx0XHRcdHdpZHRoOiAkcGVyY2VudGFnZTtcblx0XHRcdG1heC13aWR0aDogMzUwcHg7XG5cdFx0XHRwYWRkaW5nLXRvcDogMi42cmVtO1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cblx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0fVxuXG5cdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRAaW5jbHVkZSBpbWFnZV9jb3ZlcigpO1xuXHRcdFx0XHRAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMywgNCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gQnJlYWsgdGhpcyBvdXQgaW50byBidXR0b24gc3R5bGVzIGxhdGVyXG5cdFx0LmJ0biB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWctcGF0aCArIFwiYXJyb3ctcmlnaHQtd2hpdGUuc3ZnXCIpO1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWctcGF0aCArIFwiYXJyb3ctcmlnaHQuc3ZnXCIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLnN0eWxlLTMge1xuXHRcdC53cmFwcGVyIHtcblx0XHRcdC8vIENpcmNsZSBiYWNrIHRvIGFkZCBtb2JpbGVcblx0XHRcdG1heC13aWR0aDogJHBlcmNlbnRhZ2U7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH1cblx0XHQuY29udGVudCB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHQvLyBtYXgtd2lkdGg6IDUwJTtcblx0XHRcdFx0bWF4LXdpZHRoOiA5MDBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnRpdGxlIHtcblx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDAuNTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmltYWdlLXdyYXBwZXIge1xuXHRcdFx0QGluY2x1ZGUgZmxleCgkanVzdGlmeTogZmxleC1zdGFydCk7XG5cdFx0XHRtYXJnaW46IDAgLTFyZW07XG5cdFx0fVxuXHRcdC5pbWFnZSB7XG5cdFx0XHRAaW5jbHVkZSBpbWFnZV9jb3ZlcigpO1xuXHRcdFx0QGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEwMCwgMjUpO1xuXHRcdFx0ZmxleDogMSAwIGNhbGMoMSAvIDMgKiAxMDAlIC0gMnJlbSk7XG5cdFx0XHRtYXgtd2lkdGg6IGNhbGMoMSAvIDMgKiAxMDAlIC0gMnJlbSk7XG5cdFx0XHRtYXJnaW4tbGVmdDogMXJlbTtcblx0XHRcdG1hcmdpbi1yaWdodDogMXJlbTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdFx0XHQmOm9ubHktY2hpbGQge1xuXHRcdFx0XHRAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMTAwLCAzNSk7XG5cdFx0XHRcdGZsZXg6IDEgMCBjYWxjKDEwMCUgLSAycmVtKTtcblx0XHRcdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLnN0eWxlLTQge1xuXHRcdC53cmFwcGVyIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHRcdC50aXRsZS13cmFwcGVyIHtcblx0XHRcdG1heC13aWR0aDogJHBlcmNlbnRhZ2U7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHR9XG5cdFx0LnRpdGxlIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDNyZW07XG5cdFx0fVxuXHRcdC50aXRsZSxcblx0XHQuaDEge1xuXHRcdFx0Zm9udC1zaXplOiA2LjJ2dztcblx0XHR9XG5cdFx0LmNvbnRlbnQge1xuXHRcdFx0cGFkZGluZzogMi40cmVtIDJyZW0gMDtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRcdHdpZHRoOiA1OCU7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiA1JTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmNvbnRlbnQtd3JhcHBlciB7XG5cdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XG5cdFx0XHRcdHdpZHRoOiA4NSU7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1x0XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gTmVzdGVkIGV2ZW50cyBpbnNpZGUgaGVyb3Ncblx0Lml0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW4tdG9wOiAzcmVtO1xuXHRcdHBhZGRpbmctdG9wOiAwLjhyZW07XG5cdFx0Lm1ldGEge1xuXHRcdFx0Zm9udC1zaXplOiAwLjhyZW07XG5cdFx0XHQudGl0bGUge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHR3aWR0aDogMThyZW07XG5cdFx0XHRcdFx0aGVpZ2h0OiA2cHg7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMS42cmVtO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0dGltZSArIHRpbWUge1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0d2lkdGg6IDAuMjRyZW07XG5cdFx0XHRcdFx0aGVpZ2h0OiAwLjI0cmVtO1xuXHRcdFx0XHRcdG1hcmdpbjogMCAwLjZyZW07XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8vIE1peGlucyByZXF1aXJlZCBmb3IgQml0dGVyc1xuQG1peGluIGNsZWFyZml4IHtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRjbGVhcjogYm90aDtcblx0fVxufVxuLy8gVmFycyByZXF1aXJlZCBmb3IgQml0dGVyc1xuJGFsbC1idXR0b25zOiBcImJ1dHRvbiwgW3R5cGU9J2J1dHRvbiddLCBbdHlwZT0ncmVzZXQnXSwgW3R5cGU9J3N1Ym1pdCddXCI7XG4kYWxsLWJ1dHRvbnMtYWN0aXZlOiBcImJ1dHRvbjphY3RpdmUsIFt0eXBlPSdidXR0b24nXTphY3RpdmUsIFt0eXBlPSdyZXNldCddOmFjdGl2ZSwgW3R5cGU9J3N1Ym1pdCddOmFjdGl2ZVwiO1xuJGFsbC1idXR0b25zLWZvY3VzOiBcImJ1dHRvbjpmb2N1cywgW3R5cGU9J2J1dHRvbiddOmZvY3VzLCBbdHlwZT0ncmVzZXQnXTpmb2N1cywgW3R5cGU9J3N1Ym1pdCddOmZvY3VzXCI7XG4kYWxsLWJ1dHRvbnMtaG92ZXI6IFwiYnV0dG9uOmhvdmVyLCBbdHlwZT0nYnV0dG9uJ106aG92ZXIsIFt0eXBlPSdyZXNldCddOmhvdmVyLCBbdHlwZT0nc3VibWl0J106aG92ZXJcIjtcbiRhbGwtdGV4dC1pbnB1dHM6IFwiW3R5cGU9J2NvbG9yJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RleHQnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nd2VlayddLCBpbnB1dDpub3QoW3R5cGVdKSwgdGV4dGFyZWFcIjtcbiRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlOiBcIlt0eXBlPSdjb2xvciddOmFjdGl2ZSwgW3R5cGU9J2RhdGUnXTphY3RpdmUsIFt0eXBlPSdkYXRldGltZSddOmFjdGl2ZSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106YWN0aXZlLCBbdHlwZT0nZW1haWwnXTphY3RpdmUsIFt0eXBlPSdtb250aCddOmFjdGl2ZSwgW3R5cGU9J251bWJlciddOmFjdGl2ZSwgW3R5cGU9J3Bhc3N3b3JkJ106YWN0aXZlLCBbdHlwZT0nc2VhcmNoJ106YWN0aXZlLCBbdHlwZT0ndGVsJ106YWN0aXZlLCBbdHlwZT0ndGV4dCddOmFjdGl2ZSwgW3R5cGU9J3RpbWUnXTphY3RpdmUsIFt0eXBlPSd1cmwnXTphY3RpdmUsIFt0eXBlPSd3ZWVrJ106YWN0aXZlLCBpbnB1dDpub3QoW3R5cGVdKTphY3RpdmUsIHRleHRhcmVhOmFjdGl2ZVwiO1xuJGFsbC10ZXh0LWlucHV0cy1mb2N1czogXCJbdHlwZT0nY29sb3InXTpmb2N1cywgW3R5cGU9J2RhdGUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSdudW1iZXInXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGV4dCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIGlucHV0Om5vdChbdHlwZV0pOmZvY3VzLCB0ZXh0YXJlYTpmb2N1c1wiO1xuJGFsbC10ZXh0LWlucHV0cy1ob3ZlcjogXCJbdHlwZT0nY29sb3InXTpob3ZlciwgW3R5cGU9J2RhdGUnXTpob3ZlciwgW3R5cGU9J2RhdGV0aW1lJ106aG92ZXIsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmhvdmVyLCBbdHlwZT0nZW1haWwnXTpob3ZlciwgW3R5cGU9J21vbnRoJ106aG92ZXIsIFt0eXBlPSdudW1iZXInXTpob3ZlciwgW3R5cGU9J3Bhc3N3b3JkJ106aG92ZXIsIFt0eXBlPSdzZWFyY2gnXTpob3ZlciwgW3R5cGU9J3RlbCddOmhvdmVyLCBbdHlwZT0ndGV4dCddOmhvdmVyLCBbdHlwZT0ndGltZSddOmhvdmVyLCBbdHlwZT0ndXJsJ106aG92ZXIsIFt0eXBlPSd3ZWVrJ106aG92ZXIsIGlucHV0Om5vdChbdHlwZV0pOmhvdmVyLCB0ZXh0YXJlYTpob3ZlclwiO1xuJGFsbC10ZXh0LWlucHV0cy1pbnZhbGlkOiBcIlt0eXBlPSdjb2xvciddOmludmFsaWQsIFt0eXBlPSdkYXRlJ106aW52YWxpZCwgW3R5cGU9J2RhdGV0aW1lJ106aW52YWxpZCwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106aW52YWxpZCwgW3R5cGU9J2VtYWlsJ106aW52YWxpZCwgW3R5cGU9J21vbnRoJ106aW52YWxpZCwgW3R5cGU9J251bWJlciddOmludmFsaWQsIFt0eXBlPSdwYXNzd29yZCddOmludmFsaWQsIFt0eXBlPSdzZWFyY2gnXTppbnZhbGlkLCBbdHlwZT0ndGVsJ106aW52YWxpZCwgW3R5cGU9J3RleHQnXTppbnZhbGlkLCBbdHlwZT0ndGltZSddOmludmFsaWQsIFt0eXBlPSd1cmwnXTppbnZhbGlkLCBbdHlwZT0nd2VlayddOmludmFsaWQsIGlucHV0Om5vdChbdHlwZV0pOmludmFsaWQsIHRleHRhcmVhOmludmFsaWRcIjtcbiIsIi5ibG9jay5saXN0aW5nIHtcblx0Ly8gU2V0dGluZyB0aGUgc3RhbmRhcmQgZm9yIGxpc3RpbmcgZ3JpZHMuIEFwcGxpZWQgdG8gcG9zdHMsIGV2ZW50cywgJiByZWNvcmRzXG5cdCYuZ3JpZCB7XG5cdFx0LndyYXBwZXIge1xuXHRcdFx0bWF4LXdpZHRoOiAkcGVyY2VudGFnZTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHRcdC5jb2wge1xuXHRcdFx0Ly8gb3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR9XG5cdFx0Lml0ZW1zIHtcblx0XHRcdEBpbmNsdWRlIGZsZXgoJGFsaWduOiBmbGV4LXN0YXJ0KTtcblxuXHRcdFx0QGluY2x1ZGUgdGFibGV0LXBvcnRyYWl0LXVwIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0xLjRyZW07XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogLTEuNHJlbTtcblx0XHRcdFx0QGluY2x1ZGUgZmxleCgkanVzdGlmeTogZmxleC1zdGFydCwgJGFsaWduOiBmbGV4LXN0YXJ0KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Lml0ZW0ge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDFyZW07XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMS40cmVtO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEuNHJlbTtcdFxuXHRcdFx0XHRmbGV4OiAxIDAgY2FsYygoMSAvIDIgKiAxMDAlKSAtIDIuOHJlbSk7XG5cdFx0XHRcdG1heC13aWR0aDogY2FsYygoMSAvIDIgKiAxMDAlKSAtIDIuOHJlbSk7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0ZmxleDogMSAwIGNhbGMoKDEgLyAzICogMTAwJSkgLSAyLjhyZW0pO1xuXHRcdFx0XHRtYXgtd2lkdGg6IGNhbGMoKDEgLyAzICogMTAwJSkgLSAyLjhyZW0pO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQubm8tcmVjb3JkcyB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMzVweDtcblx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gQnJlYWtpbmcgdGhlIHN0YW5kYXJkIHdpdGggcmVjb3JkcyBiZWNhdXNlIHRoZXkgc2hvdWxkIGJlIGluIGEgMS81IGdyaWRcblx0Lml0ZW0ucmVjb3JkIHtcblx0XHRmbGV4OiAxIDAgY2FsYygoMSAvIDUgKiAxMDAlKSAtIDIuOHJlbSk7XG5cdFx0bWF4LXdpZHRoOiBjYWxjKCgxIC8gNSAqIDEwMCUpIC0gMi44cmVtKTtcblx0XHRtaW4td2lkdGg6IDIwMHB4O1xuXHRcdC5tZXRhIHtcblx0XHRcdGZvbnQtc2l6ZTogMC44cmVtO1xuXHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuXHRcdFx0XHRmb250LXNpemU6IDFlbTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRoZWFkaW5nLWZvbnQtd2VpZ2h0O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS40O1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmltYWdlIHtcblx0XHRcdEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLCAxKTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEuNHJlbTtcblx0XHRcdCYucGxhY2Vob2xkZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltZy1wYXRoICsgXCJsb2dvLXdoaXRlLWljb24uc3ZnXCIpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDYwJTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5hdXRob3Ige1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdFx0LmJ1dHRvbnMge1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0fVxuXHR9XG5cblx0Ly8gU3R5bGluZyBwb3N0cyBhbmQgZXZlbnRzIHRvIG1hdGNoIHRoZSBzaW5nbGUgdGVtcGxhdGVzXG5cdC5pdGVtLnBvc3QsXG5cdC5pdGVtLmV2ZW50IHtcblx0XHQubWV0YSB7XG5cdFx0XHRmb250LXNpemU6IDAuOHJlbTtcblx0XHRcdHRpbWUgKyB0aW1lIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHdpZHRoOiAwLjI0cmVtO1xuXHRcdFx0XHRcdGhlaWdodDogMC4yNHJlbTtcblx0XHRcdFx0XHRtYXJnaW46IDAgMC42cmVtO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAwLjNyZW07XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuY2F0ZWdvcnkgYSB7XG5cdFx0XHRcdGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdH1cblx0XHRcdC5kYXRlLFxuXHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMC43cmVtO1xuXHRcdFx0fVxuXHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHR9XG5cdFx0XHRwIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBMaXN0aW5nIHN0eWxlcyB0aGF0IGFwcGx5IHRvIGFsbCBpdGVtIHR5cGVzXG5cblx0QGluY2x1ZGUgY2xlYXJMaXN0KCk7XG5cblx0Lml0ZW0td3JhcHBlciB7XG5cdFx0bWF4LXdpZHRoOiAzODBweDtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0fVxuXG5cdC5jYXRlZ29yeSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuIiwiLmJsb2NrLnRpbWVsaW5lIHtcblx0LndyYXBwZXIge1xuXHRcdG1heC13aWR0aDogODUlO1xuXHR9XG5cdC5pdGVtIHtcblx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdEBpbmNsdWRlIGZsZXgoJGp1c3RpZnk6IGZsZXgtc3RhcnQsICRhbGlnbjogc3RyZXRjaCk7XG5cdFx0fVxuXHR9XG5cdC5jb2wge1xuXHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0ZmxleDogMSAwIDUwJTtcblx0XHRcdG1heC13aWR0aDogNTAlO1xuXHRcdH1cblx0fVxuXHQuY29sLmNvbnRlbnQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMnJlbTtcblx0XHQmOmFmdGVyIHtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHR3aWR0aDogM3B4O1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblx0XHRcdH1cblx0XHR9XG5cdFx0LnRpdGxlLFxuXHRcdC5kZXRhaWxzIHtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAycmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQudGl0bGUge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMC4yOHJlbTtcblx0XHR9XG5cdFx0LmRldGFpbHMge1xuXHRcdFx0KjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmNvbC5tZWRpYSB7XG5cdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDJyZW07XG5cdFx0fVxuXG5cdFx0Ly8gcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1heC13aWR0aDogNDAwcHg7XG5cdFx0cGFkZGluZy10b3A6IDE0cHg7IC8vIFRoaXMgd2lsbCBjaGFuZ2UgaWYgdGhlIHBvc2l0aW9uIG9mIHRoZSB0aXRsZSBiYXIgY2hhbmdlc1xuXHRcdC8vIFJlcG9zaXRpb24gdGhlIGxpZ2h0Ym94IGRvd24gMTRweCBhbmQgdG8gdGhlIHJpZ2h0XG5cdFx0QGluY2x1ZGUgbGlnaHRib3goKTtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR0b3A6IDE0cHg7XG5cdFx0XHRsZWZ0OiAycmVtO1xuXHRcdH1cblx0fVxuXG5cdC50aW1lbGluZS10aXRsZSxcblx0LnRpdGxlIHtcblx0XHRAZXh0ZW5kIC5oNTtcblx0fVxuXHQudGltZWxpbmUtdGl0bGUge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0cGFkZGluZy1ib3R0b206IDFyZW07XG5cdH1cblx0Lml0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuXHRcdC50aW1lbGluZS10aXRsZSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMXJlbTtcblx0XHR9XG5cdH1cblx0LnRpdGxlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0d2lkdGg6IDUwcHg7XG5cdFx0XHRcdGhlaWdodDogM3B4O1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IGNhbGMoNTAlIC0gMS41cHgpO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLmJsb2NrLnRhYmxlIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0LndyYXBwZXItdGFibGUge1xuXHRcdG92ZXJmbG93LXg6IHNjcm9sbDtcblx0fVxuXHQuY29udGVudCB7XG5cdFx0bWF4LXdpZHRoOiA4MDBweDtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblx0LmJ4LS1kYXRhLXRhYmxlIHtcblx0XHR3aWR0aDogYXV0bztcblx0XHR0ciB7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0fVxuXHRcdHRoIHtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuXHRcdH1cblx0XHQuYngtLXRhYmxlLWhlYWRlci1sYWJlbCB7XG5cdFx0XHR0ZXh0LWFsaWduOiB1bnNldDtcblx0XHR9XG5cdFx0dGgsXG5cdFx0dGQge1xuXHRcdFx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0XHRmb250LXNpemU6ICR0YWJsZXQtZm9udC1zaXplOyAvLyB0YWJsZXQgZm9udCBzaXplXG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0Zm9udC1zaXplOiAkZGVza3RvcC1mb250LXNpemU7IC8vIGRlc2t0b3AgZm9udCBzaXplXG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBkZXNrdG9wLXVwIHtcblx0XHRcdFx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7IC8vIGJhc2Ugb3IgbGFyZ2UgZm9udCBzaXplXG5cdFx0XHR9XG5cdFx0fVxuXHRcdHRkOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHR9XG5cdFx0dGQsXG5cdFx0dGJvZHkgdGgge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHR9XG5cdFx0LmJ4LS10YWJsZS1oZWFkZXItbGFiZWwge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cdH1cbn1cbiIsIi5ibG9jay5nYWxsZXJ5IHtcblx0LndyYXBwZXIge1xuXHRcdG1heC13aWR0aDogJHBlcmNlbnRhZ2U7XG5cdFx0cGFkZGluZzogMDtcblx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdHBhZGRpbmc6IDAgMS4ycmVtO1xuXHRcdH1cblx0fVxuXHQucm93IHtcblx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdEBpbmNsdWRlIGZsZXgoJGFsaWduOiBmbGV4LXN0YXJ0KTtcblx0XHR9XG5cdH1cblx0LmNvbC5jb250ZW50IHtcblx0XHRwYWRkaW5nOiAwIDJyZW0gMnJlbTtcblx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdGZsZXg6IDEgMCA2MCU7XG5cdFx0XHRtYXgtd2lkdGg6IDYwJTtcblx0XHRcdHBhZGRpbmc6IDAgMi40cmVtIDAgMDtcblx0XHR9XG5cdH1cblx0LmNvbC5pbWFnZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0ZmxleDogMSAwIDQwJTtcblx0XHRcdG1heC13aWR0aDogNDAlO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBsaWdodGJveCgpO1xuXHR9XG59XG4iLCIuYmxvY2subWFwIHtcblx0LndyYXBwZXIge1xuXHRcdG1heC13aWR0aDogJHBlcmNlbnRhZ2U7XG5cdH1cbn1cbiIsIi5jb21wb25lbnQuc2hhcmUge1xuXHRAaW5jbHVkZSBjbGVhckxpc3Q7XG5cdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdHBhZGRpbmctdG9wOiAzMHB4O1xuXHQud3JhcHBlciB7XG5cdFx0QGluY2x1ZGUgZmxleCgkanVzdGlmeTogZmxleC1zdGFydCk7XG5cdH1cblx0Ly8gQnV0dG9uXG5cdC50b2dnbGUtc2hhcmUge1xuXHRcdEBpbmNsdWRlIGNsZWFyQnRuO1xuXHRcdEBpbmNsdWRlIGZsZXgoKTtcblx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWctcGF0aCArIFwic2hhcmUuc3ZnXCIpO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiA1MCU7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0d2lkdGg6IDEuOHJlbTtcblx0XHRcdGhlaWdodDogMS44cmVtO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDAuNnJlbTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDEuOHJlbTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdH1cblx0fVxuXG5cdC5zb2NpYWwtbWVudSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRmb250LXNpemU6IDA7XG5cdFx0Ji5zaG93IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0fVxuXHRcdC5tZW51LWl0ZW0ge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0Zm9udC1zaXplOiAwO1xuXHRcdFx0Jjpub3QoOmZpcnN0LWNoaWxkKSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHRhIHtcblx0XHRcdEBpbmNsdWRlIGZsZXgoKTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHdpZHRoOiAxLjhyZW07XG5cdFx0XHRoZWlnaHQ6IDEuOHJlbTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDEuOHJlbTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0Zm9udC1zaXplOiAwO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuOHJlbTtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAkYmFzZS1kdXJhdGlvbiAkYmFzZS10aW1pbmc7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGhvdmVyO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRzdmcge1xuXHRcdFx0d2lkdGg6IDAuOXJlbTtcblx0XHRcdGhlaWdodDogMC45cmVtO1xuXHRcdH1cblx0fVxufSIsIi5jb21wb25lbnQubm90aWZpY2F0aW9uLFxuLmNvbXBvbmVudC5jb29raWUtbm90aWNlIHtcblx0bWF4LXdpZHRoOiBub25lO1xuXHRtYXJnaW46IDA7XG5cdGJvcmRlcjogbm9uZTtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0LnJvdyB7XG5cdFx0cGFkZGluZzogMC40cmVtIDA7XG5cdH1cblx0Ji5oaWRlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cdC50b2dnbGUtd3JhcHBlciB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblx0YnV0dG9uIHtcblx0XHRAaW5jbHVkZSBjbGVhckJ0bjtcblx0fVxuXHRoMiB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcblx0fVxuXHRoMixcblx0cCxcblx0YSxcblx0YnV0dG9uIHtcblx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0Zm9udC1zaXplOiAwLjg4cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHR9XG5cdGEge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHR9XG5cdGJ1dHRvbiB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdH1cblx0LmJ4LS1pbmxpbmUtbm90aWZpY2F0aW9uIHtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0fVxuXHQuYngtLWlubGluZS1ub3RpZmljYXRpb25fX3RleHQtd3JhcHBlciB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblx0LmJ4LS1pbmxpbmUtbm90aWZpY2F0aW9uX19jbG9zZS1idXR0b24ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0aGVpZ2h0OiAxLjkycmVtO1xuXHRcdHdpZHRoOiAxLjkycmVtO1xuXHRcdG1hcmdpbi1yaWdodDogMC41cmVtO1xuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZS1vZmZzZXQ6IDA7XG5cdFx0fVxuXHR9XG5cdC5ieC0taW5saW5lLW5vdGlmaWNhdGlvbl9fYWN0aW9uLWJ1dHRvbiB7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG5cdC5ieC0taW5saW5lLW5vdGlmaWNhdGlvbl9fYWN0aW9uLWJ1dHRvbixcblx0LmJ4LS1pbmxpbmUtbm90aWZpY2F0aW9uX19jbG9zZS1idXR0b24ge1xuXHRcdHRyYW5zaXRpb246IG5vbmU7XG5cdH1cbn1cblxuLmNvbXBvbmVudC5ub3RpZmljYXRpb24ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuXHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xuXHQud3JhcHBlciB7XG5cdFx0cGFkZGluZzogMCAyLjRyZW07XG5cdH1cblx0LmJ4LS1pbmxpbmUtbm90aWZpY2F0aW9uX19jbG9zZS1idXR0b25cblx0XHQuYngtLWlubGluZS1ub3RpZmljYXRpb25fX2Nsb3NlLWljb24ge1xuXHRcdGZpbGw6ICRibGFjaztcblx0fVxuXHQuYngtLWlubGluZS1ub3RpZmljYXRpb25fX2FjdGlvbi1idXR0b24ge1xuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZS1jb2xvcjogJGJsYWNrO1xuXHRcdH1cblx0fVxuXHQuYngtLWlubGluZS1ub3RpZmljYXRpb25fX3N1YnRpdGxlIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cblxuLmNvbXBvbmVudC5jb29raWUtbm90aWNlIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdHJpZ2h0OiAwO1xuXHR3aWR0aDogMTAwJTtcblxuXHRjb2xvcjogJHdoaXRlO1xuXHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdHotaW5kZXg6IDEwO1xuXHRidXR0b24sXG5cdGEge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdH1cblx0LmJ4LS1pbmxpbmUtbm90aWZpY2F0aW9uX19jbG9zZS1idXR0b24ge1xuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZS1jb2xvcjogJHdoaXRlO1xuXHRcdH1cblx0fVxufVxuIiwiLmNvbXBvbmVudC5pbnRybyB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcclxuXHJcbi4jeyRnbGlkZS1jbGFzc30ge1xyXG4gICR0aGlzOiAmO1xyXG5cclxuICAkc2U6ICRnbGlkZS1lbGVtZW50LXNlcGFyYXRvcjtcclxuICAkc206ICRnbGlkZS1tb2RpZmllci1zZXBhcmF0b3I7XHJcblxyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAqIHtcclxuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbiAgfVxyXG5cclxuICAmI3skc2V9dHJhY2sge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gICYjeyRzZX1zbGlkZXMge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAgIHRvdWNoLWFjdGlvbjogcGFuLVk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xyXG5cclxuICAgICYjeyRnbGlkZS1tb2RpZmllci1zZXBhcmF0b3J9ZHJhZ2dpbmcge1xyXG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYjeyRzZX1zbGlkZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xyXG4gICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmI3skc2V9YXJyb3dzIHtcclxuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJiN7JHNlfWJ1bGxldHMge1xyXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmI3skc219cnRsIHtcclxuICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0ICd2YXJpYWJsZXMnO1xyXG5cclxuLiN7JGdsaWRlLWNsYXNzfSB7XHJcbiAgJHRoaXM6ICY7XHJcblxyXG4gICRzZTogJGdsaWRlLWVsZW1lbnQtc2VwYXJhdG9yO1xyXG4gICRzbTogJGdsaWRlLW1vZGlmaWVyLXNlcGFyYXRvcjtcclxuXHJcbiAgJiN7JHNlfWFycm93IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHBhZGRpbmc6IDlweCAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBib3gtc2hhZG93OiAwIDAuMjVlbSAwLjVlbSAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIHRleHQtc2hhZG93OiAwIDAuMjVlbSAwLjVlbSByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBlYXNlLCBib3JkZXIgMzAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuXHJcbiAgICAmOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxyXG4gICAgJjpob3ZlciB7IGJvcmRlci1jb2xvcjogd2hpdGU7IH1cclxuXHJcbiAgICAmI3skc219bGVmdCB7XHJcbiAgICAgIGxlZnQ6IDJlbTtcclxuICAgIH1cclxuXHJcbiAgICAmI3skc219cmlnaHQge1xyXG4gICAgICByaWdodDogMmVtO1xyXG4gICAgfVxyXG5cclxuICAgICYjeyRzbX1kaXNhYmxlZCB7XHJcbiAgICAgIG9wYWNpdHk6IDAuMzM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmI3skc2V9YnVsbGV0cyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgYm90dG9tOiAyZW07XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgfVxyXG5cclxuICAmI3skc2V9YnVsbGV0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICAgIHdpZHRoOiA5cHg7XHJcbiAgICBoZWlnaHQ6IDlweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgYm94LXNoYWRvdzogMCAwLjI1ZW0gMC41ZW0gMCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICBtYXJnaW46IDAgMC4yNWVtO1xyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICAgIH1cclxuXHJcbiAgICAmI3skc219YWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmI3skc219c3dpcGVhYmxlIHtcclxuICAgIGN1cnNvcjogZ3JhYjtcclxuICAgIGN1cnNvcjogLW1vei1ncmFiO1xyXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XHJcbiAgfVxyXG5cclxuICAmI3skc219ZHJhZ2dpbmcge1xyXG4gICAgY3Vyc29yOiBncmFiYmluZztcclxuICAgIGN1cnNvcjogLW1vei1ncmFiYmluZztcclxuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcclxuICB9XHJcbn1cclxuIiwiLy8gUmVxdWlyZWQgQ29yZSBTdHlsZXNoZWV0XG5AaW1wb3J0IFwiLi9ub2RlX21vZHVsZXMvQGdsaWRlanMvZ2xpZGUvc3JjL2Fzc2V0cy9zYXNzL2dsaWRlLmNvcmVcIjtcblxuLy8gT3B0aW9uYWwgVGhlbWUgU3R5bGVzaGVldFxuQGltcG9ydCBcIi4vbm9kZV9tb2R1bGVzL0BnbGlkZWpzL2dsaWRlL3NyYy9hc3NldHMvc2Fzcy9nbGlkZS50aGVtZVwiO1xuXG4uZ2xpZGUge1xuXHQuc2xpZGUtY291bnRlciB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6IDAuNHJlbSAwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR6LWluZGV4OiAxO1xuXHR9XG5cdC5nbGlkZV9fdHJhY2sge1xuXHRcdHRyYW5zaXRpb246IGhlaWdodCAkYmFzZS1kdXJhdGlvbiAkYmFzZS10aW1pbmc7XG5cdFx0LmdsaWRlX19zbGlkZSB7XG5cdFx0XHRhOmZvY3VzIHtcblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4ICRibGFjaztcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5nbGlkZV9fYXJyb3dzIHtcblx0XHRAaW5jbHVkZSBmbGV4KFxuXHRcdFx0JGp1c3RpZnk6IHNwYWNlLWJldHdlZW4sXG5cdFx0XHQkYWxpZ246IGZsZXgtc3RhcnQsXG5cdFx0XHQkd3JhcDogbm93cmFwXG5cdFx0KTtcblx0fVxuXHQuZ2xpZGVfX2Fycm93LS1sZWZ0LFxuXHQuZ2xpZGVfX2Fycm93LS1yaWdodCB7XG5cdFx0QGluY2x1ZGUgY2xlYXJCdG47XG5cdFx0cGFkZGluZzogMC40cmVtIDEuMnJlbTtcblxuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0dHJhbnNpdGlvbjogYWxsICRiYXNlLWR1cmF0aW9uICRiYXNlLXRpbWluZztcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdGJhY2tncm91bmQ6ICRibGFjaztcblx0XHRmb250LXNpemU6ICRtb2JpbGUtZm9udC1zaXplO1xuXHRcdHotaW5kZXg6IDI7XG5cblx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0Zm9udC1zaXplOiAkdGFibGV0LWZvbnQtc2l6ZTsgLy8gdGFibGV0IGZvbnQgc2l6ZVxuXHRcdH1cblx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdGZvbnQtc2l6ZTogJGRlc2t0b3AtZm9udC1zaXplOyAvLyBkZXNrdG9wIGZvbnQgc2l6ZVxuXG5cdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0YmFja2dyb3VuZDogJHRyYW5zcGFyZW50O1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGRlc2t0b3AtdXAge1xuXHRcdFx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7IC8vIGJhc2Ugb3IgbGFyZ2UgZm9udCBzaXplXG5cdFx0fVxuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdFx0fVxuXHR9XG5cdGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn1cbiIsIkBpbXBvcnQgXCJzaGFyZVwiO1xuQGltcG9ydCBcIm5vdGlmaWNhdGlvblwiO1xuQGltcG9ydCBcImNvb2tpZS1ub3RpY2VcIjtcbkBpbXBvcnQgXCJpbnRyb1wiO1xuQGltcG9ydCBcInNsaWRlclwiO1xuQGltcG9ydCBcImxpZ2h0Ym94XCI7XG5cbi5jb21wb25lbnQubGFyZ2UtdGl0bGUge1xuXHRtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuIiwiLnJlbGF0ZWQtdGl0bGUge1xuXHRtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4uYmxvY2suc2luZ2xlIHtcblx0cGFkZGluZy10b3A6IDJyZW07XG5cdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cblx0LndyYXBwZXIge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0Ji5leGhpYml0LXdyYXBwZXIge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0fVxuXHR9XG5cdC5hcnRpY2xlIHtcblx0XHRAaW5jbHVkZSBmbGV4KCk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHBhZGRpbmctdG9wOiAycmVtO1xuXHRcdEBpbmNsdWRlIHRhYmxldC1wb3J0cmFpdC11cCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdH1cblx0Lm1ldGEge1xuXHRcdGZvbnQtc2l6ZTogMC44cmVtO1xuXHRcdC50aXRsZTpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDE4cmVtO1xuXHRcdFx0aGVpZ2h0OiA2cHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxLjZyZW07XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0fVxuXHRcdHRpbWUgKyB0aW1lIHtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMC4yNHJlbTtcblx0XHRcdFx0aGVpZ2h0OiAwLjI0cmVtO1xuXHRcdFx0XHRtYXJnaW46IDAgMC42cmVtO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuY2F0ZWdvcnkgYSB7XG5cdFx0XHRjb2xvcjogJGJhc2UtZm9udC1jb2xvcjtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0XHQuZGF0ZSxcblx0XHQudGl0bGUge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMS4ycmVtO1xuXHRcdH1cblx0XHRwIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0Ji5yZWNvcmQge1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0cGFkZGluZy10b3A6IDJyZW07XG5cdFx0fVxuXHRcdC5jb250ZW50IHtcblx0XHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRcdH1cblx0XHQudGl0bGUge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQvLyBBbHNvIGhhcHBlbmluZyBpbiBIZXJvIFN0eWxlIDVcblx0XHQudGl0bGUge1xuXHRcdFx0dGV4dC1zaGFkb3c6IDAuMDNlbSAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksXG5cdFx0XHRcdC0wLjAzZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdFx0XHQwIDAuMDNlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdFx0XHQwIC0wLjAzZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSxcblx0XHRcdFx0MC4wNmVtIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSxcblx0XHRcdFx0LTAuMDZlbSAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksXG5cdFx0XHRcdDAuMDllbSAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksXG5cdFx0XHRcdC0wLjA5ZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdFx0XHQwLjEyZW0gMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuXHRcdFx0XHQtMC4xMmVtIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSxcblx0XHRcdFx0MC4xNWVtIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSxcblx0XHRcdFx0LTAuMTVlbSAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICR5ZWxsb3cgNTAlLCAkd2hpdGUgNTAlKTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMjAwJSAxMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAzcHg7XG5cdFx0XHQvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCU7IC8vIEJlZm9yZSBhbmltYXRpb25cblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAlIDEwMCU7IC8vIEFuaW1hdGlvbiBwb3NpdGlvblxuXHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiA4MDBtcyBlYXNlLWluLW91dCA0MDBtcztcblx0XHR9XG5cdFx0Ji5hbmltYXRlIC51bmRlcmxpbmUge1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMTAwJTtcblx0XHR9XG5cblx0XHQuY29udGVudC13cmFwcGVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdC5jb250ZW50LWlubmVyIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnRleHQge1xuXHRcdFx0XHRvcmRlcjogMjtcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0XHRmbGV4OiAxIDAgMTAwJTtcblxuXHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0XHR3aWR0aDogNTUlO1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDNyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmltYWdlIHtcblx0XHRcdFx0b3JkZXI6IDE7XG5cdFx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdFx0ZmxleDogMSAwIDEwMCU7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0d2lkdGg6IDQ1JTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5sYWJlbCB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0fVxuXHRcdFx0LmJ1dHRvbnMge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5hcnRpY2xlID4gLnRleHQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMi42cmVtO1xuXHRcdH1cblx0XHQuYXJ0aWNsZSA+IC50ZXh0LFxuXHRcdC5jb250ZW50LWlubmVyIHtcblx0XHRcdHBhZGRpbmc6IDAgMnJlbTtcblx0XHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0XHR3aWR0aDogJHBlcmNlbnRhZ2U7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0XHRcdHBhZGRpbmc6IDAgMS4ycmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYucG9zdCxcblx0Ji5ldmVudCB7XG5cdFx0LnRleHQge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdG9yZGVyOiAxO1xuXHRcdFx0ZmxleDogMSAwIDEwMCU7XG5cdFx0XHRwYWRkaW5nOiAwIDJyZW07XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0d2lkdGg6ICRwZXJjZW50YWdlO1xuXHRcdFx0XHRwYWRkaW5nOiAwIDEuMnJlbTtcblx0XHRcdH1cblx0XHRcdC5jb250ZW50IHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDEuNnJlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmltYWdlLXdyYXBwZXIge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRvcmRlcjogMjtcblx0XHRcdGZsZXg6IDEgMCAxMDAlO1xuXHRcdFx0cGFkZGluZy10b3A6IDJyZW07XG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtcG9ydHJhaXQtdXAge1xuXHRcdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDFyZW07XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXHRcdFx0fVxuXHRcdFx0LmltYWdlIHtcblx0XHRcdFx0QGluY2x1ZGUgaW1hZ2VfY292ZXIoKTtcblx0XHRcdFx0QGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsIDEpO1xuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIuYmxvY2suZXhoaWJpdCB7XG5cdEBpbmNsdWRlIGNsZWFyTGlzdDtcblx0bWFyZ2luLWJvdHRvbTogMnJlbTtcblx0LndyYXBwZXIge1xuXHRcdG1heC13aWR0aDogJHBlcmNlbnRhZ2U7XG5cdH1cblx0Lm5hdmlnYXRpb24ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRAaW5jbHVkZSBmbGV4KCRhbGlnbjogZmxleC1zdGFydCwgJGp1c3RpZnk6IGZsZXgtc3RhcnQpO1xuXHR9XG5cdC50aXRsZSB7XG5cdFx0b3JkZXI6IDE7XG5cdFx0d2lkdGg6IDEwMCVcblx0fVxuXHQuY2hpbGQtbmF2IHtcblx0XHRvcmRlcjogMjtcblx0XHRmbGV4OiAxIDAgMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW4tYm90dG9tOiAxLjRyZW07XG5cdFx0cGFkZGluZzogMDtcblx0XHRAaW5jbHVkZSBmbGV4KCRqdXN0aWZ5OiBzcGFjZS1iZXR3ZWVuKTtcblxuXHRcdEBpbmNsdWRlIHRhYmxldC1sYW5kc2NhcGUtdXAge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ly8gdG9wOiA2cmVtO1xuXHRcdFx0bGVmdDogNjAlO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcblx0XHRcdC5idG4ge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRAaW5jbHVkZSB0aW55LXBob25lcyB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YTpmaXJzdC1vZi10eXBlIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LnRhYmxlLW9mLWNvbnRlbnRzIHtcblx0XHRvcmRlcjogMTtcblx0XHRmbGV4OiAxIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDM2MHB4O1xuXHRcdC8vIG1hcmdpbi1ib3R0b206IDJyZW07XG5cdFx0bWFyZ2luLXRvcDogMjVweDsgXG5cdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0fVxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAzcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuXG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQtbGFuZHNjYXBlLXVwIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDAuMzIpO1xuXHRcdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuXHRcdFx0XHQvLyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGJhc2UtZHVyYXRpb24gJGJhc2UtdGltaW5nO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLm9wZW4ge1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuXHRcdFx0fVxuXHRcdFx0LmJ1dHRvbjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiLVwiO1xuXHRcdFx0fVxuXHRcdFx0Lml0ZW1zIHtcblx0XHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdFx0bWFyZ2luLXRvcDogMjVweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmJ1dHRvbiB7XG5cdFx0XHRAaW5jbHVkZSBjbGVhckJ0bjtcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiBcIitcIjtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDAuNnJlbTtcblx0XHRcdH1cblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRvdXRsaW5lOiAkZm9jdXMtb3V0bGluZTtcblx0XHRcdFx0b3V0bGluZS1vZmZzZXQ6ICRmb2N1cy1vdXRsaW5lLW9mZnNldDtcblx0XHRcdH1cblx0XHR9XG5cdFx0YSxcblx0XHQuYnV0dG9uIHtcblx0XHRcdGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuXHRcdFx0Zm9udC1zaXplOiAwLjhyZW07XG5cdFx0fVxuXHRcdC5pdGVtcyB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMC40cmVtO1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0LWxhbmRzY2FwZS11cCB7XG5cdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMzAwcHgsIDFmcikpO1xuXHRcdFx0XHRncmlkLWdhcDogMXJlbTtcblx0XHRcdH1cblx0XHRcdC5pdGVtIHsgXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiQGltcG9ydCBcIi4vc2luZ2xlXCI7XG5AaW1wb3J0IFwiLi9leGhpYml0LnNjc3NcIjtcblxuLnBhZ2UtdGVtcGxhdGUtdGhlLWNvbGxlY3Rpb24ge1xuXHQuYmxvY2suaGVyby5zdHlsZS0xIHtcblx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xuXHR9XG5cdC5maWVsZHNldC5maWx0ZXJzIHtcblx0XHQuZmFjZXQtd3JhcCB7XG5cdFx0XHR3aWR0aDogY2FsYygoMiAvIDUgKiAxMDAlKSAtIDEuNHJlbSk7XG5cdFx0fVxuXHRcdC5mYWNldC1sYWJlbCB7XG5cdFx0XHRtYXJnaW46IDAgMnJlbSAwIDA7XG5cdFx0fVxuXHR9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/