.wpforms-chat-forms-shell,
.wpforms-chat-forms-composer-bar {
  display: none;
}

div.wpforms-container.wpforms-chat-forms-container {
  --wpforms-chat-forms-accent: var( --wpforms-button-background-color, #066aab );
  --wpforms-chat-forms-accent-text: var( --wpforms-button-text-color, #ffffff );
  --wpforms-chat-forms-surface: var( --wpforms-field-background-color, #ffffff );
  --wpforms-chat-forms-text: var( --wpforms-label-color, #2d2d2d );
  --wpforms-chat-forms-field-text: var( --wpforms-field-text-color, #2d2d2d );
  --wpforms-chat-forms-muted: var( --wpforms-label-sublabel-color, #757575 );
  --wpforms-chat-forms-border: var( --wpforms-field-border-color, #d6d6d6 );
  --wpforms-chat-forms-bubble: var( --wpforms-field-background-color, #f0f1f3 );
  --wpforms-chat-forms-error: var( --wpforms-label-error-color, #d63637 );
  --wpforms-chat-forms-radius: 12px;
  --wpforms-chat-forms-transition: 0.05s;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-native-hidden > .wpforms-field-container,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-native-hidden > .wpforms-submit-container {
  display: none;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-shell {
  display: flex;
  flex-direction: column;
  border: var(--wpforms-field-border-size, 1px) var(--wpforms-field-border-style, solid) var(--wpforms-chat-forms-border);
  border-radius: var(--wpforms-container-border-radius, 12px);
  color: var(--wpforms-chat-forms-text);
  min-height: 420px;
  max-height: 75vh;
  overflow: hidden;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--wpforms-chat-forms-border);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-avatar {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 50%;
  background: var(--wpforms-chat-forms-accent);
  position: relative;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-avatar::after {
  content: "";
  position: absolute;
  inset: 11px;
  border-radius: 50%;
  background: var(--wpforms-chat-forms-accent-text);
  opacity: 0.9;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-identity {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-width: 0;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-name {
  font-weight: 600;
  font-size: 15px;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-disclosure,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progress {
  font-size: 12px;
  line-height: 1.3;
  color: var(--wpforms-chat-forms-muted);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-escape-hatch {
  background: none;
  border: none;
  padding: 4px 0;
  font-size: 12px;
  color: var(--wpforms-chat-forms-muted);
  text-decoration: underline;
  cursor: pointer;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-escape-hatch:hover, div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-escape-hatch:focus {
  color: var(--wpforms-chat-forms-text);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-thread {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-thread > * {
  flex: 0 0 auto;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-message {
  display: flex;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-message.wpforms-chat-forms-message-assistant {
  justify-content: flex-start;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-message.wpforms-chat-forms-message-assistant .wpforms-chat-forms-bubble {
  background: var(--wpforms-chat-forms-bubble);
  border: 1px solid var(--wpforms-chat-forms-border);
  color: var(--wpforms-chat-forms-field-text);
  border-bottom-left-radius: 4px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-message.wpforms-chat-forms-message-visitor {
  justify-content: flex-end;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-message.wpforms-chat-forms-message-visitor .wpforms-chat-forms-bubble {
  background: var(--wpforms-chat-forms-accent);
  color: var(--wpforms-chat-forms-accent-text);
  border-bottom-right-radius: 4px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-bubble {
  max-width: 78%;
  padding: 10px 14px;
  border-radius: var(--wpforms-chat-forms-radius);
  font-size: 15px;
  line-height: 1.45;
  white-space: pre-wrap;
  overflow-wrap: break-word;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-meta {
  font-size: 12px;
  color: var(--wpforms-chat-forms-muted);
  text-align: center;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-typing .wpforms-chat-forms-bubble {
  display: flex;
  gap: 4px;
  align-items: center;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-typing .wpforms-chat-forms-bubble span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--wpforms-chat-forms-muted);
  animation: wpforms-chat-forms-typing 1s infinite ease-in-out;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-typing .wpforms-chat-forms-bubble span:nth-child(2) {
  animation-delay: 0.15s;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-typing .wpforms-chat-forms-bubble span:nth-child(3) {
  animation-delay: 0.3s;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  background: var(--wpforms-chat-forms-surface);
  border: 1px solid var(--wpforms-chat-forms-accent);
  border-radius: 999px;
  color: var(--wpforms-chat-forms-accent);
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  min-width: 32px;
  min-height: 32px;
  padding: 7px 10px;
  transition: background var(--wpforms-chat-forms-transition) ease, color var(--wpforms-chat-forms-transition) ease;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-chip:hover, div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-chip:focus, div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-chip.is-selected {
  background: var(--wpforms-chat-forms-accent);
  color: var(--wpforms-chat-forms-accent-text);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-chip:focus-visible {
  outline: 2px solid var(--wpforms-chat-forms-accent);
  outline-offset: 2px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-native-slot {
  background: var(--wpforms-chat-forms-bubble);
  border-radius: var(--wpforms-chat-forms-radius);
  padding: 14px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review {
  border: 1px solid var(--wpforms-chat-forms-border);
  border-radius: var(--wpforms-chat-forms-radius);
  overflow: hidden;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-row + .wpforms-chat-forms-review-row {
  border-top: 1px solid var(--wpforms-chat-forms-border);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-edit {
  display: flex;
  align-items: baseline;
  gap: 10px;
  width: 100%;
  background: none;
  border: none;
  padding: 12px 14px;
  text-align: left;
  font-size: 14px;
  cursor: pointer;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-edit:hover, div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-edit:focus {
  background: var(--wpforms-chat-forms-bubble);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-label {
  flex: 0 0 auto;
  max-width: 40%;
  color: var(--wpforms-chat-forms-muted);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-value {
  flex: 1 1 auto;
  color: var(--wpforms-chat-forms-text);
  overflow-wrap: anywhere;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-action {
  flex: 0 0 auto;
  color: var(--wpforms-chat-forms-accent);
  text-decoration: underline;
  font-size: 13px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-submit {
  display: block;
  width: 100%;
  background: var(--wpforms-chat-forms-accent);
  border: none;
  border-radius: var(--wpforms-button-border-radius, 0);
  color: var(--wpforms-chat-forms-accent-text);
  cursor: pointer;
  font-size: 15px;
  font-weight: 600;
  min-height: 44px;
  padding: 12px 14px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-submit:hover, div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-review-submit:focus {
  filter: brightness(1.08);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  background: var(--wpforms-chat-forms-surface);
  border: var(--wpforms-field-border-size, 1px) var(--wpforms-field-border-style, solid) var(--wpforms-chat-forms-border);
  border-radius: 9px;
  padding: 20px;
  transition: border-color var(--wpforms-chat-forms-transition) ease, box-shadow var(--wpforms-chat-forms-transition) ease;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer:focus-within {
  border-color: var(--wpforms-chat-forms-accent);
  box-shadow: 0 0 0 1px var(--wpforms-chat-forms-accent);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer.is-disabled {
  opacity: 0.5;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-shell .wpforms-chat-forms-composer {
  margin: 4px 16px 16px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer-label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

div.wpforms-container.wpforms-chat-forms-container textarea.wpforms-chat-forms-input {
  flex: 1 1 auto;
  resize: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: -5px 0;
  font-size: 16px;
  line-height: 22px;
  min-height: 66px;
  max-height: 132px;
  overflow-y: hidden;
  background: none;
  box-shadow: none;
  outline: none;
  color: var(--wpforms-chat-forms-field-text);
  transition: color var(--wpforms-chat-forms-transition) ease, height 0.15s ease;
}

div.wpforms-container.wpforms-chat-forms-container textarea.wpforms-chat-forms-input::placeholder {
  color: var(--wpforms-chat-forms-field-text);
  opacity: 0.5;
}

div.wpforms-container.wpforms-chat-forms-container textarea.wpforms-chat-forms-input:focus {
  border: none;
  background: none;
  box-shadow: none;
  outline: none;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer-icons {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  flex: 0 0 auto;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-voice,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-send {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  background: none;
  border: none;
  color: var(--wpforms-chat-forms-field-text);
  opacity: 0.5;
  cursor: pointer;
  transition: color var(--wpforms-chat-forms-transition) ease, opacity var(--wpforms-chat-forms-transition) ease;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-voice svg,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-send svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
  transition: transform var(--wpforms-chat-forms-transition) ease;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-voice:hover svg, div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-voice:focus-visible svg,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-send:hover svg,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-send:focus-visible svg {
  transform: scale(1.2);
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-voice:focus-visible,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-send:focus-visible {
  outline: 2px solid var(--wpforms-chat-forms-accent);
  outline-offset: 2px;
  border-radius: 2px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer-filled .wpforms-chat-forms-send {
  color: var(--wpforms-chat-forms-accent);
  opacity: 1;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer-recording .wpforms-chat-forms-voice {
  color: var(--wpforms-chat-forms-error);
  opacity: 1;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field {
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 30px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-hidden {
  display: none;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current input,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current select,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current textarea,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current ul,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current table,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current .choices,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current .wpforms-field-row,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current .wpforms-field-sublabel,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current .wpforms-field-rating-wrapper,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current .wpforms-field-limit-text {
  display: none;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current .wpforms-field-label {
  margin-bottom: 15px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-field.wpforms-chat-forms-field-current .wpforms-chat-forms-field-chips {
  display: flex;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive:not(.wpforms-chat-forms-complete) .wpforms-submit-container {
  display: none;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-submit-container,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-progressive .wpforms-submit {
  scroll-margin-bottom: 30px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-welcome,
div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-completion {
  color: var(--wpforms-chat-forms-text);
  font-size: 17px;
  line-height: 1.5;
  margin-bottom: 30px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-field-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-field-likert_scale .wpforms-chat-forms-chip {
  padding-left: 12px;
  padding-right: 12px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-row-label {
  flex: 1 1 100%;
  font-size: var(--wpforms-label-size-font-size, 16px);
  font-weight: 600;
  margin-bottom: 10px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-chip-num {
  display: inline-block;
  font-weight: 600;
  margin-right: 7px;
  opacity: 0.65;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-field-reveal {
  animation: wpforms-chat-forms-reveal 0.25s ease;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer-bar {
  display: block;
  margin-top: 30px;
}

div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-composer-error {
  color: var(--wpforms-chat-forms-error);
  font-size: 14px;
  margin-top: 8px;
  min-height: 1em;
}

@media (max-width: 600px) {
  div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-shell {
    max-height: 85vh;
  }
  div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-bubble {
    max-width: 88%;
  }
}

@media (prefers-reduced-motion: reduce) {
  div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-typing .wpforms-chat-forms-bubble span {
    animation: none;
  }
}

@keyframes wpforms-chat-forms-typing {
  0%,
  60%,
  100% {
    transform: translateY(0);
    opacity: 0.5;
  }
  30% {
    transform: translateY(-4px);
    opacity: 1;
  }
}

@keyframes wpforms-chat-forms-reveal {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

div.wpforms-container.wpforms-chat-forms-container.wpforms-lead-forms-container .wpforms-chat-forms-welcome,
div.wpforms-container.wpforms-chat-forms-container.wpforms-lead-forms-container .wpforms-chat-forms-completion {
  color: rgba(var(--wpforms-lead-forms-secondary-text-color, 119, 119, 119), 1);
  font-size: 18px;
}

#wpforms-conversational-form-page .wpforms-chat-forms-welcome,
#wpforms-conversational-form-page .wpforms-chat-forms-completion {
  font-size: 28px;
  font-weight: 400;
  line-height: 1.6;
  color: inherit;
}

#wpforms-conversational-form-page.wpforms-chat-forms-reveal .wpforms-field {
  opacity: 0;
}

#wpforms-conversational-form-page.wpforms-chat-forms-reveal .wpforms-field.wpforms-chat-forms-revealed {
  opacity: 0.2;
}

#wpforms-conversational-form-page.wpforms-chat-forms-reveal .wpforms-field.wpforms-conversational-form-field-active {
  opacity: 1;
}

#wpforms-conversational-form-page.wpforms-chat-forms-reveal .wpforms-chat-forms-completion,
#wpforms-conversational-form-page.wpforms-chat-forms-reveal .wpforms-submit-container {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease-in-out, visibility 0.25s ease-in-out;
}

#wpforms-conversational-form-page.wpforms-chat-forms-end-revealed .wpforms-chat-forms-completion,
#wpforms-conversational-form-page.wpforms-chat-forms-end-revealed .wpforms-submit-container {
  opacity: 1;
  visibility: visible;
}

#wpforms-conversational-form-page.wpforms-chat-forms-reveal .wpforms-conversational-form-footer-switch-step {
  display: none;
}

#wpforms-conversational-form-page.wpforms-chat-forms-reveal .wpforms-field .wpforms-field-label::before {
  content: none;
}

body[class*="wpforms-form-page-"] div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-welcome,
body[class*="wpforms-form-page-"] div.wpforms-container.wpforms-chat-forms-container .wpforms-chat-forms-completion {
  font-size: 16px;
  font-weight: 300;
  color: inherit;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbnQuY3NzIiwic291cmNlcyI6WyJmcm9udC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFdQRm9ybXMgQ2hhdCBGb3JtcyBmcm9udGVuZCBzdHlsZXMuXG4vL1xuLy8gQWxsIGNvbXBvbmVudCBydWxlcyBhcmUgc2NvcGVkIHVuZGVyIGBkaXYud3Bmb3Jtcy1jb250YWluZXIud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbnRhaW5lcmBcbi8vIGJlY2F1c2UgdGhlIFdQRm9ybXMgYmFzZSByZXNldCAoIGBkaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAqYCApIHplcm9lcyBvdXQgYmFja2dyb3VuZCxcbi8vIGJvcmRlciwgcG9zaXRpb24sIHdpZHRoLCBhbmQgaGVpZ2h0IG9uIGV2ZXJ5IGRlc2NlbmRhbnQgYW5kIG11c3QgYmUgb3V0LXNwZWNpZmllZC5cbi8vIGB3cGZvcm1zLWNvbnRhaW5lcmAgKG5vdCBgd3Bmb3Jtcy1jb250YWluZXItZnVsbGApIGlzIHRoZSBhbmNob3IgYmVjYXVzZSBMZWFkIEZvcm1zXG4vLyByZW1vdmVzIHRoZSBgLWZ1bGxgIGNsYXNzIGZyb20gaXRzIGNvbnRhaW5lcnMuXG5cbi8vIEhpZGRlbiB1bnRpbCB0aGUgc2NyaXB0IGFkb3B0cyB0aGVtIGludG8gdGhlIGZvcm0sIHNvIGEgdmlzaXRvclxuLy8gd2l0aG91dCBKYXZhU2NyaXB0IHNpbXBseSBnZXRzIHRoZSBzdGFuZGFyZCBmb3JtLiBGYWlsIG9wZW4sIGFsd2F5cy5cbi53cGZvcm1zLWNoYXQtZm9ybXMtc2hlbGwsXG4ud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbXBvc2VyLWJhciB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbmRpdi53cGZvcm1zLWNvbnRhaW5lci53cGZvcm1zLWNoYXQtZm9ybXMtY29udGFpbmVyIHtcblxuXHQvLyBUaGUgY2hhdCB0b2tlbnMgZGVyaXZlIGZyb20gdGhlIEZvcm0gVGhlbWVzIHZhcmlhYmxlczogYnV0dG9ucyBkcml2ZVxuXHQvLyB0aGUgYWNjZW50LCBmaWVsZHMgZHJpdmUgc3VyZmFjZXMgYW5kIGJvcmRlcnMsIGxhYmVscyBkcml2ZSB0ZXh0LlxuXHQvLyBUaGUgZmFsbGJhY2tzIG9ubHkgYXBwbHkgdW5kZXIgdGhlIGNsYXNzaWMgcmVuZGVyIGVuZ2luZSwgd2hlcmUgbm9cblx0Ly8gdGhlbWUgdmFyaWFibGVzIGV4aXN0LlxuXHQtLXdwZm9ybXMtY2hhdC1mb3Jtcy1hY2NlbnQ6IHZhciggLS13cGZvcm1zLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLCAjMDY2YWFiICk7XG5cdC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWFjY2VudC10ZXh0OiB2YXIoIC0td3Bmb3Jtcy1idXR0b24tdGV4dC1jb2xvciwgI2ZmZmZmZiApO1xuXHQtLXdwZm9ybXMtY2hhdC1mb3Jtcy1zdXJmYWNlOiB2YXIoIC0td3Bmb3Jtcy1maWVsZC1iYWNrZ3JvdW5kLWNvbG9yLCAjZmZmZmZmICk7XG5cdC0td3Bmb3Jtcy1jaGF0LWZvcm1zLXRleHQ6IHZhciggLS13cGZvcm1zLWxhYmVsLWNvbG9yLCAjMmQyZDJkICk7XG5cdC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWZpZWxkLXRleHQ6IHZhciggLS13cGZvcm1zLWZpZWxkLXRleHQtY29sb3IsICMyZDJkMmQgKTtcblx0LS13cGZvcm1zLWNoYXQtZm9ybXMtbXV0ZWQ6IHZhciggLS13cGZvcm1zLWxhYmVsLXN1YmxhYmVsLWNvbG9yLCAjNzU3NTc1ICk7XG5cdC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWJvcmRlcjogdmFyKCAtLXdwZm9ybXMtZmllbGQtYm9yZGVyLWNvbG9yLCAjZDZkNmQ2ICk7XG5cdC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWJ1YmJsZTogdmFyKCAtLXdwZm9ybXMtZmllbGQtYmFja2dyb3VuZC1jb2xvciwgI2YwZjFmMyApO1xuXHQtLXdwZm9ybXMtY2hhdC1mb3Jtcy1lcnJvcjogdmFyKCAtLXdwZm9ybXMtbGFiZWwtZXJyb3ItY29sb3IsICNkNjM2MzcgKTtcblx0LS13cGZvcm1zLWNoYXQtZm9ybXMtcmFkaXVzOiAxMnB4O1xuXHQtLXdwZm9ybXMtY2hhdC1mb3Jtcy10cmFuc2l0aW9uOiAwLjA1cztcblxuXHQvLyBIaWRlIHRoZSBuYXRpdmUgbGF5b3V0IHdoaWxlIGNoYXQgbW9kZSBkcml2ZXMgdGhlIGZvcm0uXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtbmF0aXZlLWhpZGRlbiB7XG5cblx0XHQ+IC53cGZvcm1zLWZpZWxkLWNvbnRhaW5lcixcblx0XHQ+IC53cGZvcm1zLXN1Ym1pdC1jb250YWluZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQvLyBUaGUgdGhlbWVkIGNvbnRhaW5lciBiZWhpbmQgdGhlIHNoZWxsIGlzIHRoZSBjaGF0IGNhcmQ6IEZvcm0gVGhlbWVzXG5cdC8vIHBhaW50IGl0cyBiYWNrZ3JvdW5kLCByYWRpdXMsIHNoYWRvdywgYW5kIHBhZGRpbmcgb24gdGhlIGNvbnRhaW5lclxuXHQvLyBpdHNlbGYuIFRoZSBzaGVsbCBvdXRsaW5lIHVzZXMgdGhlIEZJRUxEIGJvcmRlciB2YXJpYWJsZXMsIGJlY2F1c2UgdGhlXG5cdC8vIGRlZmF1bHQgdGhlbWUgaGFzIG5vIGNvbnRhaW5lciBib3JkZXIgYXQgYWxsIGFuZCB0aGUgY2hhdCBuZWVkcyBvbmUuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtc2hlbGwge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRib3JkZXI6IHZhciggLS13cGZvcm1zLWZpZWxkLWJvcmRlci1zaXplLCAxcHggKSB2YXIoIC0td3Bmb3Jtcy1maWVsZC1ib3JkZXItc3R5bGUsIHNvbGlkICkgdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1ib3JkZXIgKTtcblx0XHRib3JkZXItcmFkaXVzOiB2YXIoIC0td3Bmb3Jtcy1jb250YWluZXItYm9yZGVyLXJhZGl1cywgMTJweCApO1xuXHRcdGNvbG9yOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLXRleHQgKTtcblx0XHRtaW4taGVpZ2h0OiA0MjBweDtcblx0XHRtYXgtaGVpZ2h0OiA3NXZoO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblxuXHQvLyBIZWFkZXIuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtaGVhZGVyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0Z2FwOiAxMnB4O1xuXHRcdHBhZGRpbmc6IDE0cHggMTZweDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1ib3JkZXIgKTtcblx0fVxuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtYXZhdGFyIHtcblx0XHR3aWR0aDogMzZweDtcblx0XHRoZWlnaHQ6IDM2cHg7XG5cdFx0ZmxleDogMCAwIDM2cHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdGJhY2tncm91bmQ6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYWNjZW50ICk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGluc2V0OiAxMXB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0YmFja2dyb3VuZDogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1hY2NlbnQtdGV4dCApO1xuXHRcdFx0b3BhY2l0eTogMC45O1xuXHRcdH1cblx0fVxuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtaWRlbnRpdHkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRmbGV4OiAxIDEgYXV0bztcblx0XHRtaW4td2lkdGg6IDA7XG5cdH1cblxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLW5hbWUge1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0Zm9udC1zaXplOiAxNXB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjM7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHR9XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1kaXNjbG9zdXJlLFxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXByb2dyZXNzIHtcblx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1tdXRlZCApO1xuXHR9XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1lc2NhcGUtaGF0Y2gge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6IDRweCAwO1xuXHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1tdXRlZCApO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy10ZXh0ICk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gVGhyZWFkLlxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXRocmVhZCB7XG5cdFx0ZmxleDogMSAxIGF1dG87XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcblx0XHRwYWRkaW5nOiAxNnB4O1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRnYXA6IDEwcHg7XG5cblx0XHQvLyBNZXNzYWdlcyBtdXN0IG5ldmVyIHNocmluayB0byBmaXQgdGhlIHRocmVhZCBoZWlnaHQsIG9yIHRoZXkgb3ZlcmxhcC5cblx0XHQ+ICoge1xuXHRcdFx0ZmxleDogMCAwIGF1dG87XG5cdFx0fVxuXHR9XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1tZXNzYWdlIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXG5cdFx0Ji53cGZvcm1zLWNoYXQtZm9ybXMtbWVzc2FnZS1hc3Npc3RhbnQge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG5cdFx0XHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWJ1YmJsZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYnViYmxlICk7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYm9yZGVyICk7XG5cdFx0XHRcdGNvbG9yOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWZpZWxkLXRleHQgKTtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYud3Bmb3Jtcy1jaGF0LWZvcm1zLW1lc3NhZ2UtdmlzaXRvciB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG5cdFx0XHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWJ1YmJsZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYWNjZW50ICk7XG5cdFx0XHRcdGNvbG9yOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWFjY2VudC10ZXh0ICk7XG5cdFx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1idWJibGUge1xuXHRcdG1heC13aWR0aDogNzglO1xuXHRcdHBhZGRpbmc6IDEwcHggMTRweDtcblx0XHRib3JkZXItcmFkaXVzOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLXJhZGl1cyApO1xuXHRcdGZvbnQtc2l6ZTogMTVweDtcblx0XHRsaW5lLWhlaWdodDogMS40NTtcblx0XHR3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG5cdFx0b3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblx0fVxuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtbWV0YSB7XG5cdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdGNvbG9yOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLW11dGVkICk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cblx0Ly8gVHlwaW5nIGluZGljYXRvci5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy10eXBpbmcge1xuXG5cdFx0LndwZm9ybXMtY2hhdC1mb3Jtcy1idWJibGUge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGdhcDogNHB4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdHdpZHRoOiA2cHg7XG5cdFx0XHRcdGhlaWdodDogNnB4O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtbXV0ZWQgKTtcblx0XHRcdFx0YW5pbWF0aW9uOiB3cGZvcm1zLWNoYXQtZm9ybXMtdHlwaW5nIDFzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRcdCY6bnRoLWNoaWxkKCAyICkge1xuXHRcdFx0XHRcdGFuaW1hdGlvbi1kZWxheTogMC4xNXM7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOm50aC1jaGlsZCggMyApIHtcblx0XHRcdFx0XHRhbmltYXRpb24tZGVsYXk6IDAuM3M7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBDaG9pY2UgY2hpcHMuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtY2hpcHMge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGdhcDogOHB4O1xuXHR9XG5cblx0Ly8gQ29tcGFjdCBvcHRpb24gY2hpcHM6IGEgbG9uZSBudW1iZXIgbWFrZXMgYSAzMnB4IGNpcmNsZSwgdGV4dCBncm93c1xuXHQvLyB0aGUgcGlsbCBmcm9tIHRoZXJlLlxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWNoaXAge1xuXHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLXN1cmZhY2UgKTtcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWFjY2VudCApO1xuXHRcdGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuXHRcdGNvbG9yOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWFjY2VudCApO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHRcdG1pbi13aWR0aDogMzJweDtcblx0XHRtaW4taGVpZ2h0OiAzMnB4O1xuXHRcdHBhZGRpbmc6IDdweCAxMHB4O1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy10cmFuc2l0aW9uICkgZWFzZSwgY29sb3IgdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy10cmFuc2l0aW9uICkgZWFzZTtcblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyxcblx0XHQmLmlzLXNlbGVjdGVkIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYWNjZW50ICk7XG5cdFx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1hY2NlbnQtdGV4dCApO1xuXHRcdH1cblxuXHRcdCY6Zm9jdXMtdmlzaWJsZSB7XG5cdFx0XHRvdXRsaW5lOiAycHggc29saWQgdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1hY2NlbnQgKTtcblx0XHRcdG91dGxpbmUtb2Zmc2V0OiAycHg7XG5cdFx0fVxuXHR9XG5cblx0Ly8gSW5saW5lIG5hdGl2ZSBjb250cm9sIHNsb3QuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtbmF0aXZlLXNsb3Qge1xuXHRcdGJhY2tncm91bmQ6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYnViYmxlICk7XG5cdFx0Ym9yZGVyLXJhZGl1czogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1yYWRpdXMgKTtcblx0XHRwYWRkaW5nOiAxNHB4O1xuXHR9XG5cblx0Ly8gUmV2aWV3IGNhcmQuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtcmV2aWV3IHtcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWJvcmRlciApO1xuXHRcdGJvcmRlci1yYWRpdXM6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtcmFkaXVzICk7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtcmV2aWV3LXJvdyB7XG5cblx0XHQmICsgLndwZm9ybXMtY2hhdC1mb3Jtcy1yZXZpZXctcm93IHtcblx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWJvcmRlciApO1xuXHRcdH1cblx0fVxuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtcmV2aWV3LWVkaXQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRcdGdhcDogMTBweDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRwYWRkaW5nOiAxMnB4IDE0cHg7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYnViYmxlICk7XG5cdFx0fVxuXHR9XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1yZXZpZXctbGFiZWwge1xuXHRcdGZsZXg6IDAgMCBhdXRvO1xuXHRcdG1heC13aWR0aDogNDAlO1xuXHRcdGNvbG9yOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLW11dGVkICk7XG5cdH1cblxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXJldmlldy12YWx1ZSB7XG5cdFx0ZmxleDogMSAxIGF1dG87XG5cdFx0Y29sb3I6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtdGV4dCApO1xuXHRcdG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuXHR9XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1yZXZpZXctYWN0aW9uIHtcblx0XHRmbGV4OiAwIDAgYXV0bztcblx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1hY2NlbnQgKTtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRmb250LXNpemU6IDEzcHg7XG5cdH1cblxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXJldmlldy1zdWJtaXQge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYWNjZW50ICk7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGJvcmRlci1yYWRpdXM6IHZhciggLS13cGZvcm1zLWJ1dHRvbi1ib3JkZXItcmFkaXVzLCAwICk7XG5cdFx0Y29sb3I6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYWNjZW50LXRleHQgKTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Zm9udC1zaXplOiAxNXB4O1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0bWluLWhlaWdodDogNDRweDtcblx0XHRwYWRkaW5nOiAxMnB4IDE0cHg7XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0ZmlsdGVyOiBicmlnaHRuZXNzKCAxLjA4ICk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ29tcG9zZXIuIEEgdGhlbWVkIGZpZWxkLXN0eWxlIGJveCBob2xkaW5nIHRoZSBib3JkZXJsZXNzIHRleHRhcmVhXG5cdC8vIHdpdGggdGhlIHZvaWNlIGFuZCBzZW5kIGljb25zIGFuY2hvcmVkIHRvIGl0cyBib3R0b20tcmlnaHQgY29ybmVyLlxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbXBvc2VyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblx0XHRnYXA6IDE2cHg7XG5cdFx0YmFja2dyb3VuZDogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1zdXJmYWNlICk7XG5cdFx0Ym9yZGVyOiB2YXIoIC0td3Bmb3Jtcy1maWVsZC1ib3JkZXItc2l6ZSwgMXB4ICkgdmFyKCAtLXdwZm9ybXMtZmllbGQtYm9yZGVyLXN0eWxlLCBzb2xpZCApIHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYm9yZGVyICk7XG5cdFx0Ym9yZGVyLXJhZGl1czogOXB4O1xuXHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtdHJhbnNpdGlvbiApIGVhc2UsIGJveC1zaGFkb3cgdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy10cmFuc2l0aW9uICkgZWFzZTtcblxuXHRcdC8vIFRoZSBmb2N1cyB0cmVhdG1lbnQgbGl2ZXMgb24gdGhlIGJveCwgbm90IHRoZSB0ZXh0YXJlYTogYSAxcHggcmluZ1xuXHRcdC8vIGluIHRoZSBhY2NlbnQgY29sb3IgZmFrZXMgdGhlIGRlc2lnbidzIDJweCBib3JkZXIgd2l0aG91dCBzaGlmdGluZ1xuXHRcdC8vIHRoZSBsYXlvdXQg4oCUIHRoZSBzdGFuZGFyZCBXUEZvcm1zIGZvY3VzIHRyZWF0bWVudC5cblx0XHQmOmZvY3VzLXdpdGhpbiB7XG5cdFx0XHRib3JkZXItY29sb3I6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtYWNjZW50ICk7XG5cdFx0XHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1hY2NlbnQgKTtcblx0XHR9XG5cblx0XHQmLmlzLWRpc2FibGVkIHtcblx0XHRcdG9wYWNpdHk6IDAuNTtcblx0XHR9XG5cdH1cblxuXHQvLyBJbnNpZGUgdGhlIHRocmVhZCBzaGVsbCB0aGUgYm94IGZsb2F0cyB3aXRoIGl0cyBvd24gbWFyZ2lucyBpbnN0ZWFkIG9mXG5cdC8vIGRvY2tpbmcgYWdhaW5zdCB0aGUgc2hlbGwgZWRnZXMuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtc2hlbGwgLndwZm9ybXMtY2hhdC1mb3Jtcy1jb21wb3NlciB7XG5cdFx0bWFyZ2luOiA0cHggMTZweCAxNnB4O1xuXHR9XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1jb21wb3Nlci1sYWJlbCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiAxcHg7XG5cdFx0aGVpZ2h0OiAxcHg7XG5cdFx0bWFyZ2luOiAtMXB4O1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRjbGlwOiByZWN0KCAwLCAwLCAwLCAwICk7XG5cdFx0Ym9yZGVyOiAwO1xuXHR9XG5cblx0Ly8gVGhlIHRleHRhcmVhIGlzIGJhcmUgaW5zaWRlIHRoZSBib3g6IHRoZSBib3ggY2FycmllcyB0aGUgZmllbGQgY2hyb21lLFxuXHQvLyBzbyB0aGUgY29yZSBpbnB1dCBib3JkZXIsIGJhY2tncm91bmQsIGFuZCBmb2N1cyBzdHlsZXMgYXJlIHJlc2V0LlxuXHR0ZXh0YXJlYS53cGZvcm1zLWNoYXQtZm9ybXMtaW5wdXQge1xuXHRcdGZsZXg6IDEgMSBhdXRvO1xuXHRcdHJlc2l6ZTogbm9uZTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0Ly8gVGhlIG5lZ2F0aXZlIG1hcmdpbiBzd2FsbG93cyB0aGUgbGluZS1oZWlnaHQncyBidWlsdC1pbiBsZWFkaW5nLlxuXHRcdG1hcmdpbjogLTVweCAwO1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRsaW5lLWhlaWdodDogMjJweDtcblxuXHRcdC8vIFJvb20gZm9yIHRocmVlIGxpbmVzLCBncm93aW5nIHRvIHNpeCBiZWZvcmUgc2Nyb2xsaW5nLiBIaWRkZW5cblx0XHQvLyBvdmVyZmxvdyBrZWVwcyB0aGUgc2Nyb2xsYmFyIGZyb20gZmxhc2hpbmcgbWlkLWdyb3d0aDsgdGhlIGdyb3dcblx0XHQvLyBoZWxwZXIgdHVybnMgc2Nyb2xsaW5nIG9uIG9ubHkgb25jZSB0aGUgc2l4LWxpbmUgY2FwIGlzIGhpdC5cblx0XHRtaW4taGVpZ2h0OiA2NnB4O1xuXHRcdG1heC1oZWlnaHQ6IDEzMnB4O1xuXHRcdG92ZXJmbG93LXk6IGhpZGRlbjtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1maWVsZC10ZXh0ICk7XG5cblx0XHQvLyBIZWlnaHQgZ2V0cyBhIGxvbmdlciB0cmFuc2l0aW9uIHRoYW4gdGhlIHJlc3Qgc28gbGluZSBncm93dGhcblx0XHQvLyBlYXNlcyBpbnN0ZWFkIG9mIGp1bXBpbmcuXG5cdFx0dHJhbnNpdGlvbjogY29sb3IgdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy10cmFuc2l0aW9uICkgZWFzZSwgaGVpZ2h0IDAuMTVzIGVhc2U7XG5cblx0XHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1maWVsZC10ZXh0ICk7XG5cdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0fVxuXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1jb21wb3Nlci1pY29ucyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cdFx0Z2FwOiAxNnB4O1xuXHRcdGZsZXg6IDAgMCBhdXRvO1xuXHR9XG5cblx0Ly8gVm9pY2UgYW5kIHNlbmQgYXJlIHF1aWV0IGljb24gYnV0dG9ucyBpbiB0aGUgZmllbGQgdGV4dCBjb2xvciBhdCBoYWxmXG5cdC8vIHN0cmVuZ3RoLCBtYXRjaGluZyB0aGUgcGxhY2Vob2xkZXIuIFRoZSAyMHB4IGJveGVzIG1hdGNoIHRoZSBnbHlwaHNcblx0Ly8gZXhhY3RseSwgc28gdGhlIHNlbmQgaWNvbiBzaXRzIDIwcHggZnJvbSB0aGUgYm94IGVkZ2Ugd2l0aCAxNnB4XG5cdC8vIGJldHdlZW4gdGhlIGljb25zOyBob3ZlcmluZyBzY2FsZXMgdGhlIGdseXBoIHdpdGhvdXQgbW92aW5nIGFueXRoaW5nLlxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXZvaWNlLFxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXNlbmQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR3aWR0aDogMjBweDtcblx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0cGFkZGluZzogMDtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1maWVsZC10ZXh0ICk7XG5cdFx0b3BhY2l0eTogMC41O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR0cmFuc2l0aW9uOiBjb2xvciB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLXRyYW5zaXRpb24gKSBlYXNlLCBvcGFjaXR5IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtdHJhbnNpdGlvbiApIGVhc2U7XG5cblx0XHRzdmcge1xuXHRcdFx0d2lkdGg6IDIwcHg7XG5cdFx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0XHRmaWxsOiBjdXJyZW50Q29sb3I7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy10cmFuc2l0aW9uICkgZWFzZTtcblx0XHR9XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMtdmlzaWJsZSB7XG5cblx0XHRcdHN2ZyB7XG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoIDEuMiApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6Zm9jdXMtdmlzaWJsZSB7XG5cdFx0XHRvdXRsaW5lOiAycHggc29saWQgdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1hY2NlbnQgKTtcblx0XHRcdG91dGxpbmUtb2Zmc2V0OiAycHg7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQW4gYW5zd2VyZWQgY29tcG9zZXIgbGlnaHRzIHRoZSBzZW5kIGljb24gaW4gdGhlIGFjY2VudCBjb2xvci5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1jb21wb3Nlci1maWxsZWQgLndwZm9ybXMtY2hhdC1mb3Jtcy1zZW5kIHtcblx0XHRjb2xvcjogdmFyKCAtLXdwZm9ybXMtY2hhdC1mb3Jtcy1hY2NlbnQgKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0Ly8gVm9pY2UgcmVjb3JkaW5nOiB0aGUgbWljcm9waG9uZSBnb2VzIGVycm9yIHJlZCBhbmQgZnVsbCBzdHJlbmd0aC5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1jb21wb3Nlci1yZWNvcmRpbmcgLndwZm9ybXMtY2hhdC1mb3Jtcy12b2ljZSB7XG5cdFx0Y29sb3I6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtZXJyb3IgKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0Ly8gUHJvZ3Jlc3NpdmUgbW9kZTogdGhlIGZvcm0ga2VlcHMgaXRzIG5hdGl2ZSBzdHlsaW5nIGFuZCByZXZlYWxzIG9uZVxuXHQvLyBmaWVsZCBhdCBhIHRpbWU7IG9ubHkgdGhlIGNvbXBvc2VyIGJhciBiZWxvdyBpcyBuZXcgY2hyb21lLlxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXByb2dyZXNzaXZlIHtcblxuXHRcdC8vIE9uZSBmbGF0IHJoeXRobTogZXZlcnkgZWxlbWVudCBpcyAzMHB4IGZyb20gdGhlIG5leHQuIEZpZWxkcyB0cmFkZVxuXHRcdC8vIHRoZSB0aGVtZSdzIHZlcnRpY2FsIHBhZGRpbmcgZm9yIGEgMzBweCBib3R0b20gbWFyZ2luLCBzbyB0aGVcblx0XHQvLyBsYWJlbCdzIG93biBib3R0b20gbWFyZ2luIGNvbGxhcHNlcyBpbnRvIGl0IG9uIGxhYmVsLW9ubHlcblx0XHQvLyBxdWVzdGlvbnMgaW5zdGVhZCBvZiBzdGFja2luZyBleHRyYSBzcGFjZSBiZWZvcmUgdGhlIGNvbXBvc2VyLlxuXHRcdC53cGZvcm1zLWZpZWxkIHtcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHRcdH1cblxuXHRcdC53cGZvcm1zLWZpZWxkLndwZm9ybXMtY2hhdC1mb3Jtcy1maWVsZC1oaWRkZW4ge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQvLyBUaGUgY3VycmVudCBxdWVzdGlvbiBzaG93cyBvbmx5IGl0cyBsYWJlbCAoYW5kIGRlc2NyaXB0aW9uKTsgdGhlXG5cdFx0Ly8gYW5zd2VyIGNvbWVzIGZyb20gdGhlIGNvbXBvc2VyLCB3aXRoIGNoaXBzIHJlcGxhY2luZyBjaG9pY2UgaW5wdXRzLlxuXHRcdC8vIFRoZSBmdWxsIHBvcHVsYXRlZCBmaWVsZCBhcHBlYXJzIG9uY2UgaXQgaXMgYW5zd2VyZWQuIExhYmVscyBjYW5cblx0XHQvLyBzaXQgaW5zaWRlIGEgZmllbGRzZXQgKG5hbWUsIHJhZGlvLCBjaGVja2JveCksIHNvIHRoZSBpbnB1dHMgYXJlXG5cdFx0Ly8gdGFyZ2V0ZWQgZGlyZWN0bHkgcmF0aGVyIHRoYW4gaGlkaW5nIHRoZSBsYWJlbCdzIHNpYmxpbmdzLlxuXHRcdC53cGZvcm1zLWZpZWxkLndwZm9ybXMtY2hhdC1mb3Jtcy1maWVsZC1jdXJyZW50IHtcblxuXHRcdFx0aW5wdXQsXG5cdFx0XHRzZWxlY3QsXG5cdFx0XHR0ZXh0YXJlYSxcblx0XHRcdHVsLFxuXHRcdFx0dGFibGUsXG5cdFx0XHQuY2hvaWNlcyxcblx0XHRcdC53cGZvcm1zLWZpZWxkLXJvdyxcblx0XHRcdC53cGZvcm1zLWZpZWxkLXN1YmxhYmVsLFxuXHRcdFx0LndwZm9ybXMtZmllbGQtcmF0aW5nLXdyYXBwZXIsXG5cdFx0XHQud3Bmb3Jtcy1maWVsZC1saW1pdC10ZXh0IHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gVGhlIG9wdGlvbnMgc2l0IDE1cHggYmVsb3cgdGhlIHF1ZXN0aW9uLlxuXHRcdFx0LndwZm9ybXMtZmllbGQtbGFiZWwge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdFx0fVxuXG5cdFx0XHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWZpZWxkLWNoaXBzIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOm5vdCggLndwZm9ybXMtY2hhdC1mb3Jtcy1jb21wbGV0ZSApIC53cGZvcm1zLXN1Ym1pdC1jb250YWluZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQvLyBCcmVhdGhpbmcgcm9vbSBiZWxvdyB0aGUgc3VibWl0IGJ1dHRvbiB3aGVuIHRoZSBjb21wbGV0aW9uIHNjcm9sbFxuXHRcdC8vIGJyaW5ncyBpdCBpbnRvIHZpZXcsIHNvIGl0IG5ldmVyIHNpdHMgZmx1c2ggd2l0aCB0aGUgdmlld3BvcnQgZWRnZS5cblx0XHQud3Bmb3Jtcy1zdWJtaXQtY29udGFpbmVyLFxuXHRcdC53cGZvcm1zLXN1Ym1pdCB7XG5cdFx0XHRzY3JvbGwtbWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHR9XG5cdH1cblxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXdlbGNvbWUsXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtY29tcGxldGlvbiB7XG5cdFx0Y29sb3I6IHZhciggLS13cGZvcm1zLWNoYXQtZm9ybXMtdGV4dCApO1xuXHRcdGZvbnQtc2l6ZTogMTdweDtcblx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWZpZWxkLWNoaXBzIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRnYXA6IDhweDtcblx0fVxuXG5cdC8vIExpa2VydCBvcHRpb25zIGFyZSB3b3JkZWQgYW5zd2VyczogZ2l2ZSB0aGVtIG1vcmUgc2lkZSBwYWRkaW5nLlxuXHQud3Bmb3Jtcy1maWVsZC1saWtlcnRfc2NhbGUgLndwZm9ybXMtY2hhdC1mb3Jtcy1jaGlwIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEycHg7XG5cdFx0cGFkZGluZy1yaWdodDogMTJweDtcblx0fVxuXG5cdC8vIEEgTGlrZXJ0IHJvdydzIG93biBxdWVzdGlvbjogc2l6ZWQgbGlrZSB0aGUgZmllbGQgbGFiZWwgYWJvdmUgaXQsIG5ldmVyXG5cdC8vIGJpZ2dlciwgc2luY2UgaXQgaW5oZXJpdHMgdGhlIHBhZ2UncyBiYXNlIHNpemUgb3RoZXJ3aXNlLlxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXJvdy1sYWJlbCB7XG5cdFx0ZmxleDogMSAxIDEwMCU7XG5cdFx0Zm9udC1zaXplOiB2YXIoIC0td3Bmb3Jtcy1sYWJlbC1zaXplLWZvbnQtc2l6ZSwgMTZweCApO1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0fVxuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtY2hpcC1udW0ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdG1hcmdpbi1yaWdodDogN3B4O1xuXHRcdG9wYWNpdHk6IDAuNjU7XG5cdH1cblxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWZpZWxkLXJldmVhbCB7XG5cdFx0YW5pbWF0aW9uOiB3cGZvcm1zLWNoYXQtZm9ybXMtcmV2ZWFsIDAuMjVzIGVhc2U7XG5cdH1cblxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbXBvc2VyLWJhciB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLXRvcDogMzBweDtcblx0fVxuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtY29tcG9zZXItZXJyb3Ige1xuXHRcdGNvbG9yOiB2YXIoIC0td3Bmb3Jtcy1jaGF0LWZvcm1zLWVycm9yICk7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdG1hcmdpbi10b3A6IDhweDtcblx0XHRtaW4taGVpZ2h0OiAxZW07XG5cdH1cblxuXHQvLyBTbWFsbCBzY3JlZW5zOiBnaXZlIHRoZSB0aHJlYWQgbW9yZSBvZiB0aGUgdmlld3BvcnQuXG5cdEBtZWRpYSAoIG1heC13aWR0aDogNjAwcHggKSB7XG5cblx0XHQud3Bmb3Jtcy1jaGF0LWZvcm1zLXNoZWxsIHtcblx0XHRcdG1heC1oZWlnaHQ6IDg1dmg7XG5cdFx0fVxuXG5cdFx0LndwZm9ybXMtY2hhdC1mb3Jtcy1idWJibGUge1xuXHRcdFx0bWF4LXdpZHRoOiA4OCU7XG5cdFx0fVxuXHR9XG5cblx0QG1lZGlhICggcHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlICkge1xuXG5cdFx0LndwZm9ybXMtY2hhdC1mb3Jtcy10eXBpbmcgLndwZm9ybXMtY2hhdC1mb3Jtcy1idWJibGUgc3BhbiB7XG5cdFx0XHRhbmltYXRpb246IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cbkBrZXlmcmFtZXMgd3Bmb3Jtcy1jaGF0LWZvcm1zLXR5cGluZyB7XG5cblx0MCUsXG5cdDYwJSxcblx0MTAwJSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKCAwICk7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG5cblx0MzAlIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIC00cHggKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgd3Bmb3Jtcy1jaGF0LWZvcm1zLXJldmVhbCB7XG5cblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIDhweCApO1xuXHR9XG5cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKCAwICk7XG5cdH1cbn1cblxuLy8gTGVhZCBGb3JtcyBrZWVwcyBpdHMgbmF0aXZlIHBhZ2UtYnktcGFnZSBmbG93OyBvbmx5IHRoZSBpbmplY3RlZCB3ZWxjb21lXG4vLyBhbmQgY29tcGxldGlvbiBtZXNzYWdlcyBhcmUgc3R5bGVkLCBmb2xsb3dpbmcgdGhlIExlYWQgRm9ybXMgc2Vjb25kYXJ5XG4vLyB0ZXh0IHN0eWxlLlxuZGl2LndwZm9ybXMtY29udGFpbmVyLndwZm9ybXMtY2hhdC1mb3Jtcy1jb250YWluZXIud3Bmb3Jtcy1sZWFkLWZvcm1zLWNvbnRhaW5lciB7XG5cblx0LndwZm9ybXMtY2hhdC1mb3Jtcy13ZWxjb21lLFxuXHQud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbXBsZXRpb24ge1xuXHRcdGNvbG9yOiByZ2JhKCB2YXIoIC0td3Bmb3Jtcy1sZWFkLWZvcm1zLXNlY29uZGFyeS10ZXh0LWNvbG9yLCAxMTksIDExOSwgMTE5ICksIDEgKTtcblx0XHRmb250LXNpemU6IDE4cHg7XG5cdH1cbn1cblxuLy8gQ29udmVyc2F0aW9uYWwgRm9ybXM6IHdpdGggY2hhdCBtb2RlIGFjdGl2ZSBpdHMgc2NyaXB0IGlzIGRlcXVldWVkLCBzbyB0aGVcbi8vIEpTLWRyaXZlbiBjaHJvbWUgKHN0YXJ0IGJ1dHRvbiwgZml4ZWQgZm9vdGVyIHdpdGggdGhlIHByb2dyZXNzIGJhcikgaXNcbi8vIGhpZGRlbiBhbmQgdGhlIEpTLXRvZ2dsZWQgZmllbGQgZGltbWluZyBpcyBuZXV0cmFsaXplZC4gT25lIHF1ZXN0aW9uIHNob3dzXG4vLyBhdCBhIHRpbWUsIGNlbnRlcmVkIGluIHRoZSB2aWV3cG9ydDsgY29tcGxldGlvbiBkcm9wcyB0aGUgY2VudGVyaW5nIGFuZFxuLy8gc2hvd3MgZXZlcnkgYW5zd2VyZWQgZmllbGQgZm9yIHJldmlldyBiZWZvcmUgc3VibWl0LlxuLy8gQ29udmVyc2F0aW9uYWwgRm9ybXMga2VlcHMgaXRzIG5hdGl2ZSBmbG93OyBvbmx5IHRoZSBpbmplY3RlZCB3ZWxjb21lIGFuZFxuLy8gY29tcGxldGlvbiBtZXNzYWdlcyBhcmUgc3R5bGVkLCBmb2xsb3dpbmcgaXRzIGRlc2NyaXB0aW9uIHR5cGUuXG4jd3Bmb3Jtcy1jb252ZXJzYXRpb25hbC1mb3JtLXBhZ2Uge1xuXG5cdC53cGZvcm1zLWNoYXQtZm9ybXMtd2VsY29tZSxcblx0LndwZm9ybXMtY2hhdC1mb3Jtcy1jb21wbGV0aW9uIHtcblx0XHRmb250LXNpemU6IDI4cHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRsaW5lLWhlaWdodDogMS42O1xuXHRcdGNvbG9yOiBpbmhlcml0O1xuXHR9XG5cblx0Ly8gUXVlc3Rpb25zIHRoZSB2aXNpdG9yIGhhcyBub3QgcmVhY2hlZCBzdGF5IGZ1bGx5IGhpZGRlbiBpbnN0ZWFkIG9mXG5cdC8vIENGJ3MgMC4yIGRpbW1pbmc6IHRoZWlyIGxhYmVscyBhcmUgZ2VuZXJhdGVkIGR5bmFtaWNhbGx5LCBzbyBub3RoaW5nXG5cdC8vIGNhbiBzaG93IGFoZWFkIG9mIHRpbWUuIEVhY2ggZmllbGQgZmFkZXMgaW4gb24gQ0YncyBvd24gMC4yNXMgZmllbGRcblx0Ly8gdHJhbnNpdGlvbiB0aGUgZmlyc3QgdGltZSBpdCBiZWNvbWVzIGFjdGl2ZSwgdGhlbiBrZWVwcyBDRidzIGRpbW1lZFxuXHQvLyBhbmQgYWN0aXZlIHRyZWF0bWVudHMuIExheW91dCBpcyBwcmVzZXJ2ZWQgc28gQ0YncyBzY3JvbGwgZmxvdyBpc1xuXHQvLyB1bnRvdWNoZWQsIGFuZCB3aXRob3V0IEphdmFTY3JpcHQgdGhlIG5hdGl2ZSBkaW1taW5nIHN0YXlzLlxuXHQmLndwZm9ybXMtY2hhdC1mb3Jtcy1yZXZlYWwgLndwZm9ybXMtZmllbGQge1xuXHRcdG9wYWNpdHk6IDA7XG5cblx0XHQmLndwZm9ybXMtY2hhdC1mb3Jtcy1yZXZlYWxlZCB7XG5cdFx0XHRvcGFjaXR5OiAwLjI7XG5cdFx0fVxuXG5cdFx0Ji53cGZvcm1zLWNvbnZlcnNhdGlvbmFsLWZvcm0tZmllbGQtYWN0aXZlIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHR9XG5cblx0Ly8gVGhlIGNvbXBsZXRpb24gbWVzc2FnZSBhbmQgc3VibWl0IHN0YXkgaGlkZGVuIHVudGlsIHRoZSBsYXN0XG5cdC8vIHF1ZXN0aW9uIGhhcyBiZWVuIHJlYWNoZWQsIGZhZGluZyBpbiBvbiB0aGUgc2FtZSB0aW1pbmcuXG5cdCYud3Bmb3Jtcy1jaGF0LWZvcm1zLXJldmVhbCAud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbXBsZXRpb24sXG5cdCYud3Bmb3Jtcy1jaGF0LWZvcm1zLXJldmVhbCAud3Bmb3Jtcy1zdWJtaXQtY29udGFpbmVyIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuXHR9XG5cblx0Ji53cGZvcm1zLWNoYXQtZm9ybXMtZW5kLXJldmVhbGVkIC53cGZvcm1zLWNoYXQtZm9ybXMtY29tcGxldGlvbixcblx0Ji53cGZvcm1zLWNoYXQtZm9ybXMtZW5kLXJldmVhbGVkIC53cGZvcm1zLXN1Ym1pdC1jb250YWluZXIge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0fVxuXG5cdC8vIFNlcXVlbnRpYWwgbmF2aWdhdGlvbiByZXBsYWNlcyBmcmVlIG1vdmVtZW50OiB0aGUgZm9vdGVyJ3MgdXAgYW5kXG5cdC8vIGRvd24gYXJyb3dzIGFyZSByZW1vdmVkLlxuXHQmLndwZm9ybXMtY2hhdC1mb3Jtcy1yZXZlYWwgLndwZm9ybXMtY29udmVyc2F0aW9uYWwtZm9ybS1mb290ZXItc3dpdGNoLXN0ZXAge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQvLyBRdWVzdGlvbiBudW1iZXJzIG1lYW4gbGl0dGxlIHdoZW4gb25seSBvbmUgcXVlc3Rpb24gc2hvd3MgYXQgYSB0aW1lOlxuXHQvLyBDRidzIGZpZWxkIGNvdW50ZXIgaXMgaGlkZGVuLlxuXHQmLndwZm9ybXMtY2hhdC1mb3Jtcy1yZXZlYWwgLndwZm9ybXMtZmllbGQgLndwZm9ybXMtZmllbGQtbGFiZWw6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogbm9uZTtcblx0fVxufVxuXG4vLyBGb3JtIFBhZ2VzOiB0aGUgd2VsY29tZSBhbmQgY29tcGxldGlvbiBtZXNzYWdlcyBmb2xsb3cgdGhlIEZvcm0gUGFnZXNcbi8vIGRlc2NyaXB0aW9uIHR5cGUuXG5ib2R5W2NsYXNzKj1cIndwZm9ybXMtZm9ybS1wYWdlLVwiXSBkaXYud3Bmb3Jtcy1jb250YWluZXIud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbnRhaW5lciAud3Bmb3Jtcy1jaGF0LWZvcm1zLXdlbGNvbWUsXG5ib2R5W2NsYXNzKj1cIndwZm9ybXMtZm9ybS1wYWdlLVwiXSBkaXYud3Bmb3Jtcy1jb250YWluZXIud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbnRhaW5lciAud3Bmb3Jtcy1jaGF0LWZvcm1zLWNvbXBsZXRpb24ge1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdGNvbG9yOiBpbmhlcml0O1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLEFBQUEseUJBQXlCO0FBQ3pCLGdDQUFnQyxDQUFDO0VBQ2hDLE9BQU8sRUFBRSxJQUFJO0NBQ2I7O0FBRUQs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 */
